Module C.Bool

type scalar = scalar

Element of the native scalar field.

type 'a repr = 'a repr

Representation of values.

type 'a t = 'a t

Plompiler program.

val band : bool repr -> bool repr -> bool repr t

band a b returns the conjunction of a and b.

val xor : bool repr -> bool repr -> bool repr t

xor a b returns the exclusive disjunction of a and b.

val bor : bool repr -> bool repr -> bool repr t

bor a b returns the disjunction of a and b.

val bnot : bool repr -> bool repr t

bnot a returns the negation of a.

val ifthenelse : bool repr -> 'a repr -> 'a repr -> 'a repr t

ifthenelse c t e returns t if c is true and e otherwise.

val swap : bool repr -> 'a repr -> 'a repr -> ('a * 'a) repr t

swap c a b returns the pair (b, a) if c is true and (a, b) otherwise.

val assert_true : bool repr -> unit repr t

assert_true a asserts that a is true.

val assert_false : bool repr -> unit repr t

assert_false a asserts that a is false.

val constant : bool -> bool repr t

constant kb returns the constant kb as a Plompiler value.

val band_list : bool repr list -> bool repr t

band_list bs returns the conjunction of the list of booleans bs.

module Internal : sig ... end