]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/software/components/cic/cic.ml
matitaGui: some missing cases during disambiguation now treated
[helm.git] / helm / software / components / cic / cic.ml
index 64825e505dbc717585e0b444cd19e97d1c3762a9..c5a5c1e4079991118daf4110fa7fef1c8a785c62 100644 (file)
@@ -62,16 +62,19 @@ type object_flavour =
   | `Remark
   | `Theorem
   | `Variant
+  | `Axiom
   ]
 
 type object_class =
-  [ `Coercion
+  [ `Coercion of int
   | `Elim of sort   (** elimination principle; if sort is Type, the universe is
                       * not relevant *)
-  | `Record of (string * bool) list (** 
+  | `Record of (string * bool * int) list (** 
                         inductive type that encodes a record; the arguments are
-                        the record fields names and if they are coercions *)
+                        the record fields names and if they are coercions and
+                        then the coercion arity *)
   | `Projection     (** record projection *)
+  | `InversionPrinciple (** inversion principle *)
   ]
 
 type attribute =
@@ -234,7 +237,7 @@ module CicHash =
   (struct
     type t = term
     let equal = (==)
-    let hash = Hashtbl.hash
+    let hash = Hashtbl.hash_param 100 1000 
    end)
 ;;