Step
*
1
of Lemma
fpf-vals-nil
1. A : Type
2. eq : EqDecider(A)
3. B : A ─→ Type
4. P : A ─→ 𝔹
5. d : A List
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]
7. a : A
8. ¬↑a ∈ dom(<d, f1>)
9. ∀b:A. (↑(P b) 
⇐⇒ b = a ∈ A)
⊢ zip(filter(P;remove-repeats(eq;d));map(f1;filter(P;remove-repeats(eq;d)))) ~ []
BY
{ Assert ∀L:A List. (no_repeats(A;L) 
⇒ (filter(P;L) = if a ∈b L) then [a] else [] fi  ∈ (A List)))⋅ }
1
.....assertion..... 
1. A : Type
2. eq : EqDecider(A)
3. B : A ─→ Type
4. P : A ─→ 𝔹
5. d : A List
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]
7. a : A
8. ¬↑a ∈ dom(<d, f1>)
9. ∀b:A. (↑(P b) 
⇐⇒ b = a ∈ A)
⊢ ∀L:A List. (no_repeats(A;L) 
⇒ (filter(P;L) = if a ∈b L) then [a] else [] fi  ∈ (A List)))
2
1. A : Type
2. eq : EqDecider(A)
3. B : A ─→ Type
4. P : A ─→ 𝔹
5. d : A List
6. f1 : x:{x:A| (x ∈ d)}  ─→ B[x]
7. a : A
8. ¬↑a ∈ dom(<d, f1>)
9. ∀b:A. (↑(P b) 
⇐⇒ b = a ∈ A)
10. ∀L:A List. (no_repeats(A;L) 
⇒ (filter(P;L) = if a ∈b L) then [a] else [] fi  ∈ (A List)))
⊢ zip(filter(P;remove-repeats(eq;d));map(f1;filter(P;remove-repeats(eq;d)))) ~ []
Latex:
1.  A  :  Type
2.  eq  :  EqDecider(A)
3.  B  :  A  {}\mrightarrow{}  Type
4.  P  :  A  {}\mrightarrow{}  \mBbbB{}
5.  d  :  A  List
6.  f1  :  x:\{x:A|  (x  \mmember{}  d)\}    {}\mrightarrow{}  B[x]
7.  a  :  A
8.  \mneg{}\muparrow{}a  \mmember{}  dom(<d,  f1>)
9.  \mforall{}b:A.  (\muparrow{}(P  b)  \mLeftarrow{}{}\mRightarrow{}  b  =  a)
\mvdash{}  zip(filter(P;remove-repeats(eq;d));map(f1;filter(P;remove-repeats(eq;d))))  \msim{}  []
By
Assert  \mforall{}L:A  List.  (no\_repeats(A;L)  {}\mRightarrow{}  (filter(P;L)  =  if  a  \mmember{}\msubb{}  L)  then  [a]  else  []  fi  ))\mcdot{}
Home
Index