Step
*
2
2
1
3
of Lemma
agree_on_common_append
1. [T] : Type
2. u : T
3. v : T List
4. ∀bs,cs,ds:T List.
     (agree_on_common(T;v;cs) 
⇒ agree_on_common(T;bs;ds) 
⇒ agree_on_common(T;v @ bs;cs @ ds)) supposing 
        ((∀x∈v.¬(x ∈ ds)) and 
        (∀x∈cs.¬(x ∈ bs)))
5. bs : T List
6. u1 : T
7. v1 : T List
8. ∀ds:T List
     (agree_on_common(T;[u / v];v1) 
⇒ agree_on_common(T;bs;ds) 
⇒ agree_on_common(T;[u / (v @ bs)];v1 @ ds)) supposing 
        (((¬(u ∈ ds)) ∧ (∀x∈v.¬(x ∈ ds))) and 
        (∀x∈v1.¬(x ∈ bs)))
9. ds : T List
10. (¬(u1 ∈ bs)) ∧ (∀x∈v1.¬(x ∈ bs))
11. (¬(u ∈ ds)) ∧ (∀x∈v.¬(x ∈ ds))
12. (¬(u1 ∈ [u / v])) ∧ agree_on_common(T;[u / v];v1)
13. agree_on_common(T;bs;ds)
⊢ (¬(u1 ∈ [u / (v @ bs)])) ∧ agree_on_common(T;[u / (v @ bs)];v1 @ ds)
BY
{ (ParallelOp (-2)) }
1
1. [T] : Type
2. u : T
3. v : T List
4. ∀bs,cs,ds:T List.
     (agree_on_common(T;v;cs) 
⇒ agree_on_common(T;bs;ds) 
⇒ agree_on_common(T;v @ bs;cs @ ds)) supposing 
        ((∀x∈v.¬(x ∈ ds)) and 
        (∀x∈cs.¬(x ∈ bs)))
5. bs : T List
6. u1 : T
7. v1 : T List
8. ∀ds:T List
     (agree_on_common(T;[u / v];v1) 
⇒ agree_on_common(T;bs;ds) 
⇒ agree_on_common(T;[u / (v @ bs)];v1 @ ds)) supposing 
        (((¬(u ∈ ds)) ∧ (∀x∈v.¬(x ∈ ds))) and 
        (∀x∈v1.¬(x ∈ bs)))
9. ds : T List
10. (¬(u1 ∈ bs)) ∧ (∀x∈v1.¬(x ∈ bs))
11. (¬(u ∈ ds)) ∧ (∀x∈v.¬(x ∈ ds))
12. agree_on_common(T;[u / v];v1)
13. ¬(u1 ∈ [u / v])
14. agree_on_common(T;bs;ds)
⊢ ¬(u1 ∈ [u / (v @ bs)])
2
1. [T] : Type
2. u : T
3. v : T List
4. ∀bs,cs,ds:T List.
     (agree_on_common(T;v;cs) 
⇒ agree_on_common(T;bs;ds) 
⇒ agree_on_common(T;v @ bs;cs @ ds)) supposing 
        ((∀x∈v.¬(x ∈ ds)) and 
        (∀x∈cs.¬(x ∈ bs)))
5. bs : T List
6. u1 : T
7. v1 : T List
8. ∀ds:T List
     (agree_on_common(T;[u / v];v1) 
⇒ agree_on_common(T;bs;ds) 
⇒ agree_on_common(T;[u / (v @ bs)];v1 @ ds)) supposing 
        (((¬(u ∈ ds)) ∧ (∀x∈v.¬(x ∈ ds))) and 
        (∀x∈v1.¬(x ∈ bs)))
9. ds : T List
10. (¬(u1 ∈ bs)) ∧ (∀x∈v1.¬(x ∈ bs))
11. (¬(u ∈ ds)) ∧ (∀x∈v.¬(x ∈ ds))
12. ¬(u1 ∈ [u / v])
13. agree_on_common(T;[u / v];v1)
14. agree_on_common(T;bs;ds)
⊢ agree_on_common(T;[u / (v @ bs)];v1 @ ds)
Latex:
Latex:
1.  [T]  :  Type
2.  u  :  T
3.  v  :  T  List
4.  \mforall{}bs,cs,ds:T  List.
          (agree\_on\_common(T;v;cs)
                {}\mRightarrow{}  agree\_on\_common(T;bs;ds)
                {}\mRightarrow{}  agree\_on\_common(T;v  @  bs;cs  @  ds))  supposing 
                ((\mforall{}x\mmember{}v.\mneg{}(x  \mmember{}  ds))  and 
                (\mforall{}x\mmember{}cs.\mneg{}(x  \mmember{}  bs)))
5.  bs  :  T  List
6.  u1  :  T
7.  v1  :  T  List
8.  \mforall{}ds:T  List
          (agree\_on\_common(T;[u  /  v];v1)
                {}\mRightarrow{}  agree\_on\_common(T;bs;ds)
                {}\mRightarrow{}  agree\_on\_common(T;[u  /  (v  @  bs)];v1  @  ds))  supposing 
                (((\mneg{}(u  \mmember{}  ds))  \mwedge{}  (\mforall{}x\mmember{}v.\mneg{}(x  \mmember{}  ds)))  and 
                (\mforall{}x\mmember{}v1.\mneg{}(x  \mmember{}  bs)))
9.  ds  :  T  List
10.  (\mneg{}(u1  \mmember{}  bs))  \mwedge{}  (\mforall{}x\mmember{}v1.\mneg{}(x  \mmember{}  bs))
11.  (\mneg{}(u  \mmember{}  ds))  \mwedge{}  (\mforall{}x\mmember{}v.\mneg{}(x  \mmember{}  ds))
12.  (\mneg{}(u1  \mmember{}  [u  /  v]))  \mwedge{}  agree\_on\_common(T;[u  /  v];v1)
13.  agree\_on\_common(T;bs;ds)
\mvdash{}  (\mneg{}(u1  \mmember{}  [u  /  (v  @  bs)]))  \mwedge{}  agree\_on\_common(T;[u  /  (v  @  bs)];v1  @  ds)
By
Latex:
(ParallelOp  (-2))
Home
Index