Metamath Proof Explorer


Theorem eleclclwwlknlem1

Description: Lemma 1 for eleclclwwlkn . (Contributed by Alexander van der Vekens, 11-May-2018) (Revised by AV, 30-Apr-2021)

Ref Expression
Hypothesis erclwwlkn1.w 𝑊 = ( 𝑁 ClWWalksN 𝐺 )
Assertion eleclclwwlknlem1 ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) → ( ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) → ∃ 𝑛 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑋 cyclShift 𝑛 ) ) )

Proof

Step Hyp Ref Expression
1 erclwwlkn1.w 𝑊 = ( 𝑁 ClWWalksN 𝐺 )
2 eqid ( Vtx ‘ 𝐺 ) = ( Vtx ‘ 𝐺 )
3 2 clwwlknbp ( 𝑌 ∈ ( 𝑁 ClWWalksN 𝐺 ) → ( 𝑌 ∈ Word ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝑌 ) = 𝑁 ) )
4 3 1 eleq2s ( 𝑌𝑊 → ( 𝑌 ∈ Word ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝑌 ) = 𝑁 ) )
5 4 adantl ( ( 𝑋𝑊𝑌𝑊 ) → ( 𝑌 ∈ Word ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝑌 ) = 𝑁 ) )
6 5 adantl ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) → ( 𝑌 ∈ Word ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝑌 ) = 𝑁 ) )
7 6 adantr ( ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) ∧ ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) ) → ( 𝑌 ∈ Word ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝑌 ) = 𝑁 ) )
8 simpl ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) → 𝐾 ∈ ( 0 ... 𝑁 ) )
9 8 adantr ( ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) ∧ ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) ) → 𝐾 ∈ ( 0 ... 𝑁 ) )
10 simpl ( ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) → 𝑋 = ( 𝑌 cyclShift 𝐾 ) )
11 10 adantl ( ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) ∧ ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) ) → 𝑋 = ( 𝑌 cyclShift 𝐾 ) )
12 simprr ( ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) ∧ ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) ) → ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) )
13 9 11 12 3jca ( ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) ∧ ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) ) → ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) )
14 2cshwcshw ( ( 𝑌 ∈ Word ( Vtx ‘ 𝐺 ) ∧ ( ♯ ‘ 𝑌 ) = 𝑁 ) → ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) → ∃ 𝑛 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑋 cyclShift 𝑛 ) ) )
15 7 13 14 sylc ( ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) ∧ ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) ) → ∃ 𝑛 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑋 cyclShift 𝑛 ) )
16 15 ex ( ( 𝐾 ∈ ( 0 ... 𝑁 ) ∧ ( 𝑋𝑊𝑌𝑊 ) ) → ( ( 𝑋 = ( 𝑌 cyclShift 𝐾 ) ∧ ∃ 𝑚 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑌 cyclShift 𝑚 ) ) → ∃ 𝑛 ∈ ( 0 ... 𝑁 ) 𝑍 = ( 𝑋 cyclShift 𝑛 ) ) )