Metamath Proof Explorer


Theorem signstfveq0a

Description: Lemma for signstfveq0 . (Contributed by Thierry Arnoux, 11-Oct-2018)

Ref Expression
Hypotheses signsv.p ⊢ ⨣ = ( 𝑎 ∈ { - 1 , 0 , 1 } , 𝑏 ∈ { - 1 , 0 , 1 } ↦ if ( 𝑏 = 0 , 𝑎 , 𝑏 ) )
signsv.w ⊢ 𝑊 = { ⟨ ( Base ‘ ndx ) , { - 1 , 0 , 1 } ⟩ , ⟨ ( +g ‘ ndx ) , ⨣ ⟩ }
signsv.t ⊢ 𝑇 = ( 𝑓 ∈ Word ℝ ↦ ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑓 ) ) ↦ ( 𝑊 Σg ( 𝑖 ∈ ( 0 ... 𝑛 ) ↦ ( sgn ‘ ( 𝑓 ‘ 𝑖 ) ) ) ) ) )
signsv.v ⊢ 𝑉 = ( 𝑓 ∈ Word ℝ ↦ Σ 𝑗 ∈ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) if ( ( ( 𝑇 ‘ 𝑓 ) ‘ 𝑗 ) ≠ ( ( 𝑇 ‘ 𝑓 ) ‘ ( 𝑗 − 1 ) ) , 1 , 0 ) )
signstfveq0.1 ⊢ 𝑁 = ( ♯ ‘ 𝐹 )
Assertion signstfveq0a ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝑁 ∈ ( ℤ≥ ‘ 2 ) )

Proof

Step Hyp Ref Expression
1 signsv.p ⊢ ⨣ = ( 𝑎 ∈ { - 1 , 0 , 1 } , 𝑏 ∈ { - 1 , 0 , 1 } ↦ if ( 𝑏 = 0 , 𝑎 , 𝑏 ) )
2 signsv.w ⊢ 𝑊 = { ⟨ ( Base ‘ ndx ) , { - 1 , 0 , 1 } ⟩ , ⟨ ( +g ‘ ndx ) , ⨣ ⟩ }
3 signsv.t ⊢ 𝑇 = ( 𝑓 ∈ Word ℝ ↦ ( 𝑛 ∈ ( 0 ..^ ( ♯ ‘ 𝑓 ) ) ↦ ( 𝑊 Σg ( 𝑖 ∈ ( 0 ... 𝑛 ) ↦ ( sgn ‘ ( 𝑓 ‘ 𝑖 ) ) ) ) ) )
4 signsv.v ⊢ 𝑉 = ( 𝑓 ∈ Word ℝ ↦ Σ 𝑗 ∈ ( 1 ..^ ( ♯ ‘ 𝑓 ) ) if ( ( ( 𝑇 ‘ 𝑓 ) ‘ 𝑗 ) ≠ ( ( 𝑇 ‘ 𝑓 ) ‘ ( 𝑗 − 1 ) ) , 1 , 0 ) )
5 signstfveq0.1 ⊢ 𝑁 = ( ♯ ‘ 𝐹 )
6 simpll ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) )
7 6 eldifad ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝐹 ∈ Word ℝ )
8 lencl ⊢ ( 𝐹 ∈ Word ℝ → ( ♯ ‘ 𝐹 ) ∈ ℕ0 )
9 5 8 eqeltrid ⊢ ( 𝐹 ∈ Word ℝ → 𝑁 ∈ ℕ0 )
10 7 9 syl ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝑁 ∈ ℕ0 )
11 eldifsn ⊢ ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ↔ ( 𝐹 ∈ Word ℝ ∧ 𝐹 ≠ ∅ ) )
12 6 11 sylib ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → ( 𝐹 ∈ Word ℝ ∧ 𝐹 ≠ ∅ ) )
13 hasheq0 ⊢ ( 𝐹 ∈ Word ℝ → ( ( ♯ ‘ 𝐹 ) = 0 ↔ 𝐹 = ∅ ) )
14 13 necon3bid ⊢ ( 𝐹 ∈ Word ℝ → ( ( ♯ ‘ 𝐹 ) ≠ 0 ↔ 𝐹 ≠ ∅ ) )
15 14 biimpar ⊢ ( ( 𝐹 ∈ Word ℝ ∧ 𝐹 ≠ ∅ ) → ( ♯ ‘ 𝐹 ) ≠ 0 )
16 5 neeq1i ⊢ ( 𝑁 ≠ 0 ↔ ( ♯ ‘ 𝐹 ) ≠ 0 )
17 15 16 sylibr ⊢ ( ( 𝐹 ∈ Word ℝ ∧ 𝐹 ≠ ∅ ) → 𝑁 ≠ 0 )
18 12 17 syl ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝑁 ≠ 0 )
19 elnnne0 ⊢ ( 𝑁 ∈ ℕ ↔ ( 𝑁 ∈ ℕ0 ∧ 𝑁 ≠ 0 ) )
20 10 18 19 sylanbrc ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝑁 ∈ ℕ )
21 simplr ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → ( 𝐹 ‘ 0 ) ≠ 0 )
22 simpr ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 )
23 21 22 neeqtrrd ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → ( 𝐹 ‘ 0 ) ≠ ( 𝐹 ‘ ( 𝑁 − 1 ) ) )
24 23 necomd ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → ( 𝐹 ‘ ( 𝑁 − 1 ) ) ≠ ( 𝐹 ‘ 0 ) )
25 oveq1 ⊢ ( 𝑁 = 1 → ( 𝑁 − 1 ) = ( 1 − 1 ) )
26 1m1e0 ⊢ ( 1 − 1 ) = 0
27 25 26 eqtrdi ⊢ ( 𝑁 = 1 → ( 𝑁 − 1 ) = 0 )
28 27 fveq2d ⊢ ( 𝑁 = 1 → ( 𝐹 ‘ ( 𝑁 − 1 ) ) = ( 𝐹 ‘ 0 ) )
29 28 necon3i ⊢ ( ( 𝐹 ‘ ( 𝑁 − 1 ) ) ≠ ( 𝐹 ‘ 0 ) → 𝑁 ≠ 1 )
30 24 29 syl ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝑁 ≠ 1 )
31 eluz2b3 ⊢ ( 𝑁 ∈ ( ℤ≥ ‘ 2 ) ↔ ( 𝑁 ∈ ℕ ∧ 𝑁 ≠ 1 ) )
32 20 30 31 sylanbrc ⊢ ( ( ( 𝐹 ∈ ( Word ℝ ∖ { ∅ } ) ∧ ( 𝐹 ‘ 0 ) ≠ 0 ) ∧ ( 𝐹 ‘ ( 𝑁 − 1 ) ) = 0 ) → 𝑁 ∈ ( ℤ≥ ‘ 2 ) )