| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > eulerpath | Structured version Visualization version GIF version | ||
| Description: A pseudograph with an Eulerian path has either zero or two vertices of odd degree. (Contributed by Mario Carneiro, 7-Apr-2015.) (Revised by AV, 26-Feb-2021.) |
| Ref | Expression |
|---|---|
| eulerpathpr.v | ⊢ 𝑉 = (Vtx‘𝐺) |
| Ref | Expression |
|---|---|
| eulerpath | ⊢ ((𝐺 ∈ UPGraph ∧ (EulerPaths‘𝐺) ≠ ∅) → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2}) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | releupth 30165 | . . . . . 6 ⊢ Rel (EulerPaths‘𝐺) | |
| 2 | reldm0 5920 | . . . . . 6 ⊢ (Rel (EulerPaths‘𝐺) → ((EulerPaths‘𝐺) = ∅ ↔ dom (EulerPaths‘𝐺) = ∅)) | |
| 3 | 1, 2 | ax-mp 5 | . . . . 5 ⊢ ((EulerPaths‘𝐺) = ∅ ↔ dom (EulerPaths‘𝐺) = ∅) |
| 4 | 3 | necon3bii 2983 | . . . 4 ⊢ ((EulerPaths‘𝐺) ≠ ∅ ↔ dom (EulerPaths‘𝐺) ≠ ∅) |
| 5 | n0 4335 | . . . 4 ⊢ (dom (EulerPaths‘𝐺) ≠ ∅ ↔ ∃𝑓 𝑓 ∈ dom (EulerPaths‘𝐺)) | |
| 6 | 4, 5 | bitri 275 | . . 3 ⊢ ((EulerPaths‘𝐺) ≠ ∅ ↔ ∃𝑓 𝑓 ∈ dom (EulerPaths‘𝐺)) |
| 7 | vex 3468 | . . . . . 6 ⊢ 𝑓 ∈ V | |
| 8 | 7 | eldm 5893 | . . . . 5 ⊢ (𝑓 ∈ dom (EulerPaths‘𝐺) ↔ ∃𝑝 𝑓(EulerPaths‘𝐺)𝑝) |
| 9 | eulerpathpr.v | . . . . . . . 8 ⊢ 𝑉 = (Vtx‘𝐺) | |
| 10 | 9 | eulerpathpr 30206 | . . . . . . 7 ⊢ ((𝐺 ∈ UPGraph ∧ 𝑓(EulerPaths‘𝐺)𝑝) → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2}) |
| 11 | 10 | expcom 413 | . . . . . 6 ⊢ (𝑓(EulerPaths‘𝐺)𝑝 → (𝐺 ∈ UPGraph → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2})) |
| 12 | 11 | exlimiv 1929 | . . . . 5 ⊢ (∃𝑝 𝑓(EulerPaths‘𝐺)𝑝 → (𝐺 ∈ UPGraph → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2})) |
| 13 | 8, 12 | sylbi 217 | . . . 4 ⊢ (𝑓 ∈ dom (EulerPaths‘𝐺) → (𝐺 ∈ UPGraph → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2})) |
| 14 | 13 | exlimiv 1929 | . . 3 ⊢ (∃𝑓 𝑓 ∈ dom (EulerPaths‘𝐺) → (𝐺 ∈ UPGraph → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2})) |
| 15 | 6, 14 | sylbi 217 | . 2 ⊢ ((EulerPaths‘𝐺) ≠ ∅ → (𝐺 ∈ UPGraph → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2})) |
| 16 | 15 | impcom 407 | 1 ⊢ ((𝐺 ∈ UPGraph ∧ (EulerPaths‘𝐺) ≠ ∅) → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥ ((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2}) |
| Colors of variables: wff setvar class |
| Syntax hints: ¬ wn 3 → wi 4 ↔ wb 206 ∧ wa 395 = wceq 1539 ∃wex 1778 ∈ wcel 2107 ≠ wne 2931 {crab 3420 ∅c0 4315 {cpr 4610 class class class wbr 5125 dom cdm 5667 Rel wrel 5672 ‘cfv 6542 0cc0 11138 2c2 12304 ♯chash 14352 ∥ cdvds 16273 Vtxcvtx 28960 UPGraphcupgr 29044 VtxDegcvtxdg 29430 EulerPathsceupth 30163 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1794 ax-4 1808 ax-5 1909 ax-6 1966 ax-7 2006 ax-8 2109 ax-9 2117 ax-10 2140 ax-11 2156 ax-12 2176 ax-ext 2706 ax-rep 5261 ax-sep 5278 ax-nul 5288 ax-pow 5347 ax-pr 5414 ax-un 7738 ax-cnex 11194 ax-resscn 11195 ax-1cn 11196 ax-icn 11197 ax-addcl 11198 ax-addrcl 11199 ax-mulcl 11200 ax-mulrcl 11201 ax-mulcom 11202 ax-addass 11203 ax-mulass 11204 ax-distr 11205 ax-i2m1 11206 ax-1ne0 11207 ax-1rid 11208 ax-rnegex 11209 ax-rrecex 11210 ax-cnre 11211 ax-pre-lttri 11212 ax-pre-lttrn 11213 ax-pre-ltadd 11214 ax-pre-mulgt0 11215 ax-pre-sup 11216 |
| This theorem depends on definitions: df-bi 207 df-an 396 df-or 848 df-ifp 1063 df-3or 1087 df-3an 1088 df-tru 1542 df-fal 1552 df-ex 1779 df-nf 1783 df-sb 2064 df-mo 2538 df-eu 2567 df-clab 2713 df-cleq 2726 df-clel 2808 df-nfc 2884 df-ne 2932 df-nel 3036 df-ral 3051 df-rex 3060 df-rmo 3364 df-reu 3365 df-rab 3421 df-v 3466 df-sbc 3773 df-csb 3882 df-dif 3936 df-un 3938 df-in 3940 df-ss 3950 df-pss 3953 df-nul 4316 df-if 4508 df-pw 4584 df-sn 4609 df-pr 4611 df-op 4615 df-uni 4890 df-int 4929 df-iun 4975 df-br 5126 df-opab 5188 df-mpt 5208 df-tr 5242 df-id 5560 df-eprel 5566 df-po 5574 df-so 5575 df-fr 5619 df-we 5621 df-xp 5673 df-rel 5674 df-cnv 5675 df-co 5676 df-dm 5677 df-rn 5678 df-res 5679 df-ima 5680 df-pred 6303 df-ord 6368 df-on 6369 df-lim 6370 df-suc 6371 df-iota 6495 df-fun 6544 df-fn 6545 df-f 6546 df-f1 6547 df-fo 6548 df-f1o 6549 df-fv 6550 df-riota 7371 df-ov 7417 df-oprab 7418 df-mpo 7419 df-om 7871 df-1st 7997 df-2nd 7998 df-frecs 8289 df-wrecs 8320 df-recs 8394 df-rdg 8433 df-1o 8489 df-2o 8490 df-oadd 8493 df-er 8728 df-map 8851 df-pm 8852 df-en 8969 df-dom 8970 df-sdom 8971 df-fin 8972 df-sup 9465 df-inf 9466 df-dju 9924 df-card 9962 df-pnf 11280 df-mnf 11281 df-xr 11282 df-ltxr 11283 df-le 11284 df-sub 11477 df-neg 11478 df-div 11904 df-nn 12250 df-2 12312 df-3 12313 df-n0 12511 df-xnn0 12584 df-z 12598 df-uz 12862 df-rp 13018 df-xadd 13138 df-fz 13531 df-fzo 13678 df-seq 14026 df-exp 14086 df-hash 14353 df-word 14536 df-cj 15121 df-re 15122 df-im 15123 df-sqrt 15257 df-abs 15258 df-dvds 16274 df-vtx 28962 df-iedg 28963 df-edg 29012 df-uhgr 29022 df-ushgr 29023 df-upgr 29046 df-uspgr 29114 df-vtxdg 29431 df-wlks 29564 df-trls 29657 df-eupth 30164 |
| This theorem is referenced by: konigsberg 30223 |
| Copyright terms: Public domain | W3C validator |