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

Theorem iseupth 30817
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 30816 . 2 (EulerPaths‘𝐺) = {⟨𝑓, 𝑝⟩ ∣ (𝑓(Trails‘𝐺)𝑝 ∧ 𝑓:(0..^(♯‘𝑓))–onto→dom 𝐼)}
3 simpl 488 . . 3 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → 𝑓 = 𝐹)
4 fveq2 6896 . . . . 5 (𝑓 = 𝐹 → (♯‘𝑓) = (♯‘𝐹))
54oveq2d 7446 . . . 4 (𝑓 = 𝐹 → (0..^(♯‘𝑓)) = (0..^(♯‘𝐹)))
65adantr 486 . . 3 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → (0..^(♯‘𝑓)) = (0..^(♯‘𝐹)))
7 eqidd 2764 . . 3 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → dom 𝐼 = dom 𝐼)
83, 6, 7foeq123d 6828 . 2 ((𝑓 = 𝐹 ∧ 𝑝 = 𝑃) → (𝑓:(0..^(♯‘𝑓))–onto→dom 𝐼 ↔ 𝐹:(0..^(♯‘𝐹))–onto→dom 𝐼))
9 reltrls 30292 . 2 Rel (Trails‘𝐺)
102, 8, 9brfvopabrbr 7001 1 (𝐹(EulerPaths‘𝐺)𝑃 ↔ (𝐹(Trails‘𝐺)𝑃 ∧ 𝐹:(0..^(♯‘𝐹))–onto→dom 𝐼))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   ↔ wb 209   ∧ wa 401   = wceq 1569   class class class wbr 5106  dom cdm 5655  –onto→wfo 6545  ‘cfv 6547  (class class class)co 7430  0cc0 11213  ..^cfzo 13801  ♯chash 14487  iEdgciedg 29590  Trailsctrls 30288  EulerPathsceupth 30813
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1944  ax-6 2001  ax-7 2042  ax-8 2148  ax-9 2156  ax-10 2179  ax-11 2196  ax-12 2215  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pr 5395
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2101  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-ral 3081  df-rex 3091  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-br 5107  df-opab 5171  df-mpt 5190  df-id 5550  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-iota 6501  df-fun 6549  df-fn 6550  df-fo 6553  df-fv 6555  df-ov 7433  df-trls 30290  df-eupth 30814
This theorem is used by:  iseupthf1o  30818  eupthistrl  30827  eucrctshift  30859
  Copyright terms: Public domain W3C validator