Step
*
1
2
3
2
2
1
of Lemma
member-fpf-vals
1. [A] : Type
2. eq : EqDecider(A)@i
3. [B] : A ─→ Type
4. P : A ─→ 𝔹@i
5. d : A List@i
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]@i
7. x : A@i
8. v : B[x]@i
9. u : A@i
10. v1 : A List@i
11. ∀g:x:{x:A| (x ∈ v1)}  ─→ B[x]
      ((<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})@i
12. g : x:{x:A| (x ∈ [u / v1])}  ─→ B[x]@i
13. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
14. (u ∈ [u / v1])
15. zip(filter(P;v1);map(g;filter(P;v1))) ∈ (x:A × B[x]) List
16. ↑(P u)
⊢ (<x, v> ∈ [<u, g u> / zip(filter(P;v1);map(g;filter(P;v1)))])
⇐⇒ {((↑((eq u x) ∨bx ∈b v1))) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
BY
{ (Unfold `and` 0 THEN Fold `cand` 0 THEN Auto) }
1
1. A : Type
2. eq : EqDecider(A)@i
3. B : A ─→ Type
4. P : A ─→ 𝔹@i
5. d : A List@i
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]@i
7. x : A@i
8. v : B[x]@i
9. u : A@i
10. v1 : A List@i
11. ∀g:x:{x:A| (x ∈ v1)}  ─→ B[x]
      ((<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})@i
12. g : x:{x:A| (x ∈ [u / v1])}  ─→ B[x]@i
13. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
14. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
15. (u ∈ [u / v1])
16. zip(filter(P;v1);map(g;filter(P;v1))) ∈ (x:A × B[x]) List
17. ↑(P u)
18. (<x, v> ∈ [<u, g u> / zip(filter(P;v1);map(g;filter(P;v1)))])@i
⊢ {((↑((eq u x) ∨bx ∈b v1))) c∧ (↑(P x))) c∧ (v = (g x) ∈ B[x])}
2
1. A : Type
2. eq : EqDecider(A)@i
3. B : A ─→ Type
4. P : A ─→ 𝔹@i
5. d : A List@i
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]@i
7. x : A@i
8. v : B[x]@i
9. u : A@i
10. v1 : A List@i
11. ∀g:x:{x:A| (x ∈ v1)}  ─→ B[x]
      ((<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})@i
12. g : x:{x:A| (x ∈ [u / v1])}  ─→ B[x]@i
13. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
14. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
15. (u ∈ [u / v1])
16. zip(filter(P;v1);map(g;filter(P;v1))) ∈ (x:A × B[x]) List
17. ↑(P u)
18. (<x, v> ∈ [<u, g u> / zip(filter(P;v1);map(g;filter(P;v1)))])@i
19. (↑((eq u x) ∨bx ∈b v1))) c∧ (↑(P x))
20. v = (g x) ∈ B[x]
⊢ (u = x ∈ A) ∨ (x ∈ v1)
3
1. [A] : Type
2. eq : EqDecider(A)@i
3. [B] : A ─→ Type
4. P : A ─→ 𝔹@i
5. d : A List@i
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]@i
7. x : A@i
8. v : B[x]@i
9. u : A@i
10. v1 : A List@i
11. ∀g:x:{x:A| (x ∈ v1)}  ─→ B[x]
      ((<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})@i
12. g : x:{x:A| (x ∈ [u / v1])}  ─→ B[x]@i
13. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
14. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
15. (u ∈ [u / v1])
16. zip(filter(P;v1);map(g;filter(P;v1))) ∈ (x:A × B[x]) List
17. ↑(P u)
18. {((↑((eq u x) ∨bx ∈b v1))) c∧ (↑(P x))) c∧ (v = (g x) ∈ B[x])}@i
⊢ (<x, v> ∈ [<u, g u> / zip(filter(P;v1);map(g;filter(P;v1)))])
4
1. A : Type
2. eq : EqDecider(A)@i
3. B : A ─→ Type
4. P : A ─→ 𝔹@i
5. d : A List@i
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]@i
7. x : A@i
8. v : B[x]@i
9. u : A@i
10. v1 : A List@i
11. ∀g:x:{x:A| (x ∈ v1)}  ─→ B[x]
      ((<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})@i
12. g : x:{x:A| (x ∈ [u / v1])}  ─→ B[x]@i
13. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇒ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
14. (<x, v> ∈ zip(filter(P;v1);map(g;filter(P;v1)))) 
⇐ {((↑x ∈b v1)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
15. (u ∈ [u / v1])
16. zip(filter(P;v1);map(g;filter(P;v1))) ∈ (x:A × B[x]) List
17. ↑(P u)
18. (↑((eq u x) ∨bx ∈b v1))) c∧ (↑(P x))
⊢ x ∈ {x:A| (x ∈ [u / v1])} 
Latex:
1.  [A]  :  Type
2.  eq  :  EqDecider(A)@i
3.  [B]  :  A  {}\mrightarrow{}  Type
4.  P  :  A  {}\mrightarrow{}  \mBbbB{}@i
5.  d  :  A  List@i
6.  f1  :  x:\{x:A|  (x  \mmember{}  d)\}    {}\mrightarrow{}  B[x]@i
7.  x  :  A@i
8.  v  :  B[x]@i
9.  u  :  A@i
10.  v1  :  A  List@i
11.  \mforall{}g:x:\{x:A|  (x  \mmember{}  v1)\}    {}\mrightarrow{}  B[x]
            ((<x,  v>  \mmember{}  zip(filter(P;v1);map(g;filter(P;v1))))
            \mLeftarrow{}{}\mRightarrow{}  \{((\muparrow{}x  \mmember{}\msubb{}  v1))  \mwedge{}  (\muparrow{}(P  x)))  \mwedge{}  (v  =  (g  x))\})@i
12.  g  :  x:\{x:A|  (x  \mmember{}  [u  /  v1])\}    {}\mrightarrow{}  B[x]@i
13.  (<x,  v>  \mmember{}  zip(filter(P;v1);map(g;filter(P;v1))))  \mLeftarrow{}{}\mRightarrow{}  \{((\muparrow{}x  \mmember{}\msubb{}  v1))  \mwedge{}  (\muparrow{}(P  x)))  \mwedge{}  (v  =  (g  x))\}
14.  (u  \mmember{}  [u  /  v1])
15.  zip(filter(P;v1);map(g;filter(P;v1)))  \mmember{}  (x:A  \mtimes{}  B[x])  List
16.  \muparrow{}(P  u)
\mvdash{}  (<x,  v>  \mmember{}  [<u,  g  u>  /  zip(filter(P;v1);map(g;filter(P;v1)))])
\mLeftarrow{}{}\mRightarrow{}  \{((\muparrow{}((eq  u  x)  \mvee{}\msubb{}x  \mmember{}\msubb{}  v1)))  \mwedge{}  (\muparrow{}(P  x)))  \mwedge{}  (v  =  (g  x))\}
By
(Unfold  `and`  0  THEN  Fold  `cand`  0  THEN  Auto)
Home
Index