Step
*
2
of Lemma
agree_on_common_iseg
1. [T] : Type
2. u : T
3. v : T List
4. ∀bs2,as1,bs1:T List.  (as1 ≤ v 
⇒ bs1 ≤ bs2 
⇒ agree_on_common(T;v;bs2) 
⇒ agree_on_common(T;as1;bs1))
⊢ ∀bs2,as1,bs1:T List.  (as1 ≤ [u / v] 
⇒ bs1 ≤ bs2 
⇒ agree_on_common(T;[u / v];bs2) 
⇒ agree_on_common(T;as1;bs1))
BY
{ InductionOnList }
1
1. [T] : Type
2. u : T
3. v : T List
4. ∀bs2,as1,bs1:T List.  (as1 ≤ v 
⇒ bs1 ≤ bs2 
⇒ agree_on_common(T;v;bs2) 
⇒ agree_on_common(T;as1;bs1))
⊢ ∀as1,bs1:T List.  (as1 ≤ [u / v] 
⇒ bs1 ≤ [] 
⇒ agree_on_common(T;[u / v];[]) 
⇒ agree_on_common(T;as1;bs1))
2
1. [T] : Type
2. u : T
3. v : T List
4. ∀bs2,as1,bs1:T List.  (as1 ≤ v 
⇒ bs1 ≤ bs2 
⇒ agree_on_common(T;v;bs2) 
⇒ agree_on_common(T;as1;bs1))
5. u1 : T
6. v1 : T List
7. ∀as1,bs1:T List.  (as1 ≤ [u / v] 
⇒ bs1 ≤ v1 
⇒ agree_on_common(T;[u / v];v1) 
⇒ agree_on_common(T;as1;bs1))
⊢ ∀as1,bs1:T List.
    (as1 ≤ [u / v] 
⇒ bs1 ≤ [u1 / v1] 
⇒ agree_on_common(T;[u / v];[u1 / v1]) 
⇒ agree_on_common(T;as1;bs1))
Latex:
Latex:
1.  [T]  :  Type
2.  u  :  T
3.  v  :  T  List
4.  \mforall{}bs2,as1,bs1:T  List.
          (as1  \mleq{}  v  {}\mRightarrow{}  bs1  \mleq{}  bs2  {}\mRightarrow{}  agree\_on\_common(T;v;bs2)  {}\mRightarrow{}  agree\_on\_common(T;as1;bs1))
\mvdash{}  \mforall{}bs2,as1,bs1:T  List.
        (as1  \mleq{}  [u  /  v]  {}\mRightarrow{}  bs1  \mleq{}  bs2  {}\mRightarrow{}  agree\_on\_common(T;[u  /  v];bs2)  {}\mRightarrow{}  agree\_on\_common(T;as1;bs1))
By
Latex:
InductionOnList
Home
Index