package mopsa
MOPSA: A Modular and Open Platform for Static Analysis using Abstract Interpretation
Install
Dune Dependency
Authors
Maintainers
Sources
mopsa-analyzer-v1.1.tar.gz
md5=fdee20e988343751de440b4f6b67c0f4
sha512=f5cbf1328785d3f5ce40155dada2d95e5de5cce4f084ea30cfb04d1ab10cc9403a26cfb3fa55d0f9da72244482130fdb89c286a9aed0d640bba46b7c00e09500
doc/relational/Relational/Domain/Make/index.html
Module Domain.Make
Source
Parameters
module ApronManager : Apron_manager.APRONMANAGER
Signature
include sig ... end
Source
val filter_env :
(Apron.Var.t -> bool) ->
(Apron.Var.t -> bool) ->
Apron.Environment.t ->
Apron.Environment.t
Source
val to_constraints :
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
((Apron.Coeff.t * Mopsa.var) list * Apron.Coeff.t * Apron.Lincons1.typ) list
Source
val remove_tmp :
Apron.Var.t list ->
ApronManager.t Apron.Abstract1.t ->
ApronManager.t Apron.Abstract1.t
Source
val exp_to_apron :
(Mopsa.expr -> bool) ->
Mopsa.expr ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
Apron.Var.t list ->
Apron.Texpr1.expr
* ApronManager.t Apron.Abstract1.t
* Binding.t
* Apron.Var.t list
Source
val bexp_to_apron :
(Mopsa.expr -> bool) ->
Mopsa.expr ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
Apron.Var.t list ->
(Apron.Tcons1.typ
* Apron.Texpr1.expr
* Ast.Typ.typ
* Apron.Texpr1.expr
* Ast.Typ.typ)
Mopsa.Dnf.t
* ApronManager.t Apron.Abstract1.t
* Binding.t
* Apron.Var.t list
Source
val tcons_array_of_tcons_list :
Apron.Environment.t ->
Apron.Tcons1.t list ->
Apron.Tcons1.earray
Bindings between Mopsa and Apron variables
include sig ... end
val id : t Core__Id.id
Environment utility functions
*********************************
Source
val unify :
ApronManager.t Apron.Abstract1.t ->
ApronManager.t Apron.Abstract1.t ->
ApronManager.t Apron.Abstract1.t * ApronManager.t Apron.Abstract1.t * bool
Source
val add_missing_vars :
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
Mopsa.var list ->
ApronManager.t Apron.Abstract1.t * Binding.t
Lattice operators
*********************
Source
val subset :
(ApronManager.t Apron.Abstract1.t * 'a) ->
(ApronManager.t Apron.Abstract1.t * 'b) ->
bool
Source
val join :
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
ApronManager.t Apron.Abstract1.t * Binding.Equiv.t
Source
val meet :
(ApronManager.t Apron.Abstract1.t * Binding.Equiv.t) ->
(ApronManager.t Apron.Abstract1.t * Binding.Equiv.t) ->
ApronManager.t Apron.Abstract1.t * Binding.Equiv.t
Source
val widen :
'a ->
(ApronManager.t Apron.Abstract1.t * Binding.Equiv.t) ->
(ApronManager.t Apron.Abstract1.t * Binding.Equiv.t) ->
ApronManager.t Apron.Abstract1.t * Binding.Equiv.t
Transfer functions
**********************
Source
val remove_var :
Mopsa.var ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
ApronManager.t Apron.Abstract1.t * Binding.Equiv.t
Source
val forget_var :
Mopsa.var ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
ApronManager.t Apron.Abstract1.t * Binding.t
Source
val bound_var :
Mopsa.var ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
Numeric_values.Values.Intervals.Integer.Value.t
Source
val assume :
Mopsa.stmt ->
(('a, bool) Core.Query.query -> bool) ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
(ApronManager.t Apron.Abstract1.t * Binding.t) option
Source
val merge :
('a * 'b) ->
((ApronManager.t Apron.Abstract1.t * Binding.Equiv.t) * Mopsa.change) ->
((ApronManager.t Apron.Abstract1.t * Binding.Equiv.t) * Mopsa.change) ->
ApronManager.t Apron.Abstract1.t * Binding.Equiv.t
Source
val enforce_sign_constraint :
Core.All.var ->
(('a, bool) Core.Query.query -> bool) ->
'b Core.All.ctx ->
Mopsa.range ->
(ApronManager.t Apron.Abstract1.t * Binding.t) option ->
(ApronManager.t Apron.Abstract1.t * Binding.t) option
Add the sign contraint (if existing) of a given variable into the relationnal domain
Source
val exec :
Mopsa.stmt ->
('a, 'b) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
'c Core.All.ctx ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
(ApronManager.t Apron.Abstract1.t * Binding.t) option
Source
val eval_interval :
('a, 'b) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
Mopsa.expr ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
Mopsa.ItvUtils.IntItv.t_with_bot option
Source
val ask :
'r. ('a, 'r) Mopsa.query ->
('a, t) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
'a Mopsa.ctx ->
t ->
'r option
Source
val print_expr :
('a, 'b) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
'c Core.All.ctx ->
(ApronManager.t Apron.Abstract1.t * Binding.t) ->
Mopsa.printer ->
Ast.Expr.expr ->
unit
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page