1function test164
2%TEST164 test GB_AxB_dot5
3
4% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved.
5% SPDX-License-Identifier: Apache-2.0
6
7rng ('default') ;
8
9n = 10 ;
10A = GB_spec_random (n, n, 0.5, 1, 'logical') ;
11A.sparsity = 2 ;    % sparse
12B = GB_spec_random (n, 1, 0.5, 1, 'logical') ;
13B.sparsity = 4 ;    % bitmap
14
15semiring.add = 'any' ;
16semiring.multiply = 'secondi1' ;
17semiring.class = 'int32' ;
18
19M = GB_spec_random (n, 1, inf, 1, 'int32') ;
20M.matrix = double (full (M.matrix > 0.5)) ;
21M.sparsity = 8 ;    % full
22desc = struct ('inp0', 'tran', 'mask', 'complement') ;
23
24% no accum
25Cin = sparse (n, 1) ;
26
27% can't compare C0 and C1 because the ANY monoid differs
28C0 = GB_spec_mxm (Cin, M, [ ], semiring, A, B, desc) ;
29C1 = GB_mex_mxm  (Cin, M, [ ], semiring, A, B, desc) ;
30% GB_spec_compare (C0,C1) ;
31
32semiring.add = 'min' ;
33C0 = GB_spec_mxm (Cin, M, [ ], semiring, A, B, desc) ;
34C1 = GB_mex_mxm  (Cin, M, [ ], semiring, A, B, desc) ;
35GB_spec_compare (C0,C1) ;
36
37fprintf ('test164: all tests passed\n') ;
38