MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  eulercrct Structured version   Visualization version   GIF version

Theorem eulercrct 30330
Description: A pseudograph with an Eulerian circuit 𝐹, 𝑃 (an "Eulerian pseudograph") has only vertices of even degree. (Contributed by AV, 12-Mar-2021.)
Hypothesis
Ref Expression
eulerpathpr.v 𝑉 = (Vtx‘𝐺)
Assertion
Ref Expression
eulercrct ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → ∀𝑥𝑉 2 ∥ ((VtxDeg‘𝐺)‘𝑥))
Distinct variable groups:   𝑥,𝐹   𝑥,𝐺   𝑥,𝑃   𝑥,𝑉

Proof of Theorem eulercrct
StepHypRef Expression
1 eulerpathpr.v . . . 4 𝑉 = (Vtx‘𝐺)
2 eqid 2739 . . . 4 (iEdg‘𝐺) = (iEdg‘𝐺)
3 simpl 483 . . . 4 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃) → 𝐺 ∈ UPGraph)
4 upgruhgr 29189 . . . . . 6 (𝐺 ∈ UPGraph → 𝐺 ∈ UHGraph)
52uhgrfun 29153 . . . . . 6 (𝐺 ∈ UHGraph → Fun (iEdg‘𝐺))
64, 5syl 17 . . . . 5 (𝐺 ∈ UPGraph → Fun (iEdg‘𝐺))
76adantr 481 . . . 4 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃) → Fun (iEdg‘𝐺))
8 simpr 485 . . . 4 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃) → 𝐹(EulerPaths‘𝐺)𝑃)
91, 2, 3, 7, 8eupth2 30327 . . 3 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃) → {𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}))
1093adant3 1138 . 2 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → {𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}))
11 crctprop 29878 . . . . . . 7 (𝐹(Circuits‘𝐺)𝑃 → (𝐹(Trails‘𝐺)𝑃 ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))))
1211simprd 496 . . . . . 6 (𝐹(Circuits‘𝐺)𝑃 → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
13123ad2ant3 1141 . . . . 5 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → (𝑃‘0) = (𝑃‘(♯‘𝐹)))
1413iftrued 4462 . . . 4 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) = ∅)
1514eqeq2d 2750 . . 3 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → ({𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) ↔ {𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = ∅))
16 rabeq0 4316 . . . 4 ({𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = ∅ ↔ ∀𝑥𝑉 ¬ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥))
17 notnotr 130 . . . . 5 (¬ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥) → 2 ∥ ((VtxDeg‘𝐺)‘𝑥))
1817ralimi 3076 . . . 4 (∀𝑥𝑉 ¬ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥) → ∀𝑥𝑉 2 ∥ ((VtxDeg‘𝐺)‘𝑥))
1916, 18sylbi 218 . . 3 ({𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = ∅ → ∀𝑥𝑉 2 ∥ ((VtxDeg‘𝐺)‘𝑥))
2015, 19biimtrdi 254 . 2 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → ({𝑥𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) → ∀𝑥𝑉 2 ∥ ((VtxDeg‘𝐺)‘𝑥)))
2110, 20mpd 15 1 ((𝐺 ∈ UPGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃𝐹(Circuits‘𝐺)𝑃) → ∀𝑥𝑉 2 ∥ ((VtxDeg‘𝐺)‘𝑥))
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wa 396  w3a 1092   = wceq 1547  wcel 2119  wral 3053  {crab 3391  c0 4261  ifcif 4454  {cpr 4557   class class class wbr 5072  Fun wfun 6479  cfv 6485  0cc0 11029  2c2 12227  chash 14283  cdvds 16212  Vtxcvtx 29083  iEdgciedg 29084  UHGraphcuhgr 29143  UPGraphcupgr 29167  VtxDegcvtxdg 29552  Trailsctrls 29775  Circuitsccrcts 29870  EulerPathsceupth 30285
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1802  ax-4 1816  ax-5 1917  ax-6 1974  ax-7 2015  ax-8 2121  ax-9 2129  ax-10 2152  ax-11 2168  ax-12 2189  ax-ext 2711  ax-rep 5199  ax-sep 5218  ax-nul 5228  ax-pow 5294  ax-pr 5362  ax-un 7678  ax-cnex 11085  ax-resscn 11086  ax-1cn 11087  ax-icn 11088  ax-addcl 11089  ax-addrcl 11090  ax-mulcl 11091  ax-mulrcl 11092  ax-mulcom 11093  ax-addass 11094  ax-mulass 11095  ax-distr 11096  ax-i2m1 11097  ax-1ne0 11098  ax-1rid 11099  ax-rnegex 11100  ax-rrecex 11101  ax-cnre 11102  ax-pre-lttri 11103  ax-pre-lttrn 11104  ax-pre-ltadd 11105  ax-pre-mulgt0 11106  ax-pre-sup 11107
This theorem depends on definitions:  df-bi 208  df-an 397  df-or 854  df-ifp 1069  df-3or 1093  df-3an 1094  df-tru 1550  df-fal 1560  df-ex 1787  df-nf 1791  df-sb 2074  df-mo 2543  df-eu 2573  df-clab 2718  df-cleq 2731  df-clel 2814  df-nfc 2888  df-ne 2935  df-nel 3039  df-ral 3054  df-rex 3064  df-rmo 3344  df-reu 3345  df-rab 3392  df-v 3433  df-sbc 3724  df-csb 3832  df-dif 3886  df-un 3888  df-in 3890  df-ss 3900  df-pss 3903  df-nul 4262  df-if 4455  df-pw 4531  df-sn 4556  df-pr 4558  df-op 4562  df-uni 4839  df-int 4878  df-iun 4923  df-br 5073  df-opab 5135  df-mpt 5154  df-tr 5180  df-id 5513  df-eprel 5518  df-po 5526  df-so 5527  df-fr 5571  df-we 5573  df-xp 5624  df-rel 5625  df-cnv 5626  df-co 5627  df-dm 5628  df-rn 5629  df-res 5630  df-ima 5631  df-pred 6252  df-ord 6313  df-on 6314  df-lim 6315  df-suc 6316  df-iota 6441  df-fun 6487  df-fn 6488  df-f 6489  df-f1 6490  df-fo 6491  df-f1o 6492  df-fv 6493  df-riota 7313  df-ov 7359  df-oprab 7360  df-mpo 7361  df-om 7807  df-1st 7931  df-2nd 7932  df-frecs 8221  df-wrecs 8252  df-recs 8301  df-rdg 8339  df-1o 8395  df-2o 8396  df-oadd 8399  df-er 8633  df-map 8765  df-pm 8766  df-en 8884  df-dom 8885  df-sdom 8886  df-fin 8887  df-sup 9345  df-inf 9346  df-dju 9816  df-card 9854  df-pnf 11172  df-mnf 11173  df-xr 11174  df-ltxr 11175  df-le 11176  df-sub 11370  df-neg 11371  df-div 11799  df-nn 12166  df-2 12235  df-3 12236  df-n0 12429  df-xnn0 12502  df-z 12516  df-uz 12780  df-rp 12934  df-xadd 13055  df-fz 13453  df-fzo 13600  df-seq 13955  df-exp 14015  df-hash 14284  df-word 14467  df-cj 15052  df-re 15053  df-im 15054  df-sqrt 15188  df-abs 15189  df-dvds 16213  df-vtx 29085  df-iedg 29086  df-edg 29135  df-uhgr 29145  df-ushgr 29146  df-upgr 29169  df-uspgr 29237  df-vtxdg 29553  df-wlks 29686  df-trls 29777  df-crcts 29872  df-eupth 30286
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator