Step
*
1
2
2
2
1
1
2
of Lemma
fpf-split
1. A : Type
2. eq : EqDecider(A)
3. B : A ⟶ Type
4. d : A List
5. f1 : a:{a:A| (a ∈ d)}  ⟶ B[a]
6. P : A ⟶ ℙ
7. dec : ∀a:A. Dec(P[a])
8. <d, f1> ∈ a:A fp-> B[a]
9. <filter(λa.[dec a]b;d), f1> ∈ a:A fp-> B[a]
10. <filter(λa.(¬b[dec a]b);d), f1> ∈ a:A fp-> B[a]
11. x : A
12. ↑x ∈b d
13. ↑x ∈b filter(λa.[dec a]b;d) @ filter(λa.(¬ba ∈b filter(λa.[dec a]b;d));filter(λa.(¬b[dec a]b);d))
⊢ x ∈ {a:A| (a ∈ d)} 
BY
{ ((RWO "assert-deq-member" (-2)) THEN Auto) }
Latex:
Latex:
1.  A  :  Type
2.  eq  :  EqDecider(A)
3.  B  :  A  {}\mrightarrow{}  Type
4.  d  :  A  List
5.  f1  :  a:\{a:A|  (a  \mmember{}  d)\}    {}\mrightarrow{}  B[a]
6.  P  :  A  {}\mrightarrow{}  \mBbbP{}
7.  dec  :  \mforall{}a:A.  Dec(P[a])
8.  <d,  f1>  \mmember{}  a:A  fp->  B[a]
9.  <filter(\mlambda{}a.[dec  a]\msubb{};d),  f1>  \mmember{}  a:A  fp->  B[a]
10.  <filter(\mlambda{}a.(\mneg{}\msubb{}[dec  a]\msubb{});d),  f1>  \mmember{}  a:A  fp->  B[a]
11.  x  :  A
12.  \muparrow{}x  \mmember{}\msubb{}  d
13.  \muparrow{}x  \mmember{}\msubb{}  filter(\mlambda{}a.[dec  a]\msubb{};d)
              @  filter(\mlambda{}a.(\mneg{}\msubb{}a  \mmember{}\msubb{}  filter(\mlambda{}a.[dec  a]\msubb{};d));filter(\mlambda{}a.(\mneg{}\msubb{}[dec  a]\msubb{});d))
\mvdash{}  x  \mmember{}  \{a:A|  (a  \mmember{}  d)\} 
By
Latex:
((RWO  "assert-deq-member"  (-2))  THEN  Auto)
Home
Index