package zelus

  1. Overview
  2. Docs
type value =
  1. | Vlocal of Zident.t
  2. | Vlast of Zident.t
  3. | Vconst of Zelus.desc

atomic expressions - either immediate constants or variables

type renaming = {
  1. rel : value Zident.Env.t;
  2. defs : Zident.S.t;
}
val empty : renaming
val append : value Zident.Env.t -> renaming -> renaming

Append a renaming with a new relation

A substitution n\last m is not performed when m belongs to defs

val size : renaming -> Zelus.size -> Zelus.size
val operator : renaming -> Zelus.op -> Zelus.op

Build a substitution x1\v1,...,xn\vn.

val expression : renaming -> Zelus.exp -> Zelus.exp

Expressions. Apply renaming to every sub-expression

Local declarations

val equation : (renaming * Zelus.eq list) -> Zelus.eq -> renaming * Zelus.eq list

renaming of equations

val equation_list : renaming -> Zelus.eq list -> renaming * Zelus.eq list
val block : renaming -> Zelus.eq list Zelus.block -> Zelus.eq list Zelus.block