Proof of Theorem eulerpathprum
| Step | Hyp | Ref
| Expression |
| 1 | | eulerpathpr.v |
. . . 4
⊢ 𝑉 = (Vtx‘𝐺) |
| 2 | | eqid 2231 |
. . . 4
⊢
(iEdg‘𝐺) =
(iEdg‘𝐺) |
| 3 | | simp1 1023 |
. . . 4
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → 𝐺 ∈ UMGraph) |
| 4 | | umgruhgr 15970 |
. . . . . 6
⊢ (𝐺 ∈ UMGraph → 𝐺 ∈
UHGraph) |
| 5 | 3, 4 | syl 14 |
. . . . 5
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → 𝐺 ∈ UHGraph) |
| 6 | 2 | uhgrfun 15934 |
. . . . 5
⊢ (𝐺 ∈ UHGraph → Fun
(iEdg‘𝐺)) |
| 7 | 5, 6 | syl 14 |
. . . 4
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → Fun (iEdg‘𝐺)) |
| 8 | | simp2 1024 |
. . . 4
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → 𝐹(EulerPaths‘𝐺)𝑃) |
| 9 | | simp3 1025 |
. . . 4
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → 𝑉 ∈ Fin) |
| 10 | 1, 2, 3, 7, 8, 9 | eupth2fi 16336 |
. . 3
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → {𝑥 ∈ 𝑉 ∣ ¬ 2 ∥
((VtxDeg‘𝐺)‘𝑥)} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))})) |
| 11 | 10 | fveq2d 5643 |
. 2
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥
((VtxDeg‘𝐺)‘𝑥)}) = (♯‘if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}))) |
| 12 | | fveq2 5639 |
. . . 4
⊢ (∅
= if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) → (♯‘∅) =
(♯‘if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}))) |
| 13 | 12 | eleq1d 2300 |
. . 3
⊢ (∅
= if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) → ((♯‘∅) ∈
{0, 2} ↔ (♯‘if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))})) ∈ {0, 2})) |
| 14 | | fveq2 5639 |
. . . 4
⊢ ({(𝑃‘0), (𝑃‘(♯‘𝐹))} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) → (♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) = (♯‘if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}))) |
| 15 | 14 | eleq1d 2300 |
. . 3
⊢ ({(𝑃‘0), (𝑃‘(♯‘𝐹))} = if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))}) → ((♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) ∈ {0, 2} ↔
(♯‘if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))})) ∈ {0, 2})) |
| 16 | | hash0 11059 |
. . . . 5
⊢
(♯‘∅) = 0 |
| 17 | | c0ex 8173 |
. . . . . 6
⊢ 0 ∈
V |
| 18 | 17 | prid1 3777 |
. . . . 5
⊢ 0 ∈
{0, 2} |
| 19 | 16, 18 | eqeltri 2304 |
. . . 4
⊢
(♯‘∅) ∈ {0, 2} |
| 20 | 19 | a1i 9 |
. . 3
⊢ (((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) ∧ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → (♯‘∅) ∈
{0, 2}) |
| 21 | | simpr 110 |
. . . . . 6
⊢ (((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) ∧ ¬ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → ¬ (𝑃‘0) = (𝑃‘(♯‘𝐹))) |
| 22 | 21 | neqned 2409 |
. . . . 5
⊢ (((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) ∧ ¬ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → (𝑃‘0) ≠ (𝑃‘(♯‘𝐹))) |
| 23 | | eupthiswlk 16312 |
. . . . . . . . 9
⊢ (𝐹(EulerPaths‘𝐺)𝑃 → 𝐹(Walks‘𝐺)𝑃) |
| 24 | 8, 23 | syl 14 |
. . . . . . . 8
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → 𝐹(Walks‘𝐺)𝑃) |
| 25 | 1 | wlkepvtx 16232 |
. . . . . . . 8
⊢ (𝐹(Walks‘𝐺)𝑃 → ((𝑃‘0) ∈ 𝑉 ∧ (𝑃‘(♯‘𝐹)) ∈ 𝑉)) |
| 26 | 24, 25 | syl 14 |
. . . . . . 7
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → ((𝑃‘0) ∈ 𝑉 ∧ (𝑃‘(♯‘𝐹)) ∈ 𝑉)) |
| 27 | | hashprg 11073 |
. . . . . . 7
⊢ (((𝑃‘0) ∈ 𝑉 ∧ (𝑃‘(♯‘𝐹)) ∈ 𝑉) → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) ↔ (♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) = 2)) |
| 28 | 26, 27 | syl 14 |
. . . . . 6
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) ↔ (♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) = 2)) |
| 29 | 28 | adantr 276 |
. . . . 5
⊢ (((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) ∧ ¬ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → ((𝑃‘0) ≠ (𝑃‘(♯‘𝐹)) ↔ (♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) = 2)) |
| 30 | 22, 29 | mpbid 147 |
. . . 4
⊢ (((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) ∧ ¬ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → (♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) = 2) |
| 31 | | 2ex 9215 |
. . . . 5
⊢ 2 ∈
V |
| 32 | 31 | prid2 3778 |
. . . 4
⊢ 2 ∈
{0, 2} |
| 33 | 30, 32 | eqeltrdi 2322 |
. . 3
⊢ (((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) ∧ ¬ (𝑃‘0) = (𝑃‘(♯‘𝐹))) → (♯‘{(𝑃‘0), (𝑃‘(♯‘𝐹))}) ∈ {0, 2}) |
| 34 | 26 | simpld 112 |
. . . 4
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → (𝑃‘0) ∈ 𝑉) |
| 35 | 26 | simprd 114 |
. . . 4
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → (𝑃‘(♯‘𝐹)) ∈ 𝑉) |
| 36 | | fidceq 7056 |
. . . 4
⊢ ((𝑉 ∈ Fin ∧ (𝑃‘0) ∈ 𝑉 ∧ (𝑃‘(♯‘𝐹)) ∈ 𝑉) → DECID (𝑃‘0) = (𝑃‘(♯‘𝐹))) |
| 37 | 9, 34, 35, 36 | syl3anc 1273 |
. . 3
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → DECID
(𝑃‘0) = (𝑃‘(♯‘𝐹))) |
| 38 | 13, 15, 20, 33, 37 | ifbothdadc 3639 |
. 2
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → (♯‘if((𝑃‘0) = (𝑃‘(♯‘𝐹)), ∅, {(𝑃‘0), (𝑃‘(♯‘𝐹))})) ∈ {0, 2}) |
| 39 | 11, 38 | eqeltrd 2308 |
1
⊢ ((𝐺 ∈ UMGraph ∧ 𝐹(EulerPaths‘𝐺)𝑃 ∧ 𝑉 ∈ Fin) → (♯‘{𝑥 ∈ 𝑉 ∣ ¬ 2 ∥
((VtxDeg‘𝐺)‘𝑥)}) ∈ {0, 2}) |