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

Theorem erclwwlkeq 30609
Description: Two classes are equivalent regarding ∼ if both are words and one is the other cyclically shifted. (Contributed by Alexander van der Vekens, 25-Mar-2018.) (Revised by AV, 29-Apr-2021.)
Hypothesis
Ref Expression
erclwwlk.r ∼ = {⟨𝑢, 𝑤⟩ ∣ (𝑢 ∈ (ClWWalks‘𝐺) ∧ 𝑤 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(♯‘𝑤))𝑢 = (𝑤 cyclShift 𝑛))}
Assertion
Ref Expression
erclwwlkeq ((𝑈 ∈ 𝑋 ∧ 𝑊 ∈ 𝑌) → (𝑈 ∼ 𝑊 ↔ (𝑈 ∈ (ClWWalks‘𝐺) ∧ 𝑊 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(♯‘𝑊))𝑈 = (𝑊 cyclShift 𝑛))))
Distinct variable groups:   𝑛,𝐺,𝑢,𝑤   𝑈,𝑛,𝑢,𝑤   𝑛,𝑊,𝑢,𝑤
Allowed substitution hints:   ∼ (𝑤, 𝑢, 𝑛)   𝑋(𝑤, 𝑢, 𝑛)   𝑌(𝑤, 𝑢, 𝑛)

Proof of Theorem erclwwlkeq
StepHypRef Expression
1 eleq1 2848 . . . 4 (𝑢 = 𝑈 → (𝑢 ∈ (ClWWalks‘𝐺) ↔ 𝑈 ∈ (ClWWalks‘𝐺)))
21adantr 486 . . 3 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → (𝑢 ∈ (ClWWalks‘𝐺) ↔ 𝑈 ∈ (ClWWalks‘𝐺)))
3 eleq1 2848 . . . 4 (𝑤 = 𝑊 → (𝑤 ∈ (ClWWalks‘𝐺) ↔ 𝑊 ∈ (ClWWalks‘𝐺)))
43adantl 487 . . 3 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → (𝑤 ∈ (ClWWalks‘𝐺) ↔ 𝑊 ∈ (ClWWalks‘𝐺)))
5 fveq2 6885 . . . . . 6 (𝑤 = 𝑊 → (♯‘𝑤) = (♯‘𝑊))
65oveq2d 7436 . . . . 5 (𝑤 = 𝑊 → (0...(♯‘𝑤)) = (0...(♯‘𝑊)))
76adantl 487 . . . 4 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → (0...(♯‘𝑤)) = (0...(♯‘𝑊)))
8 simpl 488 . . . . 5 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → 𝑢 = 𝑈)
9 oveq1 7427 . . . . . 6 (𝑤 = 𝑊 → (𝑤 cyclShift 𝑛) = (𝑊 cyclShift 𝑛))
109adantl 487 . . . . 5 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → (𝑤 cyclShift 𝑛) = (𝑊 cyclShift 𝑛))
118, 10eqeq12d 2776 . . . 4 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → (𝑢 = (𝑤 cyclShift 𝑛) ↔ 𝑈 = (𝑊 cyclShift 𝑛)))
127, 11rexeqbidv 3335 . . 3 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → (∃𝑛 ∈ (0...(♯‘𝑤))𝑢 = (𝑤 cyclShift 𝑛) ↔ ∃𝑛 ∈ (0...(♯‘𝑊))𝑈 = (𝑊 cyclShift 𝑛)))
132, 4, 123anbi123d 1464 . 2 ((𝑢 = 𝑈 ∧ 𝑤 = 𝑊) → ((𝑢 ∈ (ClWWalks‘𝐺) ∧ 𝑤 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(♯‘𝑤))𝑢 = (𝑤 cyclShift 𝑛)) ↔ (𝑈 ∈ (ClWWalks‘𝐺) ∧ 𝑊 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(♯‘𝑊))𝑈 = (𝑊 cyclShift 𝑛))))
14 erclwwlk.r . 2 ∼ = {⟨𝑢, 𝑤⟩ ∣ (𝑢 ∈ (ClWWalks‘𝐺) ∧ 𝑤 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(♯‘𝑤))𝑢 = (𝑤 cyclShift 𝑛))}
1513, 14brabga 5507 1 ((𝑈 ∈ 𝑋 ∧ 𝑊 ∈ 𝑌) → (𝑈 ∼ 𝑊 ↔ (𝑈 ∈ (ClWWalks‘𝐺) ∧ 𝑊 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(♯‘𝑊))𝑈 = (𝑊 cyclShift 𝑛))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   ∧ w3a 1103   = wceq 1569   ∈ wcel 2144  ∃wrex 3086   class class class wbr 5102  {copab 5166  ‘cfv 6538  (class class class)co 7420  0cc0 11200  ...cfz 13639  ♯chash 14474   cyclShift ccsh 14939  ClWWalkscclwwlk 30572
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 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-ext 2732  ax-sep 5248  ax-pr 5390
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-sb 2099  df-clab 2739  df-cleq 2752  df-clel 2835  df-rex 3087  df-rab 3413  df-v 3452  df-ss 3896  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-br 5103  df-opab 5167  df-iota 6494  df-fv 6546  df-ov 7423
This theorem is used by:  erclwwlkeqlen  30610  erclwwlkref  30611  erclwwlksym  30612  erclwwlktr  30613
  Copyright terms: Public domain W3C validator