Metamath Proof Explorer


Theorem eupth2

Description: The only vertices of odd degree in a graph with an Eulerian path are the endpoints, and then only if the endpoints are distinct. (Contributed by Mario Carneiro, 8-Apr-2015) (Revised by AV, 26-Feb-2021)

Ref Expression
Hypotheses eupth2.v V=VtxG
eupth2.i I=iEdgG
eupth2.g φGUPGraph
eupth2.f φFunI
eupth2.p φFEulerPathsGP
Assertion eupth2 φxV|¬2VtxDegGx=ifP0=PFP0PF

Proof

Step Hyp Ref Expression
1 eupth2.v V=VtxG
2 eupth2.i I=iEdgG
3 eupth2.g φGUPGraph
4 eupth2.f φFunI
5 eupth2.p φFEulerPathsGP
6 eqid VIF0..^F=VIF0..^F
7 1 2 3 4 5 6 eupthvdres φVtxDegVIF0..^F=VtxDegG
8 7 fveq1d φVtxDegVIF0..^Fx=VtxDegGx
9 8 breq2d φ2VtxDegVIF0..^Fx2VtxDegGx
10 9 notbid φ¬2VtxDegVIF0..^Fx¬2VtxDegGx
11 10 rabbidv φxV|¬2VtxDegVIF0..^Fx=xV|¬2VtxDegGx
12 eupthiswlk FEulerPathsGPFWalksGP
13 wlkcl FWalksGPF0
14 5 12 13 3syl φF0
15 nn0re F0F
16 15 leidd F0FF
17 breq1 m=0mF0F
18 oveq2 m=00..^m=0..^0
19 18 imaeq2d m=0F0..^m=F0..^0
20 19 reseq2d m=0IF0..^m=IF0..^0
21 20 opeq2d m=0VIF0..^m=VIF0..^0
22 21 fveq2d m=0VtxDegVIF0..^m=VtxDegVIF0..^0
23 22 fveq1d m=0VtxDegVIF0..^mx=VtxDegVIF0..^0x
24 23 breq2d m=02VtxDegVIF0..^mx2VtxDegVIF0..^0x
25 24 notbid m=0¬2VtxDegVIF0..^mx¬2VtxDegVIF0..^0x
26 25 rabbidv m=0xV|¬2VtxDegVIF0..^mx=xV|¬2VtxDegVIF0..^0x
27 fveq2 m=0Pm=P0
28 27 eqeq2d m=0P0=PmP0=P0
29 27 preq2d m=0P0Pm=P0P0
30 28 29 ifbieq2d m=0ifP0=PmP0Pm=ifP0=P0P0P0
31 26 30 eqeq12d m=0xV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmxV|¬2VtxDegVIF0..^0x=ifP0=P0P0P0
32 17 31 imbi12d m=0mFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0Pm0FxV|¬2VtxDegVIF0..^0x=ifP0=P0P0P0
33 32 imbi2d m=0φmFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0Pmφ0FxV|¬2VtxDegVIF0..^0x=ifP0=P0P0P0
34 breq1 m=nmFnF
35 oveq2 m=n0..^m=0..^n
36 35 imaeq2d m=nF0..^m=F0..^n
37 36 reseq2d m=nIF0..^m=IF0..^n
38 37 opeq2d m=nVIF0..^m=VIF0..^n
39 38 fveq2d m=nVtxDegVIF0..^m=VtxDegVIF0..^n
40 39 fveq1d m=nVtxDegVIF0..^mx=VtxDegVIF0..^nx
41 40 breq2d m=n2VtxDegVIF0..^mx2VtxDegVIF0..^nx
42 41 notbid m=n¬2VtxDegVIF0..^mx¬2VtxDegVIF0..^nx
43 42 rabbidv m=nxV|¬2VtxDegVIF0..^mx=xV|¬2VtxDegVIF0..^nx
44 fveq2 m=nPm=Pn
45 44 eqeq2d m=nP0=PmP0=Pn
46 44 preq2d m=nP0Pm=P0Pn
47 45 46 ifbieq2d m=nifP0=PmP0Pm=ifP0=PnP0Pn
48 43 47 eqeq12d m=nxV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmxV|¬2VtxDegVIF0..^nx=ifP0=PnP0Pn
49 34 48 imbi12d m=nmFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmnFxV|¬2VtxDegVIF0..^nx=ifP0=PnP0Pn
50 49 imbi2d m=nφmFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmφnFxV|¬2VtxDegVIF0..^nx=ifP0=PnP0Pn
51 breq1 m=n+1mFn+1F
52 oveq2 m=n+10..^m=0..^n+1
53 52 imaeq2d m=n+1F0..^m=F0..^n+1
54 53 reseq2d m=n+1IF0..^m=IF0..^n+1
55 54 opeq2d m=n+1VIF0..^m=VIF0..^n+1
56 55 fveq2d m=n+1VtxDegVIF0..^m=VtxDegVIF0..^n+1
57 56 fveq1d m=n+1VtxDegVIF0..^mx=VtxDegVIF0..^n+1x
58 57 breq2d m=n+12VtxDegVIF0..^mx2VtxDegVIF0..^n+1x
59 58 notbid m=n+1¬2VtxDegVIF0..^mx¬2VtxDegVIF0..^n+1x
60 59 rabbidv m=n+1xV|¬2VtxDegVIF0..^mx=xV|¬2VtxDegVIF0..^n+1x
61 fveq2 m=n+1Pm=Pn+1
62 61 eqeq2d m=n+1P0=PmP0=Pn+1
63 61 preq2d m=n+1P0Pm=P0Pn+1
64 62 63 ifbieq2d m=n+1ifP0=PmP0Pm=ifP0=Pn+1P0Pn+1
65 60 64 eqeq12d m=n+1xV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmxV|¬2VtxDegVIF0..^n+1x=ifP0=Pn+1P0Pn+1
66 51 65 imbi12d m=n+1mFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0Pmn+1FxV|¬2VtxDegVIF0..^n+1x=ifP0=Pn+1P0Pn+1
67 66 imbi2d m=n+1φmFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0Pmφn+1FxV|¬2VtxDegVIF0..^n+1x=ifP0=Pn+1P0Pn+1
68 breq1 m=FmFFF
69 oveq2 m=F0..^m=0..^F
70 69 imaeq2d m=FF0..^m=F0..^F
71 70 reseq2d m=FIF0..^m=IF0..^F
72 71 opeq2d m=FVIF0..^m=VIF0..^F
73 72 fveq2d m=FVtxDegVIF0..^m=VtxDegVIF0..^F
74 73 fveq1d m=FVtxDegVIF0..^mx=VtxDegVIF0..^Fx
75 74 breq2d m=F2VtxDegVIF0..^mx2VtxDegVIF0..^Fx
76 75 notbid m=F¬2VtxDegVIF0..^mx¬2VtxDegVIF0..^Fx
77 76 rabbidv m=FxV|¬2VtxDegVIF0..^mx=xV|¬2VtxDegVIF0..^Fx
78 fveq2 m=FPm=PF
79 78 eqeq2d m=FP0=PmP0=PF
80 78 preq2d m=FP0Pm=P0PF
81 79 80 ifbieq2d m=FifP0=PmP0Pm=ifP0=PFP0PF
82 77 81 eqeq12d m=FxV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmxV|¬2VtxDegVIF0..^Fx=ifP0=PFP0PF
83 68 82 imbi12d m=FmFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmFFxV|¬2VtxDegVIF0..^Fx=ifP0=PFP0PF
84 83 imbi2d m=FφmFxV|¬2VtxDegVIF0..^mx=ifP0=PmP0PmφFFxV|¬2VtxDegVIF0..^Fx=ifP0=PFP0PF
85 1 2 3 4 5 eupth2lemb φxV|¬2VtxDegVIF0..^0x=
86 eqid P0=P0
87 86 iftruei ifP0=P0P0P0=
88 85 87 eqtr4di φxV|¬2VtxDegVIF0..^0x=ifP0=P0P0P0
89 88 a1d φ0FxV|¬2VtxDegVIF0..^0x=ifP0=P0P0P0
90 1 2 3 4 5 eupth2lems φn0nFxV|¬2VtxDegVIF0..^nx=ifP0=PnP0Pnn+1FxV|¬2VtxDegVIF0..^n+1x=ifP0=Pn+1P0Pn+1
91 90 expcom n0φnFxV|¬2VtxDegVIF0..^nx=ifP0=PnP0Pnn+1FxV|¬2VtxDegVIF0..^n+1x=ifP0=Pn+1P0Pn+1
92 91 a2d n0φnFxV|¬2VtxDegVIF0..^nx=ifP0=PnP0Pnφn+1FxV|¬2VtxDegVIF0..^n+1x=ifP0=Pn+1P0Pn+1
93 33 50 67 84 89 92 nn0ind F0φFFxV|¬2VtxDegVIF0..^Fx=ifP0=PFP0PF
94 16 93 mpid F0φxV|¬2VtxDegVIF0..^Fx=ifP0=PFP0PF
95 14 94 mpcom φxV|¬2VtxDegVIF0..^Fx=ifP0=PFP0PF
96 11 95 eqtr3d φxV|¬2VtxDegGx=ifP0=PFP0PF