Solver.Lit
module T = T
Literals depend on terms
type t
A literal
val term : t -> T.Term.t
Get the (positive) term
val sign : t -> bool
Get the sign. A negated literal has sign false.
false
val neg : t -> t
Take negation of literal. sign (neg lit) = not (sign lit).
sign (neg lit) = not (sign lit)
val abs : t -> t
abs lit is like lit but always positive, i.e. sign (abs lit) = true
abs lit
lit
sign (abs lit) = true
val signed_term : t -> T.Term.t * bool
val equal : t -> t -> bool
val hash : t -> int
val pp : t Sidekick_core.Fmt.printer