package mopsa
Module Value.Union
Union of value abstractions.
This combiner implements a disjoint union between š value abstractions š±ā, ..., š±ā. Each abstraction š±įµ¢ represent values of types šįµ¢, such that: ā j ā i: šįµ¢ ā© šā±¼ = ā . The types represented by the combiner is šā āŖ ... āŖ šā.
The union is represented with a cartesian product. The concretization of a union of values is the union of the concretizations: γ(vā,...,vā) = γā(vā) āŖ ... ⪠γā(vā).
module Make
(V1 : Sig.Abstraction.Value.VALUE)
(V2 : Sig.Abstraction.Value.VALUE) :
Sig.Abstraction.Value.VALUE with type t = V1.t * V2.tCreate a disjoint union of two value abstractions
val make :
(module Sig.Abstraction.Value.VALUE) list ->
(module Sig.Abstraction.Value.VALUE)Create a disjoint union of a list of value abstractions