https://github.com/EasyCrypt/easycrypt
Raw File
Tip revision: dc50f44bff4c40022c08e46832a16b676b3db0da authored by Pierre-Yves Strub on 26 May 2023, 09:54:58 UTC
Forbid the usage of [declare] for concrete modules.
Tip revision: dc50f44
Pervasive.ec
(* -------------------------------------------------------------------- *)
type unit.

op tt : unit.

(* -------------------------------------------------------------------- *)
type bool.

op false : bool.
op true  : bool.

op [!]  : bool -> bool.
op (||) : bool -> bool -> bool.
op (\/) : bool -> bool -> bool.
op (&&) : bool -> bool -> bool.
op (/\) : bool -> bool -> bool.
op (=>) : bool -> bool -> bool.
op (<=>): bool -> bool -> bool.

(* -------------------------------------------------------------------- *)
op (=) ['a] : 'a -> 'a -> bool.
abbrev (<>) (x y : 'a) = ! (x = y).

(* -------------------------------------------------------------------- *)
type int.

(* -------------------------------------------------------------------- *)
type real.

(* -------------------------------------------------------------------- *)
type 'a distr.

op mu: 'a distr -> ('a -> bool) -> real.

(* -------------------------------------------------------------------- *)
op witness : 'a.                (* All types are inhabited in EC *)
back to top