package lambdapi
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=1066aed2618fd8e6a400c5147dbf55ea977ce8d3fe2e518ac6785c6775a1b8be
sha512=f7f499626aba92e070ae69581299a58525973fdbfd04a160ed3ac89209fb6cbe307b816d0b23e1b75bc83467ce8b4b0530c6f9816eaf58f7a07fde65a450106c
doc/lambdapi.core/Core/LibMeta/index.html
Module Core.LibMeta
Source
Functions to manipulate metavariables.
reset_meta_counter ()
resets the counter used to produce meta keys.
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
.
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
.
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.
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.