Step
*
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]
⊢ ∃fp,fnp:a:A fp-> B[a]
((<d, f1> ⊆ fp ⊕ fnp ∧ fp ⊕ fnp ⊆ <d, f1>)
∧ ((∀a:A. P[a] supposing ↑a ∈ dom(fp)) ∧ (∀a:A. ¬P[a] supposing ↑a ∈ dom(fnp)))
∧ fpf-domain(fp) ⊆ fpf-domain(<d, f1>)
∧ fpf-domain(fnp) ⊆ fpf-domain(<d, f1>))
BY
{ Assert ⌜<filter(λa.[dec a]b;d), f1> ∈ a:A fp-> B[a]⌝⋅ }
1
.....assertion.....
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]
⊢ <filter(λa.[dec a]b;d), f1> ∈ a:A fp-> B[a]
2
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]
⊢ ∃fp,fnp:a:A fp-> B[a]
((<d, f1> ⊆ fp ⊕ fnp ∧ fp ⊕ fnp ⊆ <d, f1>)
∧ ((∀a:A. P[a] supposing ↑a ∈ dom(fp)) ∧ (∀a:A. ¬P[a] supposing ↑a ∈ dom(fnp)))
∧ fpf-domain(fp) ⊆ fpf-domain(<d, f1>)
∧ fpf-domain(fnp) ⊆ fpf-domain(<d, f1>))
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]
\mvdash{} \mexists{}fp,fnp:a:A fp-> B[a]
((<d, f1> \msubseteq{} fp \moplus{} fnp \mwedge{} fp \moplus{} fnp \msubseteq{} <d, f1>)
\mwedge{} ((\mforall{}a:A. P[a] supposing \muparrow{}a \mmember{} dom(fp)) \mwedge{} (\mforall{}a:A. \mneg{}P[a] supposing \muparrow{}a \mmember{} dom(fnp)))
\mwedge{} fpf-domain(fp) \msubseteq{} fpf-domain(<d, f1>)
\mwedge{} fpf-domain(fnp) \msubseteq{} fpf-domain(<d, f1>))
By
Latex:
Assert \mkleeneopen{}<filter(\mlambda{}a.[dec a]\msubb{};d), f1> \mmember{} a:A fp-> B[a]\mkleeneclose{}\mcdot{}
Home
Index