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.1.tar.gz
    
    
        
    
  
  
  
    
  
  
    
  
        md5=fdee20e988343751de440b4f6b67c0f4
    
    
  sha512=f5cbf1328785d3f5ce40155dada2d95e5de5cce4f084ea30cfb04d1ab10cc9403a26cfb3fa55d0f9da72244482130fdb89c286a9aed0d640bba46b7c00e09500
    
    
  doc/relational/Relational/Instances/Polyhedra/index.html
Module Instances.PolyhedraSource
Source
val filter_env : 
  (Apron.Var.t -> bool) ->
  (Apron.Var.t -> bool) ->
  Apron.Environment.t ->
  Apron.Environment.tSource
val remove_tmp : 
  Apron.Var.t list ->
  Polka.loose Polka.t Apron.Abstract1.t ->
  Polka.loose Polka.t Apron.Abstract1.tSource
val exp_to_apron : 
  (Mopsa.expr -> bool) ->
  Mopsa.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 listSource
val bexp_to_apron : 
  (Mopsa.expr -> bool) ->
  Mopsa.expr ->
  (Polka.loose Polka.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
  * Polka.loose Polka.t Apron.Abstract1.t
  * Binding.t
  * Apron.Var.t listSource
val tcons_array_of_tcons_list : 
  Apron.Environment.t ->
  Apron.Tcons1.t list ->
  Apron.Tcons1.earrayval id : t Core__Id.idSource
val unify : 
  Polka.loose Polka.t Apron.Abstract1.t ->
  Polka.loose Polka.t Apron.Abstract1.t ->
  Polka.loose Polka.t Apron.Abstract1.t
  * Polka.loose Polka.t Apron.Abstract1.t
  * boolSource
val print_state : 
  Mopsa.printer ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  unitSource
val subset : 
  (Polka.loose Polka.t Apron.Abstract1.t * 'a) ->
  (Polka.loose Polka.t Apron.Abstract1.t * 'b) ->
  boolSource
val join : 
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.tSource
val meet : 
  (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.tSource
val widen : 
  'a ->
  (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.tSource
val remove_var : 
  Mopsa.var ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.tSource
val bound_var : 
  Mopsa.var ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  Numeric_values.Values.Intervals.Integer.Value.tSource
val assume : 
  Mopsa.stmt ->
  (('a, bool) Core.Query.query -> bool) ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) optionSource
val merge : 
  ('a * 'b) ->
  ((Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) * Mopsa.change) ->
  ((Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.t) * Mopsa.change) ->
  Polka.loose Polka.t Apron.Abstract1.t * Binding.Equiv.tSource
val enforce_sign_constraint : 
  Core.All.var ->
  (('a, bool) Core.Query.query -> bool) ->
  'b Core.All.ctx ->
  Mopsa.range ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) option ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) optionSource
val exec : 
  Mopsa.stmt ->
  ('a, 'b) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
  'c Core.All.ctx ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) optionSource
val eval_interval : 
  ('a, 'b) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
  Mopsa.expr ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  Mopsa.ItvUtils.IntItv.t_with_bot optionSource
val ask : 
  ('a, 'r) Mopsa.query ->
  ('a, t) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
  'a Mopsa.ctx ->
  t ->
  'r optionSource
val print_expr : 
  ('a, 'b) Mopsa.Sig.Abstraction.Simplified.simplified_man ->
  'c Core.All.ctx ->
  (Polka.loose Polka.t Apron.Abstract1.t * Binding.t) ->
  Mopsa.printer ->
  Ast.Expr.expr ->
  unit sectionYPositions = computeSectionYPositions($el), 10)"
  x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
  >