package qbf

  1. Overview
  2. Docs
On This Page
  1. a QBF literal
Legend:
Library
Module
Module type
Parameter
Class
Class type

a QBF literal

type t = private int

A boolean literal is only a non-zero integer

val make : int -> t

Build a literal out of an integer.

  • raises Invalid_argument

    if the integer is zero

val neg : t -> t

Negation (i.e. opposite)

val to_int : t -> int

The underlying atom, or name (strictly positive integer)

val abs : t -> t

Remove sign

val sign : t -> bool

Remove sign

Get sign

val apply_sign : bool -> t -> t

Get sign

Swap sign iff the bool is false

val set_sign : bool -> t -> t

Swap sign iff the bool is false

Positive if true, negative otherwise

val fresh : unit -> t

Generator for fresh, unique lits

val equal : t -> t -> bool
val compare : t -> t -> int
val hash : t -> int
val hash_fun : t -> int64 -> int64
val print : Stdlib.Format.formatter -> t -> unit