Metamath Proof Explorer


Theorem erclwwlkntr

Description: .~ is a transitive relation over the set of closed walks (defined as words). (Contributed by Alexander van der Vekens, 10-Apr-2018) (Revised by AV, 30-Apr-2021)

Ref Expression
Hypotheses erclwwlkn.w W=NClWWalksNG
erclwwlkn.r ˙=tu|tWuWn0Nt=ucyclShiftn
Assertion erclwwlkntr x˙yy˙zx˙z

Proof

Step Hyp Ref Expression
1 erclwwlkn.w W=NClWWalksNG
2 erclwwlkn.r ˙=tu|tWuWn0Nt=ucyclShiftn
3 vex xV
4 vex yV
5 vex zV
6 1 2 erclwwlkneqlen xVyVx˙yx=y
7 6 3adant3 xVyVzVx˙yx=y
8 1 2 erclwwlkneqlen yVzVy˙zy=z
9 8 3adant1 xVyVzVy˙zy=z
10 1 2 erclwwlkneq yVzVy˙zyWzWn0Ny=zcyclShiftn
11 10 3adant1 xVyVzVy˙zyWzWn0Ny=zcyclShiftn
12 1 2 erclwwlkneq xVyVx˙yxWyWn0Nx=ycyclShiftn
13 12 3adant3 xVyVzVx˙yxWyWn0Nx=ycyclShiftn
14 simpr1 y=zx=yyWzWn0Ny=zcyclShiftnxWyWn0Nx=ycyclShiftnxW
15 simplr2 y=zx=yyWzWn0Ny=zcyclShiftnxWyWn0Nx=ycyclShiftnzW
16 oveq2 n=mycyclShiftn=ycyclShiftm
17 16 eqeq2d n=mx=ycyclShiftnx=ycyclShiftm
18 17 cbvrexvw n0Nx=ycyclShiftnm0Nx=ycyclShiftm
19 oveq2 n=kzcyclShiftn=zcyclShiftk
20 19 eqeq2d n=ky=zcyclShiftny=zcyclShiftk
21 20 cbvrexvw n0Ny=zcyclShiftnk0Ny=zcyclShiftk
22 eqid VtxG=VtxG
23 22 clwwlknbp zNClWWalksNGzWordVtxGz=N
24 eqcom z=NN=z
25 24 biimpi z=NN=z
26 23 25 simpl2im zNClWWalksNGN=z
27 26 1 eleq2s zWN=z
28 27 ad2antlr xWyWzWy=zx=yN=z
29 23 simpld zNClWWalksNGzWordVtxG
30 29 1 eleq2s zWzWordVtxG
31 30 ad2antlr xWyWzWy=zx=yzWordVtxG
32 31 adantl N=zxWyWzWy=zx=yzWordVtxG
33 simprr N=zxWyWzWy=zx=yy=zx=y
34 32 33 cshwcsh2id N=zxWyWzWy=zx=ym0yx=ycyclShiftmk0zy=zcyclShiftkn0zx=zcyclShiftn
35 oveq2 N=z0N=0z
36 oveq2 z=y0z=0y
37 36 eqcoms y=z0z=0y
38 37 adantr y=zx=y0z=0y
39 38 adantl xWyWzWy=zx=y0z=0y
40 35 39 sylan9eq N=zxWyWzWy=zx=y0N=0y
41 40 eleq2d N=zxWyWzWy=zx=ym0Nm0y
42 41 anbi1d N=zxWyWzWy=zx=ym0Nx=ycyclShiftmm0yx=ycyclShiftm
43 35 eleq2d N=zk0Nk0z
44 43 anbi1d N=zk0Ny=zcyclShiftkk0zy=zcyclShiftk
45 44 adantr N=zxWyWzWy=zx=yk0Ny=zcyclShiftkk0zy=zcyclShiftk
46 42 45 anbi12d N=zxWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkm0yx=ycyclShiftmk0zy=zcyclShiftk
47 35 rexeqdv N=zn0Nx=zcyclShiftnn0zx=zcyclShiftn
48 47 adantr N=zxWyWzWy=zx=yn0Nx=zcyclShiftnn0zx=zcyclShiftn
49 34 46 48 3imtr4d N=zxWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
50 28 49 mpancom xWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
51 50 exp5l xWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
52 51 imp41 xWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
53 52 rexlimdva xWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
54 53 ex xWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
55 54 rexlimdva xWyWzWy=zx=ym0Nx=ycyclShiftmk0Ny=zcyclShiftkn0Nx=zcyclShiftn
56 21 55 syl7bi xWyWzWy=zx=ym0Nx=ycyclShiftmn0Ny=zcyclShiftnn0Nx=zcyclShiftn
57 18 56 biimtrid xWyWzWy=zx=yn0Nx=ycyclShiftnn0Ny=zcyclShiftnn0Nx=zcyclShiftn
58 57 exp31 xWyWzWy=zx=yn0Nx=ycyclShiftnn0Ny=zcyclShiftnn0Nx=zcyclShiftn
59 58 com15 n0Ny=zcyclShiftnzWy=zx=yn0Nx=ycyclShiftnxWyWn0Nx=zcyclShiftn
60 59 impcom zWn0Ny=zcyclShiftny=zx=yn0Nx=ycyclShiftnxWyWn0Nx=zcyclShiftn
61 60 3adant1 yWzWn0Ny=zcyclShiftny=zx=yn0Nx=ycyclShiftnxWyWn0Nx=zcyclShiftn
62 61 impcom y=zx=yyWzWn0Ny=zcyclShiftnn0Nx=ycyclShiftnxWyWn0Nx=zcyclShiftn
63 62 com13 xWyWn0Nx=ycyclShiftny=zx=yyWzWn0Ny=zcyclShiftnn0Nx=zcyclShiftn
64 63 3impia xWyWn0Nx=ycyclShiftny=zx=yyWzWn0Ny=zcyclShiftnn0Nx=zcyclShiftn
65 64 impcom y=zx=yyWzWn0Ny=zcyclShiftnxWyWn0Nx=ycyclShiftnn0Nx=zcyclShiftn
66 14 15 65 3jca y=zx=yyWzWn0Ny=zcyclShiftnxWyWn0Nx=ycyclShiftnxWzWn0Nx=zcyclShiftn
67 1 2 erclwwlkneq xVzVx˙zxWzWn0Nx=zcyclShiftn
68 67 3adant2 xVyVzVx˙zxWzWn0Nx=zcyclShiftn
69 66 68 syl5ibrcom y=zx=yyWzWn0Ny=zcyclShiftnxWyWn0Nx=ycyclShiftnxVyVzVx˙z
70 69 exp31 y=zx=yyWzWn0Ny=zcyclShiftnxWyWn0Nx=ycyclShiftnxVyVzVx˙z
71 70 com24 y=zx=yxVyVzVxWyWn0Nx=ycyclShiftnyWzWn0Ny=zcyclShiftnx˙z
72 71 ex y=zx=yxVyVzVxWyWn0Nx=ycyclShiftnyWzWn0Ny=zcyclShiftnx˙z
73 72 com4t xVyVzVxWyWn0Nx=ycyclShiftny=zx=yyWzWn0Ny=zcyclShiftnx˙z
74 13 73 sylbid xVyVzVx˙yy=zx=yyWzWn0Ny=zcyclShiftnx˙z
75 74 com25 xVyVzVyWzWn0Ny=zcyclShiftny=zx=yx˙yx˙z
76 11 75 sylbid xVyVzVy˙zy=zx=yx˙yx˙z
77 9 76 mpdd xVyVzVy˙zx=yx˙yx˙z
78 77 com24 xVyVzVx˙yx=yy˙zx˙z
79 7 78 mpdd xVyVzVx˙yy˙zx˙z
80 79 impd xVyVzVx˙yy˙zx˙z
81 3 4 5 80 mp3an x˙yy˙zx˙z