package goblint
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=452d8491527aea21f2cbb11defcc14ba0daf9fdb6bdb9fc0af73e56eac57b916
sha512=1993cd45c4c7fe124ca6e157f07d17ec50fab5611b270a434ed1b7fb2910aa85a8e6eaaa77dad770430710aafb2f6d676c774dd33942d921f23e2f9854486551
doc/goblint.domain/HoareDomain/SetEM/index.html
Module HoareDomain.SetEM
Source
Set of Lattice.S
elements with Hoare ordering. This abstracts a set by its maximal elements.
Element-wise SetDomain.S
operations only observe the maximal elements.
This has a true widen
using the trivial Egli-Milner connector, i.e. convergence is even guaranteed if the number of maximal elements does not converge. Otherwise Set
is sufficient.
Parameters
Signature
include Lattice.S
include Lattice.PO
include Printable.S
val tag : t -> int
Unique ID, given by HConsed, for context identification in witness
widen x y
assumes leq x y
. Solvers guarantee this by calling widen old (join old new)
.
If leq x y = false
, then pretty_diff () (x, y)
should explain why.
type elt = E.t
val is_empty : t -> bool
See Set.S.remove
.
NB! On set abstractions this is a strong removal, i.e. all subsumed elements are also removed.
See Set.S.diff
.
NB! On set abstractions this is a strong removal, i.e. all subsumed elements are also removed.
See Set.S.iter
.
On set abstractions this iterates only over canonical elements, not all subsumed elements.
See Set.S.map
.
On set abstractions this maps only canonical elements, not all subsumed elements.
See Set.S.fold
.
On set abstractions this folds only over canonical elements, not all subsumed elements.
See Set.S.for_all
.
On set abstractions this checks only canonical elements, not all subsumed elements.
See Set.S.exists
.
On set abstractions this checks only canonical elements, not all subsumed elements.
See Set.S.filter
.
On set abstractions this filters only canonical elements, not all subsumed elements.
See Set.S.partition
.
On set abstractions this partitions only canonical elements, not all subsumed elements.
See Set.S.cardinal
.
On set abstractions this counts only canonical elements, not all subsumed elements.
See Set.S.elements
.
On set abstractions this lists only canonical elements, not all subsumed elements.
See Set.S.min_elt
.
On set abstractions this chooses only a canonical element, not any subsumed element.
See Set.S.max_elt
.
On set abstractions this chooses only a canonical element, not any subsumed element.