Step * 1 of Lemma bl-exists-append


1. : ℤ
2. j ≠ 0
3. 0 < j
4. ∀L1,P,v:Top.
     list_ind,L. eval v@0 in
                   if v@0 is pair then let a,as' v@0 
                                         in P[a] ∨b(list_ind as') otherwise if v@0 Ax then otherwise ⊥^j 
      ⊥ 
      L1 ≤ (fix((λlist_ind,L. eval in
                              if is pair then let a,as' 
                                                  in P[a] ∨b(list_ind as') otherwise if Ax then ff otherwise ⊥)) 
            L1)
      ∨bv)
5. L1 Top
6. Top
7. Top
⊢ eval v@0 L1 in
  if v@0 is pair then let a,as' v@0 
                        in P[a]
                           ∨blist_ind,L. eval v@0 in
                                           if v@0 is pair then let a,as' v@0 
                                                                 in P[a] ∨b(list_ind as')
                                           otherwise if v@0 Ax then otherwise ⊥^j 
                              ⊥ 
                              as') otherwise if v@0 Ax then otherwise ⊥ ≤ (fix((λlist_ind,L. eval in
                                                                                                 if is pair
                                                                                                 then let a,as' 
                                                                                                      in P[a]
                                                                                                         ∨b(list_ind 
                                                                                                            as')
                                                                                                 otherwise if Ax
                                                                                                           then ff
                                                                                                           otherwise ⊥))\000C 
                                                                               L1)
  ∨bv
BY
((RW (AddrC [2] UnrollLoopsOnceC) THEN Try (MemTop))
   THEN Strictness
   THEN (Fold `ifthenelse` THEN Fold `it` THEN Fold `btrue` THEN Fold `bor` 0)
   THEN All (RepUR ``so_apply bfalse``)
   THEN RepeatFor ((SqLeCD THEN Try (Complete (Auto))))
   THEN BackThruSomeHyp) }


Latex:


Latex:

1.  j  :  \mBbbZ{}
2.  j  \mneq{}  0
3.  0  <  j
4.  \mforall{}L1,P,v:Top.
          (\mlambda{}list$_{ind}$,L.  eval  v@0  =  L  in
                                    if  v@0  is  a  pair  then  let  a,as'  =  v@0 
                                                                                in  P[a]  \mvee{}\msubb{}(list$_{ind}$  as')
                                    otherwise  if  v@0  =  Ax  then  v  otherwise  \mbot{}\^{}j  -  1 
            \mbot{} 
            L1  \mleq{}  (fix((\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                                          if  v  is  a  pair  then  let  a,as'  =  v 
                                                                                                  in  P[a]  \mvee{}\msubb{}(list$_{ind}$  as')  ot\000Cherwise  if  v  =  Ax  then  ff
                                                                                                                                                                      otherwise  \mbot{})) 
                        L1)
            \mvee{}\msubb{}v)
5.  L1  :  Top
6.  P  :  Top
7.  v  :  Top
\mvdash{}  eval  v@0  =  L1  in
    if  v@0  is  a  pair  then  let  a,as'  =  v@0 
                                                in  P[a]
                                                      \mvee{}\msubb{}(\mlambda{}list$_{ind}$,L.  eval  v@0  =  L  in
                                                                                    if  v@0  is  a  pair  then  let  a,as'  =  v@0 
                                                                                                                                in  P[a]  \mvee{}\msubb{}(list$_{ind\mbackslash{}ff\000C7d$  as')
                                                                                    otherwise  if  v@0  =  Ax  then  v  otherwise  \mbot{}\^{}j  -  1 
                                                            \mbot{} 
                                                            as')  otherwise  if  v@0  =  Ax  then  v  otherwise  \mbot{} 
    \mleq{}  (fix((\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                            if  v  is  a  pair  then  let  a,as'  =  v 
                                                                                    in  P[a]  \mvee{}\msubb{}(list$_{ind}$  as')
                                            otherwise  if  v  =  Ax  then  ff  otherwise  \mbot{})) 
          L1)
    \mvee{}\msubb{}v


By


Latex:
((RW  (AddrC  [2]  UnrollLoopsOnceC)  0  THEN  Try  (MemTop))
  THEN  Strictness
  THEN  (Fold  `ifthenelse`  0  THEN  Fold  `it`  0  THEN  Fold  `btrue`  0  THEN  Fold  `bor`  0)
  THEN  All  (RepUR  ``so\_apply  bfalse``)
  THEN  RepeatFor  3  ((SqLeCD  THEN  Try  (Complete  (Auto))))
  THEN  BackThruSomeHyp)




Home Index