]> matita.cs.unibo.it Git - helm.git/blob - helm/gTopLevel/esempi/prova.cic
snapshot
[helm.git] / helm / gTopLevel / esempi / prova.cic
1 alias eq   /Coq/Init/Logic/eq.ind#1/1
2 alias nat  /Coq/Init/Datatypes/nat.ind#1/1
3 alias O    /Coq/Init/Datatypes/nat.ind#1/1/1
4 alias S    /Coq/Init/Datatypes/nat.ind#1/1/2
5 alias plus /Coq/Init/Peano/plus.con
6 alias mult /Coq/Init/Peano/mult.con
7 (mult (plus (S (S O)) (S O)) (S (S O)))
8 Case ((S O) : nat ; nat) { O ; \x:nat.x }
9 Fix f {f(0) : !x:nat.nat ; g(0) : !x:nat.nat}
10  { \x:nat.O
11  ; \x:nat.
12     Case (x : nat ; nat) { (S O) ; \x:nat.(f x) }
13  }
14
15 (* Nel caso seguente sbagliavamo a fare la whd!!!! *)
16 !n:nat.(eq nat O (Case (n : nat ; \z:nat.!a:nat.nat) {\x:nat.x ; \y:nat.\x:nat.x} O))