Goblint_constraint.ConstrSysconstraint system signatures.
module type SysVar = sig ... endmodule type VarType = sig ... endCombined variables so that we can also use the more common EqConstrSys that uses only one kind of a variable.
type 'v sys_change_info = {obsolete : 'v list;Variables to destabilize.
*)delete : 'v list;Variables to delete.
*)reluctant : 'v list;Variables to solve reluctantly.
*)restart : 'v list;Variables to restart.
*)}Abstract incremental change to constraint system.
module type EqConstrSys = sig ... endA side-effecting system.
module type DemandEqConstrSys = sig ... endA side-effecting system that supports demand calls
module type GlobConstrSys = sig ... endA side-effecting system with globals.
module type DemandGlobConstrSys = sig ... endA side-effecting system with globals that supports demand calls
module CurrentVarDemandEqConstrSys (S : DemandEqConstrSys) : sig ... endDemandEqConstrSys where current_var indicates the variable whose right-hand side is currently being evaluated.