package electrod

  1. Overview
  2. Docs
Formal analysis for the Electrod formal pivot language

Install

Dune Dependency

Authors

Maintainers

Sources

electrod-0.5.tbz
sha256=4f84384e51d9145d8c3af99b10512d2a872cc80d08e374deff50f1253bd75dd4
sha512=d7116b82e5879d91bc9e80aef1cecf46a7f5fa967b5881dfc29d30a5da0c71b802f8901dbc99f861534e020f3af254ef19b507088410f5dabcb753c430d2bb82

doc/electrod.libelectrod/Libelectrod/Domain/index.html

Module Libelectrod.DomainSource

The domain represents the set of relation declarations.

Sourcetype t

Virtually: a map between relation names and their definition as sets of tuples.

Sourceval empty : t

Constructor.

Sourceval add : Name.t -> Relation.t -> t -> t

Adds an asociation to the domain. The name must not be in the domain already.

Sourceval mem : Name.t -> t -> bool

Checks whether a name is already bound in the map.

Accessors

Sourceval get_exn : Name.t -> t -> Relation.t

May raise Not_found.

Sourceval get : Name.t -> t -> Relation.t option

May rather return None.

Sourceval univ_atoms : t -> Tuple_set.t

Returns the set of atoms in univ, represented as a Tuple_set.t

Sourceval to_list : t -> (Name.t * Relation.t) list

Returns the map as an association list

Sourceval of_list : (Name.t * Relation.t) list -> t
Sourceval equal : t -> t -> bool
Sourceval must : Name.t -> t -> Tuple_set.t

Returns the "may" and "must" tuple sets associated to a relation name.

Sourceval may : Name.t -> t -> Tuple_set.t
Sourceval sup : Name.t -> t -> Tuple_set.t
Sourceval musts : ?with_univ_and_ident:bool -> t -> (Name.t, Tuple_set.t) Containers.List.Assoc.t

Returns the association list between relation names and their "must" set.

Sourceval arities : t -> (Name.t, int) Containers.List.Assoc.t

Returns the association list between relation names and their arity.

Returns a new domain where atoms and relations have been renamed.

Sourceval update_domain_with_instance : t -> Instance.t -> t

For every entry in inst, update_domain_with_instance dom inst replaces the corresponding relation in dom with the exact scope given by inst.

include Intf.Print.S with type t := t
Sourceval pp : t Fmtc.t
Sourceval to_string : t -> string
OCaml

Innovation. Community. Security.

On This Page
  1. Accessors