File: DirectSumMat.tst

package info (click to toggle)
gap 4.15.1-1
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 110,212 kB
  • sloc: ansic: 97,261; xml: 48,343; cpp: 13,946; sh: 4,900; perl: 1,650; javascript: 255; makefile: 252; ruby: 9
file content (45 lines) | stat: -rw-r--r-- 1,181 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#@local F, l, N, M
gap> START_TEST( "DirectSumMat.tst" );

# exotic arguments
gap> DirectSumMat();
[  ]
gap> DirectSumMat([]);
[  ]
gap> DirectSumMat([], []);
[  ]
gap> DirectSumMat([], [], [[1]]);
[ [ 1 ] ]

# plists (the situation from GAP 4.11.1)
gap> DirectSumMat([[1]], [[2]]);
[ [ 1, 0 ], [ 0, 2 ] ]
gap> DirectSumMat([[Z(2)]], [[Z(4)]]);
[ <a GF2 vector of length 2>, [ 0*Z(2), Z(2^2) ] ]
gap> DirectSumMat([[Z(2)]], [[Z(3)]]);
[ <a GF2 vector of length 2>, [ 0*Z(2), Z(3) ] ]
gap> F:= FunctionField( Rationals, 4 );;
gap> l:= IndeterminatesOfPolynomialRing( F );
[ x_1, x_2, x_3, x_4 ]
gap> N:= [ [ l[1], l[2] ],[ l[3], l[4] ] ];
[ [ x_1, x_2 ], [ x_3, x_4 ] ]
gap> DirectSumMat( N, N );
[ [ x_1, x_2, 0, 0 ], [ x_3, x_4, 0, 0 ], [ 0, 0, x_1, x_2 ], 
  [ 0, 0, x_3, x_4 ] ]

# matrix objects
gap> M:= Matrix( IsPlistMatrixRep, Rationals, [ 1, 2, 3, 4 ], 2 );
<2x2-matrix over Rationals>
gap> DirectSumMat( M ) = M;
true
gap> DirectSumMat( M, M );
<4x4-matrix over Rationals>
gap> DirectSumMat( [ M ] ) = M;
true
gap> DirectSumMat( [ M, M ] ) = DirectSumMat( M, M );
true
gap> DirectSumMat( M, [[ 1 ]] );
<3x3-matrix over Rationals>

#
gap> STOP_TEST( "DirectSumMat.tst" );