package mopsa
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
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/Languages/Universal/Numeric/Relational/Instances/HetPolyhedra/index.html
Module Instances.HetPolyhedra
val is_numerical_var : MopsaLib.var -> boolval print_env : Format.formatter -> Apron.Environment.t -> unitval to_constraints :
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
((Apron.Coeff.t * MopsaLib.var) list * Apron.Coeff.t * Apron.Lincons1.typ)
listval constraints_of_var :
MopsaLib.var ->
((Apron.Coeff.t * MopsaLib.var) list * 'a * 'b) list ->
((Apron.Coeff.t * MopsaLib.var) list * 'a * 'b) listval constant_vars :
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
MopsaLib.var listval binop_to_apron : MopsaLib.operator -> Apron.Texpr1.binopval typ_to_apron : MopsaLib.typ -> Apron.Texpr1.typval is_env_var : MopsaLib.var -> ('a Apron.Abstract1.t * Binding.t) -> boolval exp_to_apron :
(MopsaLib.expr -> bool) ->
MopsaLib.expr ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
Apron.Var.t list ->
Apron.Texpr1.expr
* Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Apron.Var.t listval bexp_to_apron :
(MopsaLib.expr -> bool) ->
MopsaLib.expr ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
Apron.Var.t list ->
(Apron.Tcons1.typ
* Apron.Texpr1.expr
* Framework.Core.Ast.Typ.typ
* Apron.Texpr1.expr
* Framework.Core.Ast.Typ.typ)
Mopsa_utils.Core.Dnf.t
* Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Apron.Var.t listtype t =
Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.tval id : t Mopsa_analyzer__Framework__Core__Id.idval debug : ('a, Format.formatter, unit, unit) format4 -> 'aval upper_dom : Binding.Equiv.t -> Mopsa_analyzer.MopsaLib.VarSet.tval check :
('a * Binding.Equiv.t * Mopsa_analyzer.MopsaLib.VarSet.t) ->
'a * Binding.Equiv.t * Mopsa_analyzer.MopsaLib.VarSet.tval add_missing_vars :
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
Mopsa_analyzer.MopsaLib.VarSet.elt list ->
Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.tval on_env :
Mopsa_analyzer.MopsaLib.VarSet.t ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
Polka.loose Polka.t Apron.Abstract1.tval print_dom : MopsaLib.printer -> MopsaLib.var list -> unitval print_state :
MopsaLib.printer ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
unitval proj_incl :
(Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) ->
boolval top :
Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.tval bottom :
Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.tval subset :
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
boolval strengthening :
(Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) ->
Apron.Lincons1.t list ->
Polka.loose Polka.t Apron.Abstract1.tval join :
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.tval meet :
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.tval widen :
'a ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.tval init :
'a ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
* Mopsa_analyzer.MopsaLib.Alarm.assumption_kind listval remove_var :
MopsaLib.var ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.tval forget_var :
MopsaLib.var ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t * 'a) ->
Polka.loose Polka.t Apron.Abstract1.t * Binding.t * 'aval bound_var :
MopsaLib.var ->
(Polka.loose Polka.t Apron.Abstract1.t * Binding.t * 'a) ->
Universal.Numeric.Values.Intervals.Integer.Value.tval is_var_numeric_type : MopsaLib.var -> boolval assume :
MopsaLib.stmt ->
(('a, bool) Framework.Core.Query.query -> bool) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
optionval merge :
('a * 'b * 'c) ->
((Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
* Mopsa_analyzer.MopsaLib.Change.change) ->
((Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
* Mopsa_analyzer.MopsaLib.Change.change) ->
Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.tval enforce_sign_constraint :
Framework.Core.All.var ->
(('a, bool) Framework.Core.Query.query -> bool) ->
'b Framework.Core.All.ctx ->
MopsaLib.range ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
option ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
optionval exec :
MopsaLib.stmt ->
('a, 'b) Mopsa_analyzer.MopsaLib.Sig.Abstraction.Simplified.simplified_man ->
'c Framework.Core.All.ctx ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.Equiv.t
* Mopsa_analyzer.MopsaLib.VarSet.t)
optionval vars : ('a Apron.Abstract1.t * Binding.t * 'b) -> MopsaLib.var listval eval_interval :
('a, 'b) Mopsa_analyzer.MopsaLib.Sig.Abstraction.Simplified.simplified_man ->
MopsaLib.expr ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
Mopsa_analyzer.MopsaLib.ItvUtils.IntItv.t_with_bot optionval ask :
('a, 'r) MopsaLib.query ->
('a, t) Mopsa_analyzer.MopsaLib.Sig.Abstraction.Simplified.simplified_man ->
'a MopsaLib.ctx ->
t ->
'r optionval print_expr :
('a, 'b) Mopsa_analyzer.MopsaLib.Sig.Abstraction.Simplified.simplified_man ->
'c Framework.Core.All.ctx ->
(Polka.loose Polka.t Apron.Abstract1.t
* Binding.t
* Mopsa_analyzer.MopsaLib.VarSet.t) ->
MopsaLib.printer ->
Framework.Core.Ast.Expr.expr ->
unit sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>