Step * 2 of Lemma data-stream-cons


1. Top List
2. Top
3. Top
⊢ map(λi.(snd(P*(firstn(i;[a L]))([a L][i])));[0 map(λi.(i 1);upto(||L||))]) 
[snd(P(a)) map(λi.(snd(fst(P(a))*(firstn(i;L))(L[i])));upto(||L||))]
BY
(Reduce 0
   THEN EqCD
   THEN Try (((RWO "first0" THENA Auto) THEN Reduce THEN Trivial))
   THEN ((RWO "map-map" THENM RepUR ``compose`` 0) THENA Auto)
   THEN GenConclAtAddr [2;2]
   THEN Thin (-1)
   THEN ListInd (-1)
   THEN Reduce 0
   THEN RepeatFor ((EqCD THEN Try (Trivial)))
   THEN Try (((RWO "select-cons" THENM AutoSplit) THEN Auto))) }

1
1. Top List
2. Top
3. Top
4. : ℕ||L||
5. : ℕ||L|| List
6. map(λx.(snd(P*(firstn(x 1;[a L]))([a L][x 1])));v) map(λi.(snd(fst(P(a))*(firstn(i;L))(L[i])));v)
⊢ P*(firstn(u 1;[a L])) fst(P(a))*(firstn(u;L))


Latex:



Latex:

1.  L  :  Top  List
2.  a  :  Top
3.  P  :  Top
\mvdash{}  map(\mlambda{}i.(snd(P*(firstn(i;[a  /  L]))([a  /  L][i])));[0  /  map(\mlambda{}i.(i  +  1);upto(||L||))]) 
\msim{}  [snd(P(a))  /  map(\mlambda{}i.(snd(fst(P(a))*(firstn(i;L))(L[i])));upto(||L||))]


By


Latex:
(Reduce  0
  THEN  EqCD
  THEN  Try  (((RWO  "first0"  0  THENA  Auto)  THEN  Reduce  0  THEN  Trivial))
  THEN  ((RWO  "map-map"  0  THENM  RepUR  ``compose``  0)  THENA  Auto)
  THEN  GenConclAtAddr  [2;2]
  THEN  Thin  (-1)
  THEN  ListInd  (-1)
  THEN  Reduce  0
  THEN  RepeatFor  3  ((EqCD  THEN  Try  (Trivial)))
  THEN  Try  (((RWO  "select-cons"  0  THENM  AutoSplit)  THEN  Auto)))




Home Index