Step
*
of Lemma
filter_is_singleton
∀[T:Type]. ∀[P:T ⟶ 𝔹]. ∀[L:T List]. ∀[x:T].
  (filter(P;L) = [x] ∈ (T List)) supposing ((∀y∈L.(↑P[y]) 
⇒ (y = x ∈ T)) and (↑P[x]) and (x ∈! L))
BY
{ (InductionOnList THEN Auto) }
1
1. T : Type
2. P : T ⟶ 𝔹
3. x : T
4. (x ∈! [])
5. ↑P[x]
6. (∀y∈[].(↑P[y]) 
⇒ (y = x ∈ T))
⊢ filter(P;[]) = [x] ∈ (T List)
2
1. T : Type
2. P : T ⟶ 𝔹
3. u : T
4. v : T List
5. ∀[x:T]. (filter(P;v) = [x] ∈ (T List)) supposing ((∀y∈v.(↑P[y]) 
⇒ (y = x ∈ T)) and (↑P[x]) and (x ∈! v))
6. x : T
7. (x ∈! [u / v])
8. ↑P[x]
9. (∀y∈[u / v].(↑P[y]) 
⇒ (y = x ∈ T))
⊢ filter(P;[u / v]) = [x] ∈ (T List)
Latex:
Latex:
\mforall{}[T:Type].  \mforall{}[P:T  {}\mrightarrow{}  \mBbbB{}].  \mforall{}[L:T  List].  \mforall{}[x:T].
    (filter(P;L)  =  [x])  supposing  ((\mforall{}y\mmember{}L.(\muparrow{}P[y])  {}\mRightarrow{}  (y  =  x))  and  (\muparrow{}P[x])  and  (x  \mmember{}!  L))
By
Latex:
(InductionOnList  THEN  Auto)
Home
Index