Step * 1 1 1 of Lemma simple-comb2-concat-classrel


1. Info Type
2. Type
3. Type
4. Type
5. A ⟶ B ⟶ bag(C)
6. EClass(A)
7. EClass(B)
8. es EO+(Info)
9. E
10. C
11. v1 C@i
12. bs k:ℕ2 ⟶ bag((λn.[A; B][n]) k)@i
13. v1 ↓∈ w.concat-lifting2(f;w 0;w 1)) bs@i
⊢ ↓∃vs:k:ℕ2 ⟶ ((λn.[A; B][n]) k). ((∀k:ℕ2. vs k ↓∈ bs k) ∧ v1 ↓∈ w.(f (w 0) (w 1))) vs)
BY
(Reduce (-1)
   THEN Reduce 0
   THEN Reduce (-2)
   THEN RepUR ``concat-lifting2 concat-lifting concat-lifting-list`` (-1)
   THEN RepeatFor ((RecUnfold `lifting-gen-list-rev` (-1)⋅ THEN Reduce (-1)))
   THEN RepeatFor ((BagMemberD (-1) THEN SquashExRepD))
   THEN RenameVar `y' (-3)
   THEN (All Reduce
         THEN 0
         THEN (With ⌜λn.[x; y][n]⌝ (D 0)⋅ THENA Try ((MemCD THEN Try ((IntSegCases (-1) THEN Reduce 0)) THEN Auto)))
         THEN Reduce 0)⋅}

1
1. Info Type
2. Type
3. Type
4. Type
5. A ⟶ B ⟶ bag(C)
6. EClass(A)
7. EClass(B)
8. es EO+(Info)
9. E
10. C
11. v1 C@i
12. bs k:ℕ2 ⟶ bag([A; B][k])@i
13. bag(C)
14. v1 ↓∈ b
15. A
16. x ↓∈ bs 0
17. B
18. y ↓∈ bs 1
19. (f y) ∈ bag(C)
⊢ (∀k:ℕ2. [x; y][k] ↓∈ bs k) ∧ v1 ↓∈ y


Latex:


Latex:

1.  Info  :  Type
2.  A  :  Type
3.  B  :  Type
4.  C  :  Type
5.  f  :  A  {}\mrightarrow{}  B  {}\mrightarrow{}  bag(C)
6.  X  :  EClass(A)
7.  Y  :  EClass(B)
8.  es  :  EO+(Info)
9.  e  :  E
10.  v  :  C
11.  v1  :  C@i
12.  bs  :  k:\mBbbN{}2  {}\mrightarrow{}  bag((\mlambda{}n.[A;  B][n])  k)@i
13.  v1  \mdownarrow{}\mmember{}  (\mlambda{}w.concat-lifting2(f;w  0;w  1))  bs@i
\mvdash{}  \mdownarrow{}\mexists{}vs:k:\mBbbN{}2  {}\mrightarrow{}  ((\mlambda{}n.[A;  B][n])  k).  ((\mforall{}k:\mBbbN{}2.  vs  k  \mdownarrow{}\mmember{}  bs  k)  \mwedge{}  v1  \mdownarrow{}\mmember{}  (\mlambda{}w.(f  (w  0)  (w  1)))  vs)


By


Latex:
(Reduce  (-1)
  THEN  Reduce  0
  THEN  Reduce  (-2)
  THEN  RepUR  ``concat-lifting2  concat-lifting  concat-lifting-list``  (-1)
  THEN  RepeatFor  3  ((RecUnfold  `lifting-gen-list-rev`  (-1)\mcdot{}  THEN  Reduce  (-1)))
  THEN  RepeatFor  4  ((BagMemberD  (-1)  THEN  SquashExRepD))
  THEN  RenameVar  `y'  (-3)
  THEN  (All  Reduce
              THEN  D  0
              THEN  (With  \mkleeneopen{}\mlambda{}n.[x;  y][n]\mkleeneclose{}  (D  0)\mcdot{}
                          THENA  Try  ((MemCD  THEN  Try  ((IntSegCases  (-1)  THEN  Reduce  0))  THEN  Auto))
                          )
              THEN  Reduce  0)\mcdot{})




Home Index