Step * 1 1 1 1 1 of Lemma sq-decider-list-deq


1. eq Base
2. sq-decider(eq)
3. : ℤ
4. 0 < j
5. ∀x,y:Base.
     ((λlist_ind,L. eval in
                    if is pair then let a,as' 
                                        in λL.(fix((λlist_ind@0,L. eval in
                                                                   if is pair then let b,bs' 
                                                                                       in (eq b) ∧b (list_ind as' bs')
                                                                   otherwise if Ax then ff otherwise ⊥)) 
                                               L) otherwise if Ax then λL.null(L) otherwise ⊥^j 
       ⊥ 
       
       y)↓
      (∀z:Base. ((list-deq(eq) inl z)  (Ax ∈ y))))
6. Base
7. Base
8. (fix((λlist_ind@0,L. eval in
                        if is pair
                        then let b,bs' 
                             in (eq (fst(x)) b)
                                ∧b list_ind,L. eval in
                                                 if is pair
                                                 then let a,as' 
                                                      in λL.(fix((λlist_ind@0,L. eval in
                                                                                 if is pair
                                                                                 then let b,bs' 
                                                                                      in (eq b) ∧b (list_ind as' bs')
                                                                                 otherwise if Ax then ff otherwise ⊥\000C)) 
                                                             L) otherwise if Ax then λL.null(L) otherwise ⊥^j 
                                    ⊥ 
                                    (snd(x)) 
                                    bs') otherwise if Ax then ff otherwise ⊥)) 
    y)↓
9. Base
10. list-deq(eq) <fst(x), snd(x)> inl z
11. 0 ≤ 0
12. ~ <fst(x), snd(x)>
⊢ <fst(x), snd(x)> y
BY
(RW (AddrC [1] UnrollRecursionC) THEN Reduce 8) }

1
1. eq Base
2. sq-decider(eq)
3. : ℤ
4. 0 < j
5. ∀x,y:Base.
     ((λlist_ind,L. eval in
                    if is pair then let a,as' 
                                        in λL.(fix((λlist_ind@0,L. eval in
                                                                   if is pair then let b,bs' 
                                                                                       in (eq b) ∧b (list_ind as' bs')
                                                                   otherwise if Ax then ff otherwise ⊥)) 
                                               L) otherwise if Ax then λL.null(L) otherwise ⊥^j 
       ⊥ 
       
       y)↓
      (∀z:Base. ((list-deq(eq) inl z)  (Ax ∈ y))))
6. Base
7. Base
8. (eval in
    if is pair then let b,bs' 
                        in (eq (fst(x)) b)
                           ∧b list_ind,L. eval in
                                            if is pair then let a,as' 
                                                                in λL.(fix((λlist_ind@0,L. eval in
                                                                                           if is pair
                                                                                           then let b,bs' 
                                                                                                in (eq b)
                                                                                                   ∧b (list_ind as' bs')
                                                                                           otherwise if Ax then ff
                                                                                                     otherwise ⊥)) 
                                                                       L)
                                            otherwise if Ax then λL.null(L) otherwise ⊥^j 
                               ⊥ 
                               (snd(x)) 
                               bs') otherwise if Ax then ff otherwise ⊥)↓
9. Base
10. list-deq(eq) <fst(x), snd(x)> inl z
11. 0 ≤ 0
12. ~ <fst(x), snd(x)>
⊢ <fst(x), snd(x)> y


Latex:


Latex:

1.  eq  :  Base
2.  sq-decider(eq)
3.  j  :  \mBbbZ{}
4.  0  <  j
5.  \mforall{}x,y:Base.
          ((\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                      if  v  is  a  pair  then  let  a,as'  =  v 
                                                                              in  \mlambda{}L.(fix((\mlambda{}list$_{ind@0}$,L.  eval  v  =  L\000C  in
                                                                                                                                  if  v  is  a  pair  then  let  b,bs'  =  v 
                                                                                                                                                                          in  (eq  a  b)
                                                                                                                                                                                \mwedge{}\msubb{}  (list\mbackslash{}ff2\000C4_{ind}$ 
                                                                                                                                                                                        as' 
                                                                                                                                                                                        bs')
                                                                                                                                  otherwise  if  v  =  Ax  then  ff
                                                                                                                                                      otherwise  \mbot{})) 
                                                                                            L)  otherwise  if  v  =  Ax  then  \mlambda{}L.null(L)  otherwise  \mbot{}\^{}j  -\000C  1 
              \mbot{} 
              x 
              y)\mdownarrow{}
          {}\mRightarrow{}  (\mforall{}z:Base.  ((list-deq(eq)  x  y  \msim{}  inl  z)  {}\mRightarrow{}  (Ax  \mmember{}  x  \msim{}  y))))
6.  x  :  Base
7.  y  :  Base
8.  (fix((\mlambda{}list$_{ind@0}$,L.  eval  v  =  L  in
                                              if  v  is  a  pair
                                              then  let  b,bs'  =  v 
                                                        in  (eq  (fst(x))  b)
                                                              \mwedge{}\msubb{}  (\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                                                                              if  v  is  a  pair
                                                                                              then  let  a,as'  =  v 
                                                                                                        in  \mlambda{}L.(fix((\mlambda{}list$_{ind@0}$,\000CL.  eval  v  =  L  in
                                                                                                                                                            if  v  is  a  pair
                                                                                                                                                            then  let  b,bs'  =  v 
                                                                                                                                                                      in  (eq  a  b)
                                                                                                                                                                            \mwedge{}\msubb{}  (list$\mbackslash{}\000Cff5f{ind}$ 
                                                                                                                                                                                    as' 
                                                                                                                                                                                    bs')
                                                                                                                                                            otherwise  if  v  =  Ax
                                                                                                                                                                                then  ff
                                                                                                                                                                                otherwise  \mbot{})\000C) 
                                                                                                                      L)  otherwise  if  v  =  Ax  then  \mlambda{}L.null(L)
                                                                                                                                                otherwise  \mbot{}\^{}j  -  1 
                                                                      \mbot{} 
                                                                      (snd(x)) 
                                                                      bs')  otherwise  if  v  =  Ax  then  ff  otherwise  \mbot{})) 
        y)\mdownarrow{}
9.  z  :  Base
10.  list-deq(eq)  <fst(x),  snd(x)>  y  \msim{}  inl  z
11.  0  \mleq{}  0
12.  x  \msim{}  <fst(x),  snd(x)>
\mvdash{}  <fst(x),  snd(x)>  \msim{}  y


By


Latex:
(RW  (AddrC  [1]  UnrollRecursionC)  8  THEN  Reduce  8)




Home Index