Metamath Proof Explorer


Theorem modsumfzodifsn

Description: The sum of a number within a half-open range of positive integers is an element of the corresponding open range of nonnegative integers with one excluded integer modulo the excluded integer. (Contributed by AV, 19-Mar-2021)

Ref Expression
Assertion modsumfzodifsn J0..^NK1..^NK+JmodN0..^NJ

Proof

Step Hyp Ref Expression
1 elfzo0 J0..^NJ0NJ<N
2 elfzoelz K1..^NK
3 2 zred K1..^NK
4 nn0re J0J
5 4 3ad2ant1 J0NJ<NJ
6 readdcl KJK+J
7 3 5 6 syl2anr J0NJ<NK1..^NK+J
8 nnrp NN+
9 8 3ad2ant2 J0NJ<NN+
10 9 adantr J0NJ<NK1..^NN+
11 7 10 jca J0NJ<NK1..^NK+JN+
12 1 11 sylanb J0..^NK1..^NK+JN+
13 12 adantl K+J<NJ0..^NK1..^NK+JN+
14 elfzo1 K1..^NKNK<N
15 nnnn0 KK0
16 15 3ad2ant1 KNK<NK0
17 14 16 sylbi K1..^NK0
18 elfzonn0 J0..^NJ0
19 nn0addcl K0J0K+J0
20 17 18 19 syl2anr J0..^NK1..^NK+J0
21 20 adantl K+J<NJ0..^NK1..^NK+J0
22 21 nn0ge0d K+J<NJ0..^NK1..^N0K+J
23 simpl K+J<NJ0..^NK1..^NK+J<N
24 modid K+JN+0K+JK+J<NK+JmodN=K+J
25 13 22 23 24 syl12anc K+J<NJ0..^NK1..^NK+JmodN=K+J
26 simp2 J0NJ<NN
27 1 26 sylbi J0..^NN
28 27 adantr J0..^NK1..^NN
29 28 adantl K+J<NJ0..^NK1..^NN
30 elfzo0 K+J0..^NK+J0NK+J<N
31 21 29 23 30 syl3anbrc K+J<NJ0..^NK1..^NK+J0..^N
32 2 zcnd K1..^NK
33 32 adantl J0..^NK1..^NK
34 0cnd J0..^NK1..^N0
35 elfzoelz J0..^NJ
36 35 zcnd J0..^NJ
37 36 adantr J0..^NK1..^NJ
38 nnne0 KK0
39 38 3ad2ant1 KNK<NK0
40 14 39 sylbi K1..^NK0
41 40 adantl J0..^NK1..^NK0
42 33 34 37 41 addneintr2d J0..^NK1..^NK+J0+J
43 42 adantl K+J<NJ0..^NK1..^NK+J0+J
44 37 adantl K+J<NJ0..^NK1..^NJ
45 addlid J0+J=J
46 45 eqcomd JJ=0+J
47 44 46 syl K+J<NJ0..^NK1..^NJ=0+J
48 43 47 neeqtrrd K+J<NJ0..^NK1..^NK+JJ
49 eldifsn K+J0..^NJK+J0..^NK+JJ
50 31 48 49 sylanbrc K+J<NJ0..^NK1..^NK+J0..^NJ
51 25 50 eqeltrd K+J<NJ0..^NK1..^NK+JmodN0..^NJ
52 elfzoel2 J0..^NN
53 52 zcnd J0..^NN
54 53 adantr J0..^NK1..^NN
55 54 adantl ¬K+J<NJ0..^NK1..^NN
56 55 mulm1d ¬K+J<NJ0..^NK1..^N-1 N=N
57 56 oveq2d ¬K+J<NJ0..^NK1..^NK+J+-1 N=K+J+- N
58 zaddcl KJK+J
59 2 35 58 syl2anr J0..^NK1..^NK+J
60 59 zcnd J0..^NK1..^NK+J
61 60 54 jca J0..^NK1..^NK+JN
62 61 adantl ¬K+J<NJ0..^NK1..^NK+JN
63 negsub K+JNK+J+- N=K+J-N
64 62 63 syl ¬K+J<NJ0..^NK1..^NK+J+- N=K+J-N
65 57 64 eqtrd ¬K+J<NJ0..^NK1..^NK+J+-1 N=K+J-N
66 65 oveq1d ¬K+J<NJ0..^NK1..^NK+J+-1 NmodN=K+J-NmodN
67 2 35 58 syl2an K1..^NJ0..^NK+J
68 67 zred K1..^NJ0..^NK+J
69 68 ancoms J0..^NK1..^NK+J
70 52 zred J0..^NN
71 70 adantr J0..^NK1..^NN
72 69 71 resubcld J0..^NK1..^NK+J-N
73 72 adantl ¬K+J<NJ0..^NK1..^NK+J-N
74 26 nnrpd J0NJ<NN+
75 1 74 sylbi J0..^NN+
76 75 adantr J0..^NK1..^NN+
77 76 adantl ¬K+J<NJ0..^NK1..^NN+
78 nnre KK
79 78 3ad2ant1 KNK<NK
80 79 adantl J0J<NKNK<NK
81 4 adantr J0J<NJ
82 81 adantr J0J<NKNK<NJ
83 nnre NN
84 83 3ad2ant2 KNK<NN
85 84 adantl J0J<NKNK<NN
86 simp3 KJNN
87 6 3adant3 KJNK+J
88 86 87 lenltd KJNNK+J¬K+J<N
89 88 biimprd KJN¬K+J<NNK+J
90 87 86 subge0d KJN0K+J-NNK+J
91 89 90 sylibrd KJN¬K+J<N0K+J-N
92 80 82 85 91 syl3anc J0J<NKNK<N¬K+J<N0K+J-N
93 81 79 anim12ci J0J<NKNK<NKJ
94 83 83 jca NNN
95 94 3ad2ant2 KNK<NNN
96 95 adantl J0J<NKNK<NNN
97 simpr J0J<NJ<N
98 simp3 KNK<NK<N
99 97 98 anim12ci J0J<NKNK<NK<NJ<N
100 93 96 99 jca31 J0J<NKNK<NKJNNK<NJ<N
101 lt2add KJNNK<NJ<NK+J<N+N
102 101 imp KJNNK<NJ<NK+J<N+N
103 100 102 syl J0J<NKNK<NK+J<N+N
104 79 81 6 syl2anr J0J<NKNK<NK+J
105 ltsubadd K+JNNK+J-N<NK+J<N+N
106 104 85 85 105 syl3anc J0J<NKNK<NK+J-N<NK+J<N+N
107 103 106 mpbird J0J<NKNK<NK+J-N<N
108 92 107 jctird J0J<NKNK<N¬K+J<N0K+J-NK+J-N<N
109 108 ex J0J<NKNK<N¬K+J<N0K+J-NK+J-N<N
110 14 109 biimtrid J0J<NK1..^N¬K+J<N0K+J-NK+J-N<N
111 110 3adant2 J0NJ<NK1..^N¬K+J<N0K+J-NK+J-N<N
112 1 111 sylbi J0..^NK1..^N¬K+J<N0K+J-NK+J-N<N
113 112 imp J0..^NK1..^N¬K+J<N0K+J-NK+J-N<N
114 113 impcom ¬K+J<NJ0..^NK1..^N0K+J-NK+J-N<N
115 73 77 114 jca31 ¬K+J<NJ0..^NK1..^NK+J-NN+0K+J-NK+J-N<N
116 modid K+J-NN+0K+J-NK+J-N<NK+J-NmodN=K+J-N
117 115 116 syl ¬K+J<NJ0..^NK1..^NK+J-NmodN=K+J-N
118 66 117 eqtrd ¬K+J<NJ0..^NK1..^NK+J+-1 NmodN=K+J-N
119 118 eqcomd ¬K+J<NJ0..^NK1..^NK+J-N=K+J+-1 NmodN
120 1 9 sylbi J0..^NN+
121 120 adantr J0..^NK1..^NN+
122 neg1z 1
123 122 a1i ¬K+J<NJ0..^NK1..^N1
124 modcyc K+JN+1K+J+-1 NmodN=K+JmodN
125 69 121 123 124 syl2an23an ¬K+J<NJ0..^NK1..^NK+J+-1 NmodN=K+JmodN
126 119 125 eqtrd ¬K+J<NJ0..^NK1..^NK+J-N=K+JmodN
127 126 eqcomd ¬K+J<NJ0..^NK1..^NK+JmodN=K+J-N
128 52 adantr J0..^NK1..^NN
129 59 128 zsubcld J0..^NK1..^NK+J-N
130 129 adantl ¬K+J<NJ0..^NK1..^NK+J-N
131 3 adantl J0..^NK1..^NK
132 35 zred J0..^NJ
133 132 adantr J0..^NK1..^NJ
134 90 biimprd KJNNK+J0K+J-N
135 88 134 sylbird KJN¬K+J<N0K+J-N
136 131 133 71 135 syl3anc J0..^NK1..^N¬K+J<N0K+J-N
137 136 impcom ¬K+J<NJ0..^NK1..^N0K+J-N
138 elnn0z K+J-N0K+J-N0K+J-N
139 130 137 138 sylanbrc ¬K+J<NJ0..^NK1..^NK+J-N0
140 28 adantl ¬K+J<NJ0..^NK1..^NN
141 100 expcom KNK<NJ0J<NKJNNK<NJ<N
142 14 141 sylbi K1..^NJ0J<NKJNNK<NJ<N
143 142 com12 J0J<NK1..^NKJNNK<NJ<N
144 143 3adant2 J0NJ<NK1..^NKJNNK<NJ<N
145 1 144 sylbi J0..^NK1..^NKJNNK<NJ<N
146 145 imp J0..^NK1..^NKJNNK<NJ<N
147 146 102 syl J0..^NK1..^NK+J<N+N
148 4 adantr J0NJ
149 3 148 6 syl2anr J0NK1..^NK+J
150 83 adantl J0NN
151 150 adantr J0NK1..^NN
152 149 151 151 3jca J0NK1..^NK+JNN
153 152 ex J0NK1..^NK+JNN
154 153 3adant3 J0NJ<NK1..^NK+JNN
155 1 154 sylbi J0..^NK1..^NK+JNN
156 155 imp J0..^NK1..^NK+JNN
157 156 105 syl J0..^NK1..^NK+J-N<NK+J<N+N
158 147 157 mpbird J0..^NK1..^NK+J-N<N
159 158 adantl ¬K+J<NJ0..^NK1..^NK+J-N<N
160 elfzo0 K+J-N0..^NK+J-N0NK+J-N<N
161 139 140 159 160 syl3anbrc ¬K+J<NJ0..^NK1..^NK+J-N0..^N
162 nncn KK
163 nncn NN
164 subcl KNKN
165 162 163 164 syl2an KNKN
166 165 3adant3 KNK<NKN
167 14 166 sylbi K1..^NKN
168 167 adantl J0..^NK1..^NKN
169 168 adantl ¬K+J<NJ0..^NK1..^NKN
170 0cnd ¬K+J<NJ0..^NK1..^N0
171 37 adantl ¬K+J<NJ0..^NK1..^NJ
172 elfzoel2 K1..^NN
173 172 zcnd K1..^NN
174 79 98 ltned KNK<NKN
175 14 174 sylbi K1..^NKN
176 32 173 175 subne0d K1..^NKN0
177 176 adantl J0..^NK1..^NKN0
178 177 adantl ¬K+J<NJ0..^NK1..^NKN0
179 169 170 171 178 addneintr2d ¬K+J<NJ0..^NK1..^NK-N+J0+J
180 33 37 54 3jca J0..^NK1..^NKJN
181 180 adantl ¬K+J<NJ0..^NK1..^NKJN
182 addsub KJNK+J-N=K-N+J
183 181 182 syl ¬K+J<NJ0..^NK1..^NK+J-N=K-N+J
184 171 45 syl ¬K+J<NJ0..^NK1..^N0+J=J
185 184 eqcomd ¬K+J<NJ0..^NK1..^NJ=0+J
186 179 183 185 3netr4d ¬K+J<NJ0..^NK1..^NK+J-NJ
187 eldifsn K+J-N0..^NJK+J-N0..^NK+J-NJ
188 161 186 187 sylanbrc ¬K+J<NJ0..^NK1..^NK+J-N0..^NJ
189 127 188 eqeltrd ¬K+J<NJ0..^NK1..^NK+JmodN0..^NJ
190 51 189 pm2.61ian J0..^NK1..^NK+JmodN0..^NJ