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

Theorem erclwwlkseq 26932
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
erclwwlks.r = {⟨𝑢, 𝑤⟩ ∣ (𝑢 ∈ (ClWWalks‘𝐺) ∧ 𝑤 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(#‘𝑤))𝑢 = (𝑤 cyclShift 𝑛))}
Assertion
Ref Expression
erclwwlkseq ((𝑈𝑋𝑊𝑌) → (𝑈 𝑊 ↔ (𝑈 ∈ (ClWWalks‘𝐺) ∧ 𝑊 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(#‘𝑊))𝑈 = (𝑊 cyclShift 𝑛))))
Distinct variable groups:   𝑛,𝐺,𝑢,𝑤   𝑈,𝑛,𝑢,𝑤   𝑛,𝑊,𝑢,𝑤
Allowed substitution hints:   (𝑤,𝑢,𝑛)   𝑋(𝑤,𝑢,𝑛)   𝑌(𝑤,𝑢,𝑛)

Proof of Theorem erclwwlkseq
StepHypRef Expression
1 eleq1 2689 . . . 4 (𝑢 = 𝑈 → (𝑢 ∈ (ClWWalks‘𝐺) ↔ 𝑈 ∈ (ClWWalks‘𝐺)))
21adantr 481 . . 3 ((𝑢 = 𝑈𝑤 = 𝑊) → (𝑢 ∈ (ClWWalks‘𝐺) ↔ 𝑈 ∈ (ClWWalks‘𝐺)))
3 eleq1 2689 . . . 4 (𝑤 = 𝑊 → (𝑤 ∈ (ClWWalks‘𝐺) ↔ 𝑊 ∈ (ClWWalks‘𝐺)))
43adantl 482 . . 3 ((𝑢 = 𝑈𝑤 = 𝑊) → (𝑤 ∈ (ClWWalks‘𝐺) ↔ 𝑊 ∈ (ClWWalks‘𝐺)))
5 fveq2 6191 . . . . . 6 (𝑤 = 𝑊 → (#‘𝑤) = (#‘𝑊))
65oveq2d 6666 . . . . 5 (𝑤 = 𝑊 → (0...(#‘𝑤)) = (0...(#‘𝑊)))
76adantl 482 . . . 4 ((𝑢 = 𝑈𝑤 = 𝑊) → (0...(#‘𝑤)) = (0...(#‘𝑊)))
8 simpl 473 . . . . 5 ((𝑢 = 𝑈𝑤 = 𝑊) → 𝑢 = 𝑈)
9 oveq1 6657 . . . . . 6 (𝑤 = 𝑊 → (𝑤 cyclShift 𝑛) = (𝑊 cyclShift 𝑛))
109adantl 482 . . . . 5 ((𝑢 = 𝑈𝑤 = 𝑊) → (𝑤 cyclShift 𝑛) = (𝑊 cyclShift 𝑛))
118, 10eqeq12d 2637 . . . 4 ((𝑢 = 𝑈𝑤 = 𝑊) → (𝑢 = (𝑤 cyclShift 𝑛) ↔ 𝑈 = (𝑊 cyclShift 𝑛)))
127, 11rexeqbidv 3153 . . 3 ((𝑢 = 𝑈𝑤 = 𝑊) → (∃𝑛 ∈ (0...(#‘𝑤))𝑢 = (𝑤 cyclShift 𝑛) ↔ ∃𝑛 ∈ (0...(#‘𝑊))𝑈 = (𝑊 cyclShift 𝑛)))
132, 4, 123anbi123d 1399 . 2 ((𝑢 = 𝑈𝑤 = 𝑊) → ((𝑢 ∈ (ClWWalks‘𝐺) ∧ 𝑤 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(#‘𝑤))𝑢 = (𝑤 cyclShift 𝑛)) ↔ (𝑈 ∈ (ClWWalks‘𝐺) ∧ 𝑊 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(#‘𝑊))𝑈 = (𝑊 cyclShift 𝑛))))
14 erclwwlks.r . 2 = {⟨𝑢, 𝑤⟩ ∣ (𝑢 ∈ (ClWWalks‘𝐺) ∧ 𝑤 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(#‘𝑤))𝑢 = (𝑤 cyclShift 𝑛))}
1513, 14brabga 4989 1 ((𝑈𝑋𝑊𝑌) → (𝑈 𝑊 ↔ (𝑈 ∈ (ClWWalks‘𝐺) ∧ 𝑊 ∈ (ClWWalks‘𝐺) ∧ ∃𝑛 ∈ (0...(#‘𝑊))𝑈 = (𝑊 cyclShift 𝑛))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 196  wa 384  w3a 1037   = wceq 1483  wcel 1990  wrex 2913   class class class wbr 4653  {copab 4712  cfv 5888  (class class class)co 6650  0cc0 9936  ...cfz 12326  #chash 13117   cyclShift ccsh 13534  ClWWalkscclwwlks 26875
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-sep 4781  ax-nul 4789  ax-pr 4906
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-rex 2918  df-rab 2921  df-v 3202  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-nul 3916  df-if 4087  df-sn 4178  df-pr 4180  df-op 4184  df-uni 4437  df-br 4654  df-opab 4713  df-iota 5851  df-fv 5896  df-ov 6653
This theorem is referenced by:  erclwwlkseqlen  26933  erclwwlksref  26934  erclwwlkssym  26935  erclwwlkstr  26936
  Copyright terms: Public domain W3C validator