package mopsa

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Reduction.SimplifiedSource

Reduction rules for reduced products of simplified domains

When a reduced product contains only domains with the simplified signature, reductions rules operate on the product of abstract environments instead of flows.

This simplifies the formulation of reductions and gives direct access to the non-relational abstraction (if any).

Reduction manager

Sourcetype ('a, 'b) simplified_reduction_man = {
  1. get_env : 't. 't Core.All.id -> 'b -> 't;
    (*

    Get the environment of some domain

    *)
  2. set_env : 't. 't Core.All.id -> 't -> 'b -> 'b;
    (*

    Set the environment of some domain

    *)
  3. get_value : 't. 't Core.All.id -> Core.All.var -> 'b -> 't;
    (*

    Get the value of a variable in some value abstraction

    *)
  4. set_value : 't. 't Core.All.id -> Core.All.var -> 't -> 'b -> 'b;
    (*

    Set the value of a variable in some value abstraction

    *)
  5. ask : 'r. ('a, 'r) Core.All.query -> 'a Core.All.ctx -> 'b -> 'r;
    (*

    Perform a query

    *)
}

Manager used by simplified reduction rules

Signature

Sourcemodule type SIMPLIFIED_REDUCTION = sig ... end

Registration

Sourceval register_simplified_reduction : (module SIMPLIFIED_REDUCTION) -> unit

Register a new simplified reduction

Sourceval find_simplified_reduction : string -> (module SIMPLIFIED_REDUCTION)

Find an simplified reduction by its name

Sourceval simplified_reductions : unit -> string list

List all simplified reductions

OCaml

Innovation. Community. Security.