X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2Fcontribs%2FPREDICATIVE-TOPOLOGY%2Fac_defs.ma;h=d23ed4e1a4272d26fb6dc8b62e67f4c593ad9f35;hb=8b55faddb06e3c4b0a13839210bb49170939b33e;hp=89e67c2f9dce96adce6cd4016658060d40060566;hpb=01856fd0fbc93c845b2f8fb3cec1e7a966f23210;p=helm.git diff --git a/helm/matita/contribs/PREDICATIVE-TOPOLOGY/ac_defs.ma b/helm/matita/contribs/PREDICATIVE-TOPOLOGY/ac_defs.ma index 89e67c2f9..d23ed4e1a 100644 --- a/helm/matita/contribs/PREDICATIVE-TOPOLOGY/ac_defs.ma +++ b/helm/matita/contribs/PREDICATIVE-TOPOLOGY/ac_defs.ma @@ -18,14 +18,19 @@ set "baseuri" "cic:/matita/PREDICATIVE-TOPOLOGY/ac_defs". -(* 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 *) +(* 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 predicative subset) as a + quantification domain and therefore as a category, but there is no + type in CIC representing the domain of a propositional function + - We set up a single equality predicate, parametric on the category, + defined as the reflexive, symmetic, transitive and compatible closure + of the aceq predicate given inside the category. Then we prove the + properties of the equality that usually are axiomatized inside the + category structure. This makes categories easier to use + *) record AC: Type \def { ac: Type; @@ -33,9 +38,8 @@ record AC: Type \def { aceq: ac \to ac \to Prop }. -definition a \def \lambda A. ac A. +coercion ac. -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. +inductive eq (A:AC) (a:A): A \to Prop \def + | eq_refl: acin ? a \to eq A a a. +(* | eq_sing_r: \forall b,c. eq A a b \to aceq A b c \to eq A a c. *)