Step * 1 of Lemma length-is-colength


1. : ℤ
2. 0 < j
3. ∀t:Base
     list_ind,L. eval in
                   if is pair then let a,b 
                                       in (list_ind b) otherwise if Ax then otherwise ⊥^j 
      ⊥ 
      t ≤ fix((λcolength,L. if Ax then otherwise let a,b in (colength b))) t)
4. Base
⊢ x.((λlist_ind,L. eval in
                     if is pair then let a,b 
                                         in (list_ind b) otherwise if Ax then otherwise ⊥
       list_ind,L. eval in
                     if is pair then let a,b 
                                         in (list_ind b) otherwise if Ax then otherwise ⊥^j 
        x))) 
  ⊥ 
  t ≤ fix((λcolength,L. if Ax then otherwise let a,b in (colength b))) t
BY
TACTIC:(Reduce 0⋅
          THEN SqReasoning
          THEN TACTIC:(RW (AddrC [2] (UnrollRecursionC)) 0
                       THEN Reduce 0
                       THEN HVimplies2 [1]
                       THEN (RW (AddrC [2] (LemmaC `add-commutes`)) THENA Auto)
                       THEN SqLeCD
                       THEN Try (BackThruSomeHyp)
                       THEN Auto)) }


Latex:


Latex:

1.  j  :  \mBbbZ{}
2.  0  <  j
3.  \mforall{}t:Base
          (\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                    if  v  is  a  pair  then  let  a,b  =  v 
                                                                            in  (list$_{ind}$  b)  +  1  otherwise  if  v  =  A\000Cx  then  0  otherwise  \mbot{}\^{}j  -  1 
            \mbot{} 
            t  \mleq{}  fix((\mlambda{}colength,L.  if  L  =  Ax  then  0  otherwise  let  a,b  =  L  in  1  +  (colength  b)))  t)
4.  t  :  Base
\mvdash{}  (\mlambda{}x.((\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                        if  v  is  a  pair  then  let  a,b  =  v 
                                                                                in  (list$_{ind}$  b)  +  1  otherwise  if  v  =\000C  Ax  then  0  otherwise  \mbot{}) 
              (\mlambda{}list$_{ind}$,L.  eval  v  =  L  in
                                        if  v  is  a  pair  then  let  a,b  =  v 
                                                                                in  (list$_{ind}$  b)  +  1  otherwise  if  v  =\000C  Ax  then  0  otherwise  \mbot{}\^{}j  -  1 
                x))) 
    \mbot{} 
    t  \mleq{}  fix((\mlambda{}colength,L.  if  L  =  Ax  then  0  otherwise  let  a,b  =  L  in  1  +  (colength  b)))  t


By


Latex:
TACTIC:(Reduce  0\mcdot{}
                THEN  SqReasoning
                THEN  TACTIC:(RW  (AddrC  [2]  (UnrollRecursionC))  0
                                          THEN  Reduce  0
                                          THEN  HVimplies2  0  [1]
                                          THEN  (RW  (AddrC  [2]  (LemmaC  `add-commutes`))  0  THENA  Auto)
                                          THEN  SqLeCD
                                          THEN  Try  (BackThruSomeHyp)
                                          THEN  Auto))




Home Index