Metamath Proof Explorer


Theorem eupth2lem3lem7

Description: Lemma for eupth2lem3 : Combining trlsegvdeg , eupth2lem3lem3 , eupth2lem3lem4 and eupth2lem3lem6 . (Contributed by Mario Carneiro, 8-Apr-2015) (Revised by AV, 27-Feb-2021)

Ref Expression
Hypotheses trlsegvdeg.v 𝑉 = ( Vtx ‘ 𝐺 )
trlsegvdeg.i 𝐼 = ( iEdg ‘ 𝐺 )
trlsegvdeg.f ( 𝜑 → Fun 𝐼 )
trlsegvdeg.n ( 𝜑𝑁 ∈ ( 0 ..^ ( ♯ ‘ 𝐹 ) ) )
trlsegvdeg.u ( 𝜑𝑈𝑉 )
trlsegvdeg.w ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 )
trlsegvdeg.vx ( 𝜑 → ( Vtx ‘ 𝑋 ) = 𝑉 )
trlsegvdeg.vy ( 𝜑 → ( Vtx ‘ 𝑌 ) = 𝑉 )
trlsegvdeg.vz ( 𝜑 → ( Vtx ‘ 𝑍 ) = 𝑉 )
trlsegvdeg.ix ( 𝜑 → ( iEdg ‘ 𝑋 ) = ( 𝐼 ↾ ( 𝐹 “ ( 0 ..^ 𝑁 ) ) ) )
trlsegvdeg.iy ( 𝜑 → ( iEdg ‘ 𝑌 ) = { ⟨ ( 𝐹𝑁 ) , ( 𝐼 ‘ ( 𝐹𝑁 ) ) ⟩ } )
trlsegvdeg.iz ( 𝜑 → ( iEdg ‘ 𝑍 ) = ( 𝐼 ↾ ( 𝐹 “ ( 0 ... 𝑁 ) ) ) )
eupth2lem3.o ( 𝜑 → { 𝑥𝑉 ∣ ¬ 2 ∥ ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑥 ) } = if ( ( 𝑃 ‘ 0 ) = ( 𝑃𝑁 ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃𝑁 ) } ) )
eupth2lem3.e ( 𝜑 → ( 𝐼 ‘ ( 𝐹𝑁 ) ) = { ( 𝑃𝑁 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } )
Assertion eupth2lem3lem7 ( 𝜑 → ( ¬ 2 ∥ ( ( VtxDeg ‘ 𝑍 ) ‘ 𝑈 ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )

Proof

Step Hyp Ref Expression
1 trlsegvdeg.v 𝑉 = ( Vtx ‘ 𝐺 )
2 trlsegvdeg.i 𝐼 = ( iEdg ‘ 𝐺 )
3 trlsegvdeg.f ( 𝜑 → Fun 𝐼 )
4 trlsegvdeg.n ( 𝜑𝑁 ∈ ( 0 ..^ ( ♯ ‘ 𝐹 ) ) )
5 trlsegvdeg.u ( 𝜑𝑈𝑉 )
6 trlsegvdeg.w ( 𝜑𝐹 ( Trails ‘ 𝐺 ) 𝑃 )
7 trlsegvdeg.vx ( 𝜑 → ( Vtx ‘ 𝑋 ) = 𝑉 )
8 trlsegvdeg.vy ( 𝜑 → ( Vtx ‘ 𝑌 ) = 𝑉 )
9 trlsegvdeg.vz ( 𝜑 → ( Vtx ‘ 𝑍 ) = 𝑉 )
10 trlsegvdeg.ix ( 𝜑 → ( iEdg ‘ 𝑋 ) = ( 𝐼 ↾ ( 𝐹 “ ( 0 ..^ 𝑁 ) ) ) )
11 trlsegvdeg.iy ( 𝜑 → ( iEdg ‘ 𝑌 ) = { ⟨ ( 𝐹𝑁 ) , ( 𝐼 ‘ ( 𝐹𝑁 ) ) ⟩ } )
12 trlsegvdeg.iz ( 𝜑 → ( iEdg ‘ 𝑍 ) = ( 𝐼 ↾ ( 𝐹 “ ( 0 ... 𝑁 ) ) ) )
13 eupth2lem3.o ( 𝜑 → { 𝑥𝑉 ∣ ¬ 2 ∥ ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑥 ) } = if ( ( 𝑃 ‘ 0 ) = ( 𝑃𝑁 ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃𝑁 ) } ) )
14 eupth2lem3.e ( 𝜑 → ( 𝐼 ‘ ( 𝐹𝑁 ) ) = { ( 𝑃𝑁 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } )
15 1 2 3 4 5 6 7 8 9 10 11 12 trlsegvdeg ( 𝜑 → ( ( VtxDeg ‘ 𝑍 ) ‘ 𝑈 ) = ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) )
16 15 breq2d ( 𝜑 → ( 2 ∥ ( ( VtxDeg ‘ 𝑍 ) ‘ 𝑈 ) ↔ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ) )
17 16 notbid ( 𝜑 → ( ¬ 2 ∥ ( ( VtxDeg ‘ 𝑍 ) ‘ 𝑈 ) ↔ ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ) )
18 ifpprsnss ( ( 𝐼 ‘ ( 𝐹𝑁 ) ) = { ( 𝑃𝑁 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } → if- ( ( 𝑃𝑁 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ( 𝐼 ‘ ( 𝐹𝑁 ) ) = { ( 𝑃𝑁 ) } , { ( 𝑃𝑁 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ⊆ ( 𝐼 ‘ ( 𝐹𝑁 ) ) ) )
19 14 18 syl ( 𝜑 → if- ( ( 𝑃𝑁 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ( 𝐼 ‘ ( 𝐹𝑁 ) ) = { ( 𝑃𝑁 ) } , { ( 𝑃𝑁 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ⊆ ( 𝐼 ‘ ( 𝐹𝑁 ) ) ) )
20 1 2 3 4 5 6 7 8 9 10 11 12 13 19 eupth2lem3lem3 ( ( 𝜑 ∧ ( 𝑃𝑁 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
21 1 2 3 4 5 6 7 8 9 10 11 12 13 14 eupth2lem3lem5 ( 𝜑 → ( 𝐼 ‘ ( 𝐹𝑁 ) ) ∈ 𝒫 𝑉 )
22 1 2 3 4 5 6 7 8 9 10 11 12 13 19 21 eupth2lem3lem4 ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ∧ ( 𝑈 = ( 𝑃𝑁 ) ∨ 𝑈 = ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
23 22 3expa ( ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ∧ ( 𝑈 = ( 𝑃𝑁 ) ∨ 𝑈 = ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
24 23 expcom ( ( 𝑈 = ( 𝑃𝑁 ) ∨ 𝑈 = ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) ) )
25 neanior ( ( 𝑈 ≠ ( 𝑃𝑁 ) ∧ 𝑈 ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ↔ ¬ ( 𝑈 = ( 𝑃𝑁 ) ∨ 𝑈 = ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) )
26 1 2 3 4 5 6 7 8 9 10 11 12 13 14 eupth2lem3lem6 ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ∧ ( 𝑈 ≠ ( 𝑃𝑁 ) ∧ 𝑈 ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
27 26 3expa ( ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ∧ ( 𝑈 ≠ ( 𝑃𝑁 ) ∧ 𝑈 ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
28 27 expcom ( ( 𝑈 ≠ ( 𝑃𝑁 ) ∧ 𝑈 ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) ) )
29 25 28 sylbir ( ¬ ( 𝑈 = ( 𝑃𝑁 ) ∨ 𝑈 = ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) ) )
30 24 29 pm2.61i ( ( 𝜑 ∧ ( 𝑃𝑁 ) ≠ ( 𝑃 ‘ ( 𝑁 + 1 ) ) ) → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
31 20 30 pm2.61dane ( 𝜑 → ( ¬ 2 ∥ ( ( ( VtxDeg ‘ 𝑋 ) ‘ 𝑈 ) + ( ( VtxDeg ‘ 𝑌 ) ‘ 𝑈 ) ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )
32 17 31 bitrd ( 𝜑 → ( ¬ 2 ∥ ( ( VtxDeg ‘ 𝑍 ) ‘ 𝑈 ) ↔ 𝑈 ∈ if ( ( 𝑃 ‘ 0 ) = ( 𝑃 ‘ ( 𝑁 + 1 ) ) , ∅ , { ( 𝑃 ‘ 0 ) , ( 𝑃 ‘ ( 𝑁 + 1 ) ) } ) ) )