https://github.com/EasyCrypt/easycrypt
Tip revision: aa6dc074f77deb2c8215b6281a0a0be9e358d461 authored by Pierre-Yves Strub on 19 October 2021, 10:19:36 UTC
Add a simple form of pattern selection in rewrite rules
Add a simple form of pattern selection in rewrite rules
Tip revision: aa6dc07
ecBigIntCore.ml
(* --------------------------------------------------------------------
* Copyright (c) - 2012--2016 - IMDEA Software Institute
* Copyright (c) - 2012--2018 - Inria
* Copyright (c) - 2012--2018 - Ecole Polytechnique
*
* Distributed under the terms of the CeCILL-C-V1 license
* -------------------------------------------------------------------- *)
(* -------------------------------------------------------------------- *)
module type TheInterface = sig
type zint
exception Overflow
exception InvalidString
val compare : zint -> zint -> int
val equal : zint -> zint -> bool
val sign : zint -> int
val hash : zint -> int
val le : zint -> zint -> bool
val lt : zint -> zint -> bool
val ge : zint -> zint -> bool
val gt : zint -> zint -> bool
val zero : zint
val one : zint
val add : zint -> zint -> zint
val neg : zint -> zint
val sub : zint -> zint -> zint
val mul : zint -> zint -> zint
val div : zint -> zint -> zint
val ediv : zint -> zint -> zint * zint
val erem : zint -> zint -> zint
val gcd : zint -> zint -> zint
val abs : zint -> zint
val pow : zint -> int -> zint
val pred : zint -> zint
val succ : zint -> zint
val parity : zint -> [`Even | `Odd]
val lshift : zint -> int -> zint
val rshift : zint -> int -> zint
val lgand : zint -> zint -> zint
val lgor : zint -> zint -> zint
val lgxor : zint -> zint -> zint
module Notations : sig
val ( =^ ) : zint -> zint -> bool
val ( +^ ) : zint -> zint -> zint
val ( ~^ ) : zint -> zint
val ( -^ ) : zint -> zint -> zint
val ( *^ ) : zint -> zint -> zint
val ( /^ ) : zint -> zint -> zint
val ( <=^ ) : zint -> zint -> bool
val ( <^ ) : zint -> zint -> bool
val ( >=^ ) : zint -> zint -> bool
val ( >^ ) : zint -> zint -> bool
end
val of_int : int -> zint
val to_int : zint -> int
val of_string : string -> zint
val to_string : zint -> string
val pp_print : Format.formatter -> zint -> unit
val to_why3 : zint -> Why3.BigInt.t
end