changeset 346:0fb47d8ff0ed

fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 19 Apr 2014 14:39:54 +0900
parents 17acb62419ac
children 87ad542e4145
files system-t.agda
diffstat 1 files changed, 89 insertions(+), 89 deletions(-) [+]
line wrap: on
line diff
--- a/system-t.agda	Sat Apr 19 11:34:49 2014 +0900
+++ b/system-t.agda	Sat Apr 19 14:39:54 2014 +0900
@@ -6,7 +6,7 @@
        π1 : U
        π2 : V
 
-<_,_> : {U V : Set} -> U -> V -> U × V
+<_,_> : {U V : Set} → U → V → U × V
 < u , v >  = record {π1 = u ; π2 = v }
 
 open _×_
@@ -17,8 +17,8 @@
 postulate v : V
 postulate u : U
 
-f : U -> V
-f = \u -> v
+f : U → V
+f = λ u → v
 
 
 UV : Set
@@ -49,7 +49,7 @@
   T : Bool 
   F : Bool
 
-D : { U : Set } -> U -> U -> Bool -> U 
+D : { U : Set } → U → U → Bool → U 
 D u v T = u 
 D u v F = v
 
@@ -57,42 +57,42 @@
     zero : Int
     S : Int →  Int
 
-pred : Int -> Int
+pred : Int → Int
 pred zero = zero
 pred (S t) = t
 
-R : { U : Set } -> U -> ( U -> Int -> U ) -> Int -> U
+R : { U : Set } → U → ( U → Int → U ) → Int → U
 R u v zero = u 
 R u v ( S t ) = v (R u v t) t
 
-null : Int -> Bool
+null : Int → Bool
 null zero = T
 null (S _)  = F
 
-It : { T : Set } -> T -> (T -> T) -> Int -> T
+It : { T : Set } → T → (T → T) → Int → T
 It u v zero = u
 It u v ( S t ) = v (It u v t )
 
-R' : { T : Set } -> T -> ( T -> Int -> T ) -> Int -> T
+R' : { T : Set } → T → ( T → Int → T ) → Int → T
 R' u v t = π1 ( It ( < u , zero > ) (λ x →  < v (π1 x) (π2 x) , S (π2 x) > ) t )
 
-sum : Int -> Int -> Int
-sum x y = R y ( λ z -> λ w -> S z ) x
+sum : Int → Int → Int
+sum x y = R y ( λ z → λ w → S z ) x
 
-mul : Int -> Int -> Int
-mul x y = R zero ( λ z -> λ w -> sum y z ) x 
+mul : Int → Int → Int
+mul x y = R zero ( λ z → λ w → sum y z ) x 
 
-sum' : Int -> Int -> Int
-sum' x y = R' y ( λ z -> λ w -> S z ) x
+sum' : Int → Int → Int
+sum' x y = R' y ( λ z → λ w → S z ) x
 
-mul' : Int -> Int -> Int
-mul' x y = R' zero ( λ z -> λ w -> sum y z ) x
+mul' : Int → Int → Int
+mul' x y = R' zero ( λ z → λ w → sum y z ) x
 
-fact : Int -> Int
-fact  n = R  (S zero) (λ z -> λ w -> mul (S w) z ) n
+fact : Int → Int
+fact  n = R  (S zero) (λ z → λ w → mul (S w) z ) n
 
-fact' : Int -> Int
-fact' n = R' (S zero) (λ z -> λ w -> mul (S w) z ) n
+fact' : Int → Int
+fact' n = R' (S zero) (λ z → λ w → mul (S w) z ) n
 
 f3 = fact (S (S (S zero)))
 f3' = fact' (S (S (S zero)))
@@ -100,80 +100,80 @@
 lemma21 : f3 ≡ f3'
 lemma21 = refl
 
-lemma07 : { U : Set } -> ( u : U ) -> ( v : U -> Int -> U ) ->( t :  Int ) -> 
+lemma07 : { U : Set } → ( u : U ) → ( v : U → Int → U ) →( t :  Int ) → 
         (π2 (It < u , zero > (λ x → < v (π1 x) (π2 x) , S (π2 x) >) t )) ≡  t
 lemma07 u v zero   =  refl
-lemma07 u v (S t)  =  cong ( \x -> S x ) ( lemma07 u v t )
+lemma07 u v (S t)  =  cong ( λ x → S x ) ( lemma07 u v t )
 
-lemma06 : { U : Set } -> ( u : U ) -> ( v : U -> Int -> U ) ->( t :  Int ) -> ( (R u v t) ≡  (R' u v t ))
+lemma06 : { U : Set } → ( u : U ) → ( v : U → Int → U ) →( t :  Int ) → ( (R u v t) ≡  (R' u v t ))
 lemma06 u v zero = refl 
-lemma06 u v (S t) =  trans  ( cong ( \x ->  v x t )  ( lemma06 u v t ) ) 
-                            ( cong ( \y ->  v (R' u v t) y ) (sym ( lemma07 u v t ) ) )
+lemma06 u v (S t) =  trans  ( cong ( λ x →  v x t )  ( lemma06 u v t ) ) 
+                            ( cong ( λ y →  v (R' u v t) y ) (sym ( lemma07 u v t ) ) )
 
-lemma08 : ( n m : Int ) -> ( sum' n m ≡ sum n m )
+lemma08 : ( n m : Int ) → ( sum' n m ≡ sum n m )
 lemma08 zero _ = refl 
-lemma08 (S t) y =  cong ( \x -> S x ) ( lemma08 t y ) 
+lemma08 (S t) y =  cong ( λ x → S x ) ( lemma08 t y ) 
 
-lemma09 : ( n m : Int ) -> ( mul' n m ≡ mul n m )
+lemma09 : ( n m : Int ) → ( mul' n m ≡ mul n m )
 lemma09 zero _ = refl 
-lemma09 (S t) y =  cong ( \x -> sum y x) ( lemma09 t y ) 
+lemma09 (S t) y =  cong ( λ x → sum y x) ( lemma09 t y ) 
 
-lemma10 : ( n : Int ) -> ( fact n  ≡ fact n )
+lemma10 : ( n : Int ) → ( fact n  ≡ fact n )
 lemma10 zero = refl 
-lemma10 (S t) =  cong ( \x -> mul (S t) x ) ( lemma10 t ) 
+lemma10 (S t) =  cong ( λ x → mul (S t) x ) ( lemma10 t ) 
 
-lemma11 : ( n : Int ) -> ( fact n  ≡ fact' n )
-lemma11 n = lemma06 (S zero) (λ z -> λ w -> mul (S w) z ) n
+lemma11 : ( n : Int ) → ( fact n  ≡ fact' n )
+lemma11 n = lemma06 (S zero) (λ z → λ w → mul (S w) z ) n
 
-lemma06' : { U : Set } -> ( u : U ) -> ( v : U -> Int -> U ) ->( t :  Int ) -> ( (R u v t) ≡  (R' u v t ))
+lemma06' : { U : Set } → ( u : U ) → ( v : U → Int → U ) →( t :  Int ) → ( (R u v t) ≡  (R' u v t ))
 lemma06' u v zero = refl
 lemma06' u v (S t) = let open ≡-Reasoning in 
    begin 
        R u v (S t)
    ≡⟨⟩
        v (R u v t) t
-   ≡⟨ cong (\x -> v x t ) ( lemma06' u v t )  ⟩
+   ≡⟨ cong (λ x → v x t ) ( lemma06' u v t )  ⟩
        v (R' u v t) t
-   ≡⟨ cong (\x -> v (R' u v t) x ) ( sym ( lemma07 u v t )) ⟩
+   ≡⟨ cong (λ x → v (R' u v t) x ) ( sym ( lemma07 u v t )) ⟩
        v (R' u v t) (π2 (It < u , zero > (λ x → < v (π1 x) (π2 x) , S (π2 x) >) t))
    ≡⟨⟩
        R' u v (S t)

 
 
-lemma13 : (x y : Int) -> sum x (S y)  ≡ S (sum x y )
-lemma13 zero y = refl
-lemma13 (S x) y = cong (\x -> S x ) (lemma13  x y )
+sum1 : (x y : Int) → sum x (S y)  ≡ S (sum x y )
+sum1 zero y = refl
+sum1 (S x) y = cong (λ x → S x ) (sum1  x y )
 
-lemma14sym : (x y : Int) -> sum x y  ≡ sum y x
-lemma14sym zero zero = refl
-lemma14sym zero (S t) = cong (\x -> S x )( lemma14sym zero t)
-lemma14sym (S t) zero = cong (\x -> S x ) ( lemma14sym t zero )
-lemma14sym (S t) (S t') =  let open ≡-Reasoning in 
+sum-sym : (x y : Int) → sum x y  ≡ sum y x
+sum-sym zero zero = refl
+sum-sym zero (S t) = cong (λ x → S x )( sum-sym zero t)
+sum-sym (S t) zero = cong (λ x → S x ) ( sum-sym t zero )
+sum-sym (S t) (S t') =  let open ≡-Reasoning in 
    begin 
        sum (S t) (S t')
    ≡⟨⟩
        S (sum t (S t')) 
-   ≡⟨ cong ( \x -> S x ) ( lemma13 t t') ⟩
+   ≡⟨ cong ( λ x → S x ) ( sum1 t t') ⟩
        S ( S (sum t t')) 
-   ≡⟨ cong ( \x -> S (S x ) ) ( lemma14sym t t') ⟩
+   ≡⟨ cong ( λ x → S (S x ) ) ( sum-sym t t') ⟩
        S ( S (sum t' t)) 
-   ≡⟨ sym ( cong ( \x -> S x ) ( lemma13 t' t)) ⟩
+   ≡⟨ sym ( cong ( λ x → S x ) ( sum1 t' t)) ⟩
        S (sum t' (S t)) 
    ≡⟨⟩
-       R (S t) ( λ z -> λ w -> S z ) (S t')
+       R (S t) ( λ z → λ w → S z ) (S t')
    ≡⟨⟩
        sum (S t') (S t)

 
-lemma16assoc : (x y z : Int) -> sum x (sum y z ) ≡ sum (sum x y)  z 
-lemma16assoc zero y z  = refl
-lemma16assoc (S x) y z =  let open ≡-Reasoning in
+sum-assoc : (x y z : Int) → sum x (sum y z ) ≡ sum (sum x y)  z 
+sum-assoc zero y z  = refl
+sum-assoc (S x) y z =  let open ≡-Reasoning in
    begin
      sum (S x) ( sum y z )
    ≡⟨⟩
      S ( sum x ( sum y z ) )
-   ≡⟨ cong (\x -> S x ) ( lemma16assoc x y z) ⟩
+   ≡⟨ cong (λ x → S x ) ( sum-assoc x y z) ⟩
      S ( sum (sum x y) z )
    ≡⟨⟩
      sum (S ( sum x y)) z
@@ -181,25 +181,25 @@
      sum (sum (S x) y) z

 
-lemma15'' : (x y : Int) -> mul x (S y) ≡ sum x ( mul x y )
-lemma15'' zero y = refl
-lemma15'' (S x) y =   let open ≡-Reasoning in
+mul-distr1 : (x y : Int) → mul x (S y) ≡ sum x ( mul x y )
+mul-distr1 zero y = refl
+mul-distr1 (S x) y =   let open ≡-Reasoning in
    begin
      mul (S x) (S y)
    ≡⟨⟩
      sum (S y) (mul x (S y))
    ≡⟨⟩
      S (sum y (mul x (S y)  ))
-   ≡⟨ cong (\t -> S ( sum y t )) (lemma15'' x y ) ⟩
+   ≡⟨ cong (λ t → S ( sum y t )) (mul-distr1 x y ) ⟩
      S (sum y (sum x (mul x y)))
-   ≡⟨ cong (\x -> S x ) (
+   ≡⟨ cong (λ x → S x ) (
    begin
      sum y (sum x (mul x y))
-   ≡⟨ lemma16assoc y x (mul x y) ⟩
+   ≡⟨ sum-assoc y x (mul x y) ⟩
      sum (sum y x) (mul x y)
-   ≡⟨ cong (\t -> sum t (mul x y)) (lemma14sym y x ) ⟩
+   ≡⟨ cong (λ t → sum t (mul x y)) (sum-sym y x ) ⟩
      sum (sum x y) (mul x y)
-   ≡⟨ sym ( lemma16assoc x y (mul x y)) ⟩
+   ≡⟨ sym ( sum-assoc x y (mul x y)) ⟩
      sum x (sum y (mul x y))

    ) ⟩
@@ -210,71 +210,71 @@
      sum (S x) (mul (S x) y)

 
-lemma15' : (x : Int) -> mul zero x  ≡ mul x zero 
-lemma15' zero = refl
-lemma15' (S x) =  lemma15' x
+mul-sym0 : (x : Int) → mul zero x  ≡ mul x zero 
+mul-sym0 zero = refl
+mul-sym0 (S x) =  mul-sym0 x
 
-lemma15 : (x y : Int) -> mul x y  ≡ mul y x
-lemma15 zero x =  lemma15' x
-lemma15 (S x) y =  let open ≡-Reasoning in
+mul-sym : (x y : Int) → mul x y  ≡ mul y x
+mul-sym zero x =  mul-sym0 x
+mul-sym (S x) y =  let open ≡-Reasoning in
    begin
       mul (S x) y
    ≡⟨⟩
      sum y (mul x y )
-   ≡⟨ cong ( \x -> sum y x ) (lemma15 x y ) ⟩
+   ≡⟨ cong ( λ x → sum y x ) (mul-sym x y ) ⟩
      sum y (mul y x)
-   ≡⟨ sym ( lemma15'' y x ) ⟩
+   ≡⟨ sym ( mul-distr1 y x ) ⟩
      mul y (S x) 

 
 
-lemma15distr : (y z w : Int) -> sum (mul y z) ( mul w z ) ≡ mul (sum y w)  z
-lemma15distr y zero w =  let open ≡-Reasoning in
+mul-ditr : (y z w : Int) → sum (mul y z) ( mul w z ) ≡ mul (sum y w)  z
+mul-ditr y zero w =  let open ≡-Reasoning in
    begin
       sum (mul y zero) ( mul w zero ) 
-   ≡⟨ cong ( \t -> sum (mul y zero ) t ) (lemma15 w zero ) ⟩
+   ≡⟨ cong ( λ t → sum (mul y zero ) t ) (mul-sym w zero ) ⟩
       sum (mul y zero ) ( mul zero w ) 
-   ≡⟨ cong ( \t -> sum t zero ) (lemma15 y zero ) ⟩
+   ≡⟨ cong ( λ t → sum t zero ) (mul-sym y zero ) ⟩
       sum zero zero 
    ≡⟨⟩
       mul zero (sum y w) 
-   ≡⟨ lemma15 zero (sum y w) ⟩
+   ≡⟨  mul-sym0 (sum y w)  ⟩
       mul (sum y w)  zero

-lemma15distr y (S z) w =  let open ≡-Reasoning in
+mul-ditr y (S z) w =  let open ≡-Reasoning in
    begin
       sum (mul y (S z)) ( mul w (S z) )
-   ≡⟨ cong ( \t -> sum t ( mul w (S z ))) (lemma15'' y z) ⟩
+   ≡⟨ cong ( λ t → sum t ( mul w (S z ))) (mul-distr1 y z) ⟩
       sum (  sum y ( mul y z)) ( mul w (S z) )
-   ≡⟨ cong ( \t -> sum (  sum y ( mul y z)) t ) (lemma15'' w z) ⟩
+   ≡⟨ cong ( λ t → sum (  sum y ( mul y z)) t ) (mul-distr1 w z) ⟩
       sum (  sum y ( mul y z)) ( sum w ( mul w z) )
-   ≡⟨ sym ( lemma16assoc y (mul y z ) ( sum w ( mul w z) ) ) ⟩
+   ≡⟨ sym ( sum-assoc y (mul y z ) ( sum w ( mul w z) ) ) ⟩
       sum  y ( sum ( mul y z) ( sum w ( mul w z) ))
-   ≡⟨ cong ( \t -> sum  y t) (lemma14sym ( mul y z)  ( sum w ( mul w z) )) ⟩
+   ≡⟨ cong ( λ t → sum  y t) (sum-sym ( mul y z)  ( sum w ( mul w z) )) ⟩
       sum  y ( sum  ( sum w ( mul w z) )( mul y z))
-   ≡⟨  sym ( cong ( \t -> sum  y t) (lemma16assoc w (mul w z) (mul y z )) ) ⟩
+   ≡⟨  sym ( cong ( λ t → sum  y t) (sum-assoc w (mul w z) (mul y z )) ) ⟩
       sum  y ( sum  w  (sum ( mul w z) ( mul y z)) )
-   ≡⟨  cong ( \t -> sum  y (sum w t) ) ( lemma14sym (mul w z) (mul y z ))  ⟩
+   ≡⟨  cong ( λ t → sum  y (sum w t) ) ( sum-sym (mul w z) (mul y z ))  ⟩
       sum  y ( sum  w  (sum ( mul y z) ( mul w z)) )
-   ≡⟨  cong ( \t -> sum  y (sum w t) ) ( lemma15distr y z w )  ⟩
+   ≡⟨  cong ( λ t → sum  y (sum w t) ) ( mul-ditr y z w )  ⟩
       sum  y ( sum  w  (mul (sum y w)  z) )
-   ≡⟨ lemma16assoc y w (mul (sum y w)  z) ⟩
+   ≡⟨ sum-assoc y w (mul (sum y w)  z) ⟩
       sum (sum y w) ( mul (sum y w)  z )
-   ≡⟨ sym ( lemma15'' (sum y w) z ) ⟩
+   ≡⟨ sym ( mul-distr1 (sum y w) z ) ⟩
       mul (sum y w) (S z) 

 
 
-lemma15assoc : (x y z : Int) -> mul x (mul y z ) ≡ mul (mul x y)  z 
-lemma15assoc zero y z = refl
-lemma15assoc (S x) y z =  let open ≡-Reasoning in
+mul-assoc : (x y z : Int) → mul x (mul y z ) ≡ mul (mul x y)  z 
+mul-assoc zero y z = refl
+mul-assoc (S x) y z =  let open ≡-Reasoning in
    begin
       mul (S x) (mul y z )
    ≡⟨⟩
       sum (mul y z) ( mul x ( mul y z ) )
-   ≡⟨ cong (\t -> sum (mul y z) t ) (lemma15assoc x y z ) ⟩
+   ≡⟨ cong (λ t → sum (mul y z) t ) (mul-assoc x y z ) ⟩
       sum (mul y z) ( mul ( mul x y) z ) 
-   ≡⟨ lemma15distr y z (mul x y) ⟩
+   ≡⟨ mul-ditr y z (mul x y) ⟩
       mul (sum y (mul x y))  z
    ≡⟨⟩
       mul (mul (S x) y)  z