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 (* These are the only exceptions that will be raised *)
15 exception TypeCheckerFailure of string Lazy.t
16 exception AssertFailure of string Lazy.t
19 ([ `Start_type_checking of NUri.uri
20 | `Type_checking_completed of NUri.uri
21 | `Type_checking_interrupted of NUri.uri
22 | `Type_checking_failed of NUri.uri
23 | `Trust_obj of NUri.uri
26 val set_trust : (NCic.obj -> bool) -> unit
29 #NCicEnvironment.status -> subst:NCic.substitution -> metasenv:NCic.metasenv ->
30 NCic.context -> NCic.term -> NCic.term
32 val height_of_obj_kind:
33 #NCicEnvironment.status -> NUri.uri -> subst:NCic.substitution -> NCic.obj_kind -> int
36 #NCicEnvironment.status ->
37 metasenv:NCic.metasenv -> subst:NCic.substitution ->
38 NCic.context -> NCic.term -> NCic.term list -> bool list
40 (* type_of_branch subst context leftno outtype
41 * (constr @ lefts) (ty_constr @ lefts) *)
43 #NCicEnvironment.status ->
44 subst:NCic.substitution ->
45 NCic.context -> int -> NCic.term -> NCic.term -> NCic.term ->
48 (* ind = indtype @ lefts
49 * arity1 = constructor type @ lefts
51 val check_allowed_sort_elimination :
52 #NCicEnvironment.status ->
53 subst:NCic.substitution ->
54 metasenv:NCic.metasenv ->
55 NReference.reference -> NCic.context ->
56 NCic.term -> NCic.term -> NCic.term -> unit
58 (* Functions to be used by the refiner *)
60 #NCicEnvironment.status -> NUri.uri -> int -> subst:NCic.substitution -> NCic.context ->
61 NCic.term -> NCic.term
63 val are_all_occurrences_positive:
64 #NCicEnvironment.status -> subst:NCic.substitution -> NCic.context -> NUri.uri -> int ->
65 int -> int -> int -> NCic.term -> bool
68 #NCicEnvironment.status -> subst:NCic.substitution -> NCic.context -> int -> int ->