Metamath Proof Explorer


Theorem umgrwwlks2on

Description: A walk of length 2 between two vertices as word in a multigraph. This theorem would also hold for pseudographs, but to prove this the cases A = B and/or B = C must be considered separately. (Contributed by Alexander van der Vekens, 18-Feb-2018) (Revised by AV, 12-May-2021)

Ref Expression
Hypotheses s3wwlks2on.v V=VtxG
usgrwwlks2on.e E=EdgG
Assertion umgrwwlks2on GUMGraphAVBVCV⟨“ABC”⟩A2WWalksNOnGCABEBCE

Proof

Step Hyp Ref Expression
1 s3wwlks2on.v V=VtxG
2 usgrwwlks2on.e E=EdgG
3 umgrupgr GUMGraphGUPGraph
4 3 adantr GUMGraphAVBVCVGUPGraph
5 simp1 AVBVCVAV
6 5 adantl GUMGraphAVBVCVAV
7 simpr3 GUMGraphAVBVCVCV
8 1 s3wwlks2on GUPGraphAVCV⟨“ABC”⟩A2WWalksNOnGCffWalksG⟨“ABC”⟩f=2
9 4 6 7 8 syl3anc GUMGraphAVBVCV⟨“ABC”⟩A2WWalksNOnGCffWalksG⟨“ABC”⟩f=2
10 eqid iEdgG=iEdgG
11 1 10 upgr2wlk GUPGraphfWalksG⟨“ABC”⟩f=2f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2
12 3 11 syl GUMGraphfWalksG⟨“ABC”⟩f=2f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2
13 12 adantr GUMGraphAVBVCVfWalksG⟨“ABC”⟩f=2f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2
14 s3fv0 AV⟨“ABC”⟩0=A
15 14 3ad2ant1 AVBVCV⟨“ABC”⟩0=A
16 s3fv1 BV⟨“ABC”⟩1=B
17 16 3ad2ant2 AVBVCV⟨“ABC”⟩1=B
18 15 17 preq12d AVBVCV⟨“ABC”⟩0⟨“ABC”⟩1=AB
19 18 eqeq2d AVBVCViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf0=AB
20 s3fv2 CV⟨“ABC”⟩2=C
21 20 3ad2ant3 AVBVCV⟨“ABC”⟩2=C
22 17 21 preq12d AVBVCV⟨“ABC”⟩1⟨“ABC”⟩2=BC
23 22 eqeq2d AVBVCViEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2iEdgGf1=BC
24 19 23 anbi12d AVBVCViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2iEdgGf0=ABiEdgGf1=BC
25 24 adantl GUMGraphAVBVCViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2iEdgGf0=ABiEdgGf1=BC
26 25 3anbi3d GUMGraphAVBVCVf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BC
27 umgruhgr GUMGraphGUHGraph
28 10 uhgrfun GUHGraphFuniEdgG
29 fdmrn FuniEdgGiEdgG:domiEdgGraniEdgG
30 simpr f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGiEdgG:domiEdgGraniEdgG
31 id f:0..^2domiEdgGf:0..^2domiEdgG
32 c0ex 0V
33 32 prid1 001
34 fzo0to2pr 0..^2=01
35 33 34 eleqtrri 00..^2
36 35 a1i f:0..^2domiEdgG00..^2
37 31 36 ffvelcdmd f:0..^2domiEdgGf0domiEdgG
38 37 adantr f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGf0domiEdgG
39 30 38 ffvelcdmd f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGiEdgGf0raniEdgG
40 1ex 1V
41 40 prid2 101
42 41 34 eleqtrri 10..^2
43 42 a1i f:0..^2domiEdgG10..^2
44 31 43 ffvelcdmd f:0..^2domiEdgGf1domiEdgG
45 44 adantr f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGf1domiEdgG
46 30 45 ffvelcdmd f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGiEdgGf1raniEdgG
47 39 46 jca f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGiEdgGf0raniEdgGiEdgGf1raniEdgG
48 47 ex f:0..^2domiEdgGiEdgG:domiEdgGraniEdgGiEdgGf0raniEdgGiEdgGf1raniEdgG
49 48 3ad2ant1 f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCiEdgG:domiEdgGraniEdgGiEdgGf0raniEdgGiEdgGf1raniEdgG
50 49 com12 iEdgG:domiEdgGraniEdgGf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCiEdgGf0raniEdgGiEdgGf1raniEdgG
51 29 50 sylbi FuniEdgGf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCiEdgGf0raniEdgGiEdgGf1raniEdgG
52 27 28 51 3syl GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCiEdgGf0raniEdgGiEdgGf1raniEdgG
53 52 imp GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCiEdgGf0raniEdgGiEdgGf1raniEdgG
54 eqcom iEdgGf0=ABAB=iEdgGf0
55 54 biimpi iEdgGf0=ABAB=iEdgGf0
56 55 adantr iEdgGf0=ABiEdgGf1=BCAB=iEdgGf0
57 56 3ad2ant3 f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCAB=iEdgGf0
58 57 adantl GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCAB=iEdgGf0
59 edgval EdgG=raniEdgG
60 2 59 eqtri E=raniEdgG
61 60 a1i GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCE=raniEdgG
62 58 61 eleq12d GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCABEiEdgGf0raniEdgG
63 eqcom iEdgGf1=BCBC=iEdgGf1
64 63 biimpi iEdgGf1=BCBC=iEdgGf1
65 64 adantl iEdgGf0=ABiEdgGf1=BCBC=iEdgGf1
66 65 3ad2ant3 f:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCBC=iEdgGf1
67 66 adantl GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCBC=iEdgGf1
68 67 61 eleq12d GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCBCEiEdgGf1raniEdgG
69 62 68 anbi12d GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCABEBCEiEdgGf0raniEdgGiEdgGf1raniEdgG
70 53 69 mpbird GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCABEBCE
71 70 ex GUMGraphf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCABEBCE
72 71 adantr GUMGraphAVBVCVf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=ABiEdgGf1=BCABEBCE
73 26 72 sylbid GUMGraphAVBVCVf:0..^2domiEdgG⟨“ABC”⟩:02ViEdgGf0=⟨“ABC”⟩0⟨“ABC”⟩1iEdgGf1=⟨“ABC”⟩1⟨“ABC”⟩2ABEBCE
74 13 73 sylbid GUMGraphAVBVCVfWalksG⟨“ABC”⟩f=2ABEBCE
75 74 exlimdv GUMGraphAVBVCVffWalksG⟨“ABC”⟩f=2ABEBCE
76 2 umgr2wlk GUMGraphABEBCEfpfWalksGpf=2A=p0B=p1C=p2
77 wlklenvp1 fWalksGpp=f+1
78 oveq1 f=2f+1=2+1
79 2p1e3 2+1=3
80 78 79 eqtrdi f=2f+1=3
81 80 adantr f=2A=p0B=p1C=p2f+1=3
82 77 81 sylan9eq fWalksGpf=2A=p0B=p1C=p2p=3
83 eqcom A=p0p0=A
84 eqcom B=p1p1=B
85 eqcom C=p2p2=C
86 83 84 85 3anbi123i A=p0B=p1C=p2p0=Ap1=Bp2=C
87 86 biimpi A=p0B=p1C=p2p0=Ap1=Bp2=C
88 87 adantl f=2A=p0B=p1C=p2p0=Ap1=Bp2=C
89 88 adantl fWalksGpf=2A=p0B=p1C=p2p0=Ap1=Bp2=C
90 82 89 jca fWalksGpf=2A=p0B=p1C=p2p=3p0=Ap1=Bp2=C
91 1 wlkpwrd fWalksGppWordV
92 80 eqeq2d f=2p=f+1p=3
93 92 adantl pWordVf=2p=f+1p=3
94 simp1 pWordVp=3A=p0B=p1C=p2pWordV
95 oveq2 p=30..^p=0..^3
96 fzo0to3tp 0..^3=012
97 95 96 eqtrdi p=30..^p=012
98 32 tpid1 0012
99 eleq2 0..^p=01200..^p0012
100 98 99 mpbiri 0..^p=01200..^p
101 wrdsymbcl pWordV00..^pp0V
102 100 101 sylan2 pWordV0..^p=012p0V
103 40 tpid2 1012
104 eleq2 0..^p=01210..^p1012
105 103 104 mpbiri 0..^p=01210..^p
106 wrdsymbcl pWordV10..^pp1V
107 105 106 sylan2 pWordV0..^p=012p1V
108 2ex 2V
109 108 tpid3 2012
110 eleq2 0..^p=01220..^p2012
111 109 110 mpbiri 0..^p=01220..^p
112 wrdsymbcl pWordV20..^pp2V
113 111 112 sylan2 pWordV0..^p=012p2V
114 102 107 113 3jca pWordV0..^p=012p0Vp1Vp2V
115 97 114 sylan2 pWordVp=3p0Vp1Vp2V
116 115 3adant3 pWordVp=3A=p0B=p1C=p2p0Vp1Vp2V
117 eleq1 A=p0AVp0V
118 117 3ad2ant1 A=p0B=p1C=p2AVp0V
119 eleq1 B=p1BVp1V
120 119 3ad2ant2 A=p0B=p1C=p2BVp1V
121 eleq1 C=p2CVp2V
122 121 3ad2ant3 A=p0B=p1C=p2CVp2V
123 118 120 122 3anbi123d A=p0B=p1C=p2AVBVCVp0Vp1Vp2V
124 123 3ad2ant3 pWordVp=3A=p0B=p1C=p2AVBVCVp0Vp1Vp2V
125 116 124 mpbird pWordVp=3A=p0B=p1C=p2AVBVCV
126 94 125 jca pWordVp=3A=p0B=p1C=p2pWordVAVBVCV
127 126 3exp pWordVp=3A=p0B=p1C=p2pWordVAVBVCV
128 127 adantr pWordVf=2p=3A=p0B=p1C=p2pWordVAVBVCV
129 93 128 sylbid pWordVf=2p=f+1A=p0B=p1C=p2pWordVAVBVCV
130 129 impancom pWordVp=f+1f=2A=p0B=p1C=p2pWordVAVBVCV
131 130 impd pWordVp=f+1f=2A=p0B=p1C=p2pWordVAVBVCV
132 91 77 131 syl2anc fWalksGpf=2A=p0B=p1C=p2pWordVAVBVCV
133 132 imp fWalksGpf=2A=p0B=p1C=p2pWordVAVBVCV
134 eqwrds3 pWordVAVBVCVp=⟨“ABC”⟩p=3p0=Ap1=Bp2=C
135 133 134 syl fWalksGpf=2A=p0B=p1C=p2p=⟨“ABC”⟩p=3p0=Ap1=Bp2=C
136 90 135 mpbird fWalksGpf=2A=p0B=p1C=p2p=⟨“ABC”⟩
137 136 breq2d fWalksGpf=2A=p0B=p1C=p2fWalksGpfWalksG⟨“ABC”⟩
138 137 biimpd fWalksGpf=2A=p0B=p1C=p2fWalksGpfWalksG⟨“ABC”⟩
139 138 ex fWalksGpf=2A=p0B=p1C=p2fWalksGpfWalksG⟨“ABC”⟩
140 139 pm2.43a fWalksGpf=2A=p0B=p1C=p2fWalksG⟨“ABC”⟩
141 140 3impib fWalksGpf=2A=p0B=p1C=p2fWalksG⟨“ABC”⟩
142 141 adantl AVBVCVfWalksGpf=2A=p0B=p1C=p2fWalksG⟨“ABC”⟩
143 simpr2 AVBVCVfWalksGpf=2A=p0B=p1C=p2f=2
144 142 143 jca AVBVCVfWalksGpf=2A=p0B=p1C=p2fWalksG⟨“ABC”⟩f=2
145 144 ex AVBVCVfWalksGpf=2A=p0B=p1C=p2fWalksG⟨“ABC”⟩f=2
146 145 exlimdv AVBVCVpfWalksGpf=2A=p0B=p1C=p2fWalksG⟨“ABC”⟩f=2
147 146 eximdv AVBVCVfpfWalksGpf=2A=p0B=p1C=p2ffWalksG⟨“ABC”⟩f=2
148 76 147 syl5com GUMGraphABEBCEAVBVCVffWalksG⟨“ABC”⟩f=2
149 148 3expib GUMGraphABEBCEAVBVCVffWalksG⟨“ABC”⟩f=2
150 149 com23 GUMGraphAVBVCVABEBCEffWalksG⟨“ABC”⟩f=2
151 150 imp GUMGraphAVBVCVABEBCEffWalksG⟨“ABC”⟩f=2
152 75 151 impbid GUMGraphAVBVCVffWalksG⟨“ABC”⟩f=2ABEBCE
153 9 152 bitrd GUMGraphAVBVCV⟨“ABC”⟩A2WWalksNOnGCABEBCE