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 RefineFailure of (Stdpp.location * string) Lazy.t;;
15 exception Uncertain of (Stdpp.location * string) Lazy.t;;
16 exception AssertFailure of string Lazy.t;;
20 ?localise:(NCic.term -> Stdpp.location) ->
22 NCic.metasenv -> NCic.substitution -> NCic.context ->
23 (* inferred type, expected type *)
24 NCic.term -> NCic.term ->
25 (* enriched metasenv, new term, its type, metavriable to
26 * be unified with the old term *)
27 (NCic.metasenv * NCic.term * NCic.term * NCic.term) list
29 NCic.metasenv -> NCic.substitution -> NCic.context ->
30 NCic.term -> NCic.term option -> (* term, expected type *)
31 NCic.metasenv * NCic.substitution * NCic.term * NCic.term
32 (* menv, subst,refined term, type *)
36 ?localise:(NCic.term -> Stdpp.location) ->
38 NCic.metasenv -> NCic.substitution -> NCic.context ->
39 (* inferred type, expected type *)
40 NCic.term -> NCic.term ->
41 (* enriched metasenv, new term, its type, metavriable to
42 * be unified with the old term *)
43 (NCic.metasenv * NCic.term * NCic.term * NCic.term) list