CLI SHELL MODE missing
[scilab.git] / scilab / modules / ast / tests / unit_tests / comparisonnonequal.dia.ref
1 // ============================================================================
2 // Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
3 // Copyright (C) 2014 - Scilab Enterprises - Sylvain GENIN
4 //
5 //  This file is distributed under the same license as the Scilab package.
6 // ============================================================================
7 // <-- CLI SHELL MODE -->
8 s = %s;
9 empty = [];
10 r = 2;
11 R = [1,2;3,4];
12 R3(:,:,1) = R;
13 R3(:,:,2) = R';
14 c = 1 + 2*%i;
15 C = [1+2*%i,2+4*%i;3+6*%i,4+8*%i];
16 C3(:,:,1) = C;
17 C3(:,:,2) = C';
18 e = eye();
19 ec = (5+%i) * eye();
20 p = 1 + %s - %s**2;
21 pc = 1 + %s - %s**2 + ( 2 - 3 * %s + 4 * %s**2 ) * %i;
22 P = [2*p, 2;4*p,-5*p];
23 PC = [2*pc, 2;4*pc,-5*pc];
24 SP = sparse([1,2;4,5;3,10],[1,2,3]);
25 SPC = sparse([1,2;4,5;3,10],[1,2,3]) * ( 1 + 4*%i);
26 SPB = sparse([1,2;2,1],[%t;%t],[2,2]);
27 SP1 = sparse([1,1],[10]);
28 SPC1 = sparse([1,1],[1]) * ( 2 + 6*%i);
29 i8 = int8(-8);
30 ui8 = uint8(8);
31 I8 = int8([-8 2 ; -24 -32]);
32 UI8 = uint8([8 2 ; 24 32]);
33 I16 = int16([-16 2 ; -48 -64]);
34 UI16 = uint16([16 2 ; 48 64]);
35 i16 = int16(-16);
36 ui16 = uint16(16);
37 i32 = int32(-32);
38 ui32 = uint32(32);
39 I32 = int32([-32 2 ; -96 -128]);
40 UI32 = uint32([32 2 ; 96 128]);
41 str = "string";
42 STR = ["string1" "string2";"string3" "string4"];
43 b = %f;
44 B = [%t %f;%f %t];
45 assert_checkequal(empty <> empty, %f);
46 assert_checkequal(empty <> r, %t);
47 assert_checkequal(empty <> c, %t);
48 assert_checkequal(empty <> R, %t);
49 assert_checkequal(empty <> C, %t);
50 assert_checkequal(empty <> e, %t);
51 assert_checkequal(empty <> ec, %t);
52 assert_checkequal(empty <> p, %t);
53 assert_checkequal(empty <> pc, %t);
54 assert_checkequal(empty <> P, %t);
55 assert_checkequal(empty <> PC, %t);
56 assert_checkequal(empty <> SP, %t);
57 assert_checkequal(empty <> SPC, %t);
58 assert_checkequal(empty <> SP1, %t);
59 assert_checkequal(empty <> SPC1, %t);
60 assert_checkequal(empty <> i8, %t);
61 assert_checkequal(empty <> I8, %t);
62 assert_checkequal(empty <> ui8, %t);
63 assert_checkequal(empty <> UI8, %t);
64 assert_checkequal(empty <> i16, %t);
65 assert_checkequal(empty <> I16, %t);
66 assert_checkequal(empty <> ui16, %t);
67 assert_checkequal(empty <> UI16, %t);
68 assert_checkequal(empty <> i32, %t);
69 assert_checkequal(empty <> I32, %t);
70 assert_checkequal(empty <> ui32, %t);
71 assert_checkequal(empty <> UI32, %t);
72 assert_checkequal(empty <> str, %t);
73 assert_checkequal(empty <> STR, %t);
74 assert_checkequal(empty <> b, %t);
75 assert_checkequal(empty <> B, %t);
76 assert_checkequal(empty <> SPB, %t);
77 assert_checkequal(r <> empty, %t);
78 assert_checkequal(r <> r, %f);
79 assert_checkequal(r <> c, %t);
80 assert_checkequal(r <> R, [%t,%f;%t,%t]);
81 assert_checkequal(r <> C, [%t,%t;%t,%t]);
82 assert_checkequal(r <> e, %t);
83 assert_checkequal(r <> ec, %t);
84 assert_checkequal(r <> p, %t);
85 assert_checkequal(r <> pc, %t);
86 assert_checkequal(r <> P, [%t,%f;%t,%t]);
87 assert_checkequal(r <> PC, [%t,%f;%t,%t]);
88 assert_checkequal(r <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
89 assert_checkequal(r <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
90 assert_checkequal(r <> SP1, sparse([1,1],%t,[1,1]));
91 assert_checkequal(r <> SPC1, sparse([1,1],%t,[1,1]));
92 assert_checkequal(r <> i8, %t);
93 assert_checkequal(r <> I8, [%t,%f;%t,%t]);
94 assert_checkequal(r <> ui8, %t);
95 assert_checkequal(r <> UI8, [%t,%f;%t,%t]);
96 assert_checkequal(r <> i16, %t);
97 assert_checkequal(r <> I16, [%t,%f;%t,%t]);
98 assert_checkequal(r <> ui16, %t);
99 assert_checkequal(r <> UI16, [%t,%f;%t,%t]);
100 assert_checkequal(r <> i32, %t);
101 assert_checkequal(r <> I32, [%t,%f;%t,%t]);
102 assert_checkequal(r <> ui32, %t);
103 assert_checkequal(r <> UI32, [%t,%f;%t,%t]);
104 assert_checkequal(r <> str, %t);
105 assert_checkequal(r <> STR, %t);
106 assert_checkequal(r <> b, %t);
107 assert_checkequal(r <> B, %t);
108 assert_checkequal(r <> SPB, %t);
109 assert_checkequal(c <> empty, %t);
110 assert_checkequal(c <> r, %t);
111 assert_checkequal(c <> c, %f);
112 assert_checkequal(c <> R, [%t,%t;%t,%t]);
113 assert_checkequal(c <> C, [%f,%t;%t,%t]);
114 assert_checkequal(c <> e, %t);
115 assert_checkequal(c <> ec, %t);
116 assert_checkequal(c <> p, %t);
117 assert_checkequal(c <> pc, %t);
118 assert_checkequal(c <> P, [%t,%t;%t,%t]);
119 assert_checkequal(c <> PC, [%t,%t;%t,%t]);
120 assert_checkequal(c <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
121 assert_checkequal(c <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
122 assert_checkequal(c <> SP1, sparse([1,1],%t,[1,1]));
123 assert_checkequal(c <> SPC1, sparse([1,1],%t,[1,1]));
124 assert_checkequal(c <> i8, %t);
125 assert_checkequal(c <> I8, [%t,%t;%t,%t]);
126 assert_checkequal(c <> ui8, %t);
127 assert_checkequal(c <> UI8, [%t,%t;%t,%t]);
128 assert_checkequal(c <> i16, %t);
129 assert_checkequal(c <> I16, [%t,%t;%t,%t]);
130 assert_checkequal(c <> ui16, %t);
131 assert_checkequal(c <> UI16, [%t,%t;%t,%t]);
132 assert_checkequal(c <> i32, %t);
133 assert_checkequal(c <> I32, [%t,%t;%t,%t]);
134 assert_checkequal(c <> ui32, %t);
135 assert_checkequal(c <> UI32, [%t,%t;%t,%t]);
136 assert_checkequal(c <> str, %t);
137 assert_checkequal(c <> STR, %t);
138 assert_checkequal(c <> b, %t);
139 assert_checkequal(c <> B, %t);
140 assert_checkequal(c <> SPB, %t);
141 assert_checkequal(R <> empty, %t);
142 assert_checkequal(R <> r, [%t,%f;%t,%t]);
143 assert_checkequal(R <> c, [%t,%t;%t,%t]);
144 assert_checkequal(R <> R, [%f,%f;%f,%f]);
145 assert_checkequal(R <> C, [%t,%t;%t,%t]);
146 assert_checkequal(R <> e, [%f,%t;%t,%t]);
147 assert_checkequal(R <> ec, [%t,%t;%t,%t]);
148 assert_checkequal(R <> p, [%t,%t;%t,%t]);
149 assert_checkequal(R <> pc, [%t,%t;%t,%t]);
150 assert_checkequal(R <> P, [%t,%f;%t,%t]);
151 assert_checkequal(R <> PC, [%t,%f;%t,%t]);
152 assert_checkequal(R <> SP, %t);
153 assert_checkequal(R <> SPC, %t);
154 assert_checkequal(R <> SP1, %t);
155 assert_checkequal(R <> SPC1, %t);
156 assert_checkequal(R <> i8, [%t,%t;%t,%t]);
157 assert_checkequal(R <> I8, [%t,%f;%t,%t]);
158 assert_checkequal(R <> ui8, [%t,%t;%t,%t]);
159 assert_checkequal(R <> UI8, [%t,%f;%t,%t]);
160 assert_checkequal(R <> i16, [%t,%t;%t,%t]);
161 assert_checkequal(R <> I16, [%t,%f;%t,%t]);
162 assert_checkequal(R <> ui16, [%t,%t;%t,%t]);
163 assert_checkequal(R <> UI16, [%t,%f;%t,%t]);
164 assert_checkequal(R <> i32, [%t,%t;%t,%t]);
165 assert_checkequal(R <> I32, [%t,%f;%t,%t]);
166 assert_checkequal(R <> ui32, [%t,%t;%t,%t]);
167 assert_checkequal(R <> UI32, [%t,%f;%t,%t]);
168 assert_checkequal(R <> str, %t);
169 assert_checkequal(R <> STR, %t);
170 assert_checkequal(R <> b, %t);
171 assert_checkequal(R <> B, %t);
172 assert_checkequal(R <> SPB, %t);
173 assert_checkequal(C <> empty, %t);
174 assert_checkequal(C <> r, [%t,%t;%t,%t]);
175 assert_checkequal(C <> c, [%f,%t;%t,%t]);
176 assert_checkequal(C <> R, [%t,%t;%t,%t]);
177 assert_checkequal(C <> C, [%f,%f;%f,%f]);
178 assert_checkequal(C <> e, [%t,%t;%t,%t]);
179 assert_checkequal(C <> ec, [%t,%t;%t,%t]);
180 assert_checkequal(C <> p, [%t,%t;%t,%t]);
181 assert_checkequal(C <> pc, [%t,%t;%t,%t]);
182 assert_checkequal(C <> P, [%t,%t;%t,%t]);
183 assert_checkequal(C <> PC, [%t,%t;%t,%t]);
184 assert_checkequal(C <> SP, %t);
185 assert_checkequal(C <> SPC, %t);
186 assert_checkequal(C <> SP1, %t);
187 assert_checkequal(C <> SPC1, %t);
188 assert_checkequal(C <> i8, [%t,%t;%t,%t]);
189 assert_checkequal(C <> I8, [%t,%t;%t,%t]);
190 assert_checkequal(C <> ui8, [%t,%t;%t,%t]);
191 assert_checkequal(C <> UI8, [%t,%t;%t,%t]);
192 assert_checkequal(C <> i16, [%t,%t;%t,%t]);
193 assert_checkequal(C <> I16, [%t,%t;%t,%t]);
194 assert_checkequal(C <> ui16, [%t,%t;%t,%t]);
195 assert_checkequal(C <> UI16, [%t,%t;%t,%t]);
196 assert_checkequal(C <> i32, [%t,%t;%t,%t]);
197 assert_checkequal(C <> I32, [%t,%t;%t,%t]);
198 assert_checkequal(C <> ui32, [%t,%t;%t,%t]);
199 assert_checkequal(C <> UI32, [%t,%t;%t,%t]);
200 assert_checkequal(C <> str, %t);
201 assert_checkequal(C <> STR, %t);
202 assert_checkequal(C <> b, %t);
203 assert_checkequal(C <> B, %t);
204 assert_checkequal(C <> SPB, %t);
205 assert_checkequal(e <> empty, %t);
206 assert_checkequal(e <> r, %t);
207 assert_checkequal(e <> c, %t);
208 assert_checkequal(e <> R, [%f,%t;%t,%t]);
209 assert_checkequal(e <> C, [%t,%t;%t,%t]);
210 assert_checkequal(e <> e, %f);
211 assert_checkequal(e <> ec, %t);
212 assert_checkequal(e <> p, %t);
213 assert_checkequal(e <> pc, %t);
214 assert_checkequal(e <> P, [%t,%t;%t,%t]);
215 assert_checkequal(e <> PC, [%t,%t;%t,%t]);
216 assert_checkequal(e <> SP, %t);
217 assert_checkequal(e <> SPC, %t);
218 assert_checkequal(e <> SP1, %t);
219 assert_checkequal(e <> SPC1, %t);
220 assert_checkequal(e <> i8, %t);
221 assert_checkequal(e <> I8, [%t,%t;%t,%t]);
222 assert_checkequal(e <> ui8, %t);
223 assert_checkequal(e <> UI8, [%t,%t;%t,%t]);
224 assert_checkequal(e <> i16, %t);
225 assert_checkequal(e <> I16, [%t,%t;%t,%t]);
226 assert_checkequal(e <> ui16, %t);
227 assert_checkequal(e <> UI16, [%t,%t;%t,%t]);
228 assert_checkequal(e <> i32, %t);
229 assert_checkequal(e <> I32, [%t,%t;%t,%t]);
230 assert_checkequal(e <> ui32, %t);
231 assert_checkequal(e <> UI32, [%t,%t;%t,%t]);
232 assert_checkequal(e <> str, %t);
233 assert_checkequal(e <> STR, %t);
234 assert_checkequal(e <> b, %t);
235 assert_checkequal(e <> B, %t);
236 assert_checkequal(e <> SPB, %t);
237 assert_checkequal(ec <> empty, %t);
238 assert_checkequal(ec <> r, %t);
239 assert_checkequal(ec <> c, %t);
240 assert_checkequal(ec <> R, [%t,%t;%t,%t]);
241 assert_checkequal(ec <> C, [%t,%t;%t,%t]);
242 assert_checkequal(ec <> e, %t);
243 assert_checkequal(ec <> ec, %f);
244 assert_checkequal(ec <> p, %t);
245 assert_checkequal(ec <> pc, %t);
246 assert_checkequal(ec <> P, [%t,%t;%t,%t]);
247 assert_checkequal(ec <> PC, [%t,%t;%t,%t]);
248 assert_checkequal(ec <> SP, %t);
249 assert_checkequal(ec <> SPC, %t);
250 assert_checkequal(ec <> SP1, %t);
251 assert_checkequal(ec <> SPC1, %t);
252 assert_checkequal(ec <> i8, %t);
253 assert_checkequal(ec <> I8, [%t,%t;%t,%t]);
254 assert_checkequal(ec <> ui8, %t);
255 assert_checkequal(ec <> UI8, [%t,%t;%t,%t]);
256 assert_checkequal(ec <> i16, %t);
257 assert_checkequal(ec <> I16, [%t,%t;%t,%t]);
258 assert_checkequal(ec <> ui16, %t);
259 assert_checkequal(ec <> UI16, [%t,%t;%t,%t]);
260 assert_checkequal(ec <> i32, %t);
261 assert_checkequal(ec <> I32, [%t,%t;%t,%t]);
262 assert_checkequal(ec <> ui32, %t);
263 assert_checkequal(ec <> UI32, [%t,%t;%t,%t]);
264 assert_checkequal(ec <> str, %t);
265 assert_checkequal(ec <> STR, %t);
266 assert_checkequal(ec <> b, %t);
267 assert_checkequal(ec <> B, %t);
268 assert_checkequal(ec <> SPB, %t);
269 assert_checkequal(p <> empty, %t);
270 assert_checkequal(p <> r, %t);
271 assert_checkequal(p <> c, %t);
272 assert_checkequal(p <> R, [%t,%t;%t,%t]);
273 assert_checkequal(p <> C, [%t,%t;%t,%t]);
274 assert_checkequal(p <> e, %t);
275 assert_checkequal(p <> ec, %t);
276 assert_checkequal(p <> p, %f);
277 assert_checkequal(p <> pc, %t);
278 assert_checkequal(p <> P, [%t,%t;%t,%t]);
279 assert_checkequal(p <> PC, [%t,%t;%t,%t]);
280 assert_checkequal(p <> i8, %t);
281 assert_checkequal(p <> I8, [%t,%t;%t,%t]);
282 assert_checkequal(p <> ui8, %t);
283 assert_checkequal(p <> UI8, [%t,%t;%t,%t]);
284 assert_checkequal(p <> i16, %t);
285 assert_checkequal(p <> I16, [%t,%t;%t,%t]);
286 assert_checkequal(p <> ui16, %t);
287 assert_checkequal(p <> UI16, [%t,%t;%t,%t]);
288 assert_checkequal(p <> i32, %t);
289 assert_checkequal(p <> I32, [%t,%t;%t,%t]);
290 assert_checkequal(p <> ui32, %t);
291 assert_checkequal(p <> UI32, [%t,%t;%t,%t]);
292 assert_checkequal(p <> str, %t);
293 assert_checkequal(p <> STR, %t);
294 assert_checkequal(p <> b, %t);
295 assert_checkequal(p <> B, %t);
296 assert_checkequal(pc <> empty, %t);
297 assert_checkequal(pc <> r, %t);
298 assert_checkequal(pc <> c, %t);
299 assert_checkequal(pc <> R, [%t,%t;%t,%t]);
300 assert_checkequal(pc <> C, [%t,%t;%t,%t]);
301 assert_checkequal(pc <> e, %t);
302 assert_checkequal(pc <> ec, %t);
303 assert_checkequal(pc <> p, %t);
304 assert_checkequal(pc <> pc, %f);
305 assert_checkequal(pc <> P, [%t,%t;%t,%t]);
306 assert_checkequal(pc <> PC, [%t,%t;%t,%t]);
307 assert_checkequal(pc <> i8, %t);
308 assert_checkequal(pc <> I8, [%t,%t;%t,%t]);
309 assert_checkequal(pc <> ui8, %t);
310 assert_checkequal(pc <> UI8, [%t,%t;%t,%t]);
311 assert_checkequal(pc <> i16, %t);
312 assert_checkequal(pc <> I16, [%t,%t;%t,%t]);
313 assert_checkequal(pc <> ui16, %t);
314 assert_checkequal(pc <> UI16, [%t,%t;%t,%t]);
315 assert_checkequal(pc <> i32, %t);
316 assert_checkequal(pc <> I32, [%t,%t;%t,%t]);
317 assert_checkequal(pc <> ui32, %t);
318 assert_checkequal(pc <> UI32, [%t,%t;%t,%t]);
319 assert_checkequal(pc <> str, %t);
320 assert_checkequal(pc <> STR, %t);
321 assert_checkequal(pc <> b, %t);
322 assert_checkequal(pc <> B, %t);
323 assert_checkequal(P <> empty, %t);
324 assert_checkequal(P <> r, [%t,%f;%t,%t]);
325 assert_checkequal(P <> c, [%t,%t;%t,%t]);
326 assert_checkequal(P <> R, [%t,%f;%t,%t]);
327 assert_checkequal(P <> C, [%t,%t;%t,%t]);
328 assert_checkequal(P <> e, [%t,%t;%t,%t]);
329 assert_checkequal(P <> ec, [%t,%t;%t,%t]);
330 assert_checkequal(P <> p, [%t,%t;%t,%t]);
331 assert_checkequal(P <> pc, [%t,%t;%t,%t]);
332 assert_checkequal(P <> P, [%f,%f;%f,%f]);
333 assert_checkequal(P <> PC, [%t,%f;%t,%t]);
334 assert_checkequal(P <> i8, [%t,%t;%t,%t]);
335 assert_checkequal(P <> I8, [%t,%f;%t,%t]);
336 assert_checkequal(P <> ui8, [%t,%t;%t,%t]);
337 assert_checkequal(P <> UI8, [%t,%f;%t,%t]);
338 assert_checkequal(P <> i16, [%t,%t;%t,%t]);
339 assert_checkequal(P <> I16, [%t,%f;%t,%t]);
340 assert_checkequal(P <> ui16, [%t,%t;%t,%t]);
341 assert_checkequal(P <> UI16, [%t,%f;%t,%t]);
342 assert_checkequal(P <> i32, [%t,%t;%t,%t]);
343 assert_checkequal(P <> I32, [%t,%f;%t,%t]);
344 assert_checkequal(P <> ui32, [%t,%t;%t,%t]);
345 assert_checkequal(P <> UI32, [%t,%f;%t,%t]);
346 assert_checkequal(P <> str, %t);
347 assert_checkequal(P <> STR, %t);
348 assert_checkequal(P <> b, %t);
349 assert_checkequal(P <> B, %t);
350 assert_checkequal(PC <> empty, %t);
351 assert_checkequal(PC <> r, [%t,%f;%t,%t]);
352 assert_checkequal(PC <> c, [%t,%t;%t,%t]);
353 assert_checkequal(PC <> R, [%t,%f;%t,%t]);
354 assert_checkequal(PC <> C, [%t,%t;%t,%t]);
355 assert_checkequal(PC <> e, [%t,%t;%t,%t]);
356 assert_checkequal(PC <> ec, [%t,%t;%t,%t]);
357 assert_checkequal(PC <> p, [%t,%t;%t,%t]);
358 assert_checkequal(PC <> pc, [%t,%t;%t,%t]);
359 assert_checkequal(PC <> P, [%t,%f;%t,%t]);
360 assert_checkequal(PC <> PC, [%f,%f;%f,%f]);
361 assert_checkequal(PC <> i8, [%t,%t;%t,%t]);
362 assert_checkequal(PC <> I8, [%t,%f;%t,%t]);
363 assert_checkequal(PC <> ui8, [%t,%t;%t,%t]);
364 assert_checkequal(PC <> UI8, [%t,%f;%t,%t]);
365 assert_checkequal(PC <> i16, [%t,%t;%t,%t]);
366 assert_checkequal(PC <> I16, [%t,%f;%t,%t]);
367 assert_checkequal(PC <> ui16, [%t,%t;%t,%t]);
368 assert_checkequal(PC <> UI16, [%t,%f;%t,%t]);
369 assert_checkequal(PC <> i32, [%t,%t;%t,%t]);
370 assert_checkequal(PC <> I32, [%t,%f;%t,%t]);
371 assert_checkequal(PC <> ui32, [%t,%t;%t,%t]);
372 assert_checkequal(PC <> UI32, [%t,%f;%t,%t]);
373 assert_checkequal(PC <> str, %t);
374 assert_checkequal(PC <> STR, %t);
375 assert_checkequal(PC <> b, %t);
376 assert_checkequal(PC <> B, %t);
377 assert_checkequal(SP <> empty, %t);
378 assert_checkequal(SP <> r, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
379 assert_checkequal(SP <> c, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
380 assert_checkequal(SP <> R, %t);
381 assert_checkequal(SP <> C, %t);
382 assert_checkequal(SP <> e, %t);
383 assert_checkequal(SP <> ec, %t);
384 assert_checkequal(SP <> SP, sparse([1,1],[%f],[4,10]));
385 assert_checkequal(SP <> SPC, sparse([1,2;3,10;4,5],[%t;%t;%t],[4,10]));
386 assert_checkequal(SP <> SP1, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
387 assert_checkequal(SP <> SPC1, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
388 assert_checkequal(SP <> i8, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
389 assert_checkequal(SP <> I8, %t);
390 assert_checkequal(SP <> ui8, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
391 assert_checkequal(SP <> UI8, %t);
392 assert_checkequal(SP <> i16, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
393 assert_checkequal(SP <> I16, %t);
394 assert_checkequal(SP <> ui16, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
395 assert_checkequal(SP <> UI16, %t);
396 assert_checkequal(SP <> i32, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
397 assert_checkequal(SP <> I32, %t);
398 assert_checkequal(SP <> ui32, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
399 assert_checkequal(SP <> UI32, %t);
400 assert_checkequal(SP <> str, %t);
401 assert_checkequal(SP <> STR, %t);
402 assert_checkequal(SP <> b, %t);
403 assert_checkequal(SP <> B, %t);
404 assert_checkequal(SP <> SPB, %t);
405 assert_checkequal(SPC <> empty, %t);
406 assert_checkequal(SPC <> r, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
407 assert_checkequal(SPC <> c, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
408 assert_checkequal(SPC <> R, %t);
409 assert_checkequal(SPC <> C, %t);
410 assert_checkequal(SPC <> e, %t);
411 assert_checkequal(SPC <> ec, %t);
412 assert_checkequal(SPC <> SP, sparse([1,2;3,10;4,5],[%t;%t;%t],[4,10]));
413 assert_checkequal(SPC <> SPC, sparse([1,1],[%f],[4,10]));
414 assert_checkequal(SPC <> SP1, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
415 assert_checkequal(SPC <> SPC1, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
416 assert_checkequal(SPC <> i8, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
417 assert_checkequal(SPC <> I8, %t);
418 assert_checkequal(SPC <> ui8, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
419 assert_checkequal(SPC <> UI8, %t);
420 assert_checkequal(SPC <> i16, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
421 assert_checkequal(SPC <> I16, %t);
422 assert_checkequal(SPC <> ui16, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
423 assert_checkequal(SPC <> UI16, %t);
424 assert_checkequal(SPC <> i32, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
425 assert_checkequal(SPC <> I32, %t);
426 assert_checkequal(SPC <> ui32, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
427 assert_checkequal(SPC <> UI32, %t);
428 assert_checkequal(SPC <> str, %t);
429 assert_checkequal(SPC <> STR, %t);
430 assert_checkequal(SPC <> b, %t);
431 assert_checkequal(SPC <> B, %t);
432 assert_checkequal(SPC <> SPB, %t);
433 assert_checkequal(SP1 <> empty, %t);
434 assert_checkequal(SP1 <> r, sparse([1,1],%t,[1,1]));
435 assert_checkequal(SP1 <> c, sparse([1,1],%t,[1,1]));
436 assert_checkequal(SP1 <> R, %t);
437 assert_checkequal(SP1 <> C, %t);
438 assert_checkequal(SP1 <> e, %t);
439 assert_checkequal(SP1 <> ec, %t);
440 assert_checkequal(SP1 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
441 assert_checkequal(SP1 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
442 assert_checkequal(SP1 <> SP1, sparse([1,1],[%f],[1,1]));
443 assert_checkequal(SP1 <> SPC1, sparse([1,1],%t,[1,1]));
444 assert_checkequal(SP1 <> i8, sparse([1,1],%t,[1,1]));
445 assert_checkequal(SP1 <> I8, %t);
446 assert_checkequal(SP1 <> ui8, sparse([1,1],%t,[1,1]));
447 assert_checkequal(SP1 <> UI8, %t);
448 assert_checkequal(SP1 <> i16, sparse([1,1],%t,[1,1]));
449 assert_checkequal(SP1 <> I16, %t);
450 assert_checkequal(SP1 <> ui16, sparse([1,1],%t,[1,1]));
451 assert_checkequal(SP1 <> UI16, %t);
452 assert_checkequal(SP1 <> i32, sparse([1,1],%t,[1,1]));
453 assert_checkequal(SP1 <> I32, %t);
454 assert_checkequal(SP1 <> ui32, sparse([1,1],%t,[1,1]));
455 assert_checkequal(SP1 <> UI32, %t);
456 assert_checkequal(SP1 <> str, %t);
457 assert_checkequal(SP1 <> STR, %t);
458 assert_checkequal(SP1 <> b, %t);
459 assert_checkequal(SP1 <> B, %t);
460 assert_checkequal(SP1 <> SPB, %t);
461 assert_checkequal(SPC1 <> empty, %t);
462 assert_checkequal(SPC1 <> r, sparse([1,1],%t,[1,1]));
463 assert_checkequal(SPC1 <> c, sparse([1,1],%t,[1,1]));
464 assert_checkequal(SPC1 <> R, %t);
465 assert_checkequal(SPC1 <> C, %t);
466 assert_checkequal(SPC1 <> e, %t);
467 assert_checkequal(SPC1 <> ec, %t);
468 assert_checkequal(SPC1 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
469 assert_checkequal(SPC1 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
470 assert_checkequal(SPC1 <> SP1, sparse([1,1],%t,[1,1]));
471 assert_checkequal(SPC1 <> SPC1, sparse([1,1],[%f],[1,1]));
472 assert_checkequal(SPC1 <> i8, sparse([1,1],%t,[1,1]));
473 assert_checkequal(SPC1 <> I8, %t);
474 assert_checkequal(SPC1 <> ui8, sparse([1,1],%t,[1,1]));
475 assert_checkequal(SPC1 <> UI8, %t);
476 assert_checkequal(SPC1 <> i16, sparse([1,1],%t,[1,1]));
477 assert_checkequal(SPC1 <> I16, %t);
478 assert_checkequal(SPC1 <> ui16, sparse([1,1],%t,[1,1]));
479 assert_checkequal(SPC1 <> UI16, %t);
480 assert_checkequal(SPC1 <> i32, sparse([1,1],%t,[1,1]));
481 assert_checkequal(SPC1 <> I32, %t);
482 assert_checkequal(SPC1 <> ui32, sparse([1,1],%t,[1,1]));
483 assert_checkequal(SPC1 <> UI32, %t);
484 assert_checkequal(SPC1 <> str, %t);
485 assert_checkequal(SPC1 <> STR, %t);
486 assert_checkequal(SPC1 <> b, %t);
487 assert_checkequal(SPC1 <> B, %t);
488 assert_checkequal(SPC1 <> SPB, %t);
489 assert_checkequal(i8 <> empty, %t);
490 assert_checkequal(i8 <> r, %t);
491 assert_checkequal(i8 <> c, %t);
492 assert_checkequal(i8 <> R, [%t,%t;%t,%t]);
493 assert_checkequal(i8 <> C, [%t,%t;%t,%t]);
494 assert_checkequal(i8 <> e, %t);
495 assert_checkequal(i8 <> ec, %t);
496 assert_checkequal(i8 <> p, %t);
497 assert_checkequal(i8 <> pc, %t);
498 assert_checkequal(i8 <> P, [%t,%t;%t,%t]);
499 assert_checkequal(i8 <> PC, [%t,%t;%t,%t]);
500 assert_checkequal(i8 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
501 assert_checkequal(i8 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
502 assert_checkequal(i8 <> SP1, sparse([1,1],%t,[1,1]));
503 assert_checkequal(i8 <> SPC1, sparse([1,1],%t,[1,1]));
504 assert_checkequal(i8 <> i8, %f);
505 assert_checkequal(i8 <> I8, [%f,%t;%t,%t]);
506 assert_checkequal(i8 <> ui8, %t);
507 assert_checkequal(i8 <> UI8, [%t,%t;%t,%t]);
508 assert_checkequal(i8 <> i16, %t);
509 assert_checkequal(i8 <> I16, [%t,%t;%t,%t]);
510 assert_checkequal(i8 <> ui16, %t);
511 assert_checkequal(i8 <> UI16, [%t,%t;%t,%t]);
512 assert_checkequal(i8 <> i32, %t);
513 assert_checkequal(i8 <> I32, [%t,%t;%t,%t]);
514 assert_checkequal(i8 <> ui32, %t);
515 assert_checkequal(i8 <> UI32, [%t,%t;%t,%t]);
516 assert_checkequal(i8 <> str, %t);
517 assert_checkequal(i8 <> STR, %t);
518 assert_checkequal(i8 <> b, %t);
519 assert_checkequal(i8 <> B, [%t,%t;%t,%t]);
520 assert_checkequal(i8 <> SPB, %t);
521 assert_checkequal(I8 <> empty, %t);
522 assert_checkequal(I8 <> r, [%t,%f;%t,%t]);
523 assert_checkequal(I8 <> c, [%t,%t;%t,%t]);
524 assert_checkequal(I8 <> R, [%t,%f;%t,%t]);
525 assert_checkequal(I8 <> C, [%t,%t;%t,%t]);
526 assert_checkequal(I8 <> e, [%t,%t;%t,%t]);
527 assert_checkequal(I8 <> ec, [%t,%t;%t,%t]);
528 assert_checkequal(I8 <> p, [%t,%t;%t,%t]);
529 assert_checkequal(I8 <> pc, [%t,%t;%t,%t]);
530 assert_checkequal(I8 <> P, [%t,%f;%t,%t]);
531 assert_checkequal(I8 <> PC, [%t,%f;%t,%t]);
532 assert_checkequal(I8 <> SP, %t);
533 assert_checkequal(I8 <> SPC, %t);
534 assert_checkequal(I8 <> SP1, %t);
535 assert_checkequal(I8 <> SPC1, %t);
536 assert_checkequal(I8 <> i8, [%f,%t;%t,%t]);
537 assert_checkequal(I8 <> I8, [%f,%f;%f,%f]);
538 assert_checkequal(I8 <> ui8, [%t,%t;%t,%t]);
539 assert_checkequal(I8 <> UI8, [%t,%f;%t,%t]);
540 assert_checkequal(I8 <> i16, [%t,%t;%t,%t]);
541 assert_checkequal(I8 <> I16, [%t,%f;%t,%t]);
542 assert_checkequal(I8 <> ui16, [%t,%t;%t,%t]);
543 assert_checkequal(I8 <> UI16, [%t,%f;%t,%t]);
544 assert_checkequal(I8 <> i32, [%t,%t;%t,%f]);
545 assert_checkequal(I8 <> I32, [%t,%f;%t,%t]);
546 assert_checkequal(I8 <> ui32, [%t,%t;%t,%t]);
547 assert_checkequal(I8 <> UI32, [%t,%f;%t,%t]);
548 assert_checkequal(I8 <> str, %t);
549 assert_checkequal(I8 <> STR, %t);
550 assert_checkequal(I8 <> b, [%t,%t;%t,%t]);
551 assert_checkequal(I8 <> B, [%t,%t;%t,%t]);
552 assert_checkequal(I8 <> SPB, %t);
553 assert_checkequal(ui8 <> empty, %t);
554 assert_checkequal(ui8 <> r, %t);
555 assert_checkequal(ui8 <> c, %t);
556 assert_checkequal(ui8 <> R, [%t,%t;%t,%t]);
557 assert_checkequal(ui8 <> C, [%t,%t;%t,%t]);
558 assert_checkequal(ui8 <> e, %t);
559 assert_checkequal(ui8 <> ec, %t);
560 assert_checkequal(ui8 <> p, %t);
561 assert_checkequal(ui8 <> pc, %t);
562 assert_checkequal(ui8 <> P, [%t,%t;%t,%t]);
563 assert_checkequal(ui8 <> PC, [%t,%t;%t,%t]);
564 assert_checkequal(ui8 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
565 assert_checkequal(ui8 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
566 assert_checkequal(ui8 <> SP1, sparse([1,1],%t,[1,1]));
567 assert_checkequal(ui8 <> SPC1, sparse([1,1],%t,[1,1]));
568 assert_checkequal(ui8 <> i8, %t);
569 assert_checkequal(ui8 <> I8, [%t,%t;%t,%t]);
570 assert_checkequal(ui8 <> ui8, %f);
571 assert_checkequal(ui8 <> UI8, [%f,%t;%t,%t]);
572 assert_checkequal(ui8 <> i16, %t);
573 assert_checkequal(ui8 <> I16, [%t,%t;%t,%t]);
574 assert_checkequal(ui8 <> ui16, %t);
575 assert_checkequal(ui8 <> UI16, [%t,%t;%t,%t]);
576 assert_checkequal(ui8 <> i32, %t);
577 assert_checkequal(ui8 <> I32, [%t,%t;%t,%t]);
578 assert_checkequal(ui8 <> ui32, %t);
579 assert_checkequal(ui8 <> UI32, [%t,%t;%t,%t]);
580 assert_checkequal(ui8 <> str, %t);
581 assert_checkequal(ui8 <> STR, %t);
582 assert_checkequal(ui8 <> b, %t);
583 assert_checkequal(ui8 <> B, [%t,%t;%t,%t]);
584 assert_checkequal(ui8 <> SPB, %t);
585 assert_checkequal(UI8 <> empty, %t);
586 assert_checkequal(UI8 <> r, [%t,%f;%t,%t]);
587 assert_checkequal(UI8 <> c, [%t,%t;%t,%t]);
588 assert_checkequal(UI8 <> R, [%t,%f;%t,%t]);
589 assert_checkequal(UI8 <> C, [%t,%t;%t,%t]);
590 assert_checkequal(UI8 <> e, [%t,%t;%t,%t]);
591 assert_checkequal(UI8 <> ec, [%t,%t;%t,%t]);
592 assert_checkequal(UI8 <> p, [%t,%t;%t,%t]);
593 assert_checkequal(UI8 <> pc, [%t,%t;%t,%t]);
594 assert_checkequal(UI8 <> P, [%t,%f;%t,%t]);
595 assert_checkequal(UI8 <> PC, [%t,%f;%t,%t]);
596 assert_checkequal(UI8 <> SP, %t);
597 assert_checkequal(UI8 <> SPC, %t);
598 assert_checkequal(UI8 <> SP1, %t);
599 assert_checkequal(UI8 <> SPC1, %t);
600 assert_checkequal(UI8 <> i8, [%t,%t;%t,%t]);
601 assert_checkequal(UI8 <> I8, [%t,%f;%t,%t]);
602 assert_checkequal(UI8 <> ui8, [%f,%t;%t,%t]);
603 assert_checkequal(UI8 <> UI8, [%f,%f;%f,%f]);
604 assert_checkequal(UI8 <> i16, [%t,%t;%t,%t]);
605 assert_checkequal(UI8 <> I16, [%t,%f;%t,%t]);
606 assert_checkequal(UI8 <> ui16, [%t,%t;%t,%t]);
607 assert_checkequal(UI8 <> UI16, [%t,%f;%t,%t]);
608 assert_checkequal(UI8 <> i32, [%t,%t;%t,%t]);
609 assert_checkequal(UI8 <> I32, [%t,%f;%t,%t]);
610 assert_checkequal(UI8 <> ui32, [%t,%t;%t,%f]);
611 assert_checkequal(UI8 <> UI32, [%t,%f;%t,%t]);
612 assert_checkequal(UI8 <> str, %t);
613 assert_checkequal(UI8 <> STR, %t);
614 assert_checkequal(UI8 <> b, [%t,%t;%t,%t]);
615 assert_checkequal(UI8 <> B, [%t,%t;%t,%t]);
616 assert_checkequal(UI8 <> SPB, %t);
617 assert_checkequal(i16 <> empty, %t);
618 assert_checkequal(i16 <> r, %t);
619 assert_checkequal(i16 <> c, %t);
620 assert_checkequal(i16 <> R, [%t,%t;%t,%t]);
621 assert_checkequal(i16 <> C, [%t,%t;%t,%t]);
622 assert_checkequal(i16 <> e, %t);
623 assert_checkequal(i16 <> ec, %t);
624 assert_checkequal(i16 <> p, %t);
625 assert_checkequal(i16 <> pc, %t);
626 assert_checkequal(i16 <> P, [%t,%t;%t,%t]);
627 assert_checkequal(i16 <> PC, [%t,%t;%t,%t]);
628 assert_checkequal(i16 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
629 assert_checkequal(i16 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
630 assert_checkequal(i16 <> SP1, sparse([1,1],%t,[1,1]));
631 assert_checkequal(i16 <> SPC1, sparse([1,1],%t,[1,1]));
632 assert_checkequal(i16 <> i8, %t);
633 assert_checkequal(i16 <> I8, [%t,%t;%t,%t]);
634 assert_checkequal(i16 <> ui8, %t);
635 assert_checkequal(i16 <> UI8, [%t,%t;%t,%t]);
636 assert_checkequal(i16 <> i16, %f);
637 assert_checkequal(i16 <> I16, [%f,%t;%t,%t]);
638 assert_checkequal(i16 <> ui16, %t);
639 assert_checkequal(i16 <> UI16, [%t,%t;%t,%t]);
640 assert_checkequal(i16 <> i32, %t);
641 assert_checkequal(i16 <> I32, [%t,%t;%t,%t]);
642 assert_checkequal(i16 <> ui32, %t);
643 assert_checkequal(i16 <> UI32, [%t,%t;%t,%t]);
644 assert_checkequal(i16 <> str, %t);
645 assert_checkequal(i16 <> STR, %t);
646 assert_checkequal(i16 <> b, %t);
647 assert_checkequal(i16 <> B, [%t,%t;%t,%t]);
648 assert_checkequal(i16 <> SPB, %t);
649 assert_checkequal(I16 <> empty, %t);
650 assert_checkequal(I16 <> r, [%t,%f;%t,%t]);
651 assert_checkequal(I16 <> c, [%t,%t;%t,%t]);
652 assert_checkequal(I16 <> R, [%t,%f;%t,%t]);
653 assert_checkequal(I16 <> C, [%t,%t;%t,%t]);
654 assert_checkequal(I16 <> e, [%t,%t;%t,%t]);
655 assert_checkequal(I16 <> ec, [%t,%t;%t,%t]);
656 assert_checkequal(I16 <> p, [%t,%t;%t,%t]);
657 assert_checkequal(I16 <> pc, [%t,%t;%t,%t]);
658 assert_checkequal(I16 <> P, [%t,%f;%t,%t]);
659 assert_checkequal(I16 <> PC, [%t,%f;%t,%t]);
660 assert_checkequal(I16 <> SP, %t);
661 assert_checkequal(I16 <> SPC, %t);
662 assert_checkequal(I16 <> SP1, %t);
663 assert_checkequal(I16 <> SPC1, %t);
664 assert_checkequal(I16 <> i8, [%t,%t;%t,%t]);
665 assert_checkequal(I16 <> I8, [%t,%f;%t,%t]);
666 assert_checkequal(I16 <> ui8, [%t,%t;%t,%t]);
667 assert_checkequal(I16 <> UI8, [%t,%f;%t,%t]);
668 assert_checkequal(I16 <> i16, [%f,%t;%t,%t]);
669 assert_checkequal(I16 <> I16, [%f,%f;%f,%f]);
670 assert_checkequal(I16 <> ui16, [%t,%t;%t,%t]);
671 assert_checkequal(I16 <> UI16, [%t,%f;%t,%t]);
672 assert_checkequal(I16 <> i32, [%t,%t;%t,%t]);
673 assert_checkequal(I16 <> I32, [%t,%f;%t,%t]);
674 assert_checkequal(I16 <> ui32, [%t,%t;%t,%t]);
675 assert_checkequal(I16 <> UI32, [%t,%f;%t,%t]);
676 assert_checkequal(I16 <> str, %t);
677 assert_checkequal(I16 <> STR, %t);
678 assert_checkequal(I16 <> b, [%t,%t;%t,%t]);
679 assert_checkequal(I16 <> B, [%t,%t;%t,%t]);
680 assert_checkequal(I16 <> SPB, %t);
681 assert_checkequal(ui16 <> empty, %t);
682 assert_checkequal(ui16 <> r, %t);
683 assert_checkequal(ui16 <> c, %t);
684 assert_checkequal(ui16 <> R, [%t,%t;%t,%t]);
685 assert_checkequal(ui16 <> C, [%t,%t;%t,%t]);
686 assert_checkequal(ui16 <> e, %t);
687 assert_checkequal(ui16 <> ec, %t);
688 assert_checkequal(ui16 <> p, %t);
689 assert_checkequal(ui16 <> pc, %t);
690 assert_checkequal(ui16 <> P, [%t,%t;%t,%t]);
691 assert_checkequal(ui16 <> PC, [%t,%t;%t,%t]);
692 assert_checkequal(ui16 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
693 assert_checkequal(ui16 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
694 assert_checkequal(ui16 <> SP1, sparse([1,1],%t,[1,1]));
695 assert_checkequal(ui16 <> SPC1, sparse([1,1],%t,[1,1]));
696 assert_checkequal(ui16 <> i8, %t);
697 assert_checkequal(ui16 <> I8, [%t,%t;%t,%t]);
698 assert_checkequal(ui16 <> ui8, %t);
699 assert_checkequal(ui16 <> UI8, [%t,%t;%t,%t]);
700 assert_checkequal(ui16 <> i16, %t);
701 assert_checkequal(ui16 <> I16, [%t,%t;%t,%t]);
702 assert_checkequal(ui16 <> ui16, %f);
703 assert_checkequal(ui16 <> UI16, [%f,%t;%t,%t]);
704 assert_checkequal(ui16 <> i32, %t);
705 assert_checkequal(ui16 <> I32, [%t,%t;%t,%t]);
706 assert_checkequal(ui16 <> ui32, %t);
707 assert_checkequal(ui16 <> UI32, [%t,%t;%t,%t]);
708 assert_checkequal(ui16 <> str, %t);
709 assert_checkequal(ui16 <> STR, %t);
710 assert_checkequal(ui16 <> b, %t);
711 assert_checkequal(ui16 <> B, [%t,%t;%t,%t]);
712 assert_checkequal(ui16 <> SPB, %t);
713 assert_checkequal(UI16 <> empty, %t);
714 assert_checkequal(UI16 <> r, [%t,%f;%t,%t]);
715 assert_checkequal(UI16 <> c, [%t,%t;%t,%t]);
716 assert_checkequal(UI16 <> R, [%t,%f;%t,%t]);
717 assert_checkequal(UI16 <> C, [%t,%t;%t,%t]);
718 assert_checkequal(UI16 <> e, [%t,%t;%t,%t]);
719 assert_checkequal(UI16 <> ec, [%t,%t;%t,%t]);
720 assert_checkequal(UI16 <> p, [%t,%t;%t,%t]);
721 assert_checkequal(UI16 <> pc, [%t,%t;%t,%t]);
722 assert_checkequal(UI16 <> P, [%t,%f;%t,%t]);
723 assert_checkequal(UI16 <> PC, [%t,%f;%t,%t]);
724 assert_checkequal(UI16 <> SP, %t);
725 assert_checkequal(UI16 <> SPC, %t);
726 assert_checkequal(UI16 <> SP1, %t);
727 assert_checkequal(UI16 <> SPC1, %t);
728 assert_checkequal(UI16 <> i8, [%t,%t;%t,%t]);
729 assert_checkequal(UI16 <> I8, [%t,%f;%t,%t]);
730 assert_checkequal(UI16 <> ui8, [%t,%t;%t,%t]);
731 assert_checkequal(UI16 <> UI8, [%t,%f;%t,%t]);
732 assert_checkequal(UI16 <> i16, [%t,%t;%t,%t]);
733 assert_checkequal(UI16 <> I16, [%t,%f;%t,%t]);
734 assert_checkequal(UI16 <> ui16, [%f,%t;%t,%t]);
735 assert_checkequal(UI16 <> UI16, [%f,%f;%f,%f]);
736 assert_checkequal(UI16 <> i32, [%t,%t;%t,%t]);
737 assert_checkequal(UI16 <> I32, [%t,%f;%t,%t]);
738 assert_checkequal(UI16 <> ui32, [%t,%t;%t,%t]);
739 assert_checkequal(UI16 <> UI32, [%t,%f;%t,%t]);
740 assert_checkequal(UI16 <> str, %t);
741 assert_checkequal(UI16 <> STR, %t);
742 assert_checkequal(UI16 <> b, [%t,%t;%t,%t]);
743 assert_checkequal(UI16 <> B, [%t,%t;%t,%t]);
744 assert_checkequal(UI16 <> SPB, %t);
745 assert_checkequal(i32 <> empty, %t);
746 assert_checkequal(i32 <> r, %t);
747 assert_checkequal(i32 <> c, %t);
748 assert_checkequal(i32 <> R, [%t,%t;%t,%t]);
749 assert_checkequal(i32 <> C, [%t,%t;%t,%t]);
750 assert_checkequal(i32 <> e, %t);
751 assert_checkequal(i32 <> ec, %t);
752 assert_checkequal(i32 <> p, %t);
753 assert_checkequal(i32 <> pc, %t);
754 assert_checkequal(i32 <> P, [%t,%t;%t,%t]);
755 assert_checkequal(i32 <> PC, [%t,%t;%t,%t]);
756 assert_checkequal(i32 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
757 assert_checkequal(i32 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
758 assert_checkequal(i32 <> SP1, sparse([1,1],%t,[1,1]));
759 assert_checkequal(i32 <> SPC1, sparse([1,1],%t,[1,1]));
760 assert_checkequal(i32 <> i8, %t);
761 assert_checkequal(i32 <> I8, [%t,%t;%t,%f]);
762 assert_checkequal(i32 <> ui8, %t);
763 assert_checkequal(i32 <> UI8, [%t,%t;%t,%t]);
764 assert_checkequal(i32 <> i16, %t);
765 assert_checkequal(i32 <> I16, [%t,%t;%t,%t]);
766 assert_checkequal(i32 <> ui16, %t);
767 assert_checkequal(i32 <> UI16, [%t,%t;%t,%t]);
768 assert_checkequal(i32 <> i32, %f);
769 assert_checkequal(i32 <> I32, [%f,%t;%t,%t]);
770 assert_checkequal(i32 <> ui32, %t);
771 assert_checkequal(i32 <> UI32, [%t,%t;%t,%t]);
772 assert_checkequal(i32 <> str, %t);
773 assert_checkequal(i32 <> STR, %t);
774 assert_checkequal(i32 <> b, %t);
775 assert_checkequal(i32 <> B, [%t,%t;%t,%t]);
776 assert_checkequal(i32 <> SPB, %t);
777 assert_checkequal(I32 <> empty, %t);
778 assert_checkequal(I32 <> r, [%t,%f;%t,%t]);
779 assert_checkequal(I32 <> c, [%t,%t;%t,%t]);
780 assert_checkequal(I32 <> R, [%t,%f;%t,%t]);
781 assert_checkequal(I32 <> C, [%t,%t;%t,%t]);
782 assert_checkequal(I32 <> e, [%t,%t;%t,%t]);
783 assert_checkequal(I32 <> ec, [%t,%t;%t,%t]);
784 assert_checkequal(I32 <> p, [%t,%t;%t,%t]);
785 assert_checkequal(I32 <> pc, [%t,%t;%t,%t]);
786 assert_checkequal(I32 <> P, [%t,%f;%t,%t]);
787 assert_checkequal(I32 <> PC, [%t,%f;%t,%t]);
788 assert_checkequal(I32 <> SP, %t);
789 assert_checkequal(I32 <> SPC, %t);
790 assert_checkequal(I32 <> SP1, %t);
791 assert_checkequal(I32 <> SPC1, %t);
792 assert_checkequal(I32 <> i8, [%t,%t;%t,%t]);
793 assert_checkequal(I32 <> I8, [%t,%f;%t,%t]);
794 assert_checkequal(I32 <> ui8, [%t,%t;%t,%t]);
795 assert_checkequal(I32 <> UI8, [%t,%f;%t,%t]);
796 assert_checkequal(I32 <> i16, [%t,%t;%t,%t]);
797 assert_checkequal(I32 <> I16, [%t,%f;%t,%t]);
798 assert_checkequal(I32 <> ui16, [%t,%t;%t,%t]);
799 assert_checkequal(I32 <> UI16, [%t,%f;%t,%t]);
800 assert_checkequal(I32 <> i32, [%f,%t;%t,%t]);
801 assert_checkequal(I32 <> I32, [%f,%f;%f,%f]);
802 assert_checkequal(I32 <> ui32, [%t,%t;%t,%t]);
803 assert_checkequal(I32 <> UI32, [%t,%f;%t,%t]);
804 assert_checkequal(I32 <> str, %t);
805 assert_checkequal(I32 <> STR, %t);
806 assert_checkequal(I32 <> b, [%t,%t;%t,%t]);
807 assert_checkequal(I32 <> B, [%t,%t;%t,%t]);
808 assert_checkequal(I32 <> SPB, %t);
809 assert_checkequal(ui32 <> empty, %t);
810 assert_checkequal(ui32 <> r, %t);
811 assert_checkequal(ui32 <> c, %t);
812 assert_checkequal(ui32 <> R, [%t,%t;%t,%t]);
813 assert_checkequal(ui32 <> C, [%t,%t;%t,%t]);
814 assert_checkequal(ui32 <> e, %t);
815 assert_checkequal(ui32 <> ec, %t);
816 assert_checkequal(ui32 <> p, %t);
817 assert_checkequal(ui32 <> pc, %t);
818 assert_checkequal(ui32 <> P, [%t,%t;%t,%t]);
819 assert_checkequal(ui32 <> PC, [%t,%t;%t,%t]);
820 assert_checkequal(ui32 <> SP, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
821 assert_checkequal(ui32 <> SPC, sparse([1,1;1,2;1,3;1,4;1,5;1,6;1,7;1,8;1,9;1,10;2,1;2,2;2,3;2,4;2,5;2,6;2,7;2,8;2,9;2,10;3,1;3,2;3,3;3,4;3,5;3,6;3,7;3,8;3,9;3,10;4,1;4,2;4,3;4,4;4,5;4,6;4,7;4,8;4,9;4,10],[%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t;%t],[4,10]));
822 assert_checkequal(ui32 <> SP1, sparse([1,1],%t,[1,1]));
823 assert_checkequal(ui32 <> SPC1, sparse([1,1],%t,[1,1]));
824 assert_checkequal(ui32 <> i8, %t);
825 assert_checkequal(ui32 <> I8, [%t,%t;%t,%t]);
826 assert_checkequal(ui32 <> ui8, %t);
827 assert_checkequal(ui32 <> UI8, [%t,%t;%t,%f]);
828 assert_checkequal(ui32 <> i16, %t);
829 assert_checkequal(ui32 <> I16, [%t,%t;%t,%t]);
830 assert_checkequal(ui32 <> ui16, %t);
831 assert_checkequal(ui32 <> UI16, [%t,%t;%t,%t]);
832 assert_checkequal(ui32 <> i32, %t);
833 assert_checkequal(ui32 <> I32, [%t,%t;%t,%t]);
834 assert_checkequal(ui32 <> ui32, %f);
835 assert_checkequal(ui32 <> UI32, [%f,%t;%t,%t]);
836 assert_checkequal(ui32 <> str, %t);
837 assert_checkequal(ui32 <> STR, %t);
838 assert_checkequal(ui32 <> b, %t);
839 assert_checkequal(ui32 <> B, [%t,%t;%t,%t]);
840 assert_checkequal(ui32 <> SPB, %t);
841 assert_checkequal(UI32 <> empty, %t);
842 assert_checkequal(UI32 <> r, [%t,%f;%t,%t]);
843 assert_checkequal(UI32 <> c, [%t,%t;%t,%t]);
844 assert_checkequal(UI32 <> R, [%t,%f;%t,%t]);
845 assert_checkequal(UI32 <> C, [%t,%t;%t,%t]);
846 assert_checkequal(UI32 <> e, [%t,%t;%t,%t]);
847 assert_checkequal(UI32 <> ec, [%t,%t;%t,%t]);
848 assert_checkequal(UI32 <> p, [%t,%t;%t,%t]);
849 assert_checkequal(UI32 <> pc, [%t,%t;%t,%t]);
850 assert_checkequal(UI32 <> P, [%t,%f;%t,%t]);
851 assert_checkequal(UI32 <> PC, [%t,%f;%t,%t]);
852 assert_checkequal(UI32 <> SP, %t);
853 assert_checkequal(UI32 <> SPC, %t);
854 assert_checkequal(UI32 <> SP1, %t);
855 assert_checkequal(UI32 <> SPC1, %t);
856 assert_checkequal(UI32 <> i8, [%t,%t;%t,%t]);
857 assert_checkequal(UI32 <> I8, [%t,%f;%t,%t]);
858 assert_checkequal(UI32 <> ui8, [%t,%t;%t,%t]);
859 assert_checkequal(UI32 <> UI8, [%t,%f;%t,%t]);
860 assert_checkequal(UI32 <> i16, [%t,%t;%t,%t]);
861 assert_checkequal(UI32 <> I16, [%t,%f;%t,%t]);
862 assert_checkequal(UI32 <> ui16, [%t,%t;%t,%t]);
863 assert_checkequal(UI32 <> UI16, [%t,%f;%t,%t]);
864 assert_checkequal(UI32 <> i32, [%t,%t;%t,%t]);
865 assert_checkequal(UI32 <> I32, [%t,%f;%t,%t]);
866 assert_checkequal(UI32 <> ui32, [%f,%t;%t,%t]);
867 assert_checkequal(UI32 <> UI32, [%f,%f;%f,%f]);
868 assert_checkequal(UI32 <> str, %t);
869 assert_checkequal(UI32 <> STR, %t);
870 assert_checkequal(UI32 <> b, [%t,%t;%t,%t]);
871 assert_checkequal(UI32 <> B, [%t,%t;%t,%t]);
872 assert_checkequal(UI32 <> SPB, %t);
873 assert_checkequal(str <> empty, %t);
874 assert_checkequal(str <> r, %t);
875 assert_checkequal(str <> c, %t);
876 assert_checkequal(str <> R, %t);
877 assert_checkequal(str <> C, %t);
878 assert_checkequal(str <> e, %t);
879 assert_checkequal(str <> ec, %t);
880 assert_checkequal(str <> p, %t);
881 assert_checkequal(str <> pc, %t);
882 assert_checkequal(str <> P, %t);
883 assert_checkequal(str <> PC, %t);
884 assert_checkequal(str <> SP, %t);
885 assert_checkequal(str <> SPC, %t);
886 assert_checkequal(str <> SP1, %t);
887 assert_checkequal(str <> SPC1, %t);
888 assert_checkequal(str <> i8, %t);
889 assert_checkequal(str <> I8, %t);
890 assert_checkequal(str <> ui8, %t);
891 assert_checkequal(str <> UI8, %t);
892 assert_checkequal(str <> i16, %t);
893 assert_checkequal(str <> I16, %t);
894 assert_checkequal(str <> ui16, %t);
895 assert_checkequal(str <> UI16, %t);
896 assert_checkequal(str <> i32, %t);
897 assert_checkequal(str <> I32, %t);
898 assert_checkequal(str <> ui32, %t);
899 assert_checkequal(str <> UI32, %t);
900 assert_checkequal(str <> str, %f);
901 assert_checkequal(str <> STR, [%t,%t;%t,%t]);
902 assert_checkequal(str <> b, %t);
903 assert_checkequal(str <> B, %t);
904 assert_checkequal(str <> SPB, %t);
905 assert_checkequal(STR <> empty, %t);
906 assert_checkequal(STR <> r, %t);
907 assert_checkequal(STR <> c, %t);
908 assert_checkequal(STR <> R, %t);
909 assert_checkequal(STR <> C, %t);
910 assert_checkequal(STR <> e, %t);
911 assert_checkequal(STR <> ec, %t);
912 assert_checkequal(STR <> p, %t);
913 assert_checkequal(STR <> pc, %t);
914 assert_checkequal(STR <> P, %t);
915 assert_checkequal(STR <> PC, %t);
916 assert_checkequal(STR <> SP, %t);
917 assert_checkequal(STR <> SPC, %t);
918 assert_checkequal(STR <> SP1, %t);
919 assert_checkequal(STR <> SPC1, %t);
920 assert_checkequal(STR <> i8, %t);
921 assert_checkequal(STR <> I8, %t);
922 assert_checkequal(STR <> ui8, %t);
923 assert_checkequal(STR <> UI8, %t);
924 assert_checkequal(STR <> i16, %t);
925 assert_checkequal(STR <> I16, %t);
926 assert_checkequal(STR <> ui16, %t);
927 assert_checkequal(STR <> UI16, %t);
928 assert_checkequal(STR <> i32, %t);
929 assert_checkequal(STR <> I32, %t);
930 assert_checkequal(STR <> ui32, %t);
931 assert_checkequal(STR <> UI32, %t);
932 assert_checkequal(STR <> str, [%t,%t;%t,%t]);
933 assert_checkequal(STR <> STR, [%f,%f;%f,%f]);
934 assert_checkequal(STR <> b, %t);
935 assert_checkequal(STR <> B, %t);
936 assert_checkequal(STR <> SPB, %t);
937 assert_checkequal(b <> empty, %t);
938 assert_checkequal(b <> r, %t);
939 assert_checkequal(b <> c, %t);
940 assert_checkequal(b <> R, %t);
941 assert_checkequal(b <> C, %t);
942 assert_checkequal(b <> e, %t);
943 assert_checkequal(b <> ec, %t);
944 assert_checkequal(b <> p, %t);
945 assert_checkequal(b <> pc, %t);
946 assert_checkequal(b <> P, %t);
947 assert_checkequal(b <> PC, %t);
948 assert_checkequal(b <> SP, %t);
949 assert_checkequal(b <> SPC, %t);
950 assert_checkequal(b <> SP1, %t);
951 assert_checkequal(b <> SPC1, %t);
952 assert_checkequal(b <> i8, %t);
953 assert_checkequal(b <> I8, [%t,%t;%t,%t]);
954 assert_checkequal(b <> ui8, %t);
955 assert_checkequal(b <> UI8, [%t,%t;%t,%t]);
956 assert_checkequal(b <> i16, %t);
957 assert_checkequal(b <> I16, [%t,%t;%t,%t]);
958 assert_checkequal(b <> ui16, %t);
959 assert_checkequal(b <> UI16, [%t,%t;%t,%t]);
960 assert_checkequal(b <> i32, %t);
961 assert_checkequal(b <> I32, [%t,%t;%t,%t]);
962 assert_checkequal(b <> ui32, %t);
963 assert_checkequal(b <> UI32, [%t,%t;%t,%t]);
964 assert_checkequal(b <> str, %t);
965 assert_checkequal(b <> STR, %t);
966 assert_checkequal(b <> b, %f);
967 assert_checkequal(b <> B, [%t,%f;%f,%t]);
968 assert_checkequal(b <> SPB, sparse([1,2;2,1],[%t;%t],[2,2]));
969 assert_checkequal(B <> empty, %t);
970 assert_checkequal(B <> r, %t);
971 assert_checkequal(B <> c, %t);
972 assert_checkequal(B <> R, %t);
973 assert_checkequal(B <> C, %t);
974 assert_checkequal(B <> e, %t);
975 assert_checkequal(B <> ec, %t);
976 assert_checkequal(B <> p, %t);
977 assert_checkequal(B <> pc, %t);
978 assert_checkequal(B <> P, %t);
979 assert_checkequal(B <> PC, %t);
980 assert_checkequal(B <> SP, %t);
981 assert_checkequal(B <> SPC, %t);
982 assert_checkequal(B <> SP1, %t);
983 assert_checkequal(B <> SPC1, %t);
984 assert_checkequal(B <> i8, [%t,%t;%t,%t]);
985 assert_checkequal(B <> I8, [%t,%t;%t,%t]);
986 assert_checkequal(B <> ui8, [%t,%t;%t,%t]);
987 assert_checkequal(B <> UI8, [%t,%t;%t,%t]);
988 assert_checkequal(B <> i16, [%t,%t;%t,%t]);
989 assert_checkequal(B <> I16, [%t,%t;%t,%t]);
990 assert_checkequal(B <> ui16, [%t,%t;%t,%t]);
991 assert_checkequal(B <> UI16, [%t,%t;%t,%t]);
992 assert_checkequal(B <> i32, [%t,%t;%t,%t]);
993 assert_checkequal(B <> I32, [%t,%t;%t,%t]);
994 assert_checkequal(B <> ui32, [%t,%t;%t,%t]);
995 assert_checkequal(B <> UI32, [%t,%t;%t,%t]);
996 assert_checkequal(B <> str, %t);
997 assert_checkequal(B <> STR, %t);
998 assert_checkequal(B <> b, [%t,%f;%f,%t]);
999 assert_checkequal(B <> B, [%f,%f;%f,%f]);
1000 assert_checkequal(B <> SPB, sparse([1,1;1,2;2,1;2,2],[%t;%t;%t;%t],[2,2]));
1001 assert_checkequal(SPB <> empty, %t);
1002 assert_checkequal(SPB <> r, %t);
1003 assert_checkequal(SPB <> c, %t);
1004 assert_checkequal(SPB <> R, %t);
1005 assert_checkequal(SPB <> C, %t);
1006 assert_checkequal(SPB <> e, %t);
1007 assert_checkequal(SPB <> ec, %t);
1008 assert_checkequal(SPB <> SP, %t);
1009 assert_checkequal(SPB <> SPC, %t);
1010 assert_checkequal(SPB <> SP1, %t);
1011 assert_checkequal(SPB <> SPC1, %t);
1012 assert_checkequal(SPB <> i8, %t);
1013 assert_checkequal(SPB <> I8, %t);
1014 assert_checkequal(SPB <> ui8, %t);
1015 assert_checkequal(SPB <> UI8, %t);
1016 assert_checkequal(SPB <> i16, %t);
1017 assert_checkequal(SPB <> I16, %t);
1018 assert_checkequal(SPB <> ui16, %t);
1019 assert_checkequal(SPB <> UI16, %t);
1020 assert_checkequal(SPB <> i32, %t);
1021 assert_checkequal(SPB <> I32, %t);
1022 assert_checkequal(SPB <> ui32, %t);
1023 assert_checkequal(SPB <> UI32, %t);
1024 assert_checkequal(SPB <> str, %t);
1025 assert_checkequal(SPB <> STR, %t);
1026 assert_checkequal(SPB <> b, sparse([1,2;2,1],[%t;%t],[2,2]));
1027 assert_checkequal(SPB <> B, sparse([1,1;1,2;2,1;2,2],[%t;%t;%t;%t],[2,2]));
1028 assert_checkequal(SPB <> SPB, sparse([1,1],[%f],[2,2]));
1029 assert_checkequal(["a" "b"] <> ["a" "b" "c"],%t);
1030 assert_checkequal(["a" "b"] <> ["a" ; "b"],%t);
1031 assert_checkequal(["a" "b" "c"] <> ["a" "b"],%t);
1032 assert_checkequal(["a" "b"; "a" "b"] <> ["a" "b"],%t);
1033 //macro
1034 deff("[x]=myplus(y,z)","x=y+z");
1035 deff("[x]=mymacro(y,z)",["a=3*y+1"; "x=a*z+y"]);
1036 assert_checkequal(myplus <> myplus,%f);
1037 assert_checkequal(myplus <> mymacro,%t);
1038 assert_checkequal(myplus <> [],%t);
1039 assert_checkequal(myplus <> 2,%t);
1040 //struct
1041 test_st=struct("double",1,"string","test","int8",int8(2),"struct",struct("valeur",0));
1042 test_st2=struct("double",1,"string","test","int16",int8(2),"struct",1);
1043 test_st4=struct("double",1,"string","test","int8",int8(4),"struct",struct("valeur",0));
1044 test_st8=struct("double",8,"string","test","int8",int8(8),"struct",struct("valeur",0));
1045 assert_checkequal(test_st <> test_st, %f);
1046 assert_checkequal(test_st <> test_st2, %t);
1047 assert_checkequal([test_st4 test_st8] <> [test_st test_st], [%t,%t]);
1048 assert_checkequal([test_st, test_st4;test_st4,test_st8] <> [test_st, test_st; test_st,test_st], [%f,%t;%t,%t]);
1049 assert_checkequal(test_st <> [], %t);
1050 //function
1051 assert_checkequal(acosd <> acosd, %f);
1052 assert_checkequal(acosd <> [], %t);
1053 assert_checkequal(acosd <> 2, %t);
1054 //polynom
1055 res = horner(1/(1-%s),1/(1-%s));
1056 assert_checkequal(res <> (1-%s)/-%s, %f);
1057 assert_checkequal(res <> (1-%s)/1, %t);
1058 assert_checkequal(res <> 1/-%s, %t);