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

Theorem iseupth 30802
Description: The property "⟨𝐹, 𝑃⟩ is an Eulerian path on the graph 𝐺". An Eulerian path is defined as bijection 𝐹 from the edges to a set 0...(𝑁 − 1) and a function 𝑃:(0...𝑁)⟶𝑉 into the vertices such that for each 0 ≤ 𝑘 < 𝑁, 𝐹(𝑘) is an edge from 𝑃(𝑘) to 𝑃(𝑘 + 1). (Since the edges are undirected and there are possibly many edges between any two given vertices, we need to list both the edges and the vertices of the path separately.) (Contributed by Mario Carneiro, 12-Mar-2015.) (Revised by Mario Carneiro, 3-May-2015.) (Revised by AV, 18-Feb-2021.) (Revised by AV, 30-Oct-2021.)
Hypothesis
Ref Expression
eupths.i 𝐼 = (iEdg‘𝐺)
Assertion
Ref Expression
iseupth (𝐹(EulerPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ 𝐹:(0..^(♯‘𝐹))–onto→dom 𝐼))

Proof of Theorem iseupth
Dummy variables 𝑓 𝑝 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eupths.i . . 3 𝐼 = (iEdg‘𝐺)
21eupths 30801 . 2 (EulerPaths‘𝐺) = {⟨𝑓, 𝑝⟩ ∣ (𝑓(Trails‘𝐺)𝑝 ∧ 𝑓:(0..^(♯‘𝑓))–onto→dom 𝐼)}
3 simpl 488 . . 3 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → 𝑓 = 𝐹)
4 fveq2 6885 . . . . 5 (𝑓 = 𝐹 → (♯‘𝑓) = (♯‘𝐹))
54oveq2d 7436 . . . 4 (𝑓 = 𝐹 → (0..^(♯‘𝑓)) = (0..^(♯‘𝐹)))
65adantr 486 . . 3 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → (0..^(♯‘𝑓)) = (0..^(♯‘𝐹)))
7 eqidd 2762 . . 3 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → dom 𝐼 = dom 𝐼)
83, 6, 7foeq123d 6817 . 2 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → (𝑓:(0..^(♯‘𝑓))–onto→dom 𝐼 ↔ 𝐹:(0..^(♯‘𝐹))–onto→dom 𝐼))
9 reltrls 30277 . 2 Rel (Trails‘𝐺)
102, 8, 9brfvopabrbr 6990 1 (𝐹(EulerPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ 𝐹:(0..^(♯‘𝐹))–onto→dom 𝐼))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   ↔ wb 209   ∧ wa 401   = wceq 1570   class class class wbr 5103  dom cdm 5651  –onto→wfo 6536  ‘cfv 6538  (class class class)co 7420  0cc0 11200  ..^cfzo 13788  ♯chash 14474  iEdgciedg 29575  Trailsctrls 30273  EulerPathsceupth 30798
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-sep 5249  ax-nul 5260  ax-pr 5391
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-ral 3078  df-rex 3088  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-nul 4280  df-if 4483  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-br 5104  df-opab 5168  df-mpt 5187  df-id 5546  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  df-iota 6494  df-fun 6540  df-fn 6541  df-fo 6544  df-fv 6546  df-ov 7423  df-trls 30275  df-eupth 30799
This theorem is used by:  iseupthf1o  30803  eupthistrl  30812  eucrctshift  30844
  Copyright terms: Public domain W3C validator