Metamath Proof Explorer


Theorem numclwwlk2lem1

Description: In a friendship graph, for each walk of length n starting at a fixed vertex v and ending not at this vertex, there is a unique vertex so that the walk extended by an edge to this vertex and an edge from this vertex to the first vertex of the walk is a value of operation H . If the walk is represented as a word, it is sufficient to add one vertex to the word to obtain the closed walk contained in the value of operation H , since in a word representing a closed walk the starting vertex is not repeated at the end. This theorem generally holds only for friendship graphs, because these guarantee that for the first and last vertex there is a (unique) third vertex "in between". (Contributed by Alexander van der Vekens, 3-Oct-2018) (Revised by AV, 30-May-2021) (Revised by AV, 1-May-2022)

Ref Expression
Hypotheses numclwwlk.v V=VtxG
numclwwlk.q Q=vV,nwnWWalksNG|w0=vlastSwv
numclwwlk.h H=vV,n2wvClWWalksNOnGn|wn2v
Assertion numclwwlk2lem1 GFriendGraphXVNWXQN∃!vVW++⟨“v”⟩XHN+2

Proof

Step Hyp Ref Expression
1 numclwwlk.v V=VtxG
2 numclwwlk.q Q=vV,nwnWWalksNG|w0=vlastSwv
3 numclwwlk.h H=vV,n2wvClWWalksNOnGn|wn2v
4 1 2 numclwwlkovq XVNXQN=wNWWalksNG|w0=XlastSwX
5 4 3adant1 GFriendGraphXVNXQN=wNWWalksNG|w0=XlastSwX
6 5 eleq2d GFriendGraphXVNWXQNWwNWWalksNG|w0=XlastSwX
7 fveq1 w=Ww0=W0
8 7 eqeq1d w=Ww0=XW0=X
9 fveq2 w=WlastSw=lastSW
10 9 neeq1d w=WlastSwXlastSWX
11 8 10 anbi12d w=Ww0=XlastSwXW0=XlastSWX
12 11 elrab WwNWWalksNG|w0=XlastSwXWNWWalksNGW0=XlastSWX
13 6 12 bitrdi GFriendGraphXVNWXQNWNWWalksNGW0=XlastSWX
14 simpl1 GFriendGraphXVNWNWWalksNGW0=XlastSWXGFriendGraph
15 eqid EdgG=EdgG
16 1 15 wwlknp WNWWalksNGWWordVW=N+1i0..^NWiWi+1EdgG
17 peano2nn NN+1
18 17 adantl WWordVW=N+1NN+1
19 simpl WWordVW=N+1NWWordVW=N+1
20 18 19 jca WWordVW=N+1NN+1WWordVW=N+1
21 20 ex WWordVW=N+1NN+1WWordVW=N+1
22 21 3adant3 WWordVW=N+1i0..^NWiWi+1EdgGNN+1WWordVW=N+1
23 16 22 syl WNWWalksNGNN+1WWordVW=N+1
24 lswlgt0cl N+1WWordVW=N+1lastSWV
25 23 24 syl6 WNWWalksNGNlastSWV
26 25 adantr WNWWalksNGW0=XlastSWXNlastSWV
27 26 com12 NWNWWalksNGW0=XlastSWXlastSWV
28 27 3ad2ant3 GFriendGraphXVNWNWWalksNGW0=XlastSWXlastSWV
29 28 imp GFriendGraphXVNWNWWalksNGW0=XlastSWXlastSWV
30 eleq1 W0=XW0VXV
31 30 biimprd W0=XXVW0V
32 31 ad2antrl WNWWalksNGW0=XlastSWXXVW0V
33 32 com12 XVWNWWalksNGW0=XlastSWXW0V
34 33 3ad2ant2 GFriendGraphXVNWNWWalksNGW0=XlastSWXW0V
35 34 imp GFriendGraphXVNWNWWalksNGW0=XlastSWXW0V
36 neeq2 X=W0lastSWXlastSWW0
37 36 eqcoms W0=XlastSWXlastSWW0
38 37 biimpa W0=XlastSWXlastSWW0
39 38 adantl WNWWalksNGW0=XlastSWXlastSWW0
40 39 adantl GFriendGraphXVNWNWWalksNGW0=XlastSWXlastSWW0
41 29 35 40 3jca GFriendGraphXVNWNWWalksNGW0=XlastSWXlastSWVW0VlastSWW0
42 1 15 frcond2 GFriendGraphlastSWVW0VlastSWW0∃!vVlastSWvEdgGvW0EdgG
43 14 41 42 sylc GFriendGraphXVNWNWWalksNGW0=XlastSWX∃!vVlastSWvEdgGvW0EdgG
44 simpl WNWWalksNGW0=XlastSWXWNWWalksNG
45 44 ad2antlr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVWNWWalksNG
46 simpr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVvV
47 nnnn0 NN0
48 47 3ad2ant3 GFriendGraphXVNN0
49 48 ad2antrr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVN0
50 45 46 49 3jca GFriendGraphXVNWNWWalksNGW0=XlastSWXvVWNWWalksNGvVN0
51 1 15 wwlksext2clwwlk WNWWalksNGvVlastSWvEdgGvW0EdgGW++⟨“v”⟩N+2ClWWalksNG
52 51 3adant3 WNWWalksNGvVN0lastSWvEdgGvW0EdgGW++⟨“v”⟩N+2ClWWalksNG
53 52 imp WNWWalksNGvVN0lastSWvEdgGvW0EdgGW++⟨“v”⟩N+2ClWWalksNG
54 50 53 sylan GFriendGraphXVNWNWWalksNGW0=XlastSWXvVlastSWvEdgGvW0EdgGW++⟨“v”⟩N+2ClWWalksNG
55 1 wwlknbp WNWWalksNGGVN0WWordV
56 55 simp3d WNWWalksNGWWordV
57 56 ad2antrl GFriendGraphXVNWNWWalksNGW0=XlastSWXWWordV
58 57 ad2antrr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGWWordV
59 46 adantr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGvV
60 2z 2
61 nn0pzuz N02N+22
62 47 60 61 sylancl NN+22
63 62 3ad2ant3 GFriendGraphXVNN+22
64 63 ad3antrrr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGN+22
65 simpr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGW++⟨“v”⟩N+2ClWWalksNG
66 1 15 clwwlkext2edg WWordVvVN+22W++⟨“v”⟩N+2ClWWalksNGlastSWvEdgGvW0EdgG
67 58 59 64 65 66 syl31anc GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGlastSWvEdgGvW0EdgG
68 54 67 impbida GFriendGraphXVNWNWWalksNGW0=XlastSWXvVlastSWvEdgGvW0EdgGW++⟨“v”⟩N+2ClWWalksNG
69 46 1 eleqtrdi GFriendGraphXVNWNWWalksNGW0=XlastSWXvVvVtxG
70 38 anim2i WNWWalksNGW0=XlastSWXWNWWalksNGlastSWW0
71 70 ad2antlr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVWNWWalksNGlastSWW0
72 71 simprd GFriendGraphXVNWNWWalksNGW0=XlastSWXvVlastSWW0
73 numclwwlk2lem1lem vVtxGWNWWalksNGlastSWW0W++⟨“v”⟩0=W0W++⟨“v”⟩NW0
74 69 45 72 73 syl3anc GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=W0W++⟨“v”⟩NW0
75 eqeq2 X=W0W++⟨“v”⟩0=XW++⟨“v”⟩0=W0
76 75 eqcoms W0=XW++⟨“v”⟩0=XW++⟨“v”⟩0=W0
77 76 ad2antrl WNWWalksNGW0=XlastSWXW++⟨“v”⟩0=XW++⟨“v”⟩0=W0
78 77 ad2antlr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=XW++⟨“v”⟩0=W0
79 74 simpld GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=W0
80 79 neeq2d GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩NW++⟨“v”⟩0W++⟨“v”⟩NW0
81 78 80 anbi12d GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=XW++⟨“v”⟩NW++⟨“v”⟩0W++⟨“v”⟩0=W0W++⟨“v”⟩NW0
82 74 81 mpbird GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=XW++⟨“v”⟩NW++⟨“v”⟩0
83 nncn NN
84 2cnd N2
85 83 84 pncand NN+2-2=N
86 85 3ad2ant3 GFriendGraphXVNN+2-2=N
87 86 ad2antrr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVN+2-2=N
88 87 fveq2d GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2-2=W++⟨“v”⟩N
89 88 neeq1d GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2-2W++⟨“v”⟩0W++⟨“v”⟩NW++⟨“v”⟩0
90 89 anbi2d GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=XW++⟨“v”⟩N+2-2W++⟨“v”⟩0W++⟨“v”⟩0=XW++⟨“v”⟩NW++⟨“v”⟩0
91 82 90 mpbird GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩0=XW++⟨“v”⟩N+2-2W++⟨“v”⟩0
92 91 biantrud GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGW++⟨“v”⟩N+2ClWWalksNGW++⟨“v”⟩0=XW++⟨“v”⟩N+2-2W++⟨“v”⟩0
93 62 anim2i XVNXVN+22
94 93 3adant1 GFriendGraphXVNXVN+22
95 94 ad2antrr GFriendGraphXVNWNWWalksNGW0=XlastSWXvVXVN+22
96 3 numclwwlkovh XVN+22XHN+2=wN+2ClWWalksNG|w0=XwN+2-2w0
97 95 96 syl GFriendGraphXVNWNWWalksNGW0=XlastSWXvVXHN+2=wN+2ClWWalksNG|w0=XwN+2-2w0
98 97 eleq2d GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩XHN+2W++⟨“v”⟩wN+2ClWWalksNG|w0=XwN+2-2w0
99 fveq1 w=W++⟨“v”⟩w0=W++⟨“v”⟩0
100 99 eqeq1d w=W++⟨“v”⟩w0=XW++⟨“v”⟩0=X
101 fveq1 w=W++⟨“v”⟩wN+2-2=W++⟨“v”⟩N+2-2
102 101 99 neeq12d w=W++⟨“v”⟩wN+2-2w0W++⟨“v”⟩N+2-2W++⟨“v”⟩0
103 100 102 anbi12d w=W++⟨“v”⟩w0=XwN+2-2w0W++⟨“v”⟩0=XW++⟨“v”⟩N+2-2W++⟨“v”⟩0
104 103 elrab W++⟨“v”⟩wN+2ClWWalksNG|w0=XwN+2-2w0W++⟨“v”⟩N+2ClWWalksNGW++⟨“v”⟩0=XW++⟨“v”⟩N+2-2W++⟨“v”⟩0
105 98 104 bitr2di GFriendGraphXVNWNWWalksNGW0=XlastSWXvVW++⟨“v”⟩N+2ClWWalksNGW++⟨“v”⟩0=XW++⟨“v”⟩N+2-2W++⟨“v”⟩0W++⟨“v”⟩XHN+2
106 68 92 105 3bitrd GFriendGraphXVNWNWWalksNGW0=XlastSWXvVlastSWvEdgGvW0EdgGW++⟨“v”⟩XHN+2
107 106 reubidva GFriendGraphXVNWNWWalksNGW0=XlastSWX∃!vVlastSWvEdgGvW0EdgG∃!vVW++⟨“v”⟩XHN+2
108 43 107 mpbid GFriendGraphXVNWNWWalksNGW0=XlastSWX∃!vVW++⟨“v”⟩XHN+2
109 108 ex GFriendGraphXVNWNWWalksNGW0=XlastSWX∃!vVW++⟨“v”⟩XHN+2
110 13 109 sylbid GFriendGraphXVNWXQN∃!vVW++⟨“v”⟩XHN+2