Module TermLib
Utilty functions for transition systems
Functions that use term data structures and can be used by any module above TransSys go here.
Default values
val default_of_type : Type.t -> Term.tReturn the default value of the type:
By default, a Boolean value is false, integer and real values are zero, values in a range are equal to the lower bound of the range. Array scalar types do not have defaults. The function fails with
Invalid_argumentin this case.
Logic fragments
type feature=|QQuantifiers
|UFEquality over uninterpreted functions
|AArrays
|IAInteger arithmetic
|RAReal arithmetic
|LALinear arithmetic
|NANon-linear arithmetic
|BVBit vectors
A feature of a logic fragment for terms
module FeatureSet : Stdlib.Set.S with type FeatureSet.elt = featureSet of features
type features= FeatureSet.tLogic fragments for terms
val logic_of_term : UfSymbol.t list -> Term.t -> featuresReturns the logic fragment used by a term
type logic=[|`None|`Inferred of features|`SMTLogic of string]Logic fragments for terms
val pp_print_logic : Stdlib.Format.formatter -> logic -> unitPrint a logic
val string_of_logic : logic -> stringString correspinding to a logic
val logic_allow_arrays : logic -> boolReturns
trueif the logic potentially has arrays
module Signals : sig ... endGathers signal related stuff.