Goblint_lib.ApronDomainApron domains.
module M = MessagesResources for working with Apron:
val widening_thresholds_apron : GobApron.Scalar.t array ResettableLazy.tmodule V = RelationDomain.Vmodule type Manager = sig ... endmodule OctagonManager : sig ... endManager for the Oct domain, i.e. an octagon domain. For Documentation for the domain see: https://antoinemine.github.io/Apron/doc/api/ocaml/Oct.html
module PolyhedraManager : sig ... endManager for the Polka domain, i.e. a polyhedra domain. For Documentation for the domain see: https://antoinemine.github.io/Apron/doc/api/ocaml/Polka.html
module AffEqManager : sig ... endAnother manager for the Polka domain but specifically for affine equalities. For Documentation for the domain see: https://antoinemine.github.io/Apron/doc/api/ocaml/Polka.html
module IntervalManager : sig ... endManager for the Box domain, i.e. an interval domain. For Documentation for the domain see: https://antoinemine.github.io/Apron/doc/api/ocaml/Box.html
val manager : (module Manager) lazy_tval get_manager : unit -> (module Manager)module A = GobApron.Abstract1module type AOpsPure = sig ... endPure environment and transfer functions.
module type AOpsImperative = sig ... endImperative in-place environment and transfer functions.
module type AOpsImperativeCopy = sig ... endmodule AOpsPureOfImperative
(AOpsImperative : AOpsImperativeCopy) :
AOpsPure with type t = AOpsImperative.tDefault implementations of pure functions from copy and imperative functions.
module type AOpsExtra = sig ... endExtra functions that don't have the pure-imperative correspondence.
module type AOps = sig ... endmodule AOps0 (Tracked : RelationDomain.Tracked) (Man : Manager) : sig ... endConvenience operations on A.
module AOps (Tracked : RelationDomain.Tracked) (Man : Manager) : sig ... endmodule type SPrintable = sig ... endmodule type SLattice = sig ... endmodule type S2 = sig ... endmodule OctagonD : sig ... endmodule type S3 = sig ... endLift D to a non-reduced product with box. Both are updated in parallel, but D answers to queries. Box domain is used to filter out non-relational invariants for output.
module BoxProd (D : S3) : RelationDomain.RD