summaryrefslogtreecommitdiff
path: root/src/constraint.mli
blob: 33881fcf530707ffbf59d3d8af88f1c5d0378c7c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
type nexp
type t

type smt_result = Unknown | Sat | Unsat

val load_digests : unit -> unit
val save_digests : unit -> unit

val call_z3 : t -> smt_result

val string_of : t -> string

val implies : t -> t -> t
val conj : t -> t -> t
val disj : t -> t -> t
val negate : t -> t
val literal : bool -> t
val forall : int list -> t -> t

val lt : nexp -> nexp -> t
val lteq : nexp -> nexp -> t
val gt : nexp -> nexp -> t
val gteq : nexp -> nexp -> t
val eq : nexp -> nexp -> t
val neq : nexp -> nexp -> t

val pow2 : nexp -> nexp
val add : nexp -> nexp -> nexp
val sub : nexp -> nexp -> nexp
val mult : nexp -> nexp -> nexp
val app : string -> nexp list -> nexp

val constant : Big_int.big_int -> nexp
val variable : int -> nexp