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

Theorem eupth2eucrct 29737
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 29736 . 2 (πœ‘ β†’ 𝐻(EulerPathsβ€˜π‘†)𝑄)
18 simpr 483 . . 3 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐻(EulerPathsβ€˜π‘†)𝑄)
19 eupthistrl 29731 . . . . 5 (𝐻(EulerPathsβ€˜π‘†)𝑄 β†’ 𝐻(Trailsβ€˜π‘†)𝑄)
2019adantl 480 . . . 4 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐻(Trailsβ€˜π‘†)𝑄)
21 fveq2 6890 . . . . . . . 8 (π‘˜ = 0 β†’ (π‘„β€˜π‘˜) = (π‘„β€˜0))
22 fveq2 6890 . . . . . . . 8 (π‘˜ = 0 β†’ (π‘ƒβ€˜π‘˜) = (π‘ƒβ€˜0))
2321, 22eqeq12d 2746 . . . . . . 7 (π‘˜ = 0 β†’ ((π‘„β€˜π‘˜) = (π‘ƒβ€˜π‘˜) ↔ (π‘„β€˜0) = (π‘ƒβ€˜0)))
24 eupthiswlk 29732 . . . . . . . . 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 29201 . . . . . . 7 (πœ‘ β†’ βˆ€π‘˜ ∈ (0...𝑁)(π‘„β€˜π‘˜) = (π‘ƒβ€˜π‘˜))
292wlkf 29138 . . . . . . . . 9 (𝐹(Walksβ€˜πΊ)𝑃 β†’ 𝐹 ∈ Word dom 𝐼)
3024, 29syl 17 . . . . . . . 8 (𝐹(EulerPathsβ€˜πΊ)𝑃 β†’ 𝐹 ∈ Word dom 𝐼)
31 lencl 14487 . . . . . . . . 9 (𝐹 ∈ Word dom 𝐼 β†’ (β™―β€˜πΉ) ∈ β„•0)
329eleq1i 2822 . . . . . . . . . 10 (𝑁 ∈ β„•0 ↔ (β™―β€˜πΉ) ∈ β„•0)
33 0elfz 13602 . . . . . . . . . 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 3612 . . . . . 6 (πœ‘ β†’ (π‘„β€˜0) = (π‘ƒβ€˜0))
3837adantr 479 . . . . 5 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘„β€˜0) = (π‘ƒβ€˜0))
39 eupth2eucrct.c . . . . . . 7 (πœ‘ β†’ 𝐢 = (π‘ƒβ€˜0))
4039eqcomd 2736 . . . . . 6 (πœ‘ β†’ (π‘ƒβ€˜0) = 𝐢)
4140adantr 479 . . . . 5 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘ƒβ€˜0) = 𝐢)
4214a1i 11 . . . . . . 7 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝑄 = (𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩}))
4313fveq2i 6893 . . . . . . . . 9 (β™―β€˜π») = (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩}))
4443a1i 11 . . . . . . . 8 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (β™―β€˜π») = (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})))
45 wrdfin 14486 . . . . . . . . . . . 12 (𝐹 ∈ Word dom 𝐼 β†’ 𝐹 ∈ Fin)
4629, 45syl 17 . . . . . . . . . . 11 (𝐹(Walksβ€˜πΊ)𝑃 β†’ 𝐹 ∈ Fin)
478, 24, 463syl 18 . . . . . . . . . 10 (πœ‘ β†’ 𝐹 ∈ Fin)
4847adantr 479 . . . . . . . . 9 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐹 ∈ Fin)
49 snfi 9046 . . . . . . . . . 10 {βŸ¨π‘, 𝐡⟩} ∈ Fin
5049a1i 11 . . . . . . . . 9 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ {βŸ¨π‘, 𝐡⟩} ∈ Fin)
51 wrddm 14475 . . . . . . . . . . . . 13 (𝐹 ∈ Word dom 𝐼 β†’ dom 𝐹 = (0..^(β™―β€˜πΉ)))
528, 30, 513syl 18 . . . . . . . . . . . 12 (πœ‘ β†’ dom 𝐹 = (0..^(β™―β€˜πΉ)))
53 fzonel 13650 . . . . . . . . . . . . . . . 16 Β¬ (β™―β€˜πΉ) ∈ (0..^(β™―β€˜πΉ))
5453a1i 11 . . . . . . . . . . . . . . 15 (πœ‘ β†’ Β¬ (β™―β€˜πΉ) ∈ (0..^(β™―β€˜πΉ)))
559eleq1i 2822 . . . . . . . . . . . . . . 15 (𝑁 ∈ (0..^(β™―β€˜πΉ)) ↔ (β™―β€˜πΉ) ∈ (0..^(β™―β€˜πΉ)))
5654, 55sylnibr 328 . . . . . . . . . . . . . 14 (πœ‘ β†’ Β¬ 𝑁 ∈ (0..^(β™―β€˜πΉ)))
57 eleq2 2820 . . . . . . . . . . . . . . 15 (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ (𝑁 ∈ dom 𝐹 ↔ 𝑁 ∈ (0..^(β™―β€˜πΉ))))
5857notbid 317 . . . . . . . . . . . . . 14 (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ (Β¬ 𝑁 ∈ dom 𝐹 ↔ Β¬ 𝑁 ∈ (0..^(β™―β€˜πΉ))))
5956, 58syl5ibrcom 246 . . . . . . . . . . . . 13 (πœ‘ β†’ (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ Β¬ 𝑁 ∈ dom 𝐹))
609fvexi 6904 . . . . . . . . . . . . . . 15 𝑁 ∈ V
6160a1i 11 . . . . . . . . . . . . . 14 (πœ‘ β†’ 𝑁 ∈ V)
6261, 5opeldmd 5905 . . . . . . . . . . . . 13 (πœ‘ β†’ (βŸ¨π‘, 𝐡⟩ ∈ 𝐹 β†’ 𝑁 ∈ dom 𝐹))
6359, 62nsyld 156 . . . . . . . . . . . 12 (πœ‘ β†’ (dom 𝐹 = (0..^(β™―β€˜πΉ)) β†’ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹))
6452, 63mpd 15 . . . . . . . . . . 11 (πœ‘ β†’ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹)
6564adantr 479 . . . . . . . . . 10 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹)
66 disjsn 4714 . . . . . . . . . 10 ((𝐹 ∩ {βŸ¨π‘, 𝐡⟩}) = βˆ… ↔ Β¬ βŸ¨π‘, 𝐡⟩ ∈ 𝐹)
6765, 66sylibr 233 . . . . . . . . 9 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (𝐹 ∩ {βŸ¨π‘, 𝐡⟩}) = βˆ…)
68 hashun 14346 . . . . . . . . 9 ((𝐹 ∈ Fin ∧ {βŸ¨π‘, 𝐡⟩} ∈ Fin ∧ (𝐹 ∩ {βŸ¨π‘, 𝐡⟩}) = βˆ…) β†’ (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})) = ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})))
6948, 50, 67, 68syl3anc 1369 . . . . . . . 8 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (β™―β€˜(𝐹 βˆͺ {βŸ¨π‘, 𝐡⟩})) = ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})))
709eqcomi 2739 . . . . . . . . . 10 (β™―β€˜πΉ) = 𝑁
71 opex 5463 . . . . . . . . . . 11 βŸ¨π‘, 𝐡⟩ ∈ V
72 hashsng 14333 . . . . . . . . . . 11 (βŸ¨π‘, 𝐡⟩ ∈ V β†’ (β™―β€˜{βŸ¨π‘, 𝐡⟩}) = 1)
7371, 72ax-mp 5 . . . . . . . . . 10 (β™―β€˜{βŸ¨π‘, 𝐡⟩}) = 1
7470, 73oveq12i 7423 . . . . . . . . 9 ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})) = (𝑁 + 1)
7574a1i 11 . . . . . . . 8 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ ((β™―β€˜πΉ) + (β™―β€˜{βŸ¨π‘, 𝐡⟩})) = (𝑁 + 1))
7644, 69, 753eqtrd 2774 . . . . . . 7 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (β™―β€˜π») = (𝑁 + 1))
7742, 76fveq12d 6897 . . . . . 6 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘„β€˜(β™―β€˜π»)) = ((𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})β€˜(𝑁 + 1)))
78 ovexd 7446 . . . . . . . . 9 (πœ‘ β†’ (𝑁 + 1) ∈ V)
791, 2, 3, 4, 5, 6, 7, 25, 9wlkp1lem1 29197 . . . . . . . . 9 (πœ‘ β†’ Β¬ (𝑁 + 1) ∈ dom 𝑃)
8078, 6, 793jca 1126 . . . . . . . 8 (πœ‘ β†’ ((𝑁 + 1) ∈ V ∧ 𝐢 ∈ 𝑉 ∧ Β¬ (𝑁 + 1) ∈ dom 𝑃))
8180adantr 479 . . . . . . 7 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ ((𝑁 + 1) ∈ V ∧ 𝐢 ∈ 𝑉 ∧ Β¬ (𝑁 + 1) ∈ dom 𝑃))
82 fsnunfv 7186 . . . . . . 7 (((𝑁 + 1) ∈ V ∧ 𝐢 ∈ 𝑉 ∧ Β¬ (𝑁 + 1) ∈ dom 𝑃) β†’ ((𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})β€˜(𝑁 + 1)) = 𝐢)
8381, 82syl 17 . . . . . 6 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ ((𝑃 βˆͺ {⟨(𝑁 + 1), 𝐢⟩})β€˜(𝑁 + 1)) = 𝐢)
8477, 83eqtr2d 2771 . . . . 5 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐢 = (π‘„β€˜(β™―β€˜π»)))
8538, 41, 843eqtrd 2774 . . . 4 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (π‘„β€˜0) = (π‘„β€˜(β™―β€˜π»)))
86 iscrct 29314 . . . 4 (𝐻(Circuitsβ€˜π‘†)𝑄 ↔ (𝐻(Trailsβ€˜π‘†)𝑄 ∧ (π‘„β€˜0) = (π‘„β€˜(β™―β€˜π»))))
8720, 85, 86sylanbrc 581 . . 3 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ 𝐻(Circuitsβ€˜π‘†)𝑄)
8818, 87jca 510 . 2 ((πœ‘ ∧ 𝐻(EulerPathsβ€˜π‘†)𝑄) β†’ (𝐻(EulerPathsβ€˜π‘†)𝑄 ∧ 𝐻(Circuitsβ€˜π‘†)𝑄))
8917, 88mpdan 683 1 (πœ‘ β†’ (𝐻(EulerPathsβ€˜π‘†)𝑄 ∧ 𝐻(Circuitsβ€˜π‘†)𝑄))
Colors of variables: wff setvar class
Syntax hints:  Β¬ wn 3   β†’ wi 4   ∧ wa 394   ∧ w3a 1085   = wceq 1539   ∈ wcel 2104  Vcvv 3472   βˆͺ cun 3945   ∩ cin 3946   βŠ† wss 3947  βˆ…c0 4321  {csn 4627  {cpr 4629  βŸ¨cop 4633   class class class wbr 5147  dom cdm 5675  Fun wfun 6536  β€˜cfv 6542  (class class class)co 7411  Fincfn 8941  0cc0 11112  1c1 11113   + caddc 11115  β„•0cn0 12476  ...cfz 13488  ..^cfzo 13631  β™―chash 14294  Word cword 14468  Vtxcvtx 28523  iEdgciedg 28524  Edgcedg 28574  Walkscwlks 29120  Trailsctrls 29214  Circuitsccrcts 29308  EulerPathsceupth 29717
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1911  ax-6 1969  ax-7 2009  ax-8 2106  ax-9 2114  ax-10 2135  ax-11 2152  ax-12 2169  ax-ext 2701  ax-rep 5284  ax-sep 5298  ax-nul 5305  ax-pow 5362  ax-pr 5426  ax-un 7727  ax-cnex 11168  ax-resscn 11169  ax-1cn 11170  ax-icn 11171  ax-addcl 11172  ax-addrcl 11173  ax-mulcl 11174  ax-mulrcl 11175  ax-mulcom 11176  ax-addass 11177  ax-mulass 11178  ax-distr 11179  ax-i2m1 11180  ax-1ne0 11181  ax-1rid 11182  ax-rnegex 11183  ax-rrecex 11184  ax-cnre 11185  ax-pre-lttri 11186  ax-pre-lttrn 11187  ax-pre-ltadd 11188  ax-pre-mulgt0 11189
This theorem depends on definitions:  df-bi 206  df-an 395  df-or 844  df-ifp 1060  df-3or 1086  df-3an 1087  df-tru 1542  df-fal 1552  df-ex 1780  df-nf 1784  df-sb 2066  df-mo 2532  df-eu 2561  df-clab 2708  df-cleq 2722  df-clel 2808  df-nfc 2883  df-ne 2939  df-nel 3045  df-ral 3060  df-rex 3069  df-reu 3375  df-rab 3431  df-v 3474  df-sbc 3777  df-csb 3893  df-dif 3950  df-un 3952  df-in 3954  df-ss 3964  df-pss 3966  df-nul 4322  df-if 4528  df-pw 4603  df-sn 4628  df-pr 4630  df-op 4634  df-uni 4908  df-int 4950  df-iun 4998  df-br 5148  df-opab 5210  df-mpt 5231  df-tr 5265  df-id 5573  df-eprel 5579  df-po 5587  df-so 5588  df-fr 5630  df-we 5632  df-xp 5681  df-rel 5682  df-cnv 5683  df-co 5684  df-dm 5685  df-rn 5686  df-res 5687  df-ima 5688  df-pred 6299  df-ord 6366  df-on 6367  df-lim 6368  df-suc 6369  df-iota 6494  df-fun 6544  df-fn 6545  df-f 6546  df-f1 6547  df-fo 6548  df-f1o 6549  df-fv 6550  df-riota 7367  df-ov 7414  df-oprab 7415  df-mpo 7416  df-om 7858  df-1st 7977  df-2nd 7978  df-frecs 8268  df-wrecs 8299  df-recs 8373  df-rdg 8412  df-1o 8468  df-oadd 8472  df-er 8705  df-map 8824  df-pm 8825  df-en 8942  df-dom 8943  df-sdom 8944  df-fin 8945  df-dju 9898  df-card 9936  df-pnf 11254  df-mnf 11255  df-xr 11256  df-ltxr 11257  df-le 11258  df-sub 11450  df-neg 11451  df-nn 12217  df-n0 12477  df-z 12563  df-uz 12827  df-fz 13489  df-fzo 13632  df-hash 14295  df-word 14469  df-wlks 29123  df-trls 29216  df-crcts 29310  df-eupth 29718
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator