Metamath Proof Explorer


Theorem 3cycld

Description: Construction of a 3-cycle from three given edges in a graph. (Contributed by Alexander van der Vekens, 13-Nov-2017) (Revised by AV, 10-Feb-2021) (Revised by AV, 24-Mar-2021) (Proof shortened by AV, 30-Oct-2021)

Ref Expression
Hypotheses 3wlkd.p ⊢ 𝑃 = ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩
3wlkd.f ⊢ 𝐹 = ⟨“ 𝐽 𝐾 𝐿 ”⟩
3wlkd.s ⊢ ( 𝜑 → ( ( 𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ) ∧ ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) ) )
3wlkd.n ⊢ ( 𝜑 → ( ( 𝐴 ≠ 𝐵 ∧ 𝐴 ≠ 𝐶 ) ∧ ( 𝐵 ≠ 𝐶 ∧ 𝐵 ≠ 𝐷 ) ∧ 𝐶 ≠ 𝐷 ) )
3wlkd.e ⊢ ( 𝜑 → ( { 𝐴 , 𝐵 } ⊆ ( 𝐼 ‘ 𝐽 ) ∧ { 𝐵 , 𝐶 } ⊆ ( 𝐼 ‘ 𝐾 ) ∧ { 𝐶 , 𝐷 } ⊆ ( 𝐼 ‘ 𝐿 ) ) )
3wlkd.v ⊢ 𝑉 = ( Vtx ‘ 𝐺 )
3wlkd.i ⊢ 𝐼 = ( iEdg ‘ 𝐺 )
3trld.n ⊢ ( 𝜑 → ( 𝐽 ≠ 𝐾 ∧ 𝐽 ≠ 𝐿 ∧ 𝐾 ≠ 𝐿 ) )
3cycld.e ⊢ ( 𝜑 → 𝐴 = 𝐷 )
Assertion 3cycld ( 𝜑 → 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 )

Proof

Step Hyp Ref Expression
1 3wlkd.p ⊢ 𝑃 = ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩
2 3wlkd.f ⊢ 𝐹 = ⟨“ 𝐽 𝐾 𝐿 ”⟩
3 3wlkd.s ⊢ ( 𝜑 → ( ( 𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ) ∧ ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) ) )
4 3wlkd.n ⊢ ( 𝜑 → ( ( 𝐴 ≠ 𝐵 ∧ 𝐴 ≠ 𝐶 ) ∧ ( 𝐵 ≠ 𝐶 ∧ 𝐵 ≠ 𝐷 ) ∧ 𝐶 ≠ 𝐷 ) )
5 3wlkd.e ⊢ ( 𝜑 → ( { 𝐴 , 𝐵 } ⊆ ( 𝐼 ‘ 𝐽 ) ∧ { 𝐵 , 𝐶 } ⊆ ( 𝐼 ‘ 𝐾 ) ∧ { 𝐶 , 𝐷 } ⊆ ( 𝐼 ‘ 𝐿 ) ) )
6 3wlkd.v ⊢ 𝑉 = ( Vtx ‘ 𝐺 )
7 3wlkd.i ⊢ 𝐼 = ( iEdg ‘ 𝐺 )
8 3trld.n ⊢ ( 𝜑 → ( 𝐽 ≠ 𝐾 ∧ 𝐽 ≠ 𝐿 ∧ 𝐾 ≠ 𝐿 ) )
9 3cycld.e ⊢ ( 𝜑 → 𝐴 = 𝐷 )
10 1 2 3 4 5 6 7 8 3pthd ⊢ ( 𝜑 → 𝐹 ( Paths ‘ 𝐺 ) 𝑃 )
11 1 fveq1i ⊢ ( 𝑃 ‘ 0 ) = ( ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ ‘ 0 )
12 s4fv0 ⊢ ( 𝐴 ∈ 𝑉 → ( ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ ‘ 0 ) = 𝐴 )
13 11 12 eqtrid ⊢ ( 𝐴 ∈ 𝑉 → ( 𝑃 ‘ 0 ) = 𝐴 )
14 13 ad3antrrr ⊢ ( ( ( ( 𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ) ∧ ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) ) ∧ 𝐴 = 𝐷 ) → ( 𝑃 ‘ 0 ) = 𝐴 )
15 simpr ⊢ ( ( ( ( 𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ) ∧ ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) ) ∧ 𝐴 = 𝐷 ) → 𝐴 = 𝐷 )
16 2 fveq2i ⊢ ( ♯ ‘ 𝐹 ) = ( ♯ ‘ ⟨“ 𝐽 𝐾 𝐿 ”⟩ )
17 s3len ⊢ ( ♯ ‘ ⟨“ 𝐽 𝐾 𝐿 ”⟩ ) = 3
18 16 17 eqtri ⊢ ( ♯ ‘ 𝐹 ) = 3
19 1 18 fveq12i ⊢ ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) = ( ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ ‘ 3 )
20 s4fv3 ⊢ ( 𝐷 ∈ 𝑉 → ( ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ ‘ 3 ) = 𝐷 )
21 19 20 eqtr2id ⊢ ( 𝐷 ∈ 𝑉 → 𝐷 = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
22 21 adantl ⊢ ( ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) → 𝐷 = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
23 22 ad2antlr ⊢ ( ( ( ( 𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ) ∧ ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) ) ∧ 𝐴 = 𝐷 ) → 𝐷 = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
24 14 15 23 3eqtrd ⊢ ( ( ( ( 𝐴 ∈ 𝑉 ∧ 𝐵 ∈ 𝑉 ) ∧ ( 𝐶 ∈ 𝑉 ∧ 𝐷 ∈ 𝑉 ) ) ∧ 𝐴 = 𝐷 ) → ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
25 3 9 24 syl2anc ⊢ ( 𝜑 → ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) )
26 iscycl ⊢ ( 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 ↔ ( 𝐹 ( Paths ‘ 𝐺 ) 𝑃 ∧ ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( ♯ ‘ 𝐹 ) ) ) )
27 10 25 26 sylanbrc ⊢ ( 𝜑 → 𝐹 ( Cycles ‘ 𝐺 ) 𝑃 )