package lambdapi

  1. Overview
  2. Docs
Proof assistant for the λΠ-calculus modulo rewriting

Install

dune-project
 Dependency

Authors

Maintainers

Sources

lambdapi-3.0.0.tbz
sha256=1066aed2618fd8e6a400c5147dbf55ea977ce8d3fe2e518ac6785c6775a1b8be
sha512=f7f499626aba92e070ae69581299a58525973fdbfd04a160ed3ac89209fb6cbe307b816d0b23e1b75bc83467ce8b4b0530c6f9816eaf58f7a07fde65a450106c

doc/lambdapi.core/Core/LibMeta/index.html

Module Core.LibMetaSource

Functions to manipulate metavariables.

Sourceval log : 'a Lplib.Base.outfmt -> 'a
Sourceval meta_counter : int ref
Sourceval reset_meta_counter : unit -> unit

reset_meta_counter () resets the counter used to produce meta keys.

Sourceval fresh : Term.problem -> Term.term -> int -> Term.meta

fresh p ?name a n creates a fresh metavariable of type a and arity n with the optional name name, and adds it to p.

Sourceval set : Term.problem -> Term.meta -> Term.mbinder -> unit

set p m v sets the metavariable m of p to v. WARNING: No specific check is performed, so this function may lead to cyclic terms. To use with care.

make p ctx a creates a fresh metavariable term of type a in the context ctx, and adds it to p.

Sourceval make_codomain : Term.problem -> Term.ctxt -> Term.term -> Term.binder

make_codomain p ctx a creates a fresh metavariable term of type Type in the context ctx extended with a fresh variable of type a, and updates p with generated metavariables.

Sourceval iter : bool -> (Term.meta -> unit) -> Term.ctxt -> Term.term -> unit

iter b f c t applies the function f to every metavariable of t and, if x is a variable of t mapped to v in the context c, then to every metavariable of v, and to the type of every metavariable recursively if b is true.

Sourceval occurs : Term.meta -> Term.ctxt -> Term.term -> bool

occurs m c t tests whether the metavariable m occurs in the term t when variables defined in the context c are unfolded.

OCaml

Innovation. Community. Security.