Metamath Proof Explorer


Theorem signshf

Description: H , corresponding to the word F multiplied by ( x - C ) , as a function. (Contributed by Thierry Arnoux, 29-Sep-2018)

Ref Expression
Hypotheses signsv.p ˙ = a 1 0 1 , b 1 0 1 if b = 0 a b
signsv.w W = Base ndx 1 0 1 + ndx ˙
signsv.t T = f Word n 0 ..^ f W i = 0 n sgn f i
signsv.v V = f Word j 1 ..^ f if T f j T f j 1 1 0
signs.h H = ⟨“ 0 ”⟩ ++ F f F ++ ⟨“ 0 ”⟩ fc × C
Assertion signshf F Word C + H : 0 ..^ F + 1

Proof

Step Hyp Ref Expression
1 signsv.p ˙ = a 1 0 1 , b 1 0 1 if b = 0 a b
2 signsv.w W = Base ndx 1 0 1 + ndx ˙
3 signsv.t T = f Word n 0 ..^ f W i = 0 n sgn f i
4 signsv.v V = f Word j 1 ..^ f if T f j T f j 1 1 0
5 signs.h H = ⟨“ 0 ”⟩ ++ F f F ++ ⟨“ 0 ”⟩ fc × C
6 resubcl x y x y
7 6 adantl F Word C + x y x y
8 0re 0
9 s1cl 0 ⟨“ 0 ”⟩ Word
10 8 9 ax-mp ⟨“ 0 ”⟩ Word
11 ccatcl ⟨“ 0 ”⟩ Word F Word ⟨“ 0 ”⟩ ++ F Word
12 10 11 mpan F Word ⟨“ 0 ”⟩ ++ F Word
13 wrdf ⟨“ 0 ”⟩ ++ F Word ⟨“ 0 ”⟩ ++ F : 0 ..^ ⟨“ 0 ”⟩ ++ F
14 12 13 syl F Word ⟨“ 0 ”⟩ ++ F : 0 ..^ ⟨“ 0 ”⟩ ++ F
15 1cnd F Word 1
16 lencl F Word F 0
17 16 nn0cnd F Word F
18 ccatlen ⟨“ 0 ”⟩ Word F Word ⟨“ 0 ”⟩ ++ F = ⟨“ 0 ”⟩ + F
19 10 18 mpan F Word ⟨“ 0 ”⟩ ++ F = ⟨“ 0 ”⟩ + F
20 s1len ⟨“ 0 ”⟩ = 1
21 20 oveq1i ⟨“ 0 ”⟩ + F = 1 + F
22 19 21 eqtrdi F Word ⟨“ 0 ”⟩ ++ F = 1 + F
23 15 17 22 comraddd F Word ⟨“ 0 ”⟩ ++ F = F + 1
24 23 oveq2d F Word 0 ..^ ⟨“ 0 ”⟩ ++ F = 0 ..^ F + 1
25 24 feq2d F Word ⟨“ 0 ”⟩ ++ F : 0 ..^ ⟨“ 0 ”⟩ ++ F ⟨“ 0 ”⟩ ++ F : 0 ..^ F + 1
26 14 25 mpbid F Word ⟨“ 0 ”⟩ ++ F : 0 ..^ F + 1
27 26 adantr F Word C + ⟨“ 0 ”⟩ ++ F : 0 ..^ F + 1
28 remulcl x y x y
29 28 adantl F Word C + x y x y
30 ccatcl F Word ⟨“ 0 ”⟩ Word F ++ ⟨“ 0 ”⟩ Word
31 10 30 mpan2 F Word F ++ ⟨“ 0 ”⟩ Word
32 wrdf F ++ ⟨“ 0 ”⟩ Word F ++ ⟨“ 0 ”⟩ : 0 ..^ F ++ ⟨“ 0 ”⟩
33 31 32 syl F Word F ++ ⟨“ 0 ”⟩ : 0 ..^ F ++ ⟨“ 0 ”⟩
34 ccatws1len F Word F ++ ⟨“ 0 ”⟩ = F + 1
35 34 oveq2d F Word 0 ..^ F ++ ⟨“ 0 ”⟩ = 0 ..^ F + 1
36 35 feq2d F Word F ++ ⟨“ 0 ”⟩ : 0 ..^ F ++ ⟨“ 0 ”⟩ F ++ ⟨“ 0 ”⟩ : 0 ..^ F + 1
37 33 36 mpbid F Word F ++ ⟨“ 0 ”⟩ : 0 ..^ F + 1
38 37 adantr F Word C + F ++ ⟨“ 0 ”⟩ : 0 ..^ F + 1
39 ovexd F Word C + 0 ..^ F + 1 V
40 rpre C + C
41 40 adantl F Word C + C
42 29 38 39 41 ofcf F Word C + F ++ ⟨“ 0 ”⟩ fc × C : 0 ..^ F + 1
43 inidm 0 ..^ F + 1 0 ..^ F + 1 = 0 ..^ F + 1
44 7 27 42 39 39 43 off F Word C + ⟨“ 0 ”⟩ ++ F f F ++ ⟨“ 0 ”⟩ fc × C : 0 ..^ F + 1
45 5 feq1i H : 0 ..^ F + 1 ⟨“ 0 ”⟩ ++ F f F ++ ⟨“ 0 ”⟩ fc × C : 0 ..^ F + 1
46 44 45 sylibr F Word C + H : 0 ..^ F + 1