package bitwuzla
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Module Incremental.TermSource
Source
type 'a t = 'a term
constraint
'a =
[< `Ar of [< `Bv | `Fp | `Rm ] -> [< `Bv | `Fp | `Rm ] | `Bv | `Fp | `Rm ]A term of 'a kind.
Statically typed list of function argument terms.
const sort symbol create a (first-order) constant of given sort with given symbol.
This creates a 0-arity function symbol.
Source
val equal :
([< `Ar of
[< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ] & [< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ]
| `Bv
| `Fp
| `Rm ] as 'a)
t ->
'a t ->
bv tequal t0 t1 create an equality term.
Source
val distinct :
([< `Ar of
[< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ] & [< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ]
| `Bv
| `Fp
| `Rm ] as 'a)
t ->
'a t ->
bv tdistinct t0 t1 create an disequality term.
Source
val ite :
bv t ->
([< `Ar of
[< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ] & [< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ] & [< `Bv | `Fp | `Rm ] ->
[< `Bv | `Fp | `Rm ]
| `Bv
| `Fp
| `Rm ] as 'a)
t ->
'a t ->
'a tite t0 t1 t2 create an if-then-else term.
Source
val hash :
[< `Ar of [< `Bv | `Fp | `Rm ] -> [< `Bv | `Fp | `Rm ] | `Bv | `Fp | `Rm ] t ->
inthash t compute the hash value for a term.
Source
val sort :
([< `Ar of [< `Bv | `Fp | `Rm ] -> [< `Bv | `Fp | `Rm ] | `Bv | `Fp | `Rm ] as 'a)
t ->
'a sortsort t get the sort of a term.
pp formatter t pretty print term.
Source
type !'a5 view = | Value : 'a value -> 'a view| Const : 'a0 sort * string -> 'a0 view| Var : ([< `Bv | `Fp | `Rm ] as 'd) sort -> 'd view| Lambda : 'a1 variadic * ([< bv ] as 'e) term -> ('a1, 'e) fn view| Equal : ([< `Ar of [< `Bv | `Fp | `Rm ] -> [< `Bv | `Fp | `Rm ] | `Bv | `Fp | `Rm ] as 'f) term * 'f term -> bv view| Distinct : ([< `Ar of [< `Bv | `Fp | `Rm ] -> [< `Bv | `Fp | `Rm ] | `Bv | `Fp | `Rm ] as 'g) term * 'g term -> bv view| Ite : bv term * ([< `Ar of [< `Bv | `Fp | `Rm ] -> [< `Bv | `Fp | `Rm ] | `Bv | `Fp | `Rm ] as 'h) term * 'h term -> 'h view| Bv : ('a2, 'b) Bv.operator * 'b -> bv view| Fp : ('a3, 'b0, 'c) Fp.operator * 'b0 -> 'c view| Select : ([< `Bv | `Fp | `Rm ] as 'i, [< `Bv | `Fp | `Rm ] as 'j) ar term * 'i term -> 'j view| Store : ([< `Bv | `Fp | `Rm ] as 'k, [< `Bv | `Fp | `Rm ] as 'l) ar term * 'k term * 'l term -> ('k, 'l) ar view| Apply : ('a4, [< bv ] as 'm) fn term * 'a4 variadic -> 'm view
Algebraic view of formula terms.