Step
*
1
2
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. L : A List@i
10. remove-repeats(eq;d) = L ∈ (A List)@i
11. g : x:{x:A| (x ∈ L)}  ─→ B[x]@i
12. f1 = g ∈ (x:{x:A| (x ∈ L)}  ─→ B[x])@i
⊢ (<x, v> ∈ zip(filter(P;L);map(g;filter(P;L)))) 
⇐⇒ {((↑x ∈b L)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}
BY
{ ((Thin (-1)) THEN (MoveToConcl (-1)) THEN (Thin (-1)) THEN (ListInd' (-1)) THEN Reduce 0) }
1
.....wf..... 
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
⊢ λL.∀g:x:{x:A| (x ∈ L)}  ─→ B[x]
       ((<x, v> ∈ zip(filter(P;L);map(g;filter(P;L)))) 
⇐⇒ {((↑x ∈b L)) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])}) ∈ (A List)
  ─→ ℙ
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
⊢ ∀g:x:{x:A| (x ∈ [])}  ─→ B[x]. ((<x, v> ∈ []) 
⇐⇒ {(False ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})
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
⊢ ∀g:x:{x:A| (x ∈ [u / v1])}  ─→ B[x]
    ((<x, v> ∈ zip(if P u then [u / filter(P;v1)] else filter(P;v1) fi map(g;if P u
                                                                            then [u / filter(P;v1)]
                                                                            else filter(P;v1)
                                                                            fi )))
    
⇐⇒ {((↑((eq u x) ∨bx ∈b v1))) ∧ (↑(P x))) ∧ (v = (g x) ∈ B[x])})
4
.....wf..... 
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
⊢ ∀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])}) ∈ ℙ
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.  L  :  A  List@i
10.  remove-repeats(eq;d)  =  L@i
11.  g  :  x:\{x:A|  (x  \mmember{}  L)\}    {}\mrightarrow{}  B[x]@i
12.  f1  =  g@i
\mvdash{}  (<x,  v>  \mmember{}  zip(filter(P;L);map(g;filter(P;L))))  \mLeftarrow{}{}\mRightarrow{}  \{((\muparrow{}x  \mmember{}\msubb{}  L))  \mwedge{}  (\muparrow{}(P  x)))  \mwedge{}  (v  =  (g  x))\}
By
((Thin  (-1))  THEN  (MoveToConcl  (-1))  THEN  (Thin  (-1))  THEN  (ListInd'  (-1))  THEN  Reduce  0)
Home
Index