Metamath Proof Explorer


Theorem 3spthd

Description: A simple path of length 3 from one vertex to another, different vertex via a third vertex. (Contributed 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 ( 𝜑 → ( 𝐽𝐾𝐽𝐿𝐾𝐿 ) )
3spthd.n ( 𝜑𝐴𝐷 )
Assertion 3spthd ( 𝜑𝐹 ( SPaths ‘ 𝐺 ) 𝑃 )

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 3spthd.n ( 𝜑𝐴𝐷 )
10 1 2 3 4 5 6 7 8 3trld ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 )
11 simpr ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → 𝐹 ( Trails ‘ 𝐺 ) 𝑃 )
12 df-3an ( ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) ↔ ( ( 𝐴𝐵𝐴𝐶 ) ∧ 𝐴𝐷 ) )
13 12 simplbi2 ( ( 𝐴𝐵𝐴𝐶 ) → ( 𝐴𝐷 → ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) ) )
14 13 3ad2ant1 ( ( ( 𝐴𝐵𝐴𝐶 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) → ( 𝐴𝐷 → ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) ) )
15 9 14 mpan9 ( ( 𝜑 ∧ ( ( 𝐴𝐵𝐴𝐶 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) ) → ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) )
16 simpr2 ( ( 𝜑 ∧ ( ( 𝐴𝐵𝐴𝐶 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) ) → ( 𝐵𝐶𝐵𝐷 ) )
17 simpr3 ( ( 𝜑 ∧ ( ( 𝐴𝐵𝐴𝐶 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) ) → 𝐶𝐷 )
18 15 16 17 3jca ( ( 𝜑 ∧ ( ( 𝐴𝐵𝐴𝐶 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) ) → ( ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) )
19 4 18 mpdan ( 𝜑 → ( ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) )
20 funcnvs4 ( ( ( ( 𝐴𝑉𝐵𝑉 ) ∧ ( 𝐶𝑉𝐷𝑉 ) ) ∧ ( ( 𝐴𝐵𝐴𝐶𝐴𝐷 ) ∧ ( 𝐵𝐶𝐵𝐷 ) ∧ 𝐶𝐷 ) ) → Fun ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ )
21 3 19 20 syl2anc ( 𝜑 → Fun ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ )
22 21 adantr ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → Fun ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ )
23 1 a1i ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → 𝑃 = ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ )
24 23 cnveqd ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → 𝑃 = ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ )
25 24 funeqd ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → ( Fun 𝑃 ↔ Fun ⟨“ 𝐴 𝐵 𝐶 𝐷 ”⟩ ) )
26 22 25 mpbird ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → Fun 𝑃 )
27 isspth ( 𝐹 ( SPaths ‘ 𝐺 ) 𝑃 ↔ ( 𝐹 ( Trails ‘ 𝐺 ) 𝑃 ∧ Fun 𝑃 ) )
28 11 26 27 sylanbrc ( ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 ) → 𝐹 ( SPaths ‘ 𝐺 ) 𝑃 )
29 10 28 mpdan ( 𝜑𝐹 ( SPaths ‘ 𝐺 ) 𝑃 )