Step * 2 of Lemma firstn-append


1. Top
2. Top List
3. ∀[L2:Top List]. ∀[n:ℕ].  (firstn(n;v L2) if n ≤||v|| then firstn(n;v) else firstn(n ||v||;L2) fi )
⊢ ∀[L2:Top List]. ∀[n:ℕ].
    (if 0 <then [u firstn(n 1;v L2)] else [] fi  if n ≤||v|| 1
    then if 0 <then [u firstn(n 1;v)] else [] fi 
    else [u 
          (v
          case L2 of 
              [] => [] 
              a::as' =>
               if 0 <||v|| then [a firstn(n ||v|| 1;as')] else [] fi  
            esac)]
    fi )
BY
((UnivCD THENA Auto)
   THEN RepeatFor ((SplitOnConclITE THENA Auto))
   THEN Try (Complete (Auto'))
   THEN (RWO "3" THENA Auto)
   THEN (SplitOnConclITE THENA Auto)
   THEN Try (Complete (Auto'))
   THEN RepeatFor ((EqCD THEN Try (Trivial)))
   THEN RW (AddrC [1] RecUnfoldTopAbC) 0
   THEN Subst' ||v|| ||v|| 0
   THEN Auto') }


Latex:


Latex:

1.  u  :  Top
2.  v  :  Top  List
3.  \mforall{}[L2:Top  List].  \mforall{}[n:\mBbbN{}].
          (firstn(n;v  @  L2)  \msim{}  if  n  \mleq{}z  ||v||  then  firstn(n;v)  else  v  @  firstn(n  -  ||v||;L2)  fi  )
\mvdash{}  \mforall{}[L2:Top  List].  \mforall{}[n:\mBbbN{}].
        (if  0  <z  n  then  [u  /  firstn(n  -  1;v  @  L2)]  else  []  fi    \msim{}  if  n  \mleq{}z  ||v||  +  1
        then  if  0  <z  n  then  [u  /  firstn(n  -  1;v)]  else  []  fi 
        else  [u  / 
                    (v
                    @  case  L2  of 
                            []  =>  [] 
                            a::as'  =>
                              if  0  <z  n  -  ||v||  +  1  then  [a  /  firstn(n  -  ||v||  +  1  -  1;as')]  else  []  fi   
                        esac)]
        fi  )


By


Latex:
((UnivCD  THENA  Auto)
  THEN  RepeatFor  2  ((SplitOnConclITE  THENA  Auto))
  THEN  Try  (Complete  (Auto'))
  THEN  (RWO  "3"  0  THENA  Auto)
  THEN  (SplitOnConclITE  THENA  Auto)
  THEN  Try  (Complete  (Auto'))
  THEN  RepeatFor  2  ((EqCD  THEN  Try  (Trivial)))
  THEN  RW  (AddrC  [1]  RecUnfoldTopAbC)  0
  THEN  Subst'  n  -  1  -  ||v||  \msim{}  n  -  ||v||  +  1  0
  THEN  Auto')




Home Index