Metamath Proof Explorer


Theorem signstfveq0

Description: In case the last letter is zero, the zero skipping sign is the same as the previous letter. (Contributed by Thierry Arnoux, 11-Oct-2018) (Proof shortened by AV, 4-Nov-2022)

Ref Expression
Hypotheses signsv.p ˙=a101,b101ifb=0ab
signsv.w W=Basendx101+ndx˙
signsv.t T=fWordn0..^fWi=0nsgnfi
signsv.v V=fWordj1..^fifTfjTfj110
signstfveq0.1 N=F
Assertion signstfveq0 FWordF00FN1=0TFN1=TFN2

Proof

Step Hyp Ref Expression
1 signsv.p ˙=a101,b101ifb=0ab
2 signsv.w W=Basendx101+ndx˙
3 signsv.t T=fWordn0..^fWi=0nsgnfi
4 signsv.v V=fWordj1..^fifTfjTfj110
5 signstfveq0.1 N=F
6 simpll FWordF00FN1=0FWord
7 6 eldifad FWordF00FN1=0FWord
8 pfxcl FWordFprefixN1Word
9 7 8 syl FWordF00FN1=0FprefixN1Word
10 1nn0 10
11 10 a1i FWordF00FN1=010
12 11 nn0red FWordF00FN1=01
13 2re 2
14 13 a1i FWordF00FN1=02
15 lencl FWordF0
16 7 15 syl FWordF00FN1=0F0
17 5 16 eqeltrid FWordF00FN1=0N0
18 17 nn0red FWordF00FN1=0N
19 1le2 12
20 19 a1i FWordF00FN1=012
21 1 2 3 4 5 signstfveq0a FWordF00FN1=0N2
22 eluz2 N22N2N
23 21 22 sylib FWordF00FN1=02N2N
24 23 simp3d FWordF00FN1=02N
25 12 14 18 20 24 letrd FWordF00FN1=01N
26 fznn0 N010N101N
27 17 26 syl FWordF00FN1=010N101N
28 11 25 27 mpbir2and FWordF00FN1=010N
29 fznn0sub2 10NN10N
30 28 29 syl FWordF00FN1=0N10N
31 5 oveq2i 0N=0F
32 30 31 eleqtrdi FWordF00FN1=0N10F
33 pfxlen FWordN10FFprefixN1=N1
34 7 32 33 syl2anc FWordF00FN1=0FprefixN1=N1
35 uz2m1nn N2N1
36 21 35 syl FWordF00FN1=0N1
37 34 36 eqeltrd FWordF00FN1=0FprefixN1
38 nnne0 FprefixN1FprefixN10
39 fveq2 FprefixN1=FprefixN1=
40 hash0 =0
41 39 40 eqtrdi FprefixN1=FprefixN1=0
42 41 necon3i FprefixN10FprefixN1
43 38 42 syl FprefixN1FprefixN1
44 37 43 syl FWordF00FN1=0FprefixN1
45 eldifsn FprefixN1WordFprefixN1WordFprefixN1
46 9 44 45 sylanbrc FWordF00FN1=0FprefixN1Word
47 simpr FWordF00FN1=0FN1=0
48 0re 0
49 47 48 eqeltrdi FWordF00FN1=0FN1
50 1 2 3 4 signstfvn FprefixN1WordFN1TFprefixN1++⟨“FN1”⟩FprefixN1=TFprefixN1FprefixN11˙sgnFN1
51 46 49 50 syl2anc FWordF00FN1=0TFprefixN1++⟨“FN1”⟩FprefixN1=TFprefixN1FprefixN11˙sgnFN1
52 5 oveq1i N1=F1
53 52 oveq2i FprefixN1=FprefixF1
54 53 a1i FWordF00FN1=0FprefixN1=FprefixF1
55 lsw FWordlastSF=FF1
56 55 ad2antrr FWordF00FN1=0lastSF=FF1
57 5 eqcomi F=N
58 57 oveq1i F1=N1
59 58 fveq2i FF1=FN1
60 56 59 eqtrdi FWordF00FN1=0lastSF=FN1
61 60 s1eqd FWordF00FN1=0⟨“lastSF”⟩=⟨“FN1”⟩
62 61 eqcomd FWordF00FN1=0⟨“FN1”⟩=⟨“lastSF”⟩
63 54 62 oveq12d FWordF00FN1=0FprefixN1++⟨“FN1”⟩=FprefixF1++⟨“lastSF”⟩
64 eldifsn FWordFWordF
65 6 64 sylib FWordF00FN1=0FWordF
66 pfxlswccat FWordFFprefixF1++⟨“lastSF”⟩=F
67 65 66 syl FWordF00FN1=0FprefixF1++⟨“lastSF”⟩=F
68 63 67 eqtrd FWordF00FN1=0FprefixN1++⟨“FN1”⟩=F
69 68 fveq2d FWordF00FN1=0TFprefixN1++⟨“FN1”⟩=TF
70 69 34 fveq12d FWordF00FN1=0TFprefixN1++⟨“FN1”⟩FprefixN1=TFN1
71 17 nn0cnd FWordF00FN1=0N
72 1cnd FWordF00FN1=01
73 71 72 72 subsub4d FWordF00FN1=0N-1-1=N1+1
74 1p1e2 1+1=2
75 74 oveq2i N1+1=N2
76 73 75 eqtrdi FWordF00FN1=0N-1-1=N2
77 fzo0end N1N-1-10..^N1
78 36 77 syl FWordF00FN1=0N-1-10..^N1
79 76 78 eqeltrrd FWordF00FN1=0N20..^N1
80 34 oveq2d FWordF00FN1=00..^FprefixN1=0..^N1
81 79 80 eleqtrrd FWordF00FN1=0N20..^FprefixN1
82 1 2 3 4 signstfvp FprefixN1WordFN1N20..^FprefixN1TFprefixN1++⟨“FN1”⟩N2=TFprefixN1N2
83 9 49 81 82 syl3anc FWordF00FN1=0TFprefixN1++⟨“FN1”⟩N2=TFprefixN1N2
84 68 eqcomd FWordF00FN1=0F=FprefixN1++⟨“FN1”⟩
85 84 fveq2d FWordF00FN1=0TF=TFprefixN1++⟨“FN1”⟩
86 85 fveq1d FWordF00FN1=0TFN2=TFprefixN1++⟨“FN1”⟩N2
87 34 oveq1d FWordF00FN1=0FprefixN11=N-1-1
88 87 73 eqtrd FWordF00FN1=0FprefixN11=N1+1
89 88 75 eqtrdi FWordF00FN1=0FprefixN11=N2
90 89 fveq2d FWordF00FN1=0TFprefixN1FprefixN11=TFprefixN1N2
91 83 86 90 3eqtr4rd FWordF00FN1=0TFprefixN1FprefixN11=TFN2
92 fveq2 FN1=0sgnFN1=sgn0
93 sgn0 sgn0=0
94 92 93 eqtrdi FN1=0sgnFN1=0
95 94 adantl FWordF00FN1=0sgnFN1=0
96 91 95 oveq12d FWordF00FN1=0TFprefixN1FprefixN11˙sgnFN1=TFN2˙0
97 uznn0sub N2N20
98 21 97 syl FWordF00FN1=0N20
99 eluz2nn N2N
100 21 99 syl FWordF00FN1=0N
101 2rp 2+
102 101 a1i FWordF00FN1=02+
103 18 102 ltsubrpd FWordF00FN1=0N2<N
104 elfzo0 N20..^NN20NN2<N
105 98 100 103 104 syl3anbrc FWordF00FN1=0N20..^N
106 5 oveq2i 0..^N=0..^F
107 105 106 eleqtrdi FWordF00FN1=0N20..^F
108 1 2 3 4 signstcl FWordN20..^FTFN2101
109 7 107 108 syl2anc FWordF00FN1=0TFN2101
110 1 2 signswrid TFN2101TFN2˙0=TFN2
111 109 110 syl FWordF00FN1=0TFN2˙0=TFN2
112 96 111 eqtrd FWordF00FN1=0TFprefixN1FprefixN11˙sgnFN1=TFN2
113 51 70 112 3eqtr3d FWordF00FN1=0TFN1=TFN2