Metamath Proof Explorer


Theorem clwwlkext2edg

Description: If a word concatenated with a vertex represents a closed walk in (in a graph), there is an edge between this vertex and the last vertex of the word, and between this vertex and the first vertex of the word. (Contributed by Alexander van der Vekens, 3-Oct-2018) (Revised by AV, 27-Apr-2021) (Proof shortened by AV, 22-Mar-2022)

Ref Expression
Hypotheses clwwlkext2edg.v V=VtxG
clwwlkext2edg.e E=EdgG
Assertion clwwlkext2edg WWordVZVN2W++⟨“Z”⟩NClWWalksNGlastSWZEZW0E

Proof

Step Hyp Ref Expression
1 clwwlkext2edg.v V=VtxG
2 clwwlkext2edg.e E=EdgG
3 clwwlknnn W++⟨“Z”⟩NClWWalksNGN
4 1 2 isclwwlknx NW++⟨“Z”⟩NClWWalksNGW++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=N
5 ige2m2fzo N2N20..^N1
6 5 3ad2ant3 WWordVZVN2N20..^N1
7 6 adantr WWordVZVN2W++⟨“Z”⟩=NN20..^N1
8 oveq1 W++⟨“Z”⟩=NW++⟨“Z”⟩1=N1
9 8 oveq2d W++⟨“Z”⟩=N0..^W++⟨“Z”⟩1=0..^N1
10 9 eleq2d W++⟨“Z”⟩=NN20..^W++⟨“Z”⟩1N20..^N1
11 10 adantl WWordVZVN2W++⟨“Z”⟩=NN20..^W++⟨“Z”⟩1N20..^N1
12 7 11 mpbird WWordVZVN2W++⟨“Z”⟩=NN20..^W++⟨“Z”⟩1
13 fveq2 i=N2W++⟨“Z”⟩i=W++⟨“Z”⟩N2
14 fvoveq1 i=N2W++⟨“Z”⟩i+1=W++⟨“Z”⟩N-2+1
15 13 14 preq12d i=N2W++⟨“Z”⟩iW++⟨“Z”⟩i+1=W++⟨“Z”⟩N2W++⟨“Z”⟩N-2+1
16 15 eleq1d i=N2W++⟨“Z”⟩iW++⟨“Z”⟩i+1EW++⟨“Z”⟩N2W++⟨“Z”⟩N-2+1E
17 16 rspcv N20..^W++⟨“Z”⟩1i0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1EW++⟨“Z”⟩N2W++⟨“Z”⟩N-2+1E
18 12 17 syl WWordVZVN2W++⟨“Z”⟩=Ni0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1EW++⟨“Z”⟩N2W++⟨“Z”⟩N-2+1E
19 wrdlenccats1lenm1 WWordVW++⟨“Z”⟩1=W
20 19 eqcomd WWordVW=W++⟨“Z”⟩1
21 20 adantr WWordVZVW=W++⟨“Z”⟩1
22 21 8 sylan9eq WWordVZVW++⟨“Z”⟩=NW=N1
23 22 ex WWordVZVW++⟨“Z”⟩=NW=N1
24 23 3adant3 WWordVZVN2W++⟨“Z”⟩=NW=N1
25 eluzelcn N2N
26 1cnd N21
27 25 26 26 subsub4d N2N-1-1=N1+1
28 1p1e2 1+1=2
29 28 a1i N21+1=2
30 29 oveq2d N2N1+1=N2
31 27 30 eqtr2d N2N2=N-1-1
32 31 3ad2ant3 WWordVZVN2N2=N-1-1
33 oveq1 W=N1W1=N-1-1
34 33 eqcomd W=N1N-1-1=W1
35 32 34 sylan9eq WWordVZVN2W=N1N2=W1
36 35 ex WWordVZVN2W=N1N2=W1
37 24 36 syld WWordVZVN2W++⟨“Z”⟩=NN2=W1
38 37 imp WWordVZVN2W++⟨“Z”⟩=NN2=W1
39 38 fveq2d WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩N2=W++⟨“Z”⟩W1
40 simpl1 WWordVZVN2W=N1WWordV
41 s1cl ZV⟨“Z”⟩WordV
42 41 3ad2ant2 WWordVZVN2⟨“Z”⟩WordV
43 42 adantr WWordVZVN2W=N1⟨“Z”⟩WordV
44 eluz2 N22N2N
45 zre NN
46 1red N2N1
47 2re 2
48 47 a1i N2N2
49 simpl N2NN
50 1lt2 1<2
51 50 a1i N2N1<2
52 simpr N2N2N
53 46 48 49 51 52 ltletrd N2N1<N
54 1red N1
55 id NN
56 54 55 posdifd N1<N0<N1
57 56 adantr N2N1<N0<N1
58 53 57 mpbid N2N0<N1
59 58 ex N2N0<N1
60 45 59 syl N2N0<N1
61 60 a1i 2N2N0<N1
62 61 3imp 2N2N0<N1
63 44 62 sylbi N20<N1
64 63 ad2antlr WWordVN2W=N10<N1
65 breq2 W=N10<W0<N1
66 65 adantl WWordVN2W=N10<W0<N1
67 64 66 mpbird WWordVN2W=N10<W
68 hashneq0 WWordV0<WW
69 68 adantr WWordVN20<WW
70 69 adantr WWordVN2W=N10<WW
71 67 70 mpbid WWordVN2W=N1W
72 71 3adantl2 WWordVZVN2W=N1W
73 40 43 72 3jca WWordVZVN2W=N1WWordV⟨“Z”⟩WordVW
74 73 ex WWordVZVN2W=N1WWordV⟨“Z”⟩WordVW
75 24 74 syld WWordVZVN2W++⟨“Z”⟩=NWWordV⟨“Z”⟩WordVW
76 75 imp WWordVZVN2W++⟨“Z”⟩=NWWordV⟨“Z”⟩WordVW
77 ccatval1lsw WWordV⟨“Z”⟩WordVWW++⟨“Z”⟩W1=lastSW
78 76 77 syl WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩W1=lastSW
79 39 78 eqtrd WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩N2=lastSW
80 2m1e1 21=1
81 80 a1i N221=1
82 81 eqcomd N21=21
83 82 oveq2d N2N1=N21
84 2cnd N22
85 25 84 26 subsubd N2N21=N-2+1
86 83 85 eqtr2d N2N-2+1=N1
87 86 3ad2ant3 WWordVZVN2N-2+1=N1
88 eqeq2 W=N1N-2+1=WN-2+1=N1
89 87 88 syl5ibrcom WWordVZVN2W=N1N-2+1=W
90 24 89 syld WWordVZVN2W++⟨“Z”⟩=NN-2+1=W
91 90 imp WWordVZVN2W++⟨“Z”⟩=NN-2+1=W
92 91 fveq2d WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩N-2+1=W++⟨“Z”⟩W
93 id WWordVZVWWordVZV
94 93 3adant3 WWordVZVN2WWordVZV
95 94 adantr WWordVZVN2W++⟨“Z”⟩=NWWordVZV
96 ccatws1ls WWordVZVW++⟨“Z”⟩W=Z
97 95 96 syl WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩W=Z
98 92 97 eqtrd WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩N-2+1=Z
99 79 98 preq12d WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩N2W++⟨“Z”⟩N-2+1=lastSWZ
100 99 eleq1d WWordVZVN2W++⟨“Z”⟩=NW++⟨“Z”⟩N2W++⟨“Z”⟩N-2+1ElastSWZE
101 18 100 sylibd WWordVZVN2W++⟨“Z”⟩=Ni0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSWZE
102 101 ex WWordVZVN2W++⟨“Z”⟩=Ni0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSWZE
103 102 com13 i0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1EW++⟨“Z”⟩=NWWordVZVN2lastSWZE
104 103 3ad2ant2 W++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2lastSWZE
105 104 imp31 W++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2lastSWZE
106 94 adantr WWordVZVN2W=N1WWordVZV
107 lswccats1 WWordVZVlastSW++⟨“Z”⟩=Z
108 106 107 syl WWordVZVN2W=N1lastSW++⟨“Z”⟩=Z
109 63 3ad2ant3 WWordVZVN20<N1
110 109 adantr WWordVZVN2W=N10<N1
111 65 adantl WWordVZVN2W=N10<W0<N1
112 110 111 mpbird WWordVZVN2W=N10<W
113 ccatfv0 WWordV⟨“Z”⟩WordV0<WW++⟨“Z”⟩0=W0
114 40 43 112 113 syl3anc WWordVZVN2W=N1W++⟨“Z”⟩0=W0
115 108 114 preq12d WWordVZVN2W=N1lastSW++⟨“Z”⟩W++⟨“Z”⟩0=ZW0
116 115 ex WWordVZVN2W=N1lastSW++⟨“Z”⟩W++⟨“Z”⟩0=ZW0
117 24 116 syld WWordVZVN2W++⟨“Z”⟩=NlastSW++⟨“Z”⟩W++⟨“Z”⟩0=ZW0
118 117 impcom W++⟨“Z”⟩=NWWordVZVN2lastSW++⟨“Z”⟩W++⟨“Z”⟩0=ZW0
119 118 eleq1d W++⟨“Z”⟩=NWWordVZVN2lastSW++⟨“Z”⟩W++⟨“Z”⟩0EZW0E
120 119 biimpcd lastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2ZW0E
121 120 3ad2ant3 W++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2ZW0E
122 121 impl W++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2ZW0E
123 105 122 jca W++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2lastSWZEZW0E
124 123 ex W++⟨“Z”⟩WordVi0..^W++⟨“Z”⟩1W++⟨“Z”⟩iW++⟨“Z”⟩i+1ElastSW++⟨“Z”⟩W++⟨“Z”⟩0EW++⟨“Z”⟩=NWWordVZVN2lastSWZEZW0E
125 4 124 syl6bi NW++⟨“Z”⟩NClWWalksNGWWordVZVN2lastSWZEZW0E
126 3 125 mpcom W++⟨“Z”⟩NClWWalksNGWWordVZVN2lastSWZEZW0E
127 126 impcom WWordVZVN2W++⟨“Z”⟩NClWWalksNGlastSWZEZW0E