X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Ftests%2Fcoercions.ma;h=ca8c4abab583ff93c6bf583a4a5dc329c7f7847c;hb=1776f357e1a69fa1133956660b65d7bafdfe5c25;hp=e792bd78010b3a67a87f3455be0ff3998f5e891b;hpb=2499f5fdcf4dbfecc6f4fafe925b24ae76f14be8;p=helm.git diff --git a/matita/tests/coercions.ma b/matita/tests/coercions.ma index e792bd780..ca8c4abab 100644 --- a/matita/tests/coercions.ma +++ b/matita/tests/coercions.ma @@ -15,7 +15,7 @@ set "baseuri" "cic:/matita/tests/coercions/". include "nat/compare.ma". -include "datatypes/bool.ma". +include "nat/times.ma". inductive pos: Set \def | one : pos @@ -59,10 +59,14 @@ definition double2: \def \lambda f:int \to int. \lambda x : pos .f (nat2int (pos2nat x)). +(* This used to test eq_f as a coercion. However, posing both eq_f and sym_eq + as coercions made the qed time of some TPTP problems reach infty. + Thus eq_f is no longer a coercion (nor is sym_eq). theorem coercion_svelta : \forall T,S:Type.\forall f:T \to S.\forall x,y:T.x=y \to f y = f x. intros. apply ((\lambda h:f y = f x.h) H). qed. +*) variant pos2nat' : ? \def pos2nat. @@ -103,9 +107,41 @@ definition map: \forall n:nat.\forall l:listn nat n. nat \to nat \def definition church: nat \to nat \to nat \def times. coercion cic:/matita/tests/coercions/church.con 1. +lemma foo0 : ∀n:nat. n n = n * n. +intros; reflexivity; +qed. +lemma foo01 : ∀n:nat. n n n = n * n * n. +intros; reflexivity; +qed. definition mapmult: \forall n:nat.\forall l:listn nat n. nat \to nat \to nat \def - \lambda n:nat.\lambda l:listn nat n.\lambda m,o:nat.l m o. + \lambda n:nat.\lambda l:listn nat n.\lambda m,o:nat. + l (m m) o (o o o). + +lemma foo : ∀n:nat. n n n n n n = n * n * n * n * n * n. +intros; reflexivity; +qed. + +axiom f : nat → nat. + +lemma foo1 : ∀n:nat. f n n = f n * n. + +axiom T0 : Type. +axiom T1 : Type. +axiom T2 : Type. +axiom T3 : Type. + +axiom c1 : T0 -> T1. +axiom c2 : T1 -> T2. +axiom c3 : T2 -> T3. +axiom c4 : T2 -> T1. + +coercion cic:/matita/tests/coercions/c1.con. +coercion cic:/matita/tests/coercions/c2.con. +coercion cic:/matita/tests/coercions/c3.con. +coercion cic:/matita/tests/coercions/c4.con. + +