Metamath Proof Explorer


Theorem numclwlk2lem2f1o

Description: R is a 1-1 onto function. (Contributed by Alexander van der Vekens, 6-Oct-2018) (Revised by AV, 21-Jan-2022) (Proof shortened by AV, 17-Mar-2022) (Revised by AV, 1-Nov-2022)

Ref Expression
Hypotheses numclwwlk.v V=VtxG
numclwwlk.q Q=vV,nwnWWalksNG|w0=vlastSwv
numclwwlk.h H=vV,n2wvClWWalksNOnGn|wn2v
numclwwlk.r R=xXHN+2xprefixN+1
Assertion numclwlk2lem2f1o GFriendGraphXVNR:XHN+21-1 ontoXQN

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 numclwwlk.r R=xXHN+2xprefixN+1
5 eleq1w y=xyXHN+2xXHN+2
6 fveq2 y=xRy=Rx
7 oveq1 y=xyprefixN+1=xprefixN+1
8 6 7 eqeq12d y=xRy=yprefixN+1Rx=xprefixN+1
9 5 8 imbi12d y=xyXHN+2Ry=yprefixN+1xXHN+2Rx=xprefixN+1
10 9 imbi2d y=xXVNyXHN+2Ry=yprefixN+1XVNxXHN+2Rx=xprefixN+1
11 1 2 3 4 numclwlk2lem2fv XVNyXHN+2Ry=yprefixN+1
12 10 11 chvarvv XVNxXHN+2Rx=xprefixN+1
13 12 3adant1 GFriendGraphXVNxXHN+2Rx=xprefixN+1
14 13 imp GFriendGraphXVNxXHN+2Rx=xprefixN+1
15 1 2 3 4 numclwlk2lem2f GFriendGraphXVNR:XHN+2XQN
16 15 ffvelcdmda GFriendGraphXVNxXHN+2RxXQN
17 14 16 eqeltrrd GFriendGraphXVNxXHN+2xprefixN+1XQN
18 17 ralrimiva GFriendGraphXVNxXHN+2xprefixN+1XQN
19 1 2 3 numclwwlk2lem1 GFriendGraphXVNuXQN∃!vVu++⟨“v”⟩XHN+2
20 19 imp GFriendGraphXVNuXQN∃!vVu++⟨“v”⟩XHN+2
21 1 2 numclwwlkovq XVNXQN=wNWWalksNG|w0=XlastSwX
22 21 eleq2d XVNuXQNuwNWWalksNG|w0=XlastSwX
23 22 3adant1 GFriendGraphXVNuXQNuwNWWalksNG|w0=XlastSwX
24 fveq1 w=uw0=u0
25 24 eqeq1d w=uw0=Xu0=X
26 fveq2 w=ulastSw=lastSu
27 26 neeq1d w=ulastSwXlastSuX
28 25 27 anbi12d w=uw0=XlastSwXu0=XlastSuX
29 28 elrab uwNWWalksNG|w0=XlastSwXuNWWalksNGu0=XlastSuX
30 23 29 bitrdi GFriendGraphXVNuXQNuNWWalksNGu0=XlastSuX
31 wwlknbp1 uNWWalksNGN0uWordVtxGu=N+1
32 3simpc N0uWordVtxGu=N+1uWordVtxGu=N+1
33 31 32 syl uNWWalksNGuWordVtxGu=N+1
34 1 wrdeqi WordV=WordVtxG
35 34 eleq2i uWordVuWordVtxG
36 35 anbi1i uWordVu=N+1uWordVtxGu=N+1
37 33 36 sylibr uNWWalksNGuWordVu=N+1
38 simpll uWordVu=N+1GFriendGraphXVNuWordV
39 nnnn0 NN0
40 2nn 2
41 40 a1i N2
42 41 nnzd N2
43 nn0pzuz N02N+22
44 39 42 43 syl2anc NN+22
45 3 numclwwlkovh XVN+22XHN+2=wN+2ClWWalksNG|w0=XwN+2-2w0
46 44 45 sylan2 XVNXHN+2=wN+2ClWWalksNG|w0=XwN+2-2w0
47 46 eleq2d XVNxXHN+2xwN+2ClWWalksNG|w0=XwN+2-2w0
48 fveq1 w=xw0=x0
49 48 eqeq1d w=xw0=Xx0=X
50 fveq1 w=xwN+2-2=xN+2-2
51 50 48 neeq12d w=xwN+2-2w0xN+2-2x0
52 49 51 anbi12d w=xw0=XwN+2-2w0x0=XxN+2-2x0
53 52 elrab xwN+2ClWWalksNG|w0=XwN+2-2w0xN+2ClWWalksNGx0=XxN+2-2x0
54 47 53 bitrdi XVNxXHN+2xN+2ClWWalksNGx0=XxN+2-2x0
55 54 3adant1 GFriendGraphXVNxXHN+2xN+2ClWWalksNGx0=XxN+2-2x0
56 55 adantl uWordVu=N+1GFriendGraphXVNxXHN+2xN+2ClWWalksNGx0=XxN+2-2x0
57 1 clwwlknbp xN+2ClWWalksNGxWordVx=N+2
58 lencl uWordVu0
59 simprr u0u=N+1Nx=N+2xWordVxWordV
60 df-2 2=1+1
61 60 a1i N2=1+1
62 61 oveq2d NN+2=N+1+1
63 nncn NN
64 1cnd N1
65 63 64 64 addassd NN+1+1=N+1+1
66 62 65 eqtr4d NN+2=N+1+1
67 66 adantl u0u=N+1NN+2=N+1+1
68 67 eqeq2d u0u=N+1Nx=N+2x=N+1+1
69 68 biimpcd x=N+2u0u=N+1Nx=N+1+1
70 69 adantr x=N+2xWordVu0u=N+1Nx=N+1+1
71 70 impcom u0u=N+1Nx=N+2xWordVx=N+1+1
72 oveq1 u=N+1u+1=N+1+1
73 72 ad3antlr u0u=N+1Nx=N+2xWordVu+1=N+1+1
74 71 73 eqtr4d u0u=N+1Nx=N+2xWordVx=u+1
75 59 74 jca u0u=N+1Nx=N+2xWordVxWordVx=u+1
76 75 exp31 u0u=N+1Nx=N+2xWordVxWordVx=u+1
77 58 76 sylan uWordVu=N+1Nx=N+2xWordVxWordVx=u+1
78 77 com12 NuWordVu=N+1x=N+2xWordVxWordVx=u+1
79 78 3ad2ant3 GFriendGraphXVNuWordVu=N+1x=N+2xWordVxWordVx=u+1
80 79 impcom uWordVu=N+1GFriendGraphXVNx=N+2xWordVxWordVx=u+1
81 80 com12 x=N+2xWordVuWordVu=N+1GFriendGraphXVNxWordVx=u+1
82 81 ancoms xWordVx=N+2uWordVu=N+1GFriendGraphXVNxWordVx=u+1
83 57 82 syl xN+2ClWWalksNGuWordVu=N+1GFriendGraphXVNxWordVx=u+1
84 83 adantr xN+2ClWWalksNGx0=XxN+2-2x0uWordVu=N+1GFriendGraphXVNxWordVx=u+1
85 84 com12 uWordVu=N+1GFriendGraphXVNxN+2ClWWalksNGx0=XxN+2-2x0xWordVx=u+1
86 56 85 sylbid uWordVu=N+1GFriendGraphXVNxXHN+2xWordVx=u+1
87 86 ralrimiv uWordVu=N+1GFriendGraphXVNxXHN+2xWordVx=u+1
88 38 87 jca uWordVu=N+1GFriendGraphXVNuWordVxXHN+2xWordVx=u+1
89 88 ex uWordVu=N+1GFriendGraphXVNuWordVxXHN+2xWordVx=u+1
90 37 89 syl uNWWalksNGGFriendGraphXVNuWordVxXHN+2xWordVx=u+1
91 90 adantr uNWWalksNGu0=XlastSuXGFriendGraphXVNuWordVxXHN+2xWordVx=u+1
92 91 imp uNWWalksNGu0=XlastSuXGFriendGraphXVNuWordVxXHN+2xWordVx=u+1
93 nfcv _vX
94 nfmpo1 _vvV,n2wvClWWalksNOnGn|wn2v
95 3 94 nfcxfr _vH
96 nfcv _vN+2
97 93 95 96 nfov _vXHN+2
98 97 reuccatpfxs1 uWordVxXHN+2xWordVx=u+1∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixu
99 92 98 syl uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixu
100 99 imp uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixu
101 31 simp3d uNWWalksNGu=N+1
102 101 eqcomd uNWWalksNGN+1=u
103 102 ad4antr uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2xXHN+2N+1=u
104 103 oveq2d uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2xXHN+2xprefixN+1=xprefixu
105 104 eqeq2d uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2xXHN+2u=xprefixN+1u=xprefixu
106 105 reubidva uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixN+1∃!xXHN+2u=xprefixu
107 100 106 mpbird uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixN+1
108 107 exp31 uNWWalksNGu0=XlastSuXGFriendGraphXVN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixN+1
109 108 com12 GFriendGraphXVNuNWWalksNGu0=XlastSuX∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixN+1
110 30 109 sylbid GFriendGraphXVNuXQN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixN+1
111 110 imp GFriendGraphXVNuXQN∃!vVu++⟨“v”⟩XHN+2∃!xXHN+2u=xprefixN+1
112 20 111 mpd GFriendGraphXVNuXQN∃!xXHN+2u=xprefixN+1
113 112 ralrimiva GFriendGraphXVNuXQN∃!xXHN+2u=xprefixN+1
114 4 f1ompt R:XHN+21-1 ontoXQNxXHN+2xprefixN+1XQNuXQN∃!xXHN+2u=xprefixN+1
115 18 113 114 sylanbrc GFriendGraphXVNR:XHN+21-1 ontoXQN