Step
*
2
2
of Lemma
sublist_interleaved
1. [T] : Type
2. u : T
3. v : T List
4. ∀L1:T List. (L1 ⊆ v
⇒ (∃L2:T List. interleaving(T;L1;L2;v)))
5. u1 : T
6. v1 : T List
7. v1 ⊆ [u / v]
⇒ (∃L2:T List. interleaving(T;v1;L2;[u / v]))
⊢ [u1 / v1] ⊆ [u / v]
⇒ (∃L2:T List. interleaving(T;[u1 / v1];L2;[u / v]))
BY
{ ((((D 0 THENA Auto) THEN RWO "cons_sublist_cons" (-1)) THENA Auto) THEN D (-1)) }
1
1. [T] : Type
2. u : T
3. v : T List
4. ∀L1:T List. (L1 ⊆ v
⇒ (∃L2:T List. interleaving(T;L1;L2;v)))
5. u1 : T
6. v1 : T List
7. v1 ⊆ [u / v]
⇒ (∃L2:T List. interleaving(T;v1;L2;[u / v]))
8. (u1 = u ∈ T) ∧ v1 ⊆ v
⊢ ∃L2:T List. interleaving(T;[u1 / v1];L2;[u / v])
2
1. [T] : Type
2. u : T
3. v : T List
4. ∀L1:T List. (L1 ⊆ v
⇒ (∃L2:T List. interleaving(T;L1;L2;v)))
5. u1 : T
6. v1 : T List
7. v1 ⊆ [u / v]
⇒ (∃L2:T List. interleaving(T;v1;L2;[u / v]))
8. [u1 / v1] ⊆ v
⊢ ∃L2:T List. interleaving(T;[u1 / v1];L2;[u / v])
Latex:
Latex:
1. [T] : Type
2. u : T
3. v : T List
4. \mforall{}L1:T List. (L1 \msubseteq{} v {}\mRightarrow{} (\mexists{}L2:T List. interleaving(T;L1;L2;v)))
5. u1 : T
6. v1 : T List
7. v1 \msubseteq{} [u / v] {}\mRightarrow{} (\mexists{}L2:T List. interleaving(T;v1;L2;[u / v]))
\mvdash{} [u1 / v1] \msubseteq{} [u / v] {}\mRightarrow{} (\mexists{}L2:T List. interleaving(T;[u1 / v1];L2;[u / v]))
By
Latex:
((((D 0 THENA Auto) THEN RWO "cons\_sublist\_cons" (-1)) THENA Auto) THEN D (-1))
Home
Index