2 ||M|| This file is part of HELM, an Hypertextual, Electronic
3 ||A|| Library of Mathematics, developed at the Computer Science
4 ||T|| Department, University of Bologna, Italy.
6 ||T|| HELM is free software; you can redistribute it and/or
7 ||A|| modify it under the terms of the GNU General Public License
8 \ / version 2 or (at your option) any later version.
9 \ / This software is distributed as is, NO WARRANTY.
10 V_______________________________________________________________ *)
14 exception AssertFailure of string Lazy.t;;
19 #NCic.status -> ?delta:int -> subst:NCic.substitution ->
20 NCic.context -> NCic.term -> NCic.term
22 val set_get_relevance :
23 (NCic.status -> metasenv:NCic.metasenv -> subst:NCic.substitution ->
24 NCic.context -> NCic.term -> NCic.term list -> bool list) -> unit
27 #NCic.status -> metasenv:NCic.metasenv -> subst:NCic.substitution ->
28 NCic.context -> NCic.term -> NCic.term -> bool
31 (* performs head beta/(delta)/cast reduction; the default is to not perform
32 delta reduction; if provided, ~upto is the maximum number of beta redexes
35 #NCic.status -> ?delta:int -> ?upto:int -> ?subst:NCic.substitution ->
36 NCic.term -> NCic.term
41 type machine = int * environment_item list * NCic.term * stack_item list
44 #NCic.status -> delta:int -> ?subst:NCic.substitution -> NCic.context ->
45 machine -> machine * bool
46 val from_stack : delta:int -> stack_item -> machine
47 val from_env : delta:int -> environment_item -> machine
48 val unwind : #NCic.status -> machine -> NCic.term
51 #NCic.status -> subst:NCic.substitution -> NCic.context -> int -> NCic.term ->
52 NCic.context * NCic.term
54 (* to be used outside the kernel *)
56 #NCic.status -> NCic.metasenv -> NCic.substitution -> NCic.context ->
57 NCic.term -> NCic.term -> bool