package mopsa
MOPSA: A Modular and Open Platform for Static Analysis using Abstract Interpretation
Install
dune-project
Dependency
Authors
Maintainers
Sources
mopsa-analyzer-v1.2.tar.gz
md5=37966e98ffeebcedc09bd6e9b2b81f69
sha512=40d4d826c25f680766c07eccbabdf5e8a4fa023016e8a164e4e4f6b3781c8484dc4df437055721dfd19b9db8fb7fe3b61236c4833186d346fc7204a68d01eaaa
doc/mopsa.mopsa_analyzer/Mopsa_analyzer/Framework/Combiners/Value/Union/index.html
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.t
Create 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
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>