monolish  0.17.3-dev.16
MONOlithic LInear equation Solvers for Highly-parallel architecture
monolish_dense_vml.hpp
Go to the documentation of this file.
1 // this code is generated by gen_dense_vml.sh
2 #pragma once
3 
4 #include "../common/monolish_common.hpp"
5 
6 namespace monolish {
11 namespace vml {
12 
37  view_Dense<vector<double>, double> &C);
39  view_Dense<matrix::Dense<double>, double> &C);
42 void add(const matrix::Dense<double> &A,
43  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
44 void add(const matrix::Dense<double> &A,
45  const view_Dense<vector<double>, double> &B,
46  view_Dense<vector<double>, double> &C);
47 void add(const matrix::Dense<double> &A,
48  const view_Dense<vector<double>, double> &B,
49  view_Dense<matrix::Dense<double>, double> &C);
50 void add(const matrix::Dense<double> &A,
51  const view_Dense<vector<double>, double> &B,
53 void add(const matrix::Dense<double> &A,
54  const view_Dense<matrix::Dense<double>, double> &B,
56 void add(const matrix::Dense<double> &A,
57  const view_Dense<matrix::Dense<double>, double> &B,
58  view_Dense<vector<double>, double> &C);
59 void add(const matrix::Dense<double> &A,
60  const view_Dense<matrix::Dense<double>, double> &B,
61  view_Dense<matrix::Dense<double>, double> &C);
62 void add(const matrix::Dense<double> &A,
63  const view_Dense<matrix::Dense<double>, double> &B,
65 void add(const matrix::Dense<double> &A,
66  const view_Dense<tensor::tensor_Dense<double>, double> &B,
68 void add(const matrix::Dense<double> &A,
69  const view_Dense<tensor::tensor_Dense<double>, double> &B,
70  view_Dense<vector<double>, double> &C);
71 void add(const matrix::Dense<double> &A,
72  const view_Dense<tensor::tensor_Dense<double>, double> &B,
73  view_Dense<matrix::Dense<double>, double> &C);
74 void add(const matrix::Dense<double> &A,
75  const view_Dense<tensor::tensor_Dense<double>, double> &B,
77 void add(const view_Dense<vector<double>, double> &A,
79 void add(const view_Dense<vector<double>, double> &A,
80  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
81 void add(const view_Dense<vector<double>, double> &A,
82  const matrix::Dense<double> &B,
83  view_Dense<matrix::Dense<double>, double> &C);
84 void add(const view_Dense<vector<double>, double> &A,
85  const matrix::Dense<double> &B,
87 void add(const view_Dense<vector<double>, double> &A,
88  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
89 void add(const view_Dense<vector<double>, double> &A,
90  const view_Dense<vector<double>, double> &B,
91  view_Dense<vector<double>, double> &C);
92 void add(const view_Dense<vector<double>, double> &A,
93  const view_Dense<vector<double>, double> &B,
94  view_Dense<matrix::Dense<double>, double> &C);
95 void add(const view_Dense<vector<double>, double> &A,
96  const view_Dense<vector<double>, double> &B,
98 void add(const view_Dense<vector<double>, double> &A,
99  const view_Dense<matrix::Dense<double>, double> &B,
101 void add(const view_Dense<vector<double>, double> &A,
102  const view_Dense<matrix::Dense<double>, double> &B,
103  view_Dense<vector<double>, double> &C);
104 void add(const view_Dense<vector<double>, double> &A,
105  const view_Dense<matrix::Dense<double>, double> &B,
106  view_Dense<matrix::Dense<double>, double> &C);
107 void add(const view_Dense<vector<double>, double> &A,
108  const view_Dense<matrix::Dense<double>, double> &B,
110 void add(const view_Dense<vector<double>, double> &A,
111  const view_Dense<tensor::tensor_Dense<double>, double> &B,
113 void add(const view_Dense<vector<double>, double> &A,
114  const view_Dense<tensor::tensor_Dense<double>, double> &B,
115  view_Dense<vector<double>, double> &C);
116 void add(const view_Dense<vector<double>, double> &A,
117  const view_Dense<tensor::tensor_Dense<double>, double> &B,
118  view_Dense<matrix::Dense<double>, double> &C);
119 void add(const view_Dense<vector<double>, double> &A,
120  const view_Dense<tensor::tensor_Dense<double>, double> &B,
122 void add(const view_Dense<matrix::Dense<double>, double> &A,
124 void add(const view_Dense<matrix::Dense<double>, double> &A,
125  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
126 void add(const view_Dense<matrix::Dense<double>, double> &A,
127  const matrix::Dense<double> &B,
128  view_Dense<matrix::Dense<double>, double> &C);
129 void add(const view_Dense<matrix::Dense<double>, double> &A,
130  const matrix::Dense<double> &B,
132 void add(const view_Dense<matrix::Dense<double>, double> &A,
133  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
134 void add(const view_Dense<matrix::Dense<double>, double> &A,
135  const view_Dense<vector<double>, double> &B,
136  view_Dense<vector<double>, double> &C);
137 void add(const view_Dense<matrix::Dense<double>, double> &A,
138  const view_Dense<vector<double>, double> &B,
139  view_Dense<matrix::Dense<double>, double> &C);
140 void add(const view_Dense<matrix::Dense<double>, double> &A,
141  const view_Dense<vector<double>, double> &B,
143 void add(const view_Dense<matrix::Dense<double>, double> &A,
144  const view_Dense<matrix::Dense<double>, double> &B,
146 void add(const view_Dense<matrix::Dense<double>, double> &A,
147  const view_Dense<matrix::Dense<double>, double> &B,
148  view_Dense<vector<double>, double> &C);
149 void add(const view_Dense<matrix::Dense<double>, double> &A,
150  const view_Dense<matrix::Dense<double>, double> &B,
151  view_Dense<matrix::Dense<double>, double> &C);
152 void add(const view_Dense<matrix::Dense<double>, double> &A,
153  const view_Dense<matrix::Dense<double>, double> &B,
155 void add(const view_Dense<matrix::Dense<double>, double> &A,
156  const view_Dense<tensor::tensor_Dense<double>, double> &B,
158 void add(const view_Dense<matrix::Dense<double>, double> &A,
159  const view_Dense<tensor::tensor_Dense<double>, double> &B,
160  view_Dense<vector<double>, double> &C);
161 void add(const view_Dense<matrix::Dense<double>, double> &A,
162  const view_Dense<tensor::tensor_Dense<double>, double> &B,
163  view_Dense<matrix::Dense<double>, double> &C);
164 void add(const view_Dense<matrix::Dense<double>, double> &A,
165  const view_Dense<tensor::tensor_Dense<double>, double> &B,
170  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
172  const matrix::Dense<double> &B,
173  view_Dense<matrix::Dense<double>, double> &C);
175  const matrix::Dense<double> &B,
178  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
180  const view_Dense<vector<double>, double> &B,
181  view_Dense<vector<double>, double> &C);
183  const view_Dense<vector<double>, double> &B,
184  view_Dense<matrix::Dense<double>, double> &C);
186  const view_Dense<vector<double>, double> &B,
189  const view_Dense<matrix::Dense<double>, double> &B,
192  const view_Dense<matrix::Dense<double>, double> &B,
193  view_Dense<vector<double>, double> &C);
195  const view_Dense<matrix::Dense<double>, double> &B,
196  view_Dense<matrix::Dense<double>, double> &C);
198  const view_Dense<matrix::Dense<double>, double> &B,
201  const view_Dense<tensor::tensor_Dense<double>, double> &B,
204  const view_Dense<tensor::tensor_Dense<double>, double> &B,
205  view_Dense<vector<double>, double> &C);
207  const view_Dense<tensor::tensor_Dense<double>, double> &B,
208  view_Dense<matrix::Dense<double>, double> &C);
210  const view_Dense<tensor::tensor_Dense<double>, double> &B,
215  view_Dense<vector<float>, float> &C);
217  view_Dense<matrix::Dense<float>, float> &C);
220 void add(const matrix::Dense<float> &A,
221  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
222 void add(const matrix::Dense<float> &A,
223  const view_Dense<vector<float>, float> &B,
224  view_Dense<vector<float>, float> &C);
225 void add(const matrix::Dense<float> &A,
226  const view_Dense<vector<float>, float> &B,
227  view_Dense<matrix::Dense<float>, float> &C);
228 void add(const matrix::Dense<float> &A,
229  const view_Dense<vector<float>, float> &B,
231 void add(const matrix::Dense<float> &A,
232  const view_Dense<matrix::Dense<float>, float> &B,
234 void add(const matrix::Dense<float> &A,
235  const view_Dense<matrix::Dense<float>, float> &B,
236  view_Dense<vector<float>, float> &C);
237 void add(const matrix::Dense<float> &A,
238  const view_Dense<matrix::Dense<float>, float> &B,
239  view_Dense<matrix::Dense<float>, float> &C);
240 void add(const matrix::Dense<float> &A,
241  const view_Dense<matrix::Dense<float>, float> &B,
243 void add(const matrix::Dense<float> &A,
244  const view_Dense<tensor::tensor_Dense<float>, float> &B,
246 void add(const matrix::Dense<float> &A,
247  const view_Dense<tensor::tensor_Dense<float>, float> &B,
248  view_Dense<vector<float>, float> &C);
249 void add(const matrix::Dense<float> &A,
250  const view_Dense<tensor::tensor_Dense<float>, float> &B,
251  view_Dense<matrix::Dense<float>, float> &C);
252 void add(const matrix::Dense<float> &A,
253  const view_Dense<tensor::tensor_Dense<float>, float> &B,
255 void add(const view_Dense<vector<float>, float> &A,
257 void add(const view_Dense<vector<float>, float> &A,
258  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
259 void add(const view_Dense<vector<float>, float> &A,
260  const matrix::Dense<float> &B,
261  view_Dense<matrix::Dense<float>, float> &C);
262 void add(const view_Dense<vector<float>, float> &A,
263  const matrix::Dense<float> &B,
265 void add(const view_Dense<vector<float>, float> &A,
266  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
267 void add(const view_Dense<vector<float>, float> &A,
268  const view_Dense<vector<float>, float> &B,
269  view_Dense<vector<float>, float> &C);
270 void add(const view_Dense<vector<float>, float> &A,
271  const view_Dense<vector<float>, float> &B,
272  view_Dense<matrix::Dense<float>, float> &C);
273 void add(const view_Dense<vector<float>, float> &A,
274  const view_Dense<vector<float>, float> &B,
276 void add(const view_Dense<vector<float>, float> &A,
277  const view_Dense<matrix::Dense<float>, float> &B,
279 void add(const view_Dense<vector<float>, float> &A,
280  const view_Dense<matrix::Dense<float>, float> &B,
281  view_Dense<vector<float>, float> &C);
282 void add(const view_Dense<vector<float>, float> &A,
283  const view_Dense<matrix::Dense<float>, float> &B,
284  view_Dense<matrix::Dense<float>, float> &C);
285 void add(const view_Dense<vector<float>, float> &A,
286  const view_Dense<matrix::Dense<float>, float> &B,
288 void add(const view_Dense<vector<float>, float> &A,
289  const view_Dense<tensor::tensor_Dense<float>, float> &B,
291 void add(const view_Dense<vector<float>, float> &A,
292  const view_Dense<tensor::tensor_Dense<float>, float> &B,
293  view_Dense<vector<float>, float> &C);
294 void add(const view_Dense<vector<float>, float> &A,
295  const view_Dense<tensor::tensor_Dense<float>, float> &B,
296  view_Dense<matrix::Dense<float>, float> &C);
297 void add(const view_Dense<vector<float>, float> &A,
298  const view_Dense<tensor::tensor_Dense<float>, float> &B,
300 void add(const view_Dense<matrix::Dense<float>, float> &A,
302 void add(const view_Dense<matrix::Dense<float>, float> &A,
303  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
304 void add(const view_Dense<matrix::Dense<float>, float> &A,
305  const matrix::Dense<float> &B,
306  view_Dense<matrix::Dense<float>, float> &C);
307 void add(const view_Dense<matrix::Dense<float>, float> &A,
308  const matrix::Dense<float> &B,
310 void add(const view_Dense<matrix::Dense<float>, float> &A,
311  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
312 void add(const view_Dense<matrix::Dense<float>, float> &A,
313  const view_Dense<vector<float>, float> &B,
314  view_Dense<vector<float>, float> &C);
315 void add(const view_Dense<matrix::Dense<float>, float> &A,
316  const view_Dense<vector<float>, float> &B,
317  view_Dense<matrix::Dense<float>, float> &C);
318 void add(const view_Dense<matrix::Dense<float>, float> &A,
319  const view_Dense<vector<float>, float> &B,
321 void add(const view_Dense<matrix::Dense<float>, float> &A,
322  const view_Dense<matrix::Dense<float>, float> &B,
324 void add(const view_Dense<matrix::Dense<float>, float> &A,
325  const view_Dense<matrix::Dense<float>, float> &B,
326  view_Dense<vector<float>, float> &C);
327 void add(const view_Dense<matrix::Dense<float>, float> &A,
328  const view_Dense<matrix::Dense<float>, float> &B,
329  view_Dense<matrix::Dense<float>, float> &C);
330 void add(const view_Dense<matrix::Dense<float>, float> &A,
331  const view_Dense<matrix::Dense<float>, float> &B,
333 void add(const view_Dense<matrix::Dense<float>, float> &A,
334  const view_Dense<tensor::tensor_Dense<float>, float> &B,
336 void add(const view_Dense<matrix::Dense<float>, float> &A,
337  const view_Dense<tensor::tensor_Dense<float>, float> &B,
338  view_Dense<vector<float>, float> &C);
339 void add(const view_Dense<matrix::Dense<float>, float> &A,
340  const view_Dense<tensor::tensor_Dense<float>, float> &B,
341  view_Dense<matrix::Dense<float>, float> &C);
342 void add(const view_Dense<matrix::Dense<float>, float> &A,
343  const view_Dense<tensor::tensor_Dense<float>, float> &B,
348  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
350  const matrix::Dense<float> &B,
351  view_Dense<matrix::Dense<float>, float> &C);
353  const matrix::Dense<float> &B,
356  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
358  const view_Dense<vector<float>, float> &B,
359  view_Dense<vector<float>, float> &C);
361  const view_Dense<vector<float>, float> &B,
362  view_Dense<matrix::Dense<float>, float> &C);
364  const view_Dense<vector<float>, float> &B,
367  const view_Dense<matrix::Dense<float>, float> &B,
370  const view_Dense<matrix::Dense<float>, float> &B,
371  view_Dense<vector<float>, float> &C);
373  const view_Dense<matrix::Dense<float>, float> &B,
374  view_Dense<matrix::Dense<float>, float> &C);
376  const view_Dense<matrix::Dense<float>, float> &B,
379  const view_Dense<tensor::tensor_Dense<float>, float> &B,
382  const view_Dense<tensor::tensor_Dense<float>, float> &B,
383  view_Dense<vector<float>, float> &C);
385  const view_Dense<tensor::tensor_Dense<float>, float> &B,
386  view_Dense<matrix::Dense<float>, float> &C);
388  const view_Dense<tensor::tensor_Dense<float>, float> &B,
411  view_Dense<vector<double>, double> &C);
413  view_Dense<matrix::Dense<double>, double> &C);
417  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
419  const view_Dense<vector<double>, double> &B,
420  view_Dense<vector<double>, double> &C);
422  const view_Dense<vector<double>, double> &B,
423  view_Dense<matrix::Dense<double>, double> &C);
425  const view_Dense<vector<double>, double> &B,
428  const view_Dense<matrix::Dense<double>, double> &B,
431  const view_Dense<matrix::Dense<double>, double> &B,
432  view_Dense<vector<double>, double> &C);
434  const view_Dense<matrix::Dense<double>, double> &B,
435  view_Dense<matrix::Dense<double>, double> &C);
437  const view_Dense<matrix::Dense<double>, double> &B,
440  const view_Dense<tensor::tensor_Dense<double>, double> &B,
443  const view_Dense<tensor::tensor_Dense<double>, double> &B,
444  view_Dense<vector<double>, double> &C);
446  const view_Dense<tensor::tensor_Dense<double>, double> &B,
447  view_Dense<matrix::Dense<double>, double> &C);
449  const view_Dense<tensor::tensor_Dense<double>, double> &B,
451 void sub(const view_Dense<vector<double>, double> &A,
453 void sub(const view_Dense<vector<double>, double> &A,
454  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
455 void sub(const view_Dense<vector<double>, double> &A,
456  const matrix::Dense<double> &B,
457  view_Dense<matrix::Dense<double>, double> &C);
458 void sub(const view_Dense<vector<double>, double> &A,
459  const matrix::Dense<double> &B,
461 void sub(const view_Dense<vector<double>, double> &A,
462  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
463 void sub(const view_Dense<vector<double>, double> &A,
464  const view_Dense<vector<double>, double> &B,
465  view_Dense<vector<double>, double> &C);
466 void sub(const view_Dense<vector<double>, double> &A,
467  const view_Dense<vector<double>, double> &B,
468  view_Dense<matrix::Dense<double>, double> &C);
469 void sub(const view_Dense<vector<double>, double> &A,
470  const view_Dense<vector<double>, double> &B,
472 void sub(const view_Dense<vector<double>, double> &A,
473  const view_Dense<matrix::Dense<double>, double> &B,
475 void sub(const view_Dense<vector<double>, double> &A,
476  const view_Dense<matrix::Dense<double>, double> &B,
477  view_Dense<vector<double>, double> &C);
478 void sub(const view_Dense<vector<double>, double> &A,
479  const view_Dense<matrix::Dense<double>, double> &B,
480  view_Dense<matrix::Dense<double>, double> &C);
481 void sub(const view_Dense<vector<double>, double> &A,
482  const view_Dense<matrix::Dense<double>, double> &B,
484 void sub(const view_Dense<vector<double>, double> &A,
485  const view_Dense<tensor::tensor_Dense<double>, double> &B,
487 void sub(const view_Dense<vector<double>, double> &A,
488  const view_Dense<tensor::tensor_Dense<double>, double> &B,
489  view_Dense<vector<double>, double> &C);
490 void sub(const view_Dense<vector<double>, double> &A,
491  const view_Dense<tensor::tensor_Dense<double>, double> &B,
492  view_Dense<matrix::Dense<double>, double> &C);
493 void sub(const view_Dense<vector<double>, double> &A,
494  const view_Dense<tensor::tensor_Dense<double>, double> &B,
496 void sub(const view_Dense<matrix::Dense<double>, double> &A,
498 void sub(const view_Dense<matrix::Dense<double>, double> &A,
499  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
500 void sub(const view_Dense<matrix::Dense<double>, double> &A,
501  const matrix::Dense<double> &B,
502  view_Dense<matrix::Dense<double>, double> &C);
503 void sub(const view_Dense<matrix::Dense<double>, double> &A,
504  const matrix::Dense<double> &B,
506 void sub(const view_Dense<matrix::Dense<double>, double> &A,
507  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
508 void sub(const view_Dense<matrix::Dense<double>, double> &A,
509  const view_Dense<vector<double>, double> &B,
510  view_Dense<vector<double>, double> &C);
511 void sub(const view_Dense<matrix::Dense<double>, double> &A,
512  const view_Dense<vector<double>, double> &B,
513  view_Dense<matrix::Dense<double>, double> &C);
514 void sub(const view_Dense<matrix::Dense<double>, double> &A,
515  const view_Dense<vector<double>, double> &B,
517 void sub(const view_Dense<matrix::Dense<double>, double> &A,
518  const view_Dense<matrix::Dense<double>, double> &B,
520 void sub(const view_Dense<matrix::Dense<double>, double> &A,
521  const view_Dense<matrix::Dense<double>, double> &B,
522  view_Dense<vector<double>, double> &C);
523 void sub(const view_Dense<matrix::Dense<double>, double> &A,
524  const view_Dense<matrix::Dense<double>, double> &B,
525  view_Dense<matrix::Dense<double>, double> &C);
526 void sub(const view_Dense<matrix::Dense<double>, double> &A,
527  const view_Dense<matrix::Dense<double>, double> &B,
529 void sub(const view_Dense<matrix::Dense<double>, double> &A,
530  const view_Dense<tensor::tensor_Dense<double>, double> &B,
532 void sub(const view_Dense<matrix::Dense<double>, double> &A,
533  const view_Dense<tensor::tensor_Dense<double>, double> &B,
534  view_Dense<vector<double>, double> &C);
535 void sub(const view_Dense<matrix::Dense<double>, double> &A,
536  const view_Dense<tensor::tensor_Dense<double>, double> &B,
537  view_Dense<matrix::Dense<double>, double> &C);
538 void sub(const view_Dense<matrix::Dense<double>, double> &A,
539  const view_Dense<tensor::tensor_Dense<double>, double> &B,
544  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
546  const matrix::Dense<double> &B,
547  view_Dense<matrix::Dense<double>, double> &C);
549  const matrix::Dense<double> &B,
552  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
554  const view_Dense<vector<double>, double> &B,
555  view_Dense<vector<double>, double> &C);
557  const view_Dense<vector<double>, double> &B,
558  view_Dense<matrix::Dense<double>, double> &C);
560  const view_Dense<vector<double>, double> &B,
563  const view_Dense<matrix::Dense<double>, double> &B,
566  const view_Dense<matrix::Dense<double>, double> &B,
567  view_Dense<vector<double>, double> &C);
569  const view_Dense<matrix::Dense<double>, double> &B,
570  view_Dense<matrix::Dense<double>, double> &C);
572  const view_Dense<matrix::Dense<double>, double> &B,
575  const view_Dense<tensor::tensor_Dense<double>, double> &B,
578  const view_Dense<tensor::tensor_Dense<double>, double> &B,
579  view_Dense<vector<double>, double> &C);
581  const view_Dense<tensor::tensor_Dense<double>, double> &B,
582  view_Dense<matrix::Dense<double>, double> &C);
584  const view_Dense<tensor::tensor_Dense<double>, double> &B,
589  view_Dense<vector<float>, float> &C);
591  view_Dense<matrix::Dense<float>, float> &C);
594 void sub(const matrix::Dense<float> &A,
595  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
596 void sub(const matrix::Dense<float> &A,
597  const view_Dense<vector<float>, float> &B,
598  view_Dense<vector<float>, float> &C);
599 void sub(const matrix::Dense<float> &A,
600  const view_Dense<vector<float>, float> &B,
601  view_Dense<matrix::Dense<float>, float> &C);
602 void sub(const matrix::Dense<float> &A,
603  const view_Dense<vector<float>, float> &B,
605 void sub(const matrix::Dense<float> &A,
606  const view_Dense<matrix::Dense<float>, float> &B,
608 void sub(const matrix::Dense<float> &A,
609  const view_Dense<matrix::Dense<float>, float> &B,
610  view_Dense<vector<float>, float> &C);
611 void sub(const matrix::Dense<float> &A,
612  const view_Dense<matrix::Dense<float>, float> &B,
613  view_Dense<matrix::Dense<float>, float> &C);
614 void sub(const matrix::Dense<float> &A,
615  const view_Dense<matrix::Dense<float>, float> &B,
617 void sub(const matrix::Dense<float> &A,
618  const view_Dense<tensor::tensor_Dense<float>, float> &B,
620 void sub(const matrix::Dense<float> &A,
621  const view_Dense<tensor::tensor_Dense<float>, float> &B,
622  view_Dense<vector<float>, float> &C);
623 void sub(const matrix::Dense<float> &A,
624  const view_Dense<tensor::tensor_Dense<float>, float> &B,
625  view_Dense<matrix::Dense<float>, float> &C);
626 void sub(const matrix::Dense<float> &A,
627  const view_Dense<tensor::tensor_Dense<float>, float> &B,
629 void sub(const view_Dense<vector<float>, float> &A,
631 void sub(const view_Dense<vector<float>, float> &A,
632  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
633 void sub(const view_Dense<vector<float>, float> &A,
634  const matrix::Dense<float> &B,
635  view_Dense<matrix::Dense<float>, float> &C);
636 void sub(const view_Dense<vector<float>, float> &A,
637  const matrix::Dense<float> &B,
639 void sub(const view_Dense<vector<float>, float> &A,
640  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
641 void sub(const view_Dense<vector<float>, float> &A,
642  const view_Dense<vector<float>, float> &B,
643  view_Dense<vector<float>, float> &C);
644 void sub(const view_Dense<vector<float>, float> &A,
645  const view_Dense<vector<float>, float> &B,
646  view_Dense<matrix::Dense<float>, float> &C);
647 void sub(const view_Dense<vector<float>, float> &A,
648  const view_Dense<vector<float>, float> &B,
650 void sub(const view_Dense<vector<float>, float> &A,
651  const view_Dense<matrix::Dense<float>, float> &B,
653 void sub(const view_Dense<vector<float>, float> &A,
654  const view_Dense<matrix::Dense<float>, float> &B,
655  view_Dense<vector<float>, float> &C);
656 void sub(const view_Dense<vector<float>, float> &A,
657  const view_Dense<matrix::Dense<float>, float> &B,
658  view_Dense<matrix::Dense<float>, float> &C);
659 void sub(const view_Dense<vector<float>, float> &A,
660  const view_Dense<matrix::Dense<float>, float> &B,
662 void sub(const view_Dense<vector<float>, float> &A,
663  const view_Dense<tensor::tensor_Dense<float>, float> &B,
665 void sub(const view_Dense<vector<float>, float> &A,
666  const view_Dense<tensor::tensor_Dense<float>, float> &B,
667  view_Dense<vector<float>, float> &C);
668 void sub(const view_Dense<vector<float>, float> &A,
669  const view_Dense<tensor::tensor_Dense<float>, float> &B,
670  view_Dense<matrix::Dense<float>, float> &C);
671 void sub(const view_Dense<vector<float>, float> &A,
672  const view_Dense<tensor::tensor_Dense<float>, float> &B,
674 void sub(const view_Dense<matrix::Dense<float>, float> &A,
676 void sub(const view_Dense<matrix::Dense<float>, float> &A,
677  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
678 void sub(const view_Dense<matrix::Dense<float>, float> &A,
679  const matrix::Dense<float> &B,
680  view_Dense<matrix::Dense<float>, float> &C);
681 void sub(const view_Dense<matrix::Dense<float>, float> &A,
682  const matrix::Dense<float> &B,
684 void sub(const view_Dense<matrix::Dense<float>, float> &A,
685  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
686 void sub(const view_Dense<matrix::Dense<float>, float> &A,
687  const view_Dense<vector<float>, float> &B,
688  view_Dense<vector<float>, float> &C);
689 void sub(const view_Dense<matrix::Dense<float>, float> &A,
690  const view_Dense<vector<float>, float> &B,
691  view_Dense<matrix::Dense<float>, float> &C);
692 void sub(const view_Dense<matrix::Dense<float>, float> &A,
693  const view_Dense<vector<float>, float> &B,
695 void sub(const view_Dense<matrix::Dense<float>, float> &A,
696  const view_Dense<matrix::Dense<float>, float> &B,
698 void sub(const view_Dense<matrix::Dense<float>, float> &A,
699  const view_Dense<matrix::Dense<float>, float> &B,
700  view_Dense<vector<float>, float> &C);
701 void sub(const view_Dense<matrix::Dense<float>, float> &A,
702  const view_Dense<matrix::Dense<float>, float> &B,
703  view_Dense<matrix::Dense<float>, float> &C);
704 void sub(const view_Dense<matrix::Dense<float>, float> &A,
705  const view_Dense<matrix::Dense<float>, float> &B,
707 void sub(const view_Dense<matrix::Dense<float>, float> &A,
708  const view_Dense<tensor::tensor_Dense<float>, float> &B,
710 void sub(const view_Dense<matrix::Dense<float>, float> &A,
711  const view_Dense<tensor::tensor_Dense<float>, float> &B,
712  view_Dense<vector<float>, float> &C);
713 void sub(const view_Dense<matrix::Dense<float>, float> &A,
714  const view_Dense<tensor::tensor_Dense<float>, float> &B,
715  view_Dense<matrix::Dense<float>, float> &C);
716 void sub(const view_Dense<matrix::Dense<float>, float> &A,
717  const view_Dense<tensor::tensor_Dense<float>, float> &B,
722  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
724  const matrix::Dense<float> &B,
725  view_Dense<matrix::Dense<float>, float> &C);
727  const matrix::Dense<float> &B,
730  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
732  const view_Dense<vector<float>, float> &B,
733  view_Dense<vector<float>, float> &C);
735  const view_Dense<vector<float>, float> &B,
736  view_Dense<matrix::Dense<float>, float> &C);
738  const view_Dense<vector<float>, float> &B,
741  const view_Dense<matrix::Dense<float>, float> &B,
744  const view_Dense<matrix::Dense<float>, float> &B,
745  view_Dense<vector<float>, float> &C);
747  const view_Dense<matrix::Dense<float>, float> &B,
748  view_Dense<matrix::Dense<float>, float> &C);
750  const view_Dense<matrix::Dense<float>, float> &B,
753  const view_Dense<tensor::tensor_Dense<float>, float> &B,
756  const view_Dense<tensor::tensor_Dense<float>, float> &B,
757  view_Dense<vector<float>, float> &C);
759  const view_Dense<tensor::tensor_Dense<float>, float> &B,
760  view_Dense<matrix::Dense<float>, float> &C);
762  const view_Dense<tensor::tensor_Dense<float>, float> &B,
785  view_Dense<vector<double>, double> &C);
787  view_Dense<matrix::Dense<double>, double> &C);
791  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
793  const view_Dense<vector<double>, double> &B,
794  view_Dense<vector<double>, double> &C);
796  const view_Dense<vector<double>, double> &B,
797  view_Dense<matrix::Dense<double>, double> &C);
799  const view_Dense<vector<double>, double> &B,
802  const view_Dense<matrix::Dense<double>, double> &B,
805  const view_Dense<matrix::Dense<double>, double> &B,
806  view_Dense<vector<double>, double> &C);
808  const view_Dense<matrix::Dense<double>, double> &B,
809  view_Dense<matrix::Dense<double>, double> &C);
811  const view_Dense<matrix::Dense<double>, double> &B,
814  const view_Dense<tensor::tensor_Dense<double>, double> &B,
817  const view_Dense<tensor::tensor_Dense<double>, double> &B,
818  view_Dense<vector<double>, double> &C);
820  const view_Dense<tensor::tensor_Dense<double>, double> &B,
821  view_Dense<matrix::Dense<double>, double> &C);
823  const view_Dense<tensor::tensor_Dense<double>, double> &B,
825 void mul(const view_Dense<vector<double>, double> &A,
827 void mul(const view_Dense<vector<double>, double> &A,
828  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
829 void mul(const view_Dense<vector<double>, double> &A,
830  const matrix::Dense<double> &B,
831  view_Dense<matrix::Dense<double>, double> &C);
832 void mul(const view_Dense<vector<double>, double> &A,
833  const matrix::Dense<double> &B,
835 void mul(const view_Dense<vector<double>, double> &A,
836  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
837 void mul(const view_Dense<vector<double>, double> &A,
838  const view_Dense<vector<double>, double> &B,
839  view_Dense<vector<double>, double> &C);
840 void mul(const view_Dense<vector<double>, double> &A,
841  const view_Dense<vector<double>, double> &B,
842  view_Dense<matrix::Dense<double>, double> &C);
843 void mul(const view_Dense<vector<double>, double> &A,
844  const view_Dense<vector<double>, double> &B,
846 void mul(const view_Dense<vector<double>, double> &A,
847  const view_Dense<matrix::Dense<double>, double> &B,
849 void mul(const view_Dense<vector<double>, double> &A,
850  const view_Dense<matrix::Dense<double>, double> &B,
851  view_Dense<vector<double>, double> &C);
852 void mul(const view_Dense<vector<double>, double> &A,
853  const view_Dense<matrix::Dense<double>, double> &B,
854  view_Dense<matrix::Dense<double>, double> &C);
855 void mul(const view_Dense<vector<double>, double> &A,
856  const view_Dense<matrix::Dense<double>, double> &B,
858 void mul(const view_Dense<vector<double>, double> &A,
859  const view_Dense<tensor::tensor_Dense<double>, double> &B,
861 void mul(const view_Dense<vector<double>, double> &A,
862  const view_Dense<tensor::tensor_Dense<double>, double> &B,
863  view_Dense<vector<double>, double> &C);
864 void mul(const view_Dense<vector<double>, double> &A,
865  const view_Dense<tensor::tensor_Dense<double>, double> &B,
866  view_Dense<matrix::Dense<double>, double> &C);
867 void mul(const view_Dense<vector<double>, double> &A,
868  const view_Dense<tensor::tensor_Dense<double>, double> &B,
870 void mul(const view_Dense<matrix::Dense<double>, double> &A,
872 void mul(const view_Dense<matrix::Dense<double>, double> &A,
873  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
874 void mul(const view_Dense<matrix::Dense<double>, double> &A,
875  const matrix::Dense<double> &B,
876  view_Dense<matrix::Dense<double>, double> &C);
877 void mul(const view_Dense<matrix::Dense<double>, double> &A,
878  const matrix::Dense<double> &B,
880 void mul(const view_Dense<matrix::Dense<double>, double> &A,
881  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
882 void mul(const view_Dense<matrix::Dense<double>, double> &A,
883  const view_Dense<vector<double>, double> &B,
884  view_Dense<vector<double>, double> &C);
885 void mul(const view_Dense<matrix::Dense<double>, double> &A,
886  const view_Dense<vector<double>, double> &B,
887  view_Dense<matrix::Dense<double>, double> &C);
888 void mul(const view_Dense<matrix::Dense<double>, double> &A,
889  const view_Dense<vector<double>, double> &B,
891 void mul(const view_Dense<matrix::Dense<double>, double> &A,
892  const view_Dense<matrix::Dense<double>, double> &B,
894 void mul(const view_Dense<matrix::Dense<double>, double> &A,
895  const view_Dense<matrix::Dense<double>, double> &B,
896  view_Dense<vector<double>, double> &C);
897 void mul(const view_Dense<matrix::Dense<double>, double> &A,
898  const view_Dense<matrix::Dense<double>, double> &B,
899  view_Dense<matrix::Dense<double>, double> &C);
900 void mul(const view_Dense<matrix::Dense<double>, double> &A,
901  const view_Dense<matrix::Dense<double>, double> &B,
903 void mul(const view_Dense<matrix::Dense<double>, double> &A,
904  const view_Dense<tensor::tensor_Dense<double>, double> &B,
906 void mul(const view_Dense<matrix::Dense<double>, double> &A,
907  const view_Dense<tensor::tensor_Dense<double>, double> &B,
908  view_Dense<vector<double>, double> &C);
909 void mul(const view_Dense<matrix::Dense<double>, double> &A,
910  const view_Dense<tensor::tensor_Dense<double>, double> &B,
911  view_Dense<matrix::Dense<double>, double> &C);
912 void mul(const view_Dense<matrix::Dense<double>, double> &A,
913  const view_Dense<tensor::tensor_Dense<double>, double> &B,
918  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
920  const matrix::Dense<double> &B,
921  view_Dense<matrix::Dense<double>, double> &C);
923  const matrix::Dense<double> &B,
926  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
928  const view_Dense<vector<double>, double> &B,
929  view_Dense<vector<double>, double> &C);
931  const view_Dense<vector<double>, double> &B,
932  view_Dense<matrix::Dense<double>, double> &C);
934  const view_Dense<vector<double>, double> &B,
937  const view_Dense<matrix::Dense<double>, double> &B,
940  const view_Dense<matrix::Dense<double>, double> &B,
941  view_Dense<vector<double>, double> &C);
943  const view_Dense<matrix::Dense<double>, double> &B,
944  view_Dense<matrix::Dense<double>, double> &C);
946  const view_Dense<matrix::Dense<double>, double> &B,
949  const view_Dense<tensor::tensor_Dense<double>, double> &B,
952  const view_Dense<tensor::tensor_Dense<double>, double> &B,
953  view_Dense<vector<double>, double> &C);
955  const view_Dense<tensor::tensor_Dense<double>, double> &B,
956  view_Dense<matrix::Dense<double>, double> &C);
958  const view_Dense<tensor::tensor_Dense<double>, double> &B,
963  view_Dense<vector<float>, float> &C);
965  view_Dense<matrix::Dense<float>, float> &C);
968 void mul(const matrix::Dense<float> &A,
969  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
970 void mul(const matrix::Dense<float> &A,
971  const view_Dense<vector<float>, float> &B,
972  view_Dense<vector<float>, float> &C);
973 void mul(const matrix::Dense<float> &A,
974  const view_Dense<vector<float>, float> &B,
975  view_Dense<matrix::Dense<float>, float> &C);
976 void mul(const matrix::Dense<float> &A,
977  const view_Dense<vector<float>, float> &B,
979 void mul(const matrix::Dense<float> &A,
980  const view_Dense<matrix::Dense<float>, float> &B,
982 void mul(const matrix::Dense<float> &A,
983  const view_Dense<matrix::Dense<float>, float> &B,
984  view_Dense<vector<float>, float> &C);
985 void mul(const matrix::Dense<float> &A,
986  const view_Dense<matrix::Dense<float>, float> &B,
987  view_Dense<matrix::Dense<float>, float> &C);
988 void mul(const matrix::Dense<float> &A,
989  const view_Dense<matrix::Dense<float>, float> &B,
991 void mul(const matrix::Dense<float> &A,
992  const view_Dense<tensor::tensor_Dense<float>, float> &B,
994 void mul(const matrix::Dense<float> &A,
995  const view_Dense<tensor::tensor_Dense<float>, float> &B,
996  view_Dense<vector<float>, float> &C);
997 void mul(const matrix::Dense<float> &A,
998  const view_Dense<tensor::tensor_Dense<float>, float> &B,
999  view_Dense<matrix::Dense<float>, float> &C);
1001  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1003 void mul(const view_Dense<vector<float>, float> &A,
1005 void mul(const view_Dense<vector<float>, float> &A,
1006  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
1007 void mul(const view_Dense<vector<float>, float> &A,
1008  const matrix::Dense<float> &B,
1009  view_Dense<matrix::Dense<float>, float> &C);
1010 void mul(const view_Dense<vector<float>, float> &A,
1011  const matrix::Dense<float> &B,
1013 void mul(const view_Dense<vector<float>, float> &A,
1014  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1015 void mul(const view_Dense<vector<float>, float> &A,
1016  const view_Dense<vector<float>, float> &B,
1017  view_Dense<vector<float>, float> &C);
1018 void mul(const view_Dense<vector<float>, float> &A,
1019  const view_Dense<vector<float>, float> &B,
1020  view_Dense<matrix::Dense<float>, float> &C);
1021 void mul(const view_Dense<vector<float>, float> &A,
1022  const view_Dense<vector<float>, float> &B,
1024 void mul(const view_Dense<vector<float>, float> &A,
1025  const view_Dense<matrix::Dense<float>, float> &B,
1027 void mul(const view_Dense<vector<float>, float> &A,
1028  const view_Dense<matrix::Dense<float>, float> &B,
1029  view_Dense<vector<float>, float> &C);
1030 void mul(const view_Dense<vector<float>, float> &A,
1031  const view_Dense<matrix::Dense<float>, float> &B,
1032  view_Dense<matrix::Dense<float>, float> &C);
1033 void mul(const view_Dense<vector<float>, float> &A,
1034  const view_Dense<matrix::Dense<float>, float> &B,
1036 void mul(const view_Dense<vector<float>, float> &A,
1037  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1039 void mul(const view_Dense<vector<float>, float> &A,
1040  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1041  view_Dense<vector<float>, float> &C);
1042 void mul(const view_Dense<vector<float>, float> &A,
1043  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1044  view_Dense<matrix::Dense<float>, float> &C);
1045 void mul(const view_Dense<vector<float>, float> &A,
1046  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1048 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1050 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1051  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
1052 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1053  const matrix::Dense<float> &B,
1054  view_Dense<matrix::Dense<float>, float> &C);
1055 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1056  const matrix::Dense<float> &B,
1058 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1059  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1060 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1061  const view_Dense<vector<float>, float> &B,
1062  view_Dense<vector<float>, float> &C);
1063 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1064  const view_Dense<vector<float>, float> &B,
1065  view_Dense<matrix::Dense<float>, float> &C);
1066 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1067  const view_Dense<vector<float>, float> &B,
1069 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1070  const view_Dense<matrix::Dense<float>, float> &B,
1072 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1073  const view_Dense<matrix::Dense<float>, float> &B,
1074  view_Dense<vector<float>, float> &C);
1075 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1076  const view_Dense<matrix::Dense<float>, float> &B,
1077  view_Dense<matrix::Dense<float>, float> &C);
1078 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1079  const view_Dense<matrix::Dense<float>, float> &B,
1081 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1082  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1084 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1085  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1086  view_Dense<vector<float>, float> &C);
1087 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1088  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1089  view_Dense<matrix::Dense<float>, float> &C);
1090 void mul(const view_Dense<matrix::Dense<float>, float> &A,
1091  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1096  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
1098  const matrix::Dense<float> &B,
1099  view_Dense<matrix::Dense<float>, float> &C);
1101  const matrix::Dense<float> &B,
1104  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1106  const view_Dense<vector<float>, float> &B,
1107  view_Dense<vector<float>, float> &C);
1109  const view_Dense<vector<float>, float> &B,
1110  view_Dense<matrix::Dense<float>, float> &C);
1112  const view_Dense<vector<float>, float> &B,
1115  const view_Dense<matrix::Dense<float>, float> &B,
1118  const view_Dense<matrix::Dense<float>, float> &B,
1119  view_Dense<vector<float>, float> &C);
1121  const view_Dense<matrix::Dense<float>, float> &B,
1122  view_Dense<matrix::Dense<float>, float> &C);
1124  const view_Dense<matrix::Dense<float>, float> &B,
1127  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1130  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1131  view_Dense<vector<float>, float> &C);
1133  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1134  view_Dense<matrix::Dense<float>, float> &C);
1136  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1159  view_Dense<vector<double>, double> &C);
1161  view_Dense<matrix::Dense<double>, double> &C);
1165  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1167  const view_Dense<vector<double>, double> &B,
1168  view_Dense<vector<double>, double> &C);
1170  const view_Dense<vector<double>, double> &B,
1171  view_Dense<matrix::Dense<double>, double> &C);
1173  const view_Dense<vector<double>, double> &B,
1176  const view_Dense<matrix::Dense<double>, double> &B,
1179  const view_Dense<matrix::Dense<double>, double> &B,
1180  view_Dense<vector<double>, double> &C);
1182  const view_Dense<matrix::Dense<double>, double> &B,
1183  view_Dense<matrix::Dense<double>, double> &C);
1185  const view_Dense<matrix::Dense<double>, double> &B,
1188  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1191  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1192  view_Dense<vector<double>, double> &C);
1194  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1195  view_Dense<matrix::Dense<double>, double> &C);
1197  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1199 void div(const view_Dense<vector<double>, double> &A,
1201 void div(const view_Dense<vector<double>, double> &A,
1202  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
1203 void div(const view_Dense<vector<double>, double> &A,
1204  const matrix::Dense<double> &B,
1205  view_Dense<matrix::Dense<double>, double> &C);
1206 void div(const view_Dense<vector<double>, double> &A,
1207  const matrix::Dense<double> &B,
1209 void div(const view_Dense<vector<double>, double> &A,
1210  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1211 void div(const view_Dense<vector<double>, double> &A,
1212  const view_Dense<vector<double>, double> &B,
1213  view_Dense<vector<double>, double> &C);
1214 void div(const view_Dense<vector<double>, double> &A,
1215  const view_Dense<vector<double>, double> &B,
1216  view_Dense<matrix::Dense<double>, double> &C);
1217 void div(const view_Dense<vector<double>, double> &A,
1218  const view_Dense<vector<double>, double> &B,
1220 void div(const view_Dense<vector<double>, double> &A,
1221  const view_Dense<matrix::Dense<double>, double> &B,
1223 void div(const view_Dense<vector<double>, double> &A,
1224  const view_Dense<matrix::Dense<double>, double> &B,
1225  view_Dense<vector<double>, double> &C);
1226 void div(const view_Dense<vector<double>, double> &A,
1227  const view_Dense<matrix::Dense<double>, double> &B,
1228  view_Dense<matrix::Dense<double>, double> &C);
1229 void div(const view_Dense<vector<double>, double> &A,
1230  const view_Dense<matrix::Dense<double>, double> &B,
1232 void div(const view_Dense<vector<double>, double> &A,
1233  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1235 void div(const view_Dense<vector<double>, double> &A,
1236  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1237  view_Dense<vector<double>, double> &C);
1238 void div(const view_Dense<vector<double>, double> &A,
1239  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1240  view_Dense<matrix::Dense<double>, double> &C);
1241 void div(const view_Dense<vector<double>, double> &A,
1242  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1244 void div(const view_Dense<matrix::Dense<double>, double> &A,
1246 void div(const view_Dense<matrix::Dense<double>, double> &A,
1247  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
1248 void div(const view_Dense<matrix::Dense<double>, double> &A,
1249  const matrix::Dense<double> &B,
1250  view_Dense<matrix::Dense<double>, double> &C);
1251 void div(const view_Dense<matrix::Dense<double>, double> &A,
1252  const matrix::Dense<double> &B,
1254 void div(const view_Dense<matrix::Dense<double>, double> &A,
1255  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1256 void div(const view_Dense<matrix::Dense<double>, double> &A,
1257  const view_Dense<vector<double>, double> &B,
1258  view_Dense<vector<double>, double> &C);
1259 void div(const view_Dense<matrix::Dense<double>, double> &A,
1260  const view_Dense<vector<double>, double> &B,
1261  view_Dense<matrix::Dense<double>, double> &C);
1262 void div(const view_Dense<matrix::Dense<double>, double> &A,
1263  const view_Dense<vector<double>, double> &B,
1265 void div(const view_Dense<matrix::Dense<double>, double> &A,
1266  const view_Dense<matrix::Dense<double>, double> &B,
1268 void div(const view_Dense<matrix::Dense<double>, double> &A,
1269  const view_Dense<matrix::Dense<double>, double> &B,
1270  view_Dense<vector<double>, double> &C);
1271 void div(const view_Dense<matrix::Dense<double>, double> &A,
1272  const view_Dense<matrix::Dense<double>, double> &B,
1273  view_Dense<matrix::Dense<double>, double> &C);
1274 void div(const view_Dense<matrix::Dense<double>, double> &A,
1275  const view_Dense<matrix::Dense<double>, double> &B,
1277 void div(const view_Dense<matrix::Dense<double>, double> &A,
1278  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1280 void div(const view_Dense<matrix::Dense<double>, double> &A,
1281  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1282  view_Dense<vector<double>, double> &C);
1283 void div(const view_Dense<matrix::Dense<double>, double> &A,
1284  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1285  view_Dense<matrix::Dense<double>, double> &C);
1286 void div(const view_Dense<matrix::Dense<double>, double> &A,
1287  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1292  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
1294  const matrix::Dense<double> &B,
1295  view_Dense<matrix::Dense<double>, double> &C);
1297  const matrix::Dense<double> &B,
1300  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1302  const view_Dense<vector<double>, double> &B,
1303  view_Dense<vector<double>, double> &C);
1305  const view_Dense<vector<double>, double> &B,
1306  view_Dense<matrix::Dense<double>, double> &C);
1308  const view_Dense<vector<double>, double> &B,
1311  const view_Dense<matrix::Dense<double>, double> &B,
1314  const view_Dense<matrix::Dense<double>, double> &B,
1315  view_Dense<vector<double>, double> &C);
1317  const view_Dense<matrix::Dense<double>, double> &B,
1318  view_Dense<matrix::Dense<double>, double> &C);
1320  const view_Dense<matrix::Dense<double>, double> &B,
1323  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1326  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1327  view_Dense<vector<double>, double> &C);
1329  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1330  view_Dense<matrix::Dense<double>, double> &C);
1332  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1337  view_Dense<vector<float>, float> &C);
1339  view_Dense<matrix::Dense<float>, float> &C);
1343  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1345  const view_Dense<vector<float>, float> &B,
1346  view_Dense<vector<float>, float> &C);
1348  const view_Dense<vector<float>, float> &B,
1349  view_Dense<matrix::Dense<float>, float> &C);
1351  const view_Dense<vector<float>, float> &B,
1354  const view_Dense<matrix::Dense<float>, float> &B,
1357  const view_Dense<matrix::Dense<float>, float> &B,
1358  view_Dense<vector<float>, float> &C);
1360  const view_Dense<matrix::Dense<float>, float> &B,
1361  view_Dense<matrix::Dense<float>, float> &C);
1363  const view_Dense<matrix::Dense<float>, float> &B,
1366  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1369  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1370  view_Dense<vector<float>, float> &C);
1372  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1373  view_Dense<matrix::Dense<float>, float> &C);
1375  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1377 void div(const view_Dense<vector<float>, float> &A,
1379 void div(const view_Dense<vector<float>, float> &A,
1380  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
1381 void div(const view_Dense<vector<float>, float> &A,
1382  const matrix::Dense<float> &B,
1383  view_Dense<matrix::Dense<float>, float> &C);
1384 void div(const view_Dense<vector<float>, float> &A,
1385  const matrix::Dense<float> &B,
1387 void div(const view_Dense<vector<float>, float> &A,
1388  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1389 void div(const view_Dense<vector<float>, float> &A,
1390  const view_Dense<vector<float>, float> &B,
1391  view_Dense<vector<float>, float> &C);
1392 void div(const view_Dense<vector<float>, float> &A,
1393  const view_Dense<vector<float>, float> &B,
1394  view_Dense<matrix::Dense<float>, float> &C);
1395 void div(const view_Dense<vector<float>, float> &A,
1396  const view_Dense<vector<float>, float> &B,
1398 void div(const view_Dense<vector<float>, float> &A,
1399  const view_Dense<matrix::Dense<float>, float> &B,
1401 void div(const view_Dense<vector<float>, float> &A,
1402  const view_Dense<matrix::Dense<float>, float> &B,
1403  view_Dense<vector<float>, float> &C);
1404 void div(const view_Dense<vector<float>, float> &A,
1405  const view_Dense<matrix::Dense<float>, float> &B,
1406  view_Dense<matrix::Dense<float>, float> &C);
1407 void div(const view_Dense<vector<float>, float> &A,
1408  const view_Dense<matrix::Dense<float>, float> &B,
1410 void div(const view_Dense<vector<float>, float> &A,
1411  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1413 void div(const view_Dense<vector<float>, float> &A,
1414  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1415  view_Dense<vector<float>, float> &C);
1416 void div(const view_Dense<vector<float>, float> &A,
1417  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1418  view_Dense<matrix::Dense<float>, float> &C);
1419 void div(const view_Dense<vector<float>, float> &A,
1420  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1422 void div(const view_Dense<matrix::Dense<float>, float> &A,
1424 void div(const view_Dense<matrix::Dense<float>, float> &A,
1425  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
1426 void div(const view_Dense<matrix::Dense<float>, float> &A,
1427  const matrix::Dense<float> &B,
1428  view_Dense<matrix::Dense<float>, float> &C);
1429 void div(const view_Dense<matrix::Dense<float>, float> &A,
1430  const matrix::Dense<float> &B,
1432 void div(const view_Dense<matrix::Dense<float>, float> &A,
1433  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1434 void div(const view_Dense<matrix::Dense<float>, float> &A,
1435  const view_Dense<vector<float>, float> &B,
1436  view_Dense<vector<float>, float> &C);
1437 void div(const view_Dense<matrix::Dense<float>, float> &A,
1438  const view_Dense<vector<float>, float> &B,
1439  view_Dense<matrix::Dense<float>, float> &C);
1440 void div(const view_Dense<matrix::Dense<float>, float> &A,
1441  const view_Dense<vector<float>, float> &B,
1443 void div(const view_Dense<matrix::Dense<float>, float> &A,
1444  const view_Dense<matrix::Dense<float>, float> &B,
1446 void div(const view_Dense<matrix::Dense<float>, float> &A,
1447  const view_Dense<matrix::Dense<float>, float> &B,
1448  view_Dense<vector<float>, float> &C);
1449 void div(const view_Dense<matrix::Dense<float>, float> &A,
1450  const view_Dense<matrix::Dense<float>, float> &B,
1451  view_Dense<matrix::Dense<float>, float> &C);
1452 void div(const view_Dense<matrix::Dense<float>, float> &A,
1453  const view_Dense<matrix::Dense<float>, float> &B,
1455 void div(const view_Dense<matrix::Dense<float>, float> &A,
1456  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1458 void div(const view_Dense<matrix::Dense<float>, float> &A,
1459  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1460  view_Dense<vector<float>, float> &C);
1461 void div(const view_Dense<matrix::Dense<float>, float> &A,
1462  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1463  view_Dense<matrix::Dense<float>, float> &C);
1464 void div(const view_Dense<matrix::Dense<float>, float> &A,
1465  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1470  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
1472  const matrix::Dense<float> &B,
1473  view_Dense<matrix::Dense<float>, float> &C);
1475  const matrix::Dense<float> &B,
1478  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
1480  const view_Dense<vector<float>, float> &B,
1481  view_Dense<vector<float>, float> &C);
1483  const view_Dense<vector<float>, float> &B,
1484  view_Dense<matrix::Dense<float>, float> &C);
1486  const view_Dense<vector<float>, float> &B,
1489  const view_Dense<matrix::Dense<float>, float> &B,
1492  const view_Dense<matrix::Dense<float>, float> &B,
1493  view_Dense<vector<float>, float> &C);
1495  const view_Dense<matrix::Dense<float>, float> &B,
1496  view_Dense<matrix::Dense<float>, float> &C);
1498  const view_Dense<matrix::Dense<float>, float> &B,
1501  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1504  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1505  view_Dense<vector<float>, float> &C);
1507  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1508  view_Dense<matrix::Dense<float>, float> &C);
1510  const view_Dense<tensor::tensor_Dense<float>, float> &B,
1530 void add(const matrix::Dense<double> &A, const double alpha,
1532 void add(const matrix::Dense<double> &A, const double alpha,
1533  view_Dense<vector<double>, double> &C);
1534 void add(const matrix::Dense<double> &A, const double alpha,
1535  view_Dense<matrix::Dense<double>, double> &C);
1536 void add(const matrix::Dense<double> &A, const double alpha,
1538 void add(const view_Dense<vector<double>, double> &A, const double alpha,
1540 void add(const view_Dense<vector<double>, double> &A, const double alpha,
1541  view_Dense<vector<double>, double> &C);
1542 void add(const view_Dense<vector<double>, double> &A, const double alpha,
1543  view_Dense<matrix::Dense<double>, double> &C);
1544 void add(const view_Dense<vector<double>, double> &A, const double alpha,
1546 void add(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1548 void add(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1549  view_Dense<vector<double>, double> &C);
1550 void add(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1551  view_Dense<matrix::Dense<double>, double> &C);
1552 void add(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1555  const double alpha, matrix::Dense<double> &C);
1557  const double alpha, view_Dense<vector<double>, double> &C);
1559  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
1561  const double alpha,
1563 void add(const matrix::Dense<float> &A, const float alpha,
1565 void add(const matrix::Dense<float> &A, const float alpha,
1566  view_Dense<vector<float>, float> &C);
1567 void add(const matrix::Dense<float> &A, const float alpha,
1568  view_Dense<matrix::Dense<float>, float> &C);
1569 void add(const matrix::Dense<float> &A, const float alpha,
1571 void add(const view_Dense<vector<float>, float> &A, const float alpha,
1573 void add(const view_Dense<vector<float>, float> &A, const float alpha,
1574  view_Dense<vector<float>, float> &C);
1575 void add(const view_Dense<vector<float>, float> &A, const float alpha,
1576  view_Dense<matrix::Dense<float>, float> &C);
1577 void add(const view_Dense<vector<float>, float> &A, const float alpha,
1579 void add(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1581 void add(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1582  view_Dense<vector<float>, float> &C);
1583 void add(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1584  view_Dense<matrix::Dense<float>, float> &C);
1585 void add(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1588  const float alpha, matrix::Dense<float> &C);
1590  const float alpha, view_Dense<vector<float>, float> &C);
1592  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
1594  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
1613 void sub(const matrix::Dense<double> &A, const double alpha,
1615 void sub(const matrix::Dense<double> &A, const double alpha,
1616  view_Dense<vector<double>, double> &C);
1617 void sub(const matrix::Dense<double> &A, const double alpha,
1618  view_Dense<matrix::Dense<double>, double> &C);
1619 void sub(const matrix::Dense<double> &A, const double alpha,
1621 void sub(const view_Dense<vector<double>, double> &A, const double alpha,
1623 void sub(const view_Dense<vector<double>, double> &A, const double alpha,
1624  view_Dense<vector<double>, double> &C);
1625 void sub(const view_Dense<vector<double>, double> &A, const double alpha,
1626  view_Dense<matrix::Dense<double>, double> &C);
1627 void sub(const view_Dense<vector<double>, double> &A, const double alpha,
1629 void sub(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1631 void sub(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1632  view_Dense<vector<double>, double> &C);
1633 void sub(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1634  view_Dense<matrix::Dense<double>, double> &C);
1635 void sub(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1638  const double alpha, matrix::Dense<double> &C);
1640  const double alpha, view_Dense<vector<double>, double> &C);
1642  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
1644  const double alpha,
1646 void sub(const matrix::Dense<float> &A, const float alpha,
1648 void sub(const matrix::Dense<float> &A, const float alpha,
1649  view_Dense<vector<float>, float> &C);
1650 void sub(const matrix::Dense<float> &A, const float alpha,
1651  view_Dense<matrix::Dense<float>, float> &C);
1652 void sub(const matrix::Dense<float> &A, const float alpha,
1654 void sub(const view_Dense<vector<float>, float> &A, const float alpha,
1656 void sub(const view_Dense<vector<float>, float> &A, const float alpha,
1657  view_Dense<vector<float>, float> &C);
1658 void sub(const view_Dense<vector<float>, float> &A, const float alpha,
1659  view_Dense<matrix::Dense<float>, float> &C);
1660 void sub(const view_Dense<vector<float>, float> &A, const float alpha,
1662 void sub(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1664 void sub(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1665  view_Dense<vector<float>, float> &C);
1666 void sub(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1667  view_Dense<matrix::Dense<float>, float> &C);
1668 void sub(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1671  const float alpha, matrix::Dense<float> &C);
1673  const float alpha, view_Dense<vector<float>, float> &C);
1675  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
1677  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
1696 void mul(const matrix::Dense<double> &A, const double alpha,
1698 void mul(const matrix::Dense<double> &A, const double alpha,
1699  view_Dense<vector<double>, double> &C);
1700 void mul(const matrix::Dense<double> &A, const double alpha,
1701  view_Dense<matrix::Dense<double>, double> &C);
1702 void mul(const matrix::Dense<double> &A, const double alpha,
1704 void mul(const view_Dense<vector<double>, double> &A, const double alpha,
1706 void mul(const view_Dense<vector<double>, double> &A, const double alpha,
1707  view_Dense<vector<double>, double> &C);
1708 void mul(const view_Dense<vector<double>, double> &A, const double alpha,
1709  view_Dense<matrix::Dense<double>, double> &C);
1710 void mul(const view_Dense<vector<double>, double> &A, const double alpha,
1712 void mul(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1714 void mul(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1715  view_Dense<vector<double>, double> &C);
1716 void mul(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1717  view_Dense<matrix::Dense<double>, double> &C);
1718 void mul(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1721  const double alpha, matrix::Dense<double> &C);
1723  const double alpha, view_Dense<vector<double>, double> &C);
1725  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
1727  const double alpha,
1729 void mul(const matrix::Dense<float> &A, const float alpha,
1731 void mul(const matrix::Dense<float> &A, const float alpha,
1732  view_Dense<vector<float>, float> &C);
1733 void mul(const matrix::Dense<float> &A, const float alpha,
1734  view_Dense<matrix::Dense<float>, float> &C);
1735 void mul(const matrix::Dense<float> &A, const float alpha,
1737 void mul(const view_Dense<vector<float>, float> &A, const float alpha,
1739 void mul(const view_Dense<vector<float>, float> &A, const float alpha,
1740  view_Dense<vector<float>, float> &C);
1741 void mul(const view_Dense<vector<float>, float> &A, const float alpha,
1742  view_Dense<matrix::Dense<float>, float> &C);
1743 void mul(const view_Dense<vector<float>, float> &A, const float alpha,
1745 void mul(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1747 void mul(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1748  view_Dense<vector<float>, float> &C);
1749 void mul(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1750  view_Dense<matrix::Dense<float>, float> &C);
1751 void mul(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1754  const float alpha, matrix::Dense<float> &C);
1756  const float alpha, view_Dense<vector<float>, float> &C);
1758  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
1760  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
1779 void div(const matrix::Dense<double> &A, const double alpha,
1781 void div(const matrix::Dense<double> &A, const double alpha,
1782  view_Dense<vector<double>, double> &C);
1783 void div(const matrix::Dense<double> &A, const double alpha,
1784  view_Dense<matrix::Dense<double>, double> &C);
1785 void div(const matrix::Dense<double> &A, const double alpha,
1787 void div(const view_Dense<vector<double>, double> &A, const double alpha,
1789 void div(const view_Dense<vector<double>, double> &A, const double alpha,
1790  view_Dense<vector<double>, double> &C);
1791 void div(const view_Dense<vector<double>, double> &A, const double alpha,
1792  view_Dense<matrix::Dense<double>, double> &C);
1793 void div(const view_Dense<vector<double>, double> &A, const double alpha,
1795 void div(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1797 void div(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1798  view_Dense<vector<double>, double> &C);
1799 void div(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1800  view_Dense<matrix::Dense<double>, double> &C);
1801 void div(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
1804  const double alpha, matrix::Dense<double> &C);
1806  const double alpha, view_Dense<vector<double>, double> &C);
1808  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
1810  const double alpha,
1812 void div(const matrix::Dense<float> &A, const float alpha,
1814 void div(const matrix::Dense<float> &A, const float alpha,
1815  view_Dense<vector<float>, float> &C);
1816 void div(const matrix::Dense<float> &A, const float alpha,
1817  view_Dense<matrix::Dense<float>, float> &C);
1818 void div(const matrix::Dense<float> &A, const float alpha,
1820 void div(const view_Dense<vector<float>, float> &A, const float alpha,
1822 void div(const view_Dense<vector<float>, float> &A, const float alpha,
1823  view_Dense<vector<float>, float> &C);
1824 void div(const view_Dense<vector<float>, float> &A, const float alpha,
1825  view_Dense<matrix::Dense<float>, float> &C);
1826 void div(const view_Dense<vector<float>, float> &A, const float alpha,
1828 void div(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1830 void div(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1831  view_Dense<vector<float>, float> &C);
1832 void div(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1833  view_Dense<matrix::Dense<float>, float> &C);
1834 void div(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
1837  const float alpha, matrix::Dense<float> &C);
1839  const float alpha, view_Dense<vector<float>, float> &C);
1841  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
1843  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
1864  view_Dense<vector<double>, double> &C);
1866  view_Dense<matrix::Dense<double>, double> &C);
1870  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1872  const view_Dense<vector<double>, double> &B,
1873  view_Dense<vector<double>, double> &C);
1875  const view_Dense<vector<double>, double> &B,
1876  view_Dense<matrix::Dense<double>, double> &C);
1878  const view_Dense<vector<double>, double> &B,
1881  const view_Dense<matrix::Dense<double>, double> &B,
1884  const view_Dense<matrix::Dense<double>, double> &B,
1885  view_Dense<vector<double>, double> &C);
1887  const view_Dense<matrix::Dense<double>, double> &B,
1888  view_Dense<matrix::Dense<double>, double> &C);
1890  const view_Dense<matrix::Dense<double>, double> &B,
1893  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1896  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1897  view_Dense<vector<double>, double> &C);
1899  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1900  view_Dense<matrix::Dense<double>, double> &C);
1902  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1904 void pow(const view_Dense<vector<double>, double> &A,
1906 void pow(const view_Dense<vector<double>, double> &A,
1907  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
1908 void pow(const view_Dense<vector<double>, double> &A,
1909  const matrix::Dense<double> &B,
1910  view_Dense<matrix::Dense<double>, double> &C);
1911 void pow(const view_Dense<vector<double>, double> &A,
1912  const matrix::Dense<double> &B,
1914 void pow(const view_Dense<vector<double>, double> &A,
1915  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1916 void pow(const view_Dense<vector<double>, double> &A,
1917  const view_Dense<vector<double>, double> &B,
1918  view_Dense<vector<double>, double> &C);
1919 void pow(const view_Dense<vector<double>, double> &A,
1920  const view_Dense<vector<double>, double> &B,
1921  view_Dense<matrix::Dense<double>, double> &C);
1922 void pow(const view_Dense<vector<double>, double> &A,
1923  const view_Dense<vector<double>, double> &B,
1925 void pow(const view_Dense<vector<double>, double> &A,
1926  const view_Dense<matrix::Dense<double>, double> &B,
1928 void pow(const view_Dense<vector<double>, double> &A,
1929  const view_Dense<matrix::Dense<double>, double> &B,
1930  view_Dense<vector<double>, double> &C);
1931 void pow(const view_Dense<vector<double>, double> &A,
1932  const view_Dense<matrix::Dense<double>, double> &B,
1933  view_Dense<matrix::Dense<double>, double> &C);
1934 void pow(const view_Dense<vector<double>, double> &A,
1935  const view_Dense<matrix::Dense<double>, double> &B,
1937 void pow(const view_Dense<vector<double>, double> &A,
1938  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1940 void pow(const view_Dense<vector<double>, double> &A,
1941  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1942  view_Dense<vector<double>, double> &C);
1943 void pow(const view_Dense<vector<double>, double> &A,
1944  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1945  view_Dense<matrix::Dense<double>, double> &C);
1946 void pow(const view_Dense<vector<double>, double> &A,
1947  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1949 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1951 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1952  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
1953 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1954  const matrix::Dense<double> &B,
1955  view_Dense<matrix::Dense<double>, double> &C);
1956 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1957  const matrix::Dense<double> &B,
1959 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1960  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
1961 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1962  const view_Dense<vector<double>, double> &B,
1963  view_Dense<vector<double>, double> &C);
1964 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1965  const view_Dense<vector<double>, double> &B,
1966  view_Dense<matrix::Dense<double>, double> &C);
1967 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1968  const view_Dense<vector<double>, double> &B,
1970 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1971  const view_Dense<matrix::Dense<double>, double> &B,
1973 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1974  const view_Dense<matrix::Dense<double>, double> &B,
1975  view_Dense<vector<double>, double> &C);
1976 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1977  const view_Dense<matrix::Dense<double>, double> &B,
1978  view_Dense<matrix::Dense<double>, double> &C);
1979 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1980  const view_Dense<matrix::Dense<double>, double> &B,
1982 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1983  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1985 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1986  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1987  view_Dense<vector<double>, double> &C);
1988 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1989  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1990  view_Dense<matrix::Dense<double>, double> &C);
1991 void pow(const view_Dense<matrix::Dense<double>, double> &A,
1992  const view_Dense<tensor::tensor_Dense<double>, double> &B,
1997  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
1999  const matrix::Dense<double> &B,
2000  view_Dense<matrix::Dense<double>, double> &C);
2002  const matrix::Dense<double> &B,
2005  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
2007  const view_Dense<vector<double>, double> &B,
2008  view_Dense<vector<double>, double> &C);
2010  const view_Dense<vector<double>, double> &B,
2011  view_Dense<matrix::Dense<double>, double> &C);
2013  const view_Dense<vector<double>, double> &B,
2016  const view_Dense<matrix::Dense<double>, double> &B,
2019  const view_Dense<matrix::Dense<double>, double> &B,
2020  view_Dense<vector<double>, double> &C);
2022  const view_Dense<matrix::Dense<double>, double> &B,
2023  view_Dense<matrix::Dense<double>, double> &C);
2025  const view_Dense<matrix::Dense<double>, double> &B,
2028  const view_Dense<tensor::tensor_Dense<double>, double> &B,
2031  const view_Dense<tensor::tensor_Dense<double>, double> &B,
2032  view_Dense<vector<double>, double> &C);
2034  const view_Dense<tensor::tensor_Dense<double>, double> &B,
2035  view_Dense<matrix::Dense<double>, double> &C);
2037  const view_Dense<tensor::tensor_Dense<double>, double> &B,
2042  view_Dense<vector<float>, float> &C);
2044  view_Dense<matrix::Dense<float>, float> &C);
2048  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
2050  const view_Dense<vector<float>, float> &B,
2051  view_Dense<vector<float>, float> &C);
2053  const view_Dense<vector<float>, float> &B,
2054  view_Dense<matrix::Dense<float>, float> &C);
2056  const view_Dense<vector<float>, float> &B,
2059  const view_Dense<matrix::Dense<float>, float> &B,
2062  const view_Dense<matrix::Dense<float>, float> &B,
2063  view_Dense<vector<float>, float> &C);
2065  const view_Dense<matrix::Dense<float>, float> &B,
2066  view_Dense<matrix::Dense<float>, float> &C);
2068  const view_Dense<matrix::Dense<float>, float> &B,
2071  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2074  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2075  view_Dense<vector<float>, float> &C);
2077  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2078  view_Dense<matrix::Dense<float>, float> &C);
2080  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2082 void pow(const view_Dense<vector<float>, float> &A,
2084 void pow(const view_Dense<vector<float>, float> &A,
2085  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
2086 void pow(const view_Dense<vector<float>, float> &A,
2087  const matrix::Dense<float> &B,
2088  view_Dense<matrix::Dense<float>, float> &C);
2089 void pow(const view_Dense<vector<float>, float> &A,
2090  const matrix::Dense<float> &B,
2092 void pow(const view_Dense<vector<float>, float> &A,
2093  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
2094 void pow(const view_Dense<vector<float>, float> &A,
2095  const view_Dense<vector<float>, float> &B,
2096  view_Dense<vector<float>, float> &C);
2097 void pow(const view_Dense<vector<float>, float> &A,
2098  const view_Dense<vector<float>, float> &B,
2099  view_Dense<matrix::Dense<float>, float> &C);
2100 void pow(const view_Dense<vector<float>, float> &A,
2101  const view_Dense<vector<float>, float> &B,
2103 void pow(const view_Dense<vector<float>, float> &A,
2104  const view_Dense<matrix::Dense<float>, float> &B,
2106 void pow(const view_Dense<vector<float>, float> &A,
2107  const view_Dense<matrix::Dense<float>, float> &B,
2108  view_Dense<vector<float>, float> &C);
2109 void pow(const view_Dense<vector<float>, float> &A,
2110  const view_Dense<matrix::Dense<float>, float> &B,
2111  view_Dense<matrix::Dense<float>, float> &C);
2112 void pow(const view_Dense<vector<float>, float> &A,
2113  const view_Dense<matrix::Dense<float>, float> &B,
2115 void pow(const view_Dense<vector<float>, float> &A,
2116  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2118 void pow(const view_Dense<vector<float>, float> &A,
2119  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2120  view_Dense<vector<float>, float> &C);
2121 void pow(const view_Dense<vector<float>, float> &A,
2122  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2123  view_Dense<matrix::Dense<float>, float> &C);
2124 void pow(const view_Dense<vector<float>, float> &A,
2125  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2127 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2129 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2130  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
2131 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2132  const matrix::Dense<float> &B,
2133  view_Dense<matrix::Dense<float>, float> &C);
2134 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2135  const matrix::Dense<float> &B,
2137 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2138  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
2139 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2140  const view_Dense<vector<float>, float> &B,
2141  view_Dense<vector<float>, float> &C);
2142 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2143  const view_Dense<vector<float>, float> &B,
2144  view_Dense<matrix::Dense<float>, float> &C);
2145 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2146  const view_Dense<vector<float>, float> &B,
2148 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2149  const view_Dense<matrix::Dense<float>, float> &B,
2151 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2152  const view_Dense<matrix::Dense<float>, float> &B,
2153  view_Dense<vector<float>, float> &C);
2154 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2155  const view_Dense<matrix::Dense<float>, float> &B,
2156  view_Dense<matrix::Dense<float>, float> &C);
2157 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2158  const view_Dense<matrix::Dense<float>, float> &B,
2160 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2161  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2163 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2164  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2165  view_Dense<vector<float>, float> &C);
2166 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2167  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2168  view_Dense<matrix::Dense<float>, float> &C);
2169 void pow(const view_Dense<matrix::Dense<float>, float> &A,
2170  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2175  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
2177  const matrix::Dense<float> &B,
2178  view_Dense<matrix::Dense<float>, float> &C);
2180  const matrix::Dense<float> &B,
2183  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
2185  const view_Dense<vector<float>, float> &B,
2186  view_Dense<vector<float>, float> &C);
2188  const view_Dense<vector<float>, float> &B,
2189  view_Dense<matrix::Dense<float>, float> &C);
2191  const view_Dense<vector<float>, float> &B,
2194  const view_Dense<matrix::Dense<float>, float> &B,
2197  const view_Dense<matrix::Dense<float>, float> &B,
2198  view_Dense<vector<float>, float> &C);
2200  const view_Dense<matrix::Dense<float>, float> &B,
2201  view_Dense<matrix::Dense<float>, float> &C);
2203  const view_Dense<matrix::Dense<float>, float> &B,
2206  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2209  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2210  view_Dense<vector<float>, float> &C);
2212  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2213  view_Dense<matrix::Dense<float>, float> &C);
2215  const view_Dense<tensor::tensor_Dense<float>, float> &B,
2236 void pow(const matrix::Dense<double> &A, const double alpha,
2238 void pow(const matrix::Dense<double> &A, const double alpha,
2239  view_Dense<vector<double>, double> &C);
2240 void pow(const matrix::Dense<double> &A, const double alpha,
2241  view_Dense<matrix::Dense<double>, double> &C);
2242 void pow(const matrix::Dense<double> &A, const double alpha,
2244 void pow(const view_Dense<vector<double>, double> &A, const double alpha,
2246 void pow(const view_Dense<vector<double>, double> &A, const double alpha,
2247  view_Dense<vector<double>, double> &C);
2248 void pow(const view_Dense<vector<double>, double> &A, const double alpha,
2249  view_Dense<matrix::Dense<double>, double> &C);
2250 void pow(const view_Dense<vector<double>, double> &A, const double alpha,
2252 void pow(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
2254 void pow(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
2255  view_Dense<vector<double>, double> &C);
2256 void pow(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
2257  view_Dense<matrix::Dense<double>, double> &C);
2258 void pow(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
2261  const double alpha, matrix::Dense<double> &C);
2263  const double alpha, view_Dense<vector<double>, double> &C);
2265  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
2267  const double alpha,
2269 void pow(const matrix::Dense<float> &A, const float alpha,
2271 void pow(const matrix::Dense<float> &A, const float alpha,
2272  view_Dense<vector<float>, float> &C);
2273 void pow(const matrix::Dense<float> &A, const float alpha,
2274  view_Dense<matrix::Dense<float>, float> &C);
2275 void pow(const matrix::Dense<float> &A, const float alpha,
2277 void pow(const view_Dense<vector<float>, float> &A, const float alpha,
2279 void pow(const view_Dense<vector<float>, float> &A, const float alpha,
2280  view_Dense<vector<float>, float> &C);
2281 void pow(const view_Dense<vector<float>, float> &A, const float alpha,
2282  view_Dense<matrix::Dense<float>, float> &C);
2283 void pow(const view_Dense<vector<float>, float> &A, const float alpha,
2285 void pow(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
2287 void pow(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
2288  view_Dense<vector<float>, float> &C);
2289 void pow(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
2290  view_Dense<matrix::Dense<float>, float> &C);
2291 void pow(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
2294  const float alpha, matrix::Dense<float> &C);
2296  const float alpha, view_Dense<vector<float>, float> &C);
2298  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
2300  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
2320  view_Dense<matrix::Dense<double>, double> &C);
2324 void sin(const view_Dense<vector<double>, double> &A,
2325  view_Dense<vector<double>, double> &C);
2326 void sin(const view_Dense<vector<double>, double> &A,
2327  view_Dense<matrix::Dense<double>, double> &C);
2328 void sin(const view_Dense<vector<double>, double> &A,
2330 void sin(const view_Dense<matrix::Dense<double>, double> &A,
2332 void sin(const view_Dense<matrix::Dense<double>, double> &A,
2333  view_Dense<vector<double>, double> &C);
2334 void sin(const view_Dense<matrix::Dense<double>, double> &A,
2335  view_Dense<matrix::Dense<double>, double> &C);
2336 void sin(const view_Dense<matrix::Dense<double>, double> &A,
2341  view_Dense<vector<double>, double> &C);
2343  view_Dense<matrix::Dense<double>, double> &C);
2349  view_Dense<matrix::Dense<float>, float> &C);
2353 void sin(const view_Dense<vector<float>, float> &A,
2354  view_Dense<vector<float>, float> &C);
2355 void sin(const view_Dense<vector<float>, float> &A,
2356  view_Dense<matrix::Dense<float>, float> &C);
2357 void sin(const view_Dense<vector<float>, float> &A,
2359 void sin(const view_Dense<matrix::Dense<float>, float> &A,
2361 void sin(const view_Dense<matrix::Dense<float>, float> &A,
2362  view_Dense<vector<float>, float> &C);
2363 void sin(const view_Dense<matrix::Dense<float>, float> &A,
2364  view_Dense<matrix::Dense<float>, float> &C);
2365 void sin(const view_Dense<matrix::Dense<float>, float> &A,
2370  view_Dense<vector<float>, float> &C);
2372  view_Dense<matrix::Dense<float>, float> &C);
2393  view_Dense<vector<double>, double> &C);
2395  view_Dense<matrix::Dense<double>, double> &C);
2398 void sqrt(const view_Dense<vector<double>, double> &A,
2400 void sqrt(const view_Dense<vector<double>, double> &A,
2401  view_Dense<vector<double>, double> &C);
2402 void sqrt(const view_Dense<vector<double>, double> &A,
2403  view_Dense<matrix::Dense<double>, double> &C);
2404 void sqrt(const view_Dense<vector<double>, double> &A,
2406 void sqrt(const view_Dense<matrix::Dense<double>, double> &A,
2408 void sqrt(const view_Dense<matrix::Dense<double>, double> &A,
2409  view_Dense<vector<double>, double> &C);
2410 void sqrt(const view_Dense<matrix::Dense<double>, double> &A,
2411  view_Dense<matrix::Dense<double>, double> &C);
2412 void sqrt(const view_Dense<matrix::Dense<double>, double> &A,
2417  view_Dense<vector<double>, double> &C);
2419  view_Dense<matrix::Dense<double>, double> &C);
2425  view_Dense<matrix::Dense<float>, float> &C);
2429 void sqrt(const view_Dense<vector<float>, float> &A,
2430  view_Dense<vector<float>, float> &C);
2431 void sqrt(const view_Dense<vector<float>, float> &A,
2432  view_Dense<matrix::Dense<float>, float> &C);
2433 void sqrt(const view_Dense<vector<float>, float> &A,
2435 void sqrt(const view_Dense<matrix::Dense<float>, float> &A,
2437 void sqrt(const view_Dense<matrix::Dense<float>, float> &A,
2438  view_Dense<vector<float>, float> &C);
2439 void sqrt(const view_Dense<matrix::Dense<float>, float> &A,
2440  view_Dense<matrix::Dense<float>, float> &C);
2441 void sqrt(const view_Dense<matrix::Dense<float>, float> &A,
2446  view_Dense<vector<float>, float> &C);
2448  view_Dense<matrix::Dense<float>, float> &C);
2469  view_Dense<vector<double>, double> &C);
2471  view_Dense<matrix::Dense<double>, double> &C);
2474 void sinh(const view_Dense<vector<double>, double> &A,
2476 void sinh(const view_Dense<vector<double>, double> &A,
2477  view_Dense<vector<double>, double> &C);
2478 void sinh(const view_Dense<vector<double>, double> &A,
2479  view_Dense<matrix::Dense<double>, double> &C);
2480 void sinh(const view_Dense<vector<double>, double> &A,
2482 void sinh(const view_Dense<matrix::Dense<double>, double> &A,
2484 void sinh(const view_Dense<matrix::Dense<double>, double> &A,
2485  view_Dense<vector<double>, double> &C);
2486 void sinh(const view_Dense<matrix::Dense<double>, double> &A,
2487  view_Dense<matrix::Dense<double>, double> &C);
2488 void sinh(const view_Dense<matrix::Dense<double>, double> &A,
2493  view_Dense<vector<double>, double> &C);
2495  view_Dense<matrix::Dense<double>, double> &C);
2501  view_Dense<matrix::Dense<float>, float> &C);
2505 void sinh(const view_Dense<vector<float>, float> &A,
2506  view_Dense<vector<float>, float> &C);
2507 void sinh(const view_Dense<vector<float>, float> &A,
2508  view_Dense<matrix::Dense<float>, float> &C);
2509 void sinh(const view_Dense<vector<float>, float> &A,
2511 void sinh(const view_Dense<matrix::Dense<float>, float> &A,
2513 void sinh(const view_Dense<matrix::Dense<float>, float> &A,
2514  view_Dense<vector<float>, float> &C);
2515 void sinh(const view_Dense<matrix::Dense<float>, float> &A,
2516  view_Dense<matrix::Dense<float>, float> &C);
2517 void sinh(const view_Dense<matrix::Dense<float>, float> &A,
2522  view_Dense<vector<float>, float> &C);
2524  view_Dense<matrix::Dense<float>, float> &C);
2545  view_Dense<vector<double>, double> &C);
2547  view_Dense<matrix::Dense<double>, double> &C);
2550 void asin(const view_Dense<vector<double>, double> &A,
2552 void asin(const view_Dense<vector<double>, double> &A,
2553  view_Dense<vector<double>, double> &C);
2554 void asin(const view_Dense<vector<double>, double> &A,
2555  view_Dense<matrix::Dense<double>, double> &C);
2556 void asin(const view_Dense<vector<double>, double> &A,
2558 void asin(const view_Dense<matrix::Dense<double>, double> &A,
2560 void asin(const view_Dense<matrix::Dense<double>, double> &A,
2561  view_Dense<vector<double>, double> &C);
2562 void asin(const view_Dense<matrix::Dense<double>, double> &A,
2563  view_Dense<matrix::Dense<double>, double> &C);
2564 void asin(const view_Dense<matrix::Dense<double>, double> &A,
2569  view_Dense<vector<double>, double> &C);
2571  view_Dense<matrix::Dense<double>, double> &C);
2577  view_Dense<matrix::Dense<float>, float> &C);
2581 void asin(const view_Dense<vector<float>, float> &A,
2582  view_Dense<vector<float>, float> &C);
2583 void asin(const view_Dense<vector<float>, float> &A,
2584  view_Dense<matrix::Dense<float>, float> &C);
2585 void asin(const view_Dense<vector<float>, float> &A,
2587 void asin(const view_Dense<matrix::Dense<float>, float> &A,
2589 void asin(const view_Dense<matrix::Dense<float>, float> &A,
2590  view_Dense<vector<float>, float> &C);
2591 void asin(const view_Dense<matrix::Dense<float>, float> &A,
2592  view_Dense<matrix::Dense<float>, float> &C);
2593 void asin(const view_Dense<matrix::Dense<float>, float> &A,
2598  view_Dense<vector<float>, float> &C);
2600  view_Dense<matrix::Dense<float>, float> &C);
2621  view_Dense<vector<double>, double> &C);
2623  view_Dense<matrix::Dense<double>, double> &C);
2626 void asinh(const view_Dense<vector<double>, double> &A,
2628 void asinh(const view_Dense<vector<double>, double> &A,
2629  view_Dense<vector<double>, double> &C);
2630 void asinh(const view_Dense<vector<double>, double> &A,
2631  view_Dense<matrix::Dense<double>, double> &C);
2632 void asinh(const view_Dense<vector<double>, double> &A,
2634 void asinh(const view_Dense<matrix::Dense<double>, double> &A,
2636 void asinh(const view_Dense<matrix::Dense<double>, double> &A,
2637  view_Dense<vector<double>, double> &C);
2638 void asinh(const view_Dense<matrix::Dense<double>, double> &A,
2639  view_Dense<matrix::Dense<double>, double> &C);
2640 void asinh(const view_Dense<matrix::Dense<double>, double> &A,
2645  view_Dense<vector<double>, double> &C);
2647  view_Dense<matrix::Dense<double>, double> &C);
2653  view_Dense<matrix::Dense<float>, float> &C);
2657 void asinh(const view_Dense<vector<float>, float> &A,
2658  view_Dense<vector<float>, float> &C);
2659 void asinh(const view_Dense<vector<float>, float> &A,
2660  view_Dense<matrix::Dense<float>, float> &C);
2661 void asinh(const view_Dense<vector<float>, float> &A,
2663 void asinh(const view_Dense<matrix::Dense<float>, float> &A,
2665 void asinh(const view_Dense<matrix::Dense<float>, float> &A,
2666  view_Dense<vector<float>, float> &C);
2667 void asinh(const view_Dense<matrix::Dense<float>, float> &A,
2668  view_Dense<matrix::Dense<float>, float> &C);
2669 void asinh(const view_Dense<matrix::Dense<float>, float> &A,
2674  view_Dense<vector<float>, float> &C);
2676  view_Dense<matrix::Dense<float>, float> &C);
2698  view_Dense<matrix::Dense<double>, double> &C);
2702 void tan(const view_Dense<vector<double>, double> &A,
2703  view_Dense<vector<double>, double> &C);
2704 void tan(const view_Dense<vector<double>, double> &A,
2705  view_Dense<matrix::Dense<double>, double> &C);
2706 void tan(const view_Dense<vector<double>, double> &A,
2708 void tan(const view_Dense<matrix::Dense<double>, double> &A,
2710 void tan(const view_Dense<matrix::Dense<double>, double> &A,
2711  view_Dense<vector<double>, double> &C);
2712 void tan(const view_Dense<matrix::Dense<double>, double> &A,
2713  view_Dense<matrix::Dense<double>, double> &C);
2714 void tan(const view_Dense<matrix::Dense<double>, double> &A,
2719  view_Dense<vector<double>, double> &C);
2721  view_Dense<matrix::Dense<double>, double> &C);
2727  view_Dense<matrix::Dense<float>, float> &C);
2731 void tan(const view_Dense<vector<float>, float> &A,
2732  view_Dense<vector<float>, float> &C);
2733 void tan(const view_Dense<vector<float>, float> &A,
2734  view_Dense<matrix::Dense<float>, float> &C);
2735 void tan(const view_Dense<vector<float>, float> &A,
2737 void tan(const view_Dense<matrix::Dense<float>, float> &A,
2739 void tan(const view_Dense<matrix::Dense<float>, float> &A,
2740  view_Dense<vector<float>, float> &C);
2741 void tan(const view_Dense<matrix::Dense<float>, float> &A,
2742  view_Dense<matrix::Dense<float>, float> &C);
2743 void tan(const view_Dense<matrix::Dense<float>, float> &A,
2748  view_Dense<vector<float>, float> &C);
2750  view_Dense<matrix::Dense<float>, float> &C);
2771  view_Dense<vector<double>, double> &C);
2773  view_Dense<matrix::Dense<double>, double> &C);
2776 void tanh(const view_Dense<vector<double>, double> &A,
2778 void tanh(const view_Dense<vector<double>, double> &A,
2779  view_Dense<vector<double>, double> &C);
2780 void tanh(const view_Dense<vector<double>, double> &A,
2781  view_Dense<matrix::Dense<double>, double> &C);
2782 void tanh(const view_Dense<vector<double>, double> &A,
2784 void tanh(const view_Dense<matrix::Dense<double>, double> &A,
2786 void tanh(const view_Dense<matrix::Dense<double>, double> &A,
2787  view_Dense<vector<double>, double> &C);
2788 void tanh(const view_Dense<matrix::Dense<double>, double> &A,
2789  view_Dense<matrix::Dense<double>, double> &C);
2790 void tanh(const view_Dense<matrix::Dense<double>, double> &A,
2795  view_Dense<vector<double>, double> &C);
2797  view_Dense<matrix::Dense<double>, double> &C);
2803  view_Dense<matrix::Dense<float>, float> &C);
2807 void tanh(const view_Dense<vector<float>, float> &A,
2808  view_Dense<vector<float>, float> &C);
2809 void tanh(const view_Dense<vector<float>, float> &A,
2810  view_Dense<matrix::Dense<float>, float> &C);
2811 void tanh(const view_Dense<vector<float>, float> &A,
2813 void tanh(const view_Dense<matrix::Dense<float>, float> &A,
2815 void tanh(const view_Dense<matrix::Dense<float>, float> &A,
2816  view_Dense<vector<float>, float> &C);
2817 void tanh(const view_Dense<matrix::Dense<float>, float> &A,
2818  view_Dense<matrix::Dense<float>, float> &C);
2819 void tanh(const view_Dense<matrix::Dense<float>, float> &A,
2824  view_Dense<vector<float>, float> &C);
2826  view_Dense<matrix::Dense<float>, float> &C);
2847  view_Dense<vector<double>, double> &C);
2849  view_Dense<matrix::Dense<double>, double> &C);
2852 void atan(const view_Dense<vector<double>, double> &A,
2854 void atan(const view_Dense<vector<double>, double> &A,
2855  view_Dense<vector<double>, double> &C);
2856 void atan(const view_Dense<vector<double>, double> &A,
2857  view_Dense<matrix::Dense<double>, double> &C);
2858 void atan(const view_Dense<vector<double>, double> &A,
2860 void atan(const view_Dense<matrix::Dense<double>, double> &A,
2862 void atan(const view_Dense<matrix::Dense<double>, double> &A,
2863  view_Dense<vector<double>, double> &C);
2864 void atan(const view_Dense<matrix::Dense<double>, double> &A,
2865  view_Dense<matrix::Dense<double>, double> &C);
2866 void atan(const view_Dense<matrix::Dense<double>, double> &A,
2871  view_Dense<vector<double>, double> &C);
2873  view_Dense<matrix::Dense<double>, double> &C);
2879  view_Dense<matrix::Dense<float>, float> &C);
2883 void atan(const view_Dense<vector<float>, float> &A,
2884  view_Dense<vector<float>, float> &C);
2885 void atan(const view_Dense<vector<float>, float> &A,
2886  view_Dense<matrix::Dense<float>, float> &C);
2887 void atan(const view_Dense<vector<float>, float> &A,
2889 void atan(const view_Dense<matrix::Dense<float>, float> &A,
2891 void atan(const view_Dense<matrix::Dense<float>, float> &A,
2892  view_Dense<vector<float>, float> &C);
2893 void atan(const view_Dense<matrix::Dense<float>, float> &A,
2894  view_Dense<matrix::Dense<float>, float> &C);
2895 void atan(const view_Dense<matrix::Dense<float>, float> &A,
2900  view_Dense<vector<float>, float> &C);
2902  view_Dense<matrix::Dense<float>, float> &C);
2923  view_Dense<vector<double>, double> &C);
2925  view_Dense<matrix::Dense<double>, double> &C);
2928 void atanh(const view_Dense<vector<double>, double> &A,
2930 void atanh(const view_Dense<vector<double>, double> &A,
2931  view_Dense<vector<double>, double> &C);
2932 void atanh(const view_Dense<vector<double>, double> &A,
2933  view_Dense<matrix::Dense<double>, double> &C);
2934 void atanh(const view_Dense<vector<double>, double> &A,
2936 void atanh(const view_Dense<matrix::Dense<double>, double> &A,
2938 void atanh(const view_Dense<matrix::Dense<double>, double> &A,
2939  view_Dense<vector<double>, double> &C);
2940 void atanh(const view_Dense<matrix::Dense<double>, double> &A,
2941  view_Dense<matrix::Dense<double>, double> &C);
2942 void atanh(const view_Dense<matrix::Dense<double>, double> &A,
2947  view_Dense<vector<double>, double> &C);
2949  view_Dense<matrix::Dense<double>, double> &C);
2955  view_Dense<matrix::Dense<float>, float> &C);
2959 void atanh(const view_Dense<vector<float>, float> &A,
2960  view_Dense<vector<float>, float> &C);
2961 void atanh(const view_Dense<vector<float>, float> &A,
2962  view_Dense<matrix::Dense<float>, float> &C);
2963 void atanh(const view_Dense<vector<float>, float> &A,
2965 void atanh(const view_Dense<matrix::Dense<float>, float> &A,
2967 void atanh(const view_Dense<matrix::Dense<float>, float> &A,
2968  view_Dense<vector<float>, float> &C);
2969 void atanh(const view_Dense<matrix::Dense<float>, float> &A,
2970  view_Dense<matrix::Dense<float>, float> &C);
2971 void atanh(const view_Dense<matrix::Dense<float>, float> &A,
2976  view_Dense<vector<float>, float> &C);
2978  view_Dense<matrix::Dense<float>, float> &C);
2999  view_Dense<vector<double>, double> &C);
3001  view_Dense<matrix::Dense<double>, double> &C);
3004 void ceil(const view_Dense<vector<double>, double> &A,
3006 void ceil(const view_Dense<vector<double>, double> &A,
3007  view_Dense<vector<double>, double> &C);
3008 void ceil(const view_Dense<vector<double>, double> &A,
3009  view_Dense<matrix::Dense<double>, double> &C);
3010 void ceil(const view_Dense<vector<double>, double> &A,
3012 void ceil(const view_Dense<matrix::Dense<double>, double> &A,
3014 void ceil(const view_Dense<matrix::Dense<double>, double> &A,
3015  view_Dense<vector<double>, double> &C);
3016 void ceil(const view_Dense<matrix::Dense<double>, double> &A,
3017  view_Dense<matrix::Dense<double>, double> &C);
3018 void ceil(const view_Dense<matrix::Dense<double>, double> &A,
3023  view_Dense<vector<double>, double> &C);
3025  view_Dense<matrix::Dense<double>, double> &C);
3031  view_Dense<matrix::Dense<float>, float> &C);
3035 void ceil(const view_Dense<vector<float>, float> &A,
3036  view_Dense<vector<float>, float> &C);
3037 void ceil(const view_Dense<vector<float>, float> &A,
3038  view_Dense<matrix::Dense<float>, float> &C);
3039 void ceil(const view_Dense<vector<float>, float> &A,
3041 void ceil(const view_Dense<matrix::Dense<float>, float> &A,
3043 void ceil(const view_Dense<matrix::Dense<float>, float> &A,
3044  view_Dense<vector<float>, float> &C);
3045 void ceil(const view_Dense<matrix::Dense<float>, float> &A,
3046  view_Dense<matrix::Dense<float>, float> &C);
3047 void ceil(const view_Dense<matrix::Dense<float>, float> &A,
3052  view_Dense<vector<float>, float> &C);
3054  view_Dense<matrix::Dense<float>, float> &C);
3075  view_Dense<vector<double>, double> &C);
3077  view_Dense<matrix::Dense<double>, double> &C);
3080 void floor(const view_Dense<vector<double>, double> &A,
3082 void floor(const view_Dense<vector<double>, double> &A,
3083  view_Dense<vector<double>, double> &C);
3084 void floor(const view_Dense<vector<double>, double> &A,
3085  view_Dense<matrix::Dense<double>, double> &C);
3086 void floor(const view_Dense<vector<double>, double> &A,
3088 void floor(const view_Dense<matrix::Dense<double>, double> &A,
3090 void floor(const view_Dense<matrix::Dense<double>, double> &A,
3091  view_Dense<vector<double>, double> &C);
3092 void floor(const view_Dense<matrix::Dense<double>, double> &A,
3093  view_Dense<matrix::Dense<double>, double> &C);
3094 void floor(const view_Dense<matrix::Dense<double>, double> &A,
3099  view_Dense<vector<double>, double> &C);
3101  view_Dense<matrix::Dense<double>, double> &C);
3107  view_Dense<matrix::Dense<float>, float> &C);
3111 void floor(const view_Dense<vector<float>, float> &A,
3112  view_Dense<vector<float>, float> &C);
3113 void floor(const view_Dense<vector<float>, float> &A,
3114  view_Dense<matrix::Dense<float>, float> &C);
3115 void floor(const view_Dense<vector<float>, float> &A,
3117 void floor(const view_Dense<matrix::Dense<float>, float> &A,
3119 void floor(const view_Dense<matrix::Dense<float>, float> &A,
3120  view_Dense<vector<float>, float> &C);
3121 void floor(const view_Dense<matrix::Dense<float>, float> &A,
3122  view_Dense<matrix::Dense<float>, float> &C);
3123 void floor(const view_Dense<matrix::Dense<float>, float> &A,
3128  view_Dense<vector<float>, float> &C);
3130  view_Dense<matrix::Dense<float>, float> &C);
3151  view_Dense<vector<double>, double> &C);
3153  view_Dense<matrix::Dense<double>, double> &C);
3156 void sign(const view_Dense<vector<double>, double> &A,
3158 void sign(const view_Dense<vector<double>, double> &A,
3159  view_Dense<vector<double>, double> &C);
3160 void sign(const view_Dense<vector<double>, double> &A,
3161  view_Dense<matrix::Dense<double>, double> &C);
3162 void sign(const view_Dense<vector<double>, double> &A,
3164 void sign(const view_Dense<matrix::Dense<double>, double> &A,
3166 void sign(const view_Dense<matrix::Dense<double>, double> &A,
3167  view_Dense<vector<double>, double> &C);
3168 void sign(const view_Dense<matrix::Dense<double>, double> &A,
3169  view_Dense<matrix::Dense<double>, double> &C);
3170 void sign(const view_Dense<matrix::Dense<double>, double> &A,
3175  view_Dense<vector<double>, double> &C);
3177  view_Dense<matrix::Dense<double>, double> &C);
3183  view_Dense<matrix::Dense<float>, float> &C);
3187 void sign(const view_Dense<vector<float>, float> &A,
3188  view_Dense<vector<float>, float> &C);
3189 void sign(const view_Dense<vector<float>, float> &A,
3190  view_Dense<matrix::Dense<float>, float> &C);
3191 void sign(const view_Dense<vector<float>, float> &A,
3193 void sign(const view_Dense<matrix::Dense<float>, float> &A,
3195 void sign(const view_Dense<matrix::Dense<float>, float> &A,
3196  view_Dense<vector<float>, float> &C);
3197 void sign(const view_Dense<matrix::Dense<float>, float> &A,
3198  view_Dense<matrix::Dense<float>, float> &C);
3199 void sign(const view_Dense<matrix::Dense<float>, float> &A,
3204  view_Dense<vector<float>, float> &C);
3206  view_Dense<matrix::Dense<float>, float> &C);
3228  view_Dense<matrix::Dense<double>, double> &C);
3232 void exp(const view_Dense<vector<double>, double> &A,
3233  view_Dense<vector<double>, double> &C);
3234 void exp(const view_Dense<vector<double>, double> &A,
3235  view_Dense<matrix::Dense<double>, double> &C);
3236 void exp(const view_Dense<vector<double>, double> &A,
3238 void exp(const view_Dense<matrix::Dense<double>, double> &A,
3240 void exp(const view_Dense<matrix::Dense<double>, double> &A,
3241  view_Dense<vector<double>, double> &C);
3242 void exp(const view_Dense<matrix::Dense<double>, double> &A,
3243  view_Dense<matrix::Dense<double>, double> &C);
3244 void exp(const view_Dense<matrix::Dense<double>, double> &A,
3249  view_Dense<vector<double>, double> &C);
3251  view_Dense<matrix::Dense<double>, double> &C);
3257  view_Dense<matrix::Dense<float>, float> &C);
3261 void exp(const view_Dense<vector<float>, float> &A,
3262  view_Dense<vector<float>, float> &C);
3263 void exp(const view_Dense<vector<float>, float> &A,
3264  view_Dense<matrix::Dense<float>, float> &C);
3265 void exp(const view_Dense<vector<float>, float> &A,
3267 void exp(const view_Dense<matrix::Dense<float>, float> &A,
3269 void exp(const view_Dense<matrix::Dense<float>, float> &A,
3270  view_Dense<vector<float>, float> &C);
3271 void exp(const view_Dense<matrix::Dense<float>, float> &A,
3272  view_Dense<matrix::Dense<float>, float> &C);
3273 void exp(const view_Dense<matrix::Dense<float>, float> &A,
3278  view_Dense<vector<float>, float> &C);
3280  view_Dense<matrix::Dense<float>, float> &C);
3306  view_Dense<vector<double>, double> &C);
3308  view_Dense<matrix::Dense<double>, double> &C);
3312  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3314  const view_Dense<vector<double>, double> &B,
3315  view_Dense<vector<double>, double> &C);
3317  const view_Dense<vector<double>, double> &B,
3318  view_Dense<matrix::Dense<double>, double> &C);
3320  const view_Dense<vector<double>, double> &B,
3323  const view_Dense<matrix::Dense<double>, double> &B,
3326  const view_Dense<matrix::Dense<double>, double> &B,
3327  view_Dense<vector<double>, double> &C);
3329  const view_Dense<matrix::Dense<double>, double> &B,
3330  view_Dense<matrix::Dense<double>, double> &C);
3332  const view_Dense<matrix::Dense<double>, double> &B,
3335  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3338  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3339  view_Dense<vector<double>, double> &C);
3341  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3342  view_Dense<matrix::Dense<double>, double> &C);
3344  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3346 void max(const view_Dense<vector<double>, double> &A,
3348 void max(const view_Dense<vector<double>, double> &A,
3349  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
3350 void max(const view_Dense<vector<double>, double> &A,
3351  const matrix::Dense<double> &B,
3352  view_Dense<matrix::Dense<double>, double> &C);
3353 void max(const view_Dense<vector<double>, double> &A,
3354  const matrix::Dense<double> &B,
3356 void max(const view_Dense<vector<double>, double> &A,
3357  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3358 void max(const view_Dense<vector<double>, double> &A,
3359  const view_Dense<vector<double>, double> &B,
3360  view_Dense<vector<double>, double> &C);
3361 void max(const view_Dense<vector<double>, double> &A,
3362  const view_Dense<vector<double>, double> &B,
3363  view_Dense<matrix::Dense<double>, double> &C);
3364 void max(const view_Dense<vector<double>, double> &A,
3365  const view_Dense<vector<double>, double> &B,
3367 void max(const view_Dense<vector<double>, double> &A,
3368  const view_Dense<matrix::Dense<double>, double> &B,
3370 void max(const view_Dense<vector<double>, double> &A,
3371  const view_Dense<matrix::Dense<double>, double> &B,
3372  view_Dense<vector<double>, double> &C);
3373 void max(const view_Dense<vector<double>, double> &A,
3374  const view_Dense<matrix::Dense<double>, double> &B,
3375  view_Dense<matrix::Dense<double>, double> &C);
3376 void max(const view_Dense<vector<double>, double> &A,
3377  const view_Dense<matrix::Dense<double>, double> &B,
3379 void max(const view_Dense<vector<double>, double> &A,
3380  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3382 void max(const view_Dense<vector<double>, double> &A,
3383  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3384  view_Dense<vector<double>, double> &C);
3385 void max(const view_Dense<vector<double>, double> &A,
3386  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3387  view_Dense<matrix::Dense<double>, double> &C);
3388 void max(const view_Dense<vector<double>, double> &A,
3389  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3391 void max(const view_Dense<matrix::Dense<double>, double> &A,
3393 void max(const view_Dense<matrix::Dense<double>, double> &A,
3394  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
3395 void max(const view_Dense<matrix::Dense<double>, double> &A,
3396  const matrix::Dense<double> &B,
3397  view_Dense<matrix::Dense<double>, double> &C);
3398 void max(const view_Dense<matrix::Dense<double>, double> &A,
3399  const matrix::Dense<double> &B,
3401 void max(const view_Dense<matrix::Dense<double>, double> &A,
3402  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3403 void max(const view_Dense<matrix::Dense<double>, double> &A,
3404  const view_Dense<vector<double>, double> &B,
3405  view_Dense<vector<double>, double> &C);
3406 void max(const view_Dense<matrix::Dense<double>, double> &A,
3407  const view_Dense<vector<double>, double> &B,
3408  view_Dense<matrix::Dense<double>, double> &C);
3409 void max(const view_Dense<matrix::Dense<double>, double> &A,
3410  const view_Dense<vector<double>, double> &B,
3412 void max(const view_Dense<matrix::Dense<double>, double> &A,
3413  const view_Dense<matrix::Dense<double>, double> &B,
3415 void max(const view_Dense<matrix::Dense<double>, double> &A,
3416  const view_Dense<matrix::Dense<double>, double> &B,
3417  view_Dense<vector<double>, double> &C);
3418 void max(const view_Dense<matrix::Dense<double>, double> &A,
3419  const view_Dense<matrix::Dense<double>, double> &B,
3420  view_Dense<matrix::Dense<double>, double> &C);
3421 void max(const view_Dense<matrix::Dense<double>, double> &A,
3422  const view_Dense<matrix::Dense<double>, double> &B,
3424 void max(const view_Dense<matrix::Dense<double>, double> &A,
3425  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3427 void max(const view_Dense<matrix::Dense<double>, double> &A,
3428  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3429  view_Dense<vector<double>, double> &C);
3430 void max(const view_Dense<matrix::Dense<double>, double> &A,
3431  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3432  view_Dense<matrix::Dense<double>, double> &C);
3433 void max(const view_Dense<matrix::Dense<double>, double> &A,
3434  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3439  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
3441  const matrix::Dense<double> &B,
3442  view_Dense<matrix::Dense<double>, double> &C);
3444  const matrix::Dense<double> &B,
3447  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3449  const view_Dense<vector<double>, double> &B,
3450  view_Dense<vector<double>, double> &C);
3452  const view_Dense<vector<double>, double> &B,
3453  view_Dense<matrix::Dense<double>, double> &C);
3455  const view_Dense<vector<double>, double> &B,
3458  const view_Dense<matrix::Dense<double>, double> &B,
3461  const view_Dense<matrix::Dense<double>, double> &B,
3462  view_Dense<vector<double>, double> &C);
3464  const view_Dense<matrix::Dense<double>, double> &B,
3465  view_Dense<matrix::Dense<double>, double> &C);
3467  const view_Dense<matrix::Dense<double>, double> &B,
3470  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3473  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3474  view_Dense<vector<double>, double> &C);
3476  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3477  view_Dense<matrix::Dense<double>, double> &C);
3479  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3484  view_Dense<vector<float>, float> &C);
3486  view_Dense<matrix::Dense<float>, float> &C);
3490  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3492  const view_Dense<vector<float>, float> &B,
3493  view_Dense<vector<float>, float> &C);
3495  const view_Dense<vector<float>, float> &B,
3496  view_Dense<matrix::Dense<float>, float> &C);
3498  const view_Dense<vector<float>, float> &B,
3501  const view_Dense<matrix::Dense<float>, float> &B,
3504  const view_Dense<matrix::Dense<float>, float> &B,
3505  view_Dense<vector<float>, float> &C);
3507  const view_Dense<matrix::Dense<float>, float> &B,
3508  view_Dense<matrix::Dense<float>, float> &C);
3510  const view_Dense<matrix::Dense<float>, float> &B,
3513  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3516  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3517  view_Dense<vector<float>, float> &C);
3519  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3520  view_Dense<matrix::Dense<float>, float> &C);
3522  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3524 void max(const view_Dense<vector<float>, float> &A,
3526 void max(const view_Dense<vector<float>, float> &A,
3527  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
3528 void max(const view_Dense<vector<float>, float> &A,
3529  const matrix::Dense<float> &B,
3530  view_Dense<matrix::Dense<float>, float> &C);
3531 void max(const view_Dense<vector<float>, float> &A,
3532  const matrix::Dense<float> &B,
3534 void max(const view_Dense<vector<float>, float> &A,
3535  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3536 void max(const view_Dense<vector<float>, float> &A,
3537  const view_Dense<vector<float>, float> &B,
3538  view_Dense<vector<float>, float> &C);
3539 void max(const view_Dense<vector<float>, float> &A,
3540  const view_Dense<vector<float>, float> &B,
3541  view_Dense<matrix::Dense<float>, float> &C);
3542 void max(const view_Dense<vector<float>, float> &A,
3543  const view_Dense<vector<float>, float> &B,
3545 void max(const view_Dense<vector<float>, float> &A,
3546  const view_Dense<matrix::Dense<float>, float> &B,
3548 void max(const view_Dense<vector<float>, float> &A,
3549  const view_Dense<matrix::Dense<float>, float> &B,
3550  view_Dense<vector<float>, float> &C);
3551 void max(const view_Dense<vector<float>, float> &A,
3552  const view_Dense<matrix::Dense<float>, float> &B,
3553  view_Dense<matrix::Dense<float>, float> &C);
3554 void max(const view_Dense<vector<float>, float> &A,
3555  const view_Dense<matrix::Dense<float>, float> &B,
3557 void max(const view_Dense<vector<float>, float> &A,
3558  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3560 void max(const view_Dense<vector<float>, float> &A,
3561  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3562  view_Dense<vector<float>, float> &C);
3563 void max(const view_Dense<vector<float>, float> &A,
3564  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3565  view_Dense<matrix::Dense<float>, float> &C);
3566 void max(const view_Dense<vector<float>, float> &A,
3567  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3569 void max(const view_Dense<matrix::Dense<float>, float> &A,
3571 void max(const view_Dense<matrix::Dense<float>, float> &A,
3572  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
3573 void max(const view_Dense<matrix::Dense<float>, float> &A,
3574  const matrix::Dense<float> &B,
3575  view_Dense<matrix::Dense<float>, float> &C);
3576 void max(const view_Dense<matrix::Dense<float>, float> &A,
3577  const matrix::Dense<float> &B,
3579 void max(const view_Dense<matrix::Dense<float>, float> &A,
3580  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3581 void max(const view_Dense<matrix::Dense<float>, float> &A,
3582  const view_Dense<vector<float>, float> &B,
3583  view_Dense<vector<float>, float> &C);
3584 void max(const view_Dense<matrix::Dense<float>, float> &A,
3585  const view_Dense<vector<float>, float> &B,
3586  view_Dense<matrix::Dense<float>, float> &C);
3587 void max(const view_Dense<matrix::Dense<float>, float> &A,
3588  const view_Dense<vector<float>, float> &B,
3590 void max(const view_Dense<matrix::Dense<float>, float> &A,
3591  const view_Dense<matrix::Dense<float>, float> &B,
3593 void max(const view_Dense<matrix::Dense<float>, float> &A,
3594  const view_Dense<matrix::Dense<float>, float> &B,
3595  view_Dense<vector<float>, float> &C);
3596 void max(const view_Dense<matrix::Dense<float>, float> &A,
3597  const view_Dense<matrix::Dense<float>, float> &B,
3598  view_Dense<matrix::Dense<float>, float> &C);
3599 void max(const view_Dense<matrix::Dense<float>, float> &A,
3600  const view_Dense<matrix::Dense<float>, float> &B,
3602 void max(const view_Dense<matrix::Dense<float>, float> &A,
3603  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3605 void max(const view_Dense<matrix::Dense<float>, float> &A,
3606  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3607  view_Dense<vector<float>, float> &C);
3608 void max(const view_Dense<matrix::Dense<float>, float> &A,
3609  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3610  view_Dense<matrix::Dense<float>, float> &C);
3611 void max(const view_Dense<matrix::Dense<float>, float> &A,
3612  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3617  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
3619  const matrix::Dense<float> &B,
3620  view_Dense<matrix::Dense<float>, float> &C);
3622  const matrix::Dense<float> &B,
3625  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3627  const view_Dense<vector<float>, float> &B,
3628  view_Dense<vector<float>, float> &C);
3630  const view_Dense<vector<float>, float> &B,
3631  view_Dense<matrix::Dense<float>, float> &C);
3633  const view_Dense<vector<float>, float> &B,
3636  const view_Dense<matrix::Dense<float>, float> &B,
3639  const view_Dense<matrix::Dense<float>, float> &B,
3640  view_Dense<vector<float>, float> &C);
3642  const view_Dense<matrix::Dense<float>, float> &B,
3643  view_Dense<matrix::Dense<float>, float> &C);
3645  const view_Dense<matrix::Dense<float>, float> &B,
3648  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3651  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3652  view_Dense<vector<float>, float> &C);
3654  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3655  view_Dense<matrix::Dense<float>, float> &C);
3657  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3682  view_Dense<vector<double>, double> &C);
3684  view_Dense<matrix::Dense<double>, double> &C);
3688  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3690  const view_Dense<vector<double>, double> &B,
3691  view_Dense<vector<double>, double> &C);
3693  const view_Dense<vector<double>, double> &B,
3694  view_Dense<matrix::Dense<double>, double> &C);
3696  const view_Dense<vector<double>, double> &B,
3699  const view_Dense<matrix::Dense<double>, double> &B,
3702  const view_Dense<matrix::Dense<double>, double> &B,
3703  view_Dense<vector<double>, double> &C);
3705  const view_Dense<matrix::Dense<double>, double> &B,
3706  view_Dense<matrix::Dense<double>, double> &C);
3708  const view_Dense<matrix::Dense<double>, double> &B,
3711  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3714  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3715  view_Dense<vector<double>, double> &C);
3717  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3718  view_Dense<matrix::Dense<double>, double> &C);
3720  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3722 void min(const view_Dense<vector<double>, double> &A,
3724 void min(const view_Dense<vector<double>, double> &A,
3725  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
3726 void min(const view_Dense<vector<double>, double> &A,
3727  const matrix::Dense<double> &B,
3728  view_Dense<matrix::Dense<double>, double> &C);
3729 void min(const view_Dense<vector<double>, double> &A,
3730  const matrix::Dense<double> &B,
3732 void min(const view_Dense<vector<double>, double> &A,
3733  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3734 void min(const view_Dense<vector<double>, double> &A,
3735  const view_Dense<vector<double>, double> &B,
3736  view_Dense<vector<double>, double> &C);
3737 void min(const view_Dense<vector<double>, double> &A,
3738  const view_Dense<vector<double>, double> &B,
3739  view_Dense<matrix::Dense<double>, double> &C);
3740 void min(const view_Dense<vector<double>, double> &A,
3741  const view_Dense<vector<double>, double> &B,
3743 void min(const view_Dense<vector<double>, double> &A,
3744  const view_Dense<matrix::Dense<double>, double> &B,
3746 void min(const view_Dense<vector<double>, double> &A,
3747  const view_Dense<matrix::Dense<double>, double> &B,
3748  view_Dense<vector<double>, double> &C);
3749 void min(const view_Dense<vector<double>, double> &A,
3750  const view_Dense<matrix::Dense<double>, double> &B,
3751  view_Dense<matrix::Dense<double>, double> &C);
3752 void min(const view_Dense<vector<double>, double> &A,
3753  const view_Dense<matrix::Dense<double>, double> &B,
3755 void min(const view_Dense<vector<double>, double> &A,
3756  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3758 void min(const view_Dense<vector<double>, double> &A,
3759  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3760  view_Dense<vector<double>, double> &C);
3761 void min(const view_Dense<vector<double>, double> &A,
3762  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3763  view_Dense<matrix::Dense<double>, double> &C);
3764 void min(const view_Dense<vector<double>, double> &A,
3765  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3767 void min(const view_Dense<matrix::Dense<double>, double> &A,
3769 void min(const view_Dense<matrix::Dense<double>, double> &A,
3770  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
3771 void min(const view_Dense<matrix::Dense<double>, double> &A,
3772  const matrix::Dense<double> &B,
3773  view_Dense<matrix::Dense<double>, double> &C);
3774 void min(const view_Dense<matrix::Dense<double>, double> &A,
3775  const matrix::Dense<double> &B,
3777 void min(const view_Dense<matrix::Dense<double>, double> &A,
3778  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3779 void min(const view_Dense<matrix::Dense<double>, double> &A,
3780  const view_Dense<vector<double>, double> &B,
3781  view_Dense<vector<double>, double> &C);
3782 void min(const view_Dense<matrix::Dense<double>, double> &A,
3783  const view_Dense<vector<double>, double> &B,
3784  view_Dense<matrix::Dense<double>, double> &C);
3785 void min(const view_Dense<matrix::Dense<double>, double> &A,
3786  const view_Dense<vector<double>, double> &B,
3788 void min(const view_Dense<matrix::Dense<double>, double> &A,
3789  const view_Dense<matrix::Dense<double>, double> &B,
3791 void min(const view_Dense<matrix::Dense<double>, double> &A,
3792  const view_Dense<matrix::Dense<double>, double> &B,
3793  view_Dense<vector<double>, double> &C);
3794 void min(const view_Dense<matrix::Dense<double>, double> &A,
3795  const view_Dense<matrix::Dense<double>, double> &B,
3796  view_Dense<matrix::Dense<double>, double> &C);
3797 void min(const view_Dense<matrix::Dense<double>, double> &A,
3798  const view_Dense<matrix::Dense<double>, double> &B,
3800 void min(const view_Dense<matrix::Dense<double>, double> &A,
3801  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3803 void min(const view_Dense<matrix::Dense<double>, double> &A,
3804  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3805  view_Dense<vector<double>, double> &C);
3806 void min(const view_Dense<matrix::Dense<double>, double> &A,
3807  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3808  view_Dense<matrix::Dense<double>, double> &C);
3809 void min(const view_Dense<matrix::Dense<double>, double> &A,
3810  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3815  const matrix::Dense<double> &B, view_Dense<vector<double>, double> &C);
3817  const matrix::Dense<double> &B,
3818  view_Dense<matrix::Dense<double>, double> &C);
3820  const matrix::Dense<double> &B,
3823  const view_Dense<vector<double>, double> &B, matrix::Dense<double> &C);
3825  const view_Dense<vector<double>, double> &B,
3826  view_Dense<vector<double>, double> &C);
3828  const view_Dense<vector<double>, double> &B,
3829  view_Dense<matrix::Dense<double>, double> &C);
3831  const view_Dense<vector<double>, double> &B,
3834  const view_Dense<matrix::Dense<double>, double> &B,
3837  const view_Dense<matrix::Dense<double>, double> &B,
3838  view_Dense<vector<double>, double> &C);
3840  const view_Dense<matrix::Dense<double>, double> &B,
3841  view_Dense<matrix::Dense<double>, double> &C);
3843  const view_Dense<matrix::Dense<double>, double> &B,
3846  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3849  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3850  view_Dense<vector<double>, double> &C);
3852  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3853  view_Dense<matrix::Dense<double>, double> &C);
3855  const view_Dense<tensor::tensor_Dense<double>, double> &B,
3860  view_Dense<vector<float>, float> &C);
3862  view_Dense<matrix::Dense<float>, float> &C);
3866  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3868  const view_Dense<vector<float>, float> &B,
3869  view_Dense<vector<float>, float> &C);
3871  const view_Dense<vector<float>, float> &B,
3872  view_Dense<matrix::Dense<float>, float> &C);
3874  const view_Dense<vector<float>, float> &B,
3877  const view_Dense<matrix::Dense<float>, float> &B,
3880  const view_Dense<matrix::Dense<float>, float> &B,
3881  view_Dense<vector<float>, float> &C);
3883  const view_Dense<matrix::Dense<float>, float> &B,
3884  view_Dense<matrix::Dense<float>, float> &C);
3886  const view_Dense<matrix::Dense<float>, float> &B,
3889  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3892  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3893  view_Dense<vector<float>, float> &C);
3895  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3896  view_Dense<matrix::Dense<float>, float> &C);
3898  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3900 void min(const view_Dense<vector<float>, float> &A,
3902 void min(const view_Dense<vector<float>, float> &A,
3903  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
3904 void min(const view_Dense<vector<float>, float> &A,
3905  const matrix::Dense<float> &B,
3906  view_Dense<matrix::Dense<float>, float> &C);
3907 void min(const view_Dense<vector<float>, float> &A,
3908  const matrix::Dense<float> &B,
3910 void min(const view_Dense<vector<float>, float> &A,
3911  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3912 void min(const view_Dense<vector<float>, float> &A,
3913  const view_Dense<vector<float>, float> &B,
3914  view_Dense<vector<float>, float> &C);
3915 void min(const view_Dense<vector<float>, float> &A,
3916  const view_Dense<vector<float>, float> &B,
3917  view_Dense<matrix::Dense<float>, float> &C);
3918 void min(const view_Dense<vector<float>, float> &A,
3919  const view_Dense<vector<float>, float> &B,
3921 void min(const view_Dense<vector<float>, float> &A,
3922  const view_Dense<matrix::Dense<float>, float> &B,
3924 void min(const view_Dense<vector<float>, float> &A,
3925  const view_Dense<matrix::Dense<float>, float> &B,
3926  view_Dense<vector<float>, float> &C);
3927 void min(const view_Dense<vector<float>, float> &A,
3928  const view_Dense<matrix::Dense<float>, float> &B,
3929  view_Dense<matrix::Dense<float>, float> &C);
3930 void min(const view_Dense<vector<float>, float> &A,
3931  const view_Dense<matrix::Dense<float>, float> &B,
3933 void min(const view_Dense<vector<float>, float> &A,
3934  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3936 void min(const view_Dense<vector<float>, float> &A,
3937  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3938  view_Dense<vector<float>, float> &C);
3939 void min(const view_Dense<vector<float>, float> &A,
3940  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3941  view_Dense<matrix::Dense<float>, float> &C);
3942 void min(const view_Dense<vector<float>, float> &A,
3943  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3945 void min(const view_Dense<matrix::Dense<float>, float> &A,
3947 void min(const view_Dense<matrix::Dense<float>, float> &A,
3948  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
3949 void min(const view_Dense<matrix::Dense<float>, float> &A,
3950  const matrix::Dense<float> &B,
3951  view_Dense<matrix::Dense<float>, float> &C);
3952 void min(const view_Dense<matrix::Dense<float>, float> &A,
3953  const matrix::Dense<float> &B,
3955 void min(const view_Dense<matrix::Dense<float>, float> &A,
3956  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
3957 void min(const view_Dense<matrix::Dense<float>, float> &A,
3958  const view_Dense<vector<float>, float> &B,
3959  view_Dense<vector<float>, float> &C);
3960 void min(const view_Dense<matrix::Dense<float>, float> &A,
3961  const view_Dense<vector<float>, float> &B,
3962  view_Dense<matrix::Dense<float>, float> &C);
3963 void min(const view_Dense<matrix::Dense<float>, float> &A,
3964  const view_Dense<vector<float>, float> &B,
3966 void min(const view_Dense<matrix::Dense<float>, float> &A,
3967  const view_Dense<matrix::Dense<float>, float> &B,
3969 void min(const view_Dense<matrix::Dense<float>, float> &A,
3970  const view_Dense<matrix::Dense<float>, float> &B,
3971  view_Dense<vector<float>, float> &C);
3972 void min(const view_Dense<matrix::Dense<float>, float> &A,
3973  const view_Dense<matrix::Dense<float>, float> &B,
3974  view_Dense<matrix::Dense<float>, float> &C);
3975 void min(const view_Dense<matrix::Dense<float>, float> &A,
3976  const view_Dense<matrix::Dense<float>, float> &B,
3978 void min(const view_Dense<matrix::Dense<float>, float> &A,
3979  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3981 void min(const view_Dense<matrix::Dense<float>, float> &A,
3982  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3983  view_Dense<vector<float>, float> &C);
3984 void min(const view_Dense<matrix::Dense<float>, float> &A,
3985  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3986  view_Dense<matrix::Dense<float>, float> &C);
3987 void min(const view_Dense<matrix::Dense<float>, float> &A,
3988  const view_Dense<tensor::tensor_Dense<float>, float> &B,
3993  const matrix::Dense<float> &B, view_Dense<vector<float>, float> &C);
3995  const matrix::Dense<float> &B,
3996  view_Dense<matrix::Dense<float>, float> &C);
3998  const matrix::Dense<float> &B,
4001  const view_Dense<vector<float>, float> &B, matrix::Dense<float> &C);
4003  const view_Dense<vector<float>, float> &B,
4004  view_Dense<vector<float>, float> &C);
4006  const view_Dense<vector<float>, float> &B,
4007  view_Dense<matrix::Dense<float>, float> &C);
4009  const view_Dense<vector<float>, float> &B,
4012  const view_Dense<matrix::Dense<float>, float> &B,
4015  const view_Dense<matrix::Dense<float>, float> &B,
4016  view_Dense<vector<float>, float> &C);
4018  const view_Dense<matrix::Dense<float>, float> &B,
4019  view_Dense<matrix::Dense<float>, float> &C);
4021  const view_Dense<matrix::Dense<float>, float> &B,
4024  const view_Dense<tensor::tensor_Dense<float>, float> &B,
4027  const view_Dense<tensor::tensor_Dense<float>, float> &B,
4028  view_Dense<vector<float>, float> &C);
4030  const view_Dense<tensor::tensor_Dense<float>, float> &B,
4031  view_Dense<matrix::Dense<float>, float> &C);
4033  const view_Dense<tensor::tensor_Dense<float>, float> &B,
4055 void max(const matrix::Dense<double> &A, const double alpha,
4057 void max(const matrix::Dense<double> &A, const double alpha,
4058  view_Dense<vector<double>, double> &C);
4059 void max(const matrix::Dense<double> &A, const double alpha,
4060  view_Dense<matrix::Dense<double>, double> &C);
4061 void max(const matrix::Dense<double> &A, const double alpha,
4063 void max(const view_Dense<vector<double>, double> &A, const double alpha,
4065 void max(const view_Dense<vector<double>, double> &A, const double alpha,
4066  view_Dense<vector<double>, double> &C);
4067 void max(const view_Dense<vector<double>, double> &A, const double alpha,
4068  view_Dense<matrix::Dense<double>, double> &C);
4069 void max(const view_Dense<vector<double>, double> &A, const double alpha,
4071 void max(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4073 void max(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4074  view_Dense<vector<double>, double> &C);
4075 void max(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4076  view_Dense<matrix::Dense<double>, double> &C);
4077 void max(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4080  const double alpha, matrix::Dense<double> &C);
4082  const double alpha, view_Dense<vector<double>, double> &C);
4084  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
4086  const double alpha,
4088 void max(const matrix::Dense<float> &A, const float alpha,
4090 void max(const matrix::Dense<float> &A, const float alpha,
4091  view_Dense<vector<float>, float> &C);
4092 void max(const matrix::Dense<float> &A, const float alpha,
4093  view_Dense<matrix::Dense<float>, float> &C);
4094 void max(const matrix::Dense<float> &A, const float alpha,
4096 void max(const view_Dense<vector<float>, float> &A, const float alpha,
4098 void max(const view_Dense<vector<float>, float> &A, const float alpha,
4099  view_Dense<vector<float>, float> &C);
4100 void max(const view_Dense<vector<float>, float> &A, const float alpha,
4101  view_Dense<matrix::Dense<float>, float> &C);
4102 void max(const view_Dense<vector<float>, float> &A, const float alpha,
4104 void max(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4106 void max(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4107  view_Dense<vector<float>, float> &C);
4108 void max(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4109  view_Dense<matrix::Dense<float>, float> &C);
4110 void max(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4113  const float alpha, matrix::Dense<float> &C);
4115  const float alpha, view_Dense<vector<float>, float> &C);
4117  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
4119  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
4140 void min(const matrix::Dense<double> &A, const double alpha,
4142 void min(const matrix::Dense<double> &A, const double alpha,
4143  view_Dense<vector<double>, double> &C);
4144 void min(const matrix::Dense<double> &A, const double alpha,
4145  view_Dense<matrix::Dense<double>, double> &C);
4146 void min(const matrix::Dense<double> &A, const double alpha,
4148 void min(const view_Dense<vector<double>, double> &A, const double alpha,
4150 void min(const view_Dense<vector<double>, double> &A, const double alpha,
4151  view_Dense<vector<double>, double> &C);
4152 void min(const view_Dense<vector<double>, double> &A, const double alpha,
4153  view_Dense<matrix::Dense<double>, double> &C);
4154 void min(const view_Dense<vector<double>, double> &A, const double alpha,
4156 void min(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4158 void min(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4159  view_Dense<vector<double>, double> &C);
4160 void min(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4161  view_Dense<matrix::Dense<double>, double> &C);
4162 void min(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4165  const double alpha, matrix::Dense<double> &C);
4167  const double alpha, view_Dense<vector<double>, double> &C);
4169  const double alpha, view_Dense<matrix::Dense<double>, double> &C);
4171  const double alpha,
4173 void min(const matrix::Dense<float> &A, const float alpha,
4175 void min(const matrix::Dense<float> &A, const float alpha,
4176  view_Dense<vector<float>, float> &C);
4177 void min(const matrix::Dense<float> &A, const float alpha,
4178  view_Dense<matrix::Dense<float>, float> &C);
4179 void min(const matrix::Dense<float> &A, const float alpha,
4181 void min(const view_Dense<vector<float>, float> &A, const float alpha,
4183 void min(const view_Dense<vector<float>, float> &A, const float alpha,
4184  view_Dense<vector<float>, float> &C);
4185 void min(const view_Dense<vector<float>, float> &A, const float alpha,
4186  view_Dense<matrix::Dense<float>, float> &C);
4187 void min(const view_Dense<vector<float>, float> &A, const float alpha,
4189 void min(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4191 void min(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4192  view_Dense<vector<float>, float> &C);
4193 void min(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4194  view_Dense<matrix::Dense<float>, float> &C);
4195 void min(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4198  const float alpha, matrix::Dense<float> &C);
4200  const float alpha, view_Dense<vector<float>, float> &C);
4202  const float alpha, view_Dense<matrix::Dense<float>, float> &C);
4204  const float alpha, view_Dense<tensor::tensor_Dense<float>, float> &C);
4221 [[nodiscard]] double max(const matrix::Dense<double> &C);
4222 [[nodiscard]] double max(const view_Dense<vector<double>, double> &C);
4223 [[nodiscard]] double max(const view_Dense<matrix::Dense<double>, double> &C);
4224 [[nodiscard]] double
4226 [[nodiscard]] float max(const matrix::Dense<float> &C);
4227 [[nodiscard]] float max(const view_Dense<vector<float>, float> &C);
4228 [[nodiscard]] float max(const view_Dense<matrix::Dense<float>, float> &C);
4229 [[nodiscard]] float
4247 [[nodiscard]] double min(const matrix::Dense<double> &C);
4248 [[nodiscard]] double min(const view_Dense<vector<double>, double> &C);
4249 [[nodiscard]] double min(const view_Dense<matrix::Dense<double>, double> &C);
4250 [[nodiscard]] double
4252 [[nodiscard]] float min(const matrix::Dense<float> &C);
4253 [[nodiscard]] float min(const view_Dense<vector<float>, float> &C);
4254 [[nodiscard]] float min(const view_Dense<matrix::Dense<float>, float> &C);
4255 [[nodiscard]] float
4277 void alo(const matrix::Dense<double> &A, const double alpha, const double beta,
4279 void alo(const matrix::Dense<double> &A, const double alpha, const double beta,
4280  view_Dense<vector<double>, double> &C);
4281 void alo(const matrix::Dense<double> &A, const double alpha, const double beta,
4282  view_Dense<matrix::Dense<double>, double> &C);
4283 void alo(const matrix::Dense<double> &A, const double alpha, const double beta,
4285 void alo(const view_Dense<vector<double>, double> &A, const double alpha,
4286  const double beta, matrix::Dense<double> &C);
4287 void alo(const view_Dense<vector<double>, double> &A, const double alpha,
4288  const double beta, view_Dense<vector<double>, double> &C);
4289 void alo(const view_Dense<vector<double>, double> &A, const double alpha,
4290  const double beta, view_Dense<matrix::Dense<double>, double> &C);
4291 void alo(const view_Dense<vector<double>, double> &A, const double alpha,
4292  const double beta,
4294 void alo(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4295  const double beta, matrix::Dense<double> &C);
4296 void alo(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4297  const double beta, view_Dense<vector<double>, double> &C);
4298 void alo(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4299  const double beta, view_Dense<matrix::Dense<double>, double> &C);
4300 void alo(const view_Dense<matrix::Dense<double>, double> &A, const double alpha,
4301  const double beta,
4304  const double alpha, const double beta, matrix::Dense<double> &C);
4306  const double alpha, const double beta,
4307  view_Dense<vector<double>, double> &C);
4309  const double alpha, const double beta,
4310  view_Dense<matrix::Dense<double>, double> &C);
4312  const double alpha, const double beta,
4314 void alo(const matrix::Dense<float> &A, const float alpha, const float beta,
4316 void alo(const matrix::Dense<float> &A, const float alpha, const float beta,
4317  view_Dense<vector<float>, float> &C);
4318 void alo(const matrix::Dense<float> &A, const float alpha, const float beta,
4319  view_Dense<matrix::Dense<float>, float> &C);
4320 void alo(const matrix::Dense<float> &A, const float alpha, const float beta,
4322 void alo(const view_Dense<vector<float>, float> &A, const float alpha,
4323  const float beta, matrix::Dense<float> &C);
4324 void alo(const view_Dense<vector<float>, float> &A, const float alpha,
4325  const float beta, view_Dense<vector<float>, float> &C);
4326 void alo(const view_Dense<vector<float>, float> &A, const float alpha,
4327  const float beta, view_Dense<matrix::Dense<float>, float> &C);
4328 void alo(const view_Dense<vector<float>, float> &A, const float alpha,
4329  const float beta, view_Dense<tensor::tensor_Dense<float>, float> &C);
4330 void alo(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4331  const float beta, matrix::Dense<float> &C);
4332 void alo(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4333  const float beta, view_Dense<vector<float>, float> &C);
4334 void alo(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4335  const float beta, view_Dense<matrix::Dense<float>, float> &C);
4336 void alo(const view_Dense<matrix::Dense<float>, float> &A, const float alpha,
4337  const float beta, view_Dense<tensor::tensor_Dense<float>, float> &C);
4339  const float alpha, const float beta, matrix::Dense<float> &C);
4341  const float alpha, const float beta,
4342  view_Dense<vector<float>, float> &C);
4344  const float alpha, const float beta,
4345  view_Dense<matrix::Dense<float>, float> &C);
4347  const float alpha, const float beta,
4367  view_Dense<vector<double>, double> &C);
4369  view_Dense<matrix::Dense<double>, double> &C);
4372 void reciprocal(const view_Dense<vector<double>, double> &A,
4374 void reciprocal(const view_Dense<vector<double>, double> &A,
4375  view_Dense<vector<double>, double> &C);
4376 void reciprocal(const view_Dense<vector<double>, double> &A,
4377  view_Dense<matrix::Dense<double>, double> &C);
4378 void reciprocal(const view_Dense<vector<double>, double> &A,
4383  view_Dense<vector<double>, double> &C);
4385  view_Dense<matrix::Dense<double>, double> &C);
4391  view_Dense<vector<double>, double> &C);
4393  view_Dense<matrix::Dense<double>, double> &C);
4398  view_Dense<vector<float>, float> &C);
4400  view_Dense<matrix::Dense<float>, float> &C);
4403 void reciprocal(const view_Dense<vector<float>, float> &A,
4405 void reciprocal(const view_Dense<vector<float>, float> &A,
4406  view_Dense<vector<float>, float> &C);
4407 void reciprocal(const view_Dense<vector<float>, float> &A,
4408  view_Dense<matrix::Dense<float>, float> &C);
4409 void reciprocal(const view_Dense<vector<float>, float> &A,
4414  view_Dense<vector<float>, float> &C);
4416  view_Dense<matrix::Dense<float>, float> &C);
4422  view_Dense<vector<float>, float> &C);
4424  view_Dense<matrix::Dense<float>, float> &C);
4429 } // namespace vml
4430 } // namespace monolish
Dense format Matrix.
void add(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element addition CRS matrix A and CRS matrix B.
void asin(const matrix::CRS< double > &A, matrix::CRS< double > &C)
asin to CRS matrix elements (C[0:nnz] = asin(A[0:nnz]))
void asinh(const matrix::CRS< double > &A, matrix::CRS< double > &C)
asinh to CRS matrix elements (C[0:nnz] = asinh(A[0:nnz]))
void atan(const matrix::CRS< double > &A, matrix::CRS< double > &C)
atan to CRS matrix elements (C[0:nnz] = atan(A[0:nnz]))
void atanh(const matrix::CRS< double > &A, matrix::CRS< double > &C)
atanh to CRS matrix elements (C[0:nnz] = atanh(A[0:nnz]))
void ceil(const matrix::CRS< double > &A, matrix::CRS< double > &C)
ceil to CRS matrix elements (C[0:nnz] = ceil(A[0:nnz]))
void max(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
Create a new CRS matrix with greatest elements of two matrices (C[0:nnz] = max(A[0:nnz],...
void min(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
Create a new CRS matrix with smallest elements of two matrices (C[0:nnz] = min(A[0:nnz],...
void div(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element division CRS matrix A and CRS matrix B.
void floor(const matrix::CRS< double > &A, matrix::CRS< double > &C)
floor to CRS matrix elements (C[0:nnz] = floor(A[0:nnz]))
void mul(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element multiplication CRS matrix A and CRS matrix B.
void pow(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
power to CRS matrix elements (C[0:N] = pow(A[0:N], B[0:N]))
void reciprocal(const matrix::CRS< double > &A, matrix::CRS< double > &C)
reciprocal to CRS matrix elements (C[0:nnz] = 1 / A[0:nnz])
void sign(const matrix::CRS< double > &A, matrix::CRS< double > &C)
sign to CRS matrix elements (C[0:nnz] = sign(A[0:nnz]))
void sin(const matrix::CRS< double > &A, matrix::CRS< double > &C)
sin to CRS matrix elements (C[0:nnz] = sin(A[0:nnz]))
void sinh(const matrix::CRS< double > &A, matrix::CRS< double > &C)
sinh to CRS matrix elements (C[0:nnz] = sinh(A[0:nnz]))
void sqrt(const matrix::CRS< double > &A, matrix::CRS< double > &C)
sqrt to CRS matrix elements (C[0:nnz] = sqrt(A[0:nnz]))
void sub(const matrix::CRS< double > &A, const matrix::CRS< double > &B, matrix::CRS< double > &C)
element by element subtract CRS matrix A and CRS matrix B.
void tan(const matrix::CRS< double > &A, matrix::CRS< double > &C)
tan to CRS matrix elements (C[0:nnz] = tan(A[0:nnz]))
void tanh(const matrix::CRS< double > &A, matrix::CRS< double > &C)
tanh to CRS matrix elements (C[0:nnz] = tanh(A[0:nnz]))
void exp(const matrix::Dense< double > &A, matrix::Dense< double > &C)
exp to Dense matrix elements (C[0:nnz] = exp(A[0:nnz]))
void alo(const matrix::CRS< double > &A, const double alpha, const double beta, matrix::CRS< double > &C)
Asymmetric linear operation to CRS matrix elements (C[0:nnz] = alpha max(A[0:nnz],...
monolish namespaces