Step
*
1
of Lemma
hd-filter
1. [T] : Type
2. P : T ā¶ š¹
3. as : T List
4. āa:T. ((a ā as) ā§ (āP[a]))
5. filter(Ī»a.P[a];as) ā {x:T| ā((Ī»a.P[a]) x)} List
6. 0 < ||filter(Ī»a.P[a];as)||
ā¢ (hd(filter(Ī»a.P[a];as)) ā T) cā§ ((hd(filter(Ī»a.P[a];as)) ā as) ā§ (āP[hd(filter(Ī»a.P[a];as))]))
BY
{ xxx(MoveToConcl (-1) THEN GenConclTerm āfilter(Ī»a.P[a];as)āā
THEN Auto)xxx }
1
1. [T] : Type
2. P : T ā¶ š¹
3. as : T List
4. āa:T. ((a ā as) ā§ (āP[a]))
5. filter(Ī»a.P[a];as) ā {x:T| ā((Ī»a.P[a]) x)} List
6. v : {x:T| ā((Ī»a.P[a]) x)} List
7. filter(Ī»a.P[a];as) = v ā ({x:T| ā((Ī»a.P[a]) x)} List)
8. 0 < ||v||
9. hd(v) ā T
ā¢ (hd(v) ā as)
2
1. [T] : Type
2. P : T ā¶ š¹
3. as : T List
4. āa:T. ((a ā as) ā§ (āP[a]))
5. filter(Ī»a.P[a];as) ā {x:T| ā((Ī»a.P[a]) x)} List
6. v : {x:T| ā((Ī»a.P[a]) x)} List
7. filter(Ī»a.P[a];as) = v ā ({x:T| ā((Ī»a.P[a]) x)} List)
8. 0 < ||v||
9. hd(v) ā T
10. (hd(v) ā as)
ā¢ āP[hd(v)]
Latex:
Latex:
1. [T] : Type
2. P : T {}\mrightarrow{} \mBbbB{}
3. as : T List
4. \mexists{}a:T. ((a \mmember{} as) \mwedge{} (\muparrow{}P[a]))
5. filter(\mlambda{}a.P[a];as) \mmember{} \{x:T| \muparrow{}((\mlambda{}a.P[a]) x)\} List
6. 0 < ||filter(\mlambda{}a.P[a];as)||
\mvdash{} (hd(filter(\mlambda{}a.P[a];as)) \mmember{} T) c\mwedge{} ((hd(filter(\mlambda{}a.P[a];as)) \mmember{} as) \mwedge{} (\muparrow{}P[hd(filter(\mlambda{}a.P[a];as))]))
By
Latex:
xxx(MoveToConcl (-1) THEN GenConclTerm \mkleeneopen{}filter(\mlambda{}a.P[a];as)\mkleeneclose{}\mcdot{} THEN Auto)xxx
Home
Index