Step
*
2
1
2
2
2
1
2
of Lemma
lconnects-transitive
1. u : IdLnk@i
2. v : IdLnk List@i
3. ∀q:IdLnk List. ∀i,j,k:Id.  (∃r:IdLnk List. lconnects(r;i;k)) supposing (lconnects(q;j;k) and lconnects(v;i;j))@i
4. q : IdLnk List@i
5. i : Id@i
6. j : Id@i
7. k : Id@i
8. lpath([u / v])
9. ((||v|| + 1) = 0 ∈ ℤ) 
⇒ (i = j ∈ Id)
10. lconnects(q;j;k)
11. i = source(u) ∈ Id
12. j = destination(last([u / v])) ∈ Id
13. u1 : IdLnk
14. v1 : IdLnk List
15. lpath([u1 / v1])
16. ((||v1|| + 1) = 0 ∈ ℤ) 
⇒ (destination(u) = k ∈ Id)
17. (¬((||v1|| + 1) = 0 ∈ ℤ)) 
⇒ ((destination(u) = source(u1) ∈ Id) ∧ (k = destination(last([u1 / v1])) ∈ Id))
18. ¬(u1 = lnk-inv(u) ∈ IdLnk)
19. lpath([u; [u1 / v1]])
20. (((||v1|| + 1) + 1) = 0 ∈ ℤ) 
⇒ (i = k ∈ Id)
21. ¬(((||v1|| + 1) + 1) = 0 ∈ ℤ)@i
22. i = source(u) ∈ Id
⊢ k = destination(last([u; [u1 / v1]])) ∈ Id
BY
{ (RWO "last_cons" 0 THEN Reduce 0 THEN Auto) }
1
1. u : IdLnk@i
2. v : IdLnk List@i
3. ∀q:IdLnk List. ∀i,j,k:Id.  (∃r:IdLnk List. lconnects(r;i;k)) supposing (lconnects(q;j;k) and lconnects(v;i;j))@i
4. q : IdLnk List@i
5. i : Id@i
6. j : Id@i
7. k : Id@i
8. lpath([u / v])
9. ((||v|| + 1) = 0 ∈ ℤ) 
⇒ (i = j ∈ Id)
10. lconnects(q;j;k)
11. i = source(u) ∈ Id
12. j = destination(last([u / v])) ∈ Id
13. u1 : IdLnk
14. v1 : IdLnk List
15. lpath([u1 / v1])
16. ((||v1|| + 1) = 0 ∈ ℤ) 
⇒ (destination(u) = k ∈ Id)
17. (¬((||v1|| + 1) = 0 ∈ ℤ)) 
⇒ ((destination(u) = source(u1) ∈ Id) ∧ (k = destination(last([u1 / v1])) ∈ Id))
18. ¬(u1 = lnk-inv(u) ∈ IdLnk)
19. lpath([u; [u1 / v1]])
20. (((||v1|| + 1) + 1) = 0 ∈ ℤ) 
⇒ (i = k ∈ Id)
21. ¬(((||v1|| + 1) + 1) = 0 ∈ ℤ)@i
22. i = source(u) ∈ Id
⊢ k = destination(last([u1 / v1])) ∈ Id
Latex:
1.  u  :  IdLnk@i
2.  v  :  IdLnk  List@i
3.  \mforall{}q:IdLnk  List.  \mforall{}i,j,k:Id.
          (\mexists{}r:IdLnk  List.  lconnects(r;i;k))  supposing  (lconnects(q;j;k)  and  lconnects(v;i;j))@i
4.  q  :  IdLnk  List@i
5.  i  :  Id@i
6.  j  :  Id@i
7.  k  :  Id@i
8.  lpath([u  /  v])
9.  ((||v||  +  1)  =  0)  {}\mRightarrow{}  (i  =  j)
10.  lconnects(q;j;k)
11.  i  =  source(u)
12.  j  =  destination(last([u  /  v]))
13.  u1  :  IdLnk
14.  v1  :  IdLnk  List
15.  lpath([u1  /  v1])
16.  ((||v1||  +  1)  =  0)  {}\mRightarrow{}  (destination(u)  =  k)
17.  (\mneg{}((||v1||  +  1)  =  0))  {}\mRightarrow{}  ((destination(u)  =  source(u1))  \mwedge{}  (k  =  destination(last([u1  /  v1]))))
18.  \mneg{}(u1  =  lnk-inv(u))
19.  lpath([u;  [u1  /  v1]])
20.  (((||v1||  +  1)  +  1)  =  0)  {}\mRightarrow{}  (i  =  k)
21.  \mneg{}(((||v1||  +  1)  +  1)  =  0)@i
22.  i  =  source(u)
\mvdash{}  k  =  destination(last([u;  [u1  /  v1]]))
By
(RWO  "last\_cons"  0  THEN  Reduce  0  THEN  Auto)
Home
Index