Step * 4 of Lemma sublist_filter


1. [T] Type
2. T
3. List
4. ∀L2:T List. ∀P:T ⟶ 𝔹.  (L2 ⊆ filter(P;v) ⇐⇒ L2 ⊆ v ∧ (∀x∈L2.↑(P x)))
5. u1 T
6. v1 List
7. ∀P:T ⟶ 𝔹(v1 ⊆ filter(P;[u v]) ⇐⇒ v1 ⊆ [u v] ∧ (∀x∈v1.↑(P x)))
⊢ ∀P:T ⟶ 𝔹
    ([u1 v1] ⊆ if then [u filter(P;v)] else filter(P;v) fi  ⇐⇒ [u1 v1] ⊆ [u v] ∧ (∀x∈[u1 v1].↑(P x)))
BY
(((((D THENA Auto) THEN RWO "l_all_cons" 0) THENA Auto) THEN SplitOnConclITE) THENA Auto) }

1
.....truecase..... 
1. [T] Type
2. T
3. List
4. ∀L2:T List. ∀P:T ⟶ 𝔹.  (L2 ⊆ filter(P;v) ⇐⇒ L2 ⊆ v ∧ (∀x∈L2.↑(P x)))
5. u1 T
6. v1 List
7. ∀P:T ⟶ 𝔹(v1 ⊆ filter(P;[u v]) ⇐⇒ v1 ⊆ [u v] ∧ (∀x∈v1.↑(P x)))
8. T ⟶ 𝔹
9. ↑(P u)
⊢ [u1 v1] ⊆ [u filter(P;v)] ⇐⇒ [u1 v1] ⊆ [u v] ∧ (↑(P u1)) ∧ (∀x∈v1.↑(P x))

2
.....falsecase..... 
1. [T] Type
2. T
3. List
4. ∀L2:T List. ∀P:T ⟶ 𝔹.  (L2 ⊆ filter(P;v) ⇐⇒ L2 ⊆ v ∧ (∀x∈L2.↑(P x)))
5. u1 T
6. v1 List
7. ∀P:T ⟶ 𝔹(v1 ⊆ filter(P;[u v]) ⇐⇒ v1 ⊆ [u v] ∧ (∀x∈v1.↑(P x)))
8. T ⟶ 𝔹
9. ¬↑(P u)
⊢ [u1 v1] ⊆ filter(P;v) ⇐⇒ [u1 v1] ⊆ [u v] ∧ (↑(P u1)) ∧ (∀x∈v1.↑(P x))


Latex:


Latex:

1.  [T]  :  Type
2.  u  :  T
3.  v  :  T  List
4.  \mforall{}L2:T  List.  \mforall{}P:T  {}\mrightarrow{}  \mBbbB{}.    (L2  \msubseteq{}  filter(P;v)  \mLeftarrow{}{}\mRightarrow{}  L2  \msubseteq{}  v  \mwedge{}  (\mforall{}x\mmember{}L2.\muparrow{}(P  x)))
5.  u1  :  T
6.  v1  :  T  List
7.  \mforall{}P:T  {}\mrightarrow{}  \mBbbB{}.  (v1  \msubseteq{}  filter(P;[u  /  v])  \mLeftarrow{}{}\mRightarrow{}  v1  \msubseteq{}  [u  /  v]  \mwedge{}  (\mforall{}x\mmember{}v1.\muparrow{}(P  x)))
\mvdash{}  \mforall{}P:T  {}\mrightarrow{}  \mBbbB{}
        ([u1  /  v1]  \msubseteq{}  if  P  u  then  [u  /  filter(P;v)]  else  filter(P;v)  fi 
        \mLeftarrow{}{}\mRightarrow{}  [u1  /  v1]  \msubseteq{}  [u  /  v]  \mwedge{}  (\mforall{}x\mmember{}[u1  /  v1].\muparrow{}(P  x)))


By


Latex:
(((((D  0  THENA  Auto)  THEN  RWO  "l\_all\_cons"  0)  THENA  Auto)  THEN  SplitOnConclITE)  THENA  Auto)




Home Index