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

Theorem eupth2eucrct 29164
Description: Append one path segment to an Eulerian path ⟨𝐹, π‘ƒβŸ© which may not be an (Eulerian) circuit to become an Eulerian circuit ⟨𝐻, π‘„βŸ© of the supergraph 𝑆 obtained by adding the new edge to the graph 𝐺. (Contributed by AV, 11-Mar-2021.) (Proof shortened by AV, 30-Oct-2021.) (Revised by AV, 8-Apr-2024.)
Hypotheses
Ref Expression
eupthp1.v 𝑉 = (Vtxβ€˜πΊ)
eupthp1.i 𝐼 = (iEdgβ€˜πΊ)
eupthp1.f (πœ‘ β†’ Fun 𝐼)
eupthp1.a (πœ‘ β†’ 𝐼 ∈ Fin)
eupthp1.b (πœ‘ β†’ 𝐡 ∈ π‘Š)
eupthp1.c (πœ‘ β†’ 𝐢 ∈ 𝑉)
eupthp1.d (πœ‘ β†’ Β¬ 𝐡 ∈ dom 𝐼)
eupthp1.p (πœ‘ β†’ 𝐹(EulerPathsβ€˜πΊ)𝑃)
eupthp1.n 𝑁 = (β™―β€˜πΉ)
eupthp1.e (πœ‘ β†’ 𝐸 ∈ (Edgβ€˜πΊ))
eupthp1.x (πœ‘ β†’ {(π‘ƒβ€˜π‘), 𝐢} βŠ† 𝐸)
eupthp1.u (iEdgβ€˜π‘†) = (𝐼 βˆͺ {⟨𝐡, 𝐸⟩})
eupthp1.h 𝐻 = (𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})
eupthp1.q 𝑄 = (𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})
eupthp1.s (Vtxβ€˜π‘†) = 𝑉
eupthp1.l ((πœ‘ ∧ 𝐢 = (π‘ƒβ€˜π‘)) β†’ 𝐸 = {𝐢})
eupth2eucrct.c (πœ‘ β†’ 𝐢 = (π‘ƒβ€˜0))
Assertion
Ref Expression
eupth2eucrct (πœ‘ β†’ (𝐻(EulerPathsβ€˜π‘†)𝑄 ∧ 𝐻(Circuitsβ€˜π‘†)𝑄))

Proof of Theorem eupth2eucrct
Dummy variable π‘˜ is distinct from all other variables.
StepHypRef Expression
1 eupthp1.v . . 3 𝑉 = (Vtxβ€˜πΊ)
2 eupthp1.i . . 3 𝐼 = (iEdgβ€˜πΊ)
3 eupthp1.f . . 3 (πœ‘ β†’ Fun 𝐼)
4 eupthp1.a . . 3 (πœ‘ β†’ 𝐼 ∈ Fin)
5 eupthp1.b . . 3 (πœ‘ β†’ 𝐡 ∈ π‘Š)
6 eupthp1.c . . 3 (πœ‘ β†’ 𝐢 ∈ 𝑉)
7 eupthp1.d . . 3 (πœ‘ β†’ Β¬ 𝐡 ∈ dom 𝐼)
8 eupthp1.p . . 3 (πœ‘ β†’ 𝐹(EulerPathsβ€˜πΊ)𝑃)
9 eupthp1.n . . 3 𝑁 = (β™―β€˜πΉ)
10 eupthp1.e . . 3 (πœ‘ β†’ 𝐸 ∈ (Edgβ€˜πΊ))
11 eupthp1.x . . 3 (πœ‘ β†’ {(π‘ƒβ€˜π‘), 𝐢} βŠ† 𝐸)
12 eupthp1.u . . 3 (iEdgβ€˜π‘†) = (𝐼 βˆͺ {⟨𝐡, 𝐸⟩})
13 eupthp1.h . . 3 𝐻 = (𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})
14 eupthp1.q . . 3 𝑄 = (𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})
15 eupthp1.s . . 3 (Vtxβ€˜π‘†) = 𝑉
16 eupthp1.l . . 3 ((πœ‘ ∧ 𝐢 = (π‘ƒβ€˜π‘)) β†’ 𝐸 = {𝐢})
171, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16eupthp1 29163 . 2 (πœ‘ β†’ 𝐻(EulerPathsβ€˜π‘†)𝑄)
18 simpr 486 . . 3 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐻(EulerPathsβ€˜π‘†)𝑄)
19 eupthistrl 29158 . . . . 5 (𝐻(EulerPathsβ€˜π‘†)𝑄 β†’ 𝐻(Trailsβ€˜π‘†)𝑄)
2019adantl 483 . . . 4 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐻(Trailsβ€˜π‘†)𝑄)
21 fveq2 6843 . . . . . . . 8 (π‘˜ = 0 β†’ (π‘„β€˜π‘˜) = (π‘„β€˜0))
22 fveq2 6843 . . . . . . . 8 (π‘˜ = 0 β†’ (π‘ƒβ€˜π‘˜) = (π‘ƒβ€˜0))
2321, 22eqeq12d 2753 . . . . . . 7 (π‘˜ = 0 β†’ ((π‘„β€˜π‘˜) = (π‘ƒβ€˜π‘˜) ↔ (π‘„β€˜0) = (π‘ƒβ€˜0)))
24 eupthiswlk 29159 . . . . . . . . 9 (𝐹(EulerPathsβ€˜πΊ)𝑃 β†’ 𝐹(Walksβ€˜πΊ)𝑃)
258, 24syl 17 . . . . . . . 8 (πœ‘ β†’ 𝐹(Walksβ€˜πΊ)𝑃)
2612a1i 11 . . . . . . . 8 (πœ‘ β†’ (iEdgβ€˜π‘†) = (𝐼 βˆͺ {⟨𝐡, 𝐸⟩}))
2715a1i 11 . . . . . . . 8 (πœ‘ β†’ (Vtxβ€˜π‘†) = 𝑉)
281, 2, 3, 4, 5, 6, 7, 25, 9, 10, 11, 26, 13, 14, 27wlkp1lem5 28628 . . . . . . 7 (πœ‘ β†’ βˆ€π‘˜ ∈ (0...𝑁)(π‘„β€˜π‘˜) = (π‘ƒβ€˜π‘˜))
292wlkf 28565 . . . . . . . . 9 (𝐹(Walksβ€˜πΊ)𝑃 β†’ 𝐹 ∈ Word dom 𝐼)
3024, 29syl 17 . . . . . . . 8 (𝐹(EulerPathsβ€˜πΊ)𝑃 β†’ 𝐹 ∈ Word dom 𝐼)
31 lencl 14422 . . . . . . . . 9 (𝐹 ∈ Word dom 𝐼 β†’ (β™―β€˜πΉ) ∈ β„•0)
329eleq1i 2829 . . . . . . . . . 10 (𝑁 ∈ β„•0 ↔ (β™―β€˜πΉ) ∈ β„•0)
33 0elfz 13539 . . . . . . . . . 10 (𝑁 ∈ β„•0 β†’ 0 ∈ (0...𝑁))
3432, 33sylbir 234 . . . . . . . . 9 ((β™―β€˜πΉ) ∈ β„•0 β†’ 0 ∈ (0...𝑁))
3531, 34syl 17 . . . . . . . 8 (𝐹 ∈ Word dom 𝐼 β†’ 0 ∈ (0...𝑁))
368, 30, 353syl 18 . . . . . . 7 (πœ‘ β†’ 0 ∈ (0...𝑁))
3723, 28, 36rspcdva 3583 . . . . . 6 (πœ‘ β†’ (π‘„β€˜0) = (π‘ƒβ€˜0))
3837adantr 482 . . . . 5 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘„β€˜0) = (π‘ƒβ€˜0))
39 eupth2eucrct.c . . . . . . 7 (πœ‘ β†’ 𝐢 = (π‘ƒβ€˜0))
4039eqcomd 2743 . . . . . 6 (πœ‘ β†’ (π‘ƒβ€˜0) = 𝐢)
4140adantr 482 . . . . 5 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘ƒβ€˜0) = 𝐢)
4214a1i 11 . . . . . . 7 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝑄 = (𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩}))
4313fveq2i 6846 . . . . . . . . 9 (β™―β€˜π») = (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩}))
4443a1i 11 . . . . . . . 8 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (β™―β€˜π») = (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})))
45 wrdfin 14421 . . . . . . . . . . . 12 (𝐹 ∈ Word dom 𝐼 β†’ 𝐹 ∈ Fin)
4629, 45syl 17 . . . . . . . . . . 11 (𝐹(Walksβ€˜πΊ)𝑃 β†’ 𝐹 ∈ Fin)
478, 24, 463syl 18 . . . . . . . . . 10 (πœ‘ β†’ 𝐹 ∈ Fin)
4847adantr 482 . . . . . . . . 9 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐹 ∈ Fin)
49 snfi 8989 . . . . . . . . . 10 {βŸ¨π‘, 𝐡⟩} ∈ Fin
5049a1i 11 . . . . . . . . 9 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ {βŸ¨π‘, 𝐡⟩} ∈ Fin)
51 wrddm 14410 . . . . . . . . . . . . 13 (𝐹 ∈ Word dom 𝐼 β†’ dom 𝐹 = (0..^(β™―β€˜πΉ)))
528, 30, 513syl 18 . . . . . . . . . . . 12 (πœ‘ β†’ dom 𝐹 = (0..^(β™―β€˜πΉ)))
53 fzonel 13587 . . . . . . . . . . . . . . . 16 Β¬ (β™―β€˜πΉ) ∈ (0..^(β™―β€˜πΉ))
5453a1i 11 . . . . . . . . . . . . . . 15 (πœ‘ β†’ Β¬ (β™―β€˜πΉ) ∈ (0..^(β™―β€˜πΉ)))
559eleq1i 2829 . . . . . . . . . . . . . . 15 (𝑁 ∈ (0..^(β™―β€˜πΉ)) ↔ (β™―β€˜πΉ) ∈ (0..^(β™―β€˜πΉ)))
5654, 55sylnibr 329 . . . . . . . . . . . . . 14 (πœ‘ β†’ Β¬ 𝑁 ∈ (0..^(β™―β€˜πΉ)))
57 eleq2 2827 . . . . . . . . . . . . . . 15 (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ (𝑁 ∈ dom 𝐹 ↔ 𝑁 ∈ (0..^(β™―β€˜πΉ))))
5857notbid 318 . . . . . . . . . . . . . 14 (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ (Β¬ 𝑁 ∈ dom 𝐹 ↔ Β¬ 𝑁 ∈ (0..^(β™―β€˜πΉ))))
5956, 58syl5ibrcom 247 . . . . . . . . . . . . 13 (πœ‘ β†’ (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ Β¬ 𝑁 ∈ dom 𝐹))
609fvexi 6857 . . . . . . . . . . . . . . 15 𝑁 ∈ V
6160a1i 11 . . . . . . . . . . . . . 14 (πœ‘ β†’ 𝑁 ∈ V)
6261, 5opeldmd 5863 . . . . . . . . . . . . 13 (πœ‘ β†’ (βŸ¨π‘, 𝐡⟩ ∈ 𝐹 β†’ 𝑁 ∈ dom 𝐹))
6359, 62nsyld 156 . . . . . . . . . . . 12 (πœ‘ β†’ (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹))
6452, 63mpd 15 . . . . . . . . . . 11 (πœ‘ β†’ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹)
6564adantr 482 . . . . . . . . . 10 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹)
66 disjsn 4673 . . . . . . . . . 10 ((𝐹 ∩ {βŸ¨π‘, 𝐡⟩}) = βˆ… ↔ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹)
6765, 66sylibr 233 . . . . . . . . 9 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (𝐹 ∩ {βŸ¨π‘, 𝐡⟩}) = βˆ…)
68 hashun 14283 . . . . . . . . 9 ((𝐹 ∈ Fin ∧ {βŸ¨π‘, 𝐡⟩} ∈ Fin ∧ (𝐹 ∩ {βŸ¨π‘, 𝐡⟩}) = βˆ…) β†’ (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})) = ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})))
6948, 50, 67, 68syl3anc 1372 . . . . . . . 8 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})) = ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})))
709eqcomi 2746 . . . . . . . . . 10 (β™―β€˜πΉ) = 𝑁
71 opex 5422 . . . . . . . . . . 11 βŸ¨π‘, 𝐡⟩ ∈ V
72 hashsng 14270 . . . . . . . . . . 11 (βŸ¨π‘, 𝐡⟩ ∈ V β†’ (β™―β€˜{βŸ¨π‘, 𝐡⟩}) = 1)
7371, 72ax-mp 5 . . . . . . . . . 10 (β™―β€˜{βŸ¨π‘, 𝐡⟩}) = 1
7470, 73oveq12i 7370 . . . . . . . . 9 ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})) = (𝑁 + 1)
7574a1i 11 . . . . . . . 8 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})) = (𝑁 + 1))
7644, 69, 753eqtrd 2781 . . . . . . 7 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (β™―β€˜π») = (𝑁 + 1))
7742, 76fveq12d 6850 . . . . . 6 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘„β€˜(β™―β€˜π»)) = ((𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})β€˜(𝑁 + 1)))
78 ovexd 7393 . . . . . . . . 9 (πœ‘ β†’ (𝑁 + 1) ∈ V)
791, 2, 3, 4, 5, 6, 7, 25, 9wlkp1lem1 28624 . . . . . . . . 9 (πœ‘ β†’ Β¬ (𝑁 + 1) ∈ dom 𝑃)
8078, 6, 793jca 1129 . . . . . . . 8 (πœ‘ β†’ ((𝑁 + 1) ∈ V ∧ 𝐢 ∈ 𝑉 ∧ Β¬ (𝑁 + 1) ∈ dom 𝑃))
8180adantr 482 . . . . . . 7 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ ((𝑁 + 1) ∈ V ∧ 𝐢 ∈ 𝑉 ∧ Β¬ (𝑁 + 1) ∈ dom 𝑃))
82 fsnunfv 7134 . . . . . . 7 (((𝑁 + 1) ∈ V ∧ 𝐢 ∈ 𝑉 ∧ Β¬ (𝑁 + 1) ∈ dom 𝑃) β†’ ((𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})β€˜(𝑁 + 1)) = 𝐢)
8381, 82syl 17 . . . . . 6 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ ((𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})β€˜(𝑁 + 1)) = 𝐢)
8477, 83eqtr2d 2778 . . . . 5 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐢 = (π‘„β€˜(β™―β€˜π»)))
8538, 41, 843eqtrd 2781 . . . 4 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘„β€˜0) = (π‘„β€˜(β™―β€˜π»)))
86 iscrct 28741 . . . 4 (𝐻(Circuitsβ€˜π‘†)𝑄 ↔ (𝐻(Trailsβ€˜π‘†)𝑄 ∧ (π‘„β€˜0) = (π‘„β€˜(β™―β€˜π»))))
8720, 85, 86sylanbrc 584 . . 3 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐻(Circuitsβ€˜π‘†)𝑄)
8818, 87jca 513 . 2 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (𝐻(EulerPathsβ€˜π‘†)𝑄 ∧ 𝐻(Circuitsβ€˜π‘†)𝑄))
8917, 88mpdan 686 1 (πœ‘ β†’ (𝐻(EulerPathsβ€˜π‘†)𝑄 ∧ 𝐻(Circuitsβ€˜π‘†)𝑄))
Colors of variables: wff setvar class
Syntax hints:  Β¬ wn 3   β†’ wi 4   ∧ wa 397   ∧ w3a 1088   = wceq 1542   ∈ wcel 2107  Vcvv 3446   βˆͺ cun 3909   ∩ cin 3910   βŠ† wss 3911  βˆ…c0 4283  {csn 4587  {cpr 4589  βŸ¨cop 4593   class class class wbr 5106  dom cdm 5634  Fun wfun 6491  β€˜cfv 6497  (class class class)co 7358  Fincfn 8884  0cc0 11052  1c1 11053   + caddc 11055  β„•0cn0 12414  ...cfz 13425  ..^cfzo 13568  β™―chash 14231  Word cword 14403  Vtxcvtx 27950  iEdgciedg 27951  Edgcedg 28001  Walkscwlks 28547  Trailsctrls 28641  Circuitsccrcts 28735  EulerPathsceupth 29144
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1914  ax-6 1972  ax-7 2012  ax-8 2109  ax-9 2117  ax-10 2138  ax-11 2155  ax-12 2172  ax-ext 2708  ax-rep 5243  ax-sep 5257  ax-nul 5264  ax-pow 5321  ax-pr 5385  ax-un 7673  ax-cnex 11108  ax-resscn 11109  ax-1cn 11110  ax-icn 11111  ax-addcl 11112  ax-addrcl 11113  ax-mulcl 11114  ax-mulrcl 11115  ax-mulcom 11116  ax-addass 11117  ax-mulass 11118  ax-distr 11119  ax-i2m1 11120  ax-1ne0 11121  ax-1rid 11122  ax-rnegex 11123  ax-rrecex 11124  ax-cnre 11125  ax-pre-lttri 11126  ax-pre-lttrn 11127  ax-pre-ltadd 11128  ax-pre-mulgt0 11129
This theorem depends on definitions:  df-bi 206  df-an 398  df-or 847  df-ifp 1063  df-3or 1089  df-3an 1090  df-tru 1545  df-fal 1555  df-ex 1783  df-nf 1787  df-sb 2069  df-mo 2539  df-eu 2568  df-clab 2715  df-cleq 2729  df-clel 2815  df-nfc 2890  df-ne 2945  df-nel 3051  df-ral 3066  df-rex 3075  df-reu 3355  df-rab 3409  df-v 3448  df-sbc 3741  df-csb 3857  df-dif 3914  df-un 3916  df-in 3918  df-ss 3928  df-pss 3930  df-nul 4284  df-if 4488  df-pw 4563  df-sn 4588  df-pr 4590  df-op 4594  df-uni 4867  df-int 4909  df-iun 4957  df-br 5107  df-opab 5169  df-mpt 5190  df-tr 5224  df-id 5532  df-eprel 5538  df-po 5546  df-so 5547  df-fr 5589  df-we 5591  df-xp 5640  df-rel 5641  df-cnv 5642  df-co 5643  df-dm 5644  df-rn 5645  df-res 5646  df-ima 5647  df-pred 6254  df-ord 6321  df-on 6322  df-lim 6323  df-suc 6324  df-iota 6449  df-fun 6499  df-fn 6500  df-f 6501  df-f1 6502  df-fo 6503  df-f1o 6504  df-fv 6505  df-riota 7314  df-ov 7361  df-oprab 7362  df-mpo 7363  df-om 7804  df-1st 7922  df-2nd 7923  df-frecs 8213  df-wrecs 8244  df-recs 8318  df-rdg 8357  df-1o 8413  df-oadd 8417  df-er 8649  df-map 8768  df-pm 8769  df-en 8885  df-dom 8886  df-sdom 8887  df-fin 8888  df-dju 9838  df-card 9876  df-pnf 11192  df-mnf 11193  df-xr 11194  df-ltxr 11195  df-le 11196  df-sub 11388  df-neg 11389  df-nn 12155  df-n0 12415  df-z 12501  df-uz 12765  df-fz 13426  df-fzo 13569  df-hash 14232  df-word 14404  df-wlks 28550  df-trls 28643  df-crcts 28737  df-eupth 29145
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator