| (TGRef y n)     \Rightarrow O
   ].
 
-definition weight : \forall A,N. T A N \to nat \def \lambda A,N.(weight_map A N (\lambda _.O)).
+definition weight: \forall A,N. T A N \to nat \def 
+   \lambda A,N. 
+   (weight_map A N (\lambda _.O)).
 
-definition tlt : \forall A,N. T A N \to T A N \to Prop \def \lambda A,N. \lambda t1,t2. weight A N t1 < weight A N t2.
+definition tlt: \forall A,N. T A N \to T A N \to Prop \def 
+   \lambda A,N,t1,t2. 
+   weight A N t1 < weight A N t2.
 
--- /dev/null
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+set "baseuri" "cic:/matita/PREDICATIVE-TOPOLOGY/ac_defs".
+
+(* Project started Wed Oct 12, 2005 ***************************************)
+
+
+
+(* ACZEL CATEGORIES:                                                      *)
+(* We use typoids with a compatible membership relation                   *)
+(* The category is intended to be the domain of the membership relation   *)
+(* The membership relation is necessary because we need to regard the     *)
+(* domain of a propositional function (ie a subset in the predicative     *)
+(* setting) as a quantification domain and therefore as a category, but   *)
+(* there is no type in CIC representing the domain of a propositional     *)
+(* function                                                               *)
+
+record AC: Type \def {
+   ac: Type;
+   acin: ac \to Prop;
+   aceq: ac \to ac \to Prop
+}.
+
+definition a \def \lambda A. ac A.
+
+coercion a. 
+
+inductive eq (A:AC) : ac A \to ac A \to Prop \def
+   | eq_refl: \forall a. acin ? a \to eq A a a.