X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fmatita%2Ftests%2Ffirst.ma;fp=helm%2Fmatita%2Ftests%2Ffirst.ma;h=d75f372cea9d75bd4a8cccf3f99b14b8771305eb;hb=ebc063e65d908c9f35619c92454dbbe76bdabd40;hp=0000000000000000000000000000000000000000;hpb=7793efe5c9ac8ff4c71579e6fc0aa4764dd2bc9e;p=helm.git diff --git a/helm/matita/tests/first.ma b/helm/matita/tests/first.ma new file mode 100644 index 000000000..d75f372ce --- /dev/null +++ b/helm/matita/tests/first.ma @@ -0,0 +1,25 @@ +set "baseuri" "cic:/matita/tests/first/". + +inductive nat : Set \def + | O : nat + | S : nat \to nat. + +inductive eq (A:Set): A \to A \to Prop \def + refl: \forall x:A.eq A x x. + +inductive list (A:Set) : Set \def + | nil : list A + | cons : A \to list A \to list A. +alias symbol "cast" (instance 0) = "type cast". + +let rec list_len (A:Set) (l:list A) on l \def + [\lambda x.nat] + match (l:list A) with + [ nil \Rightarrow O + | (cons a tl) \Rightarrow S (list_len A tl)]. + +theorem stupid: \forall A:Set.eq ? (list_len A (nil ?)) O. +intros. +normalize. +apply refl. +qed.