Step
*
of Lemma
iseg_filter_last
No Annotations
∀[T:Type]
  ∀P:T ⟶ 𝔹. ∀L_1,L_2:T List.
    (0 < ||L_2||
    
⇒ L_2 ≤ filter(P;L_1)
    
⇒ (∃L_3:T List. (L_3 ≤ L_1 ∧ (L_2 = filter(P;L_3) ∈ (T List)) ∧ 0 < ||L_3|| ∧ (last(L_2) = last(L_3) ∈ T))))
BY
{ (InductionOnList THEN Reduce 0 THEN Try (AutoSplit) THEN Auto) }
1
1. [T] : Type
2. P : T ⟶ 𝔹
3. L_2 : T List
4. 0 < ||L_2||
5. L_2 ≤ []
⊢ ∃L_3:T List. (L_3 ≤ [] ∧ (L_2 = filter(P;L_3) ∈ (T List)) ∧ 0 < ||L_3|| ∧ (last(L_2) = last(L_3) ∈ T))
2
1. [T] : Type
2. P : T ⟶ 𝔹
3. u : T
4. v : T List
5. ∀L_2:T List
     (0 < ||L_2||
     
⇒ L_2 ≤ filter(P;v)
     
⇒ (∃L_3:T List. (L_3 ≤ v ∧ (L_2 = filter(P;L_3) ∈ (T List)) ∧ 0 < ||L_3|| ∧ (last(L_2) = last(L_3) ∈ T))))
6. ↑(P u)
7. L_2 : T List
8. 0 < ||L_2||
9. L_2 ≤ [u / filter(P;v)]
⊢ ∃L_3:T List. (L_3 ≤ [u / v] ∧ (L_2 = filter(P;L_3) ∈ (T List)) ∧ 0 < ||L_3|| ∧ (last(L_2) = last(L_3) ∈ T))
3
1. [T] : Type
2. P : T ⟶ 𝔹
3. u : T
4. ¬↑(P u)
5. v : T List
6. ∀L_2:T List
     (0 < ||L_2||
     
⇒ L_2 ≤ filter(P;v)
     
⇒ (∃L_3:T List. (L_3 ≤ v ∧ (L_2 = filter(P;L_3) ∈ (T List)) ∧ 0 < ||L_3|| ∧ (last(L_2) = last(L_3) ∈ T))))
7. L_2 : T List
8. 0 < ||L_2||
9. L_2 ≤ filter(P;v)
⊢ ∃L_3:T List. (L_3 ≤ [u / v] ∧ (L_2 = filter(P;L_3) ∈ (T List)) ∧ 0 < ||L_3|| ∧ (last(L_2) = last(L_3) ∈ T))
Latex:
Latex:
No  Annotations
\mforall{}[T:Type]
    \mforall{}P:T  {}\mrightarrow{}  \mBbbB{}.  \mforall{}L$_{1}$,L$_{2}$:T  List.
        (0  <  ||L$_{2}$||
        {}\mRightarrow{}  L$_{2}$  \mleq{}  filter(P;L$_{1}$)
        {}\mRightarrow{}  (\mexists{}L$_{3}$:T  List.  (L$_{3}$  \mleq{}  L$_{1}\mbackslash{}f\000Cf24  \mwedge{}  (L$_{2}$  =  filter(P;L$_{3}$))  \mwedge{}  0  <  ||L$_{\000C3}$||  \mwedge{}  (last(L$_{2}$)  =  last(L$_{3}$)))))
By
Latex:
(InductionOnList  THEN  Reduce  0  THEN  Try  (AutoSplit)  THEN  Auto)
Home
Index