X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=helm%2Focaml%2Fcic%2Fcic.ml;h=64825e505dbc717585e0b444cd19e97d1c3762a9;hb=6355ac16ff3996e16d9d9cfb08e4184bc7962f8b;hp=624a3021640ea23eb3b961a06578dbf72ed4d539;hpb=86241d46558e3a4979fc786e47ce78f90eb9190c;p=helm.git diff --git a/helm/ocaml/cic/cic.ml b/helm/ocaml/cic/cic.ml index 624a30216..64825e505 100644 --- a/helm/ocaml/cic/cic.ml +++ b/helm/ocaml/cic/cic.ml @@ -35,6 +35,8 @@ (* *) (*****************************************************************************) +(* $Id$ *) + (* STUFF TO MANAGE IDENTIFIERS *) type id = string (* the abstract type of the (annotated) node identifiers *) type 'term explicit_named_substitution = (UriManager.uri * 'term) list @@ -66,8 +68,9 @@ type object_class = [ `Coercion | `Elim of sort (** elimination principle; if sort is Type, the universe is * not relevant *) - | `Record of string list (** inductive type that encodes a record; - the arguments are the record fields *) + | `Record of (string * bool) list (** + inductive type that encodes a record; the arguments are + the record fields names and if they are coercions *) | `Projection (** record projection *) ] @@ -215,6 +218,10 @@ and annhypothesis = and anncontext = annhypothesis list ;; +type lazy_term = + context -> metasenv -> CicUniv.universe_graph -> + term * metasenv * CicUniv.universe_graph + type anntarget = Object of annobj (* if annobj is a Constant, this is its type *) | ConstantBody of annobj