package hardcaml_verify

  1. Overview
  2. Docs

Conversion functions from boolean gates to Tseitin form. The first argument to each function is the newly introduced sat literal for this gate, which should be referenced by its fanouts. The return value is the corresponding CNF.

Parameters

module B : S

Signature

val bfalse : B.t -> B.t Base.list Base.list

constant false

val btrue : B.t -> B.t Base.list Base.list

constant true

val bnot : B.t -> B.t -> B.t Base.list Base.list

not

val bwire : B.t -> B.t -> B.t Base.list Base.list

wire (copy input to output)

n-input not-or

n-input or

n-input not-and

n-input and

val bxor : B.t -> B.t -> B.t -> B.t Base.list Base.list

2-input xor