@@ -4209,39 +4209,57 @@ def is_permutation(P):
42094209
42104210 def check_fflu (A ):
42114211 m , n = shape (A )
4212+ print ('a' )
42124213 P , L , D , U = A .fflu ()
4214+ print ('b' )
42134215 Dq = QQ (D )
42144216 assert P * A == L * Dq .inv ()* U
42154217 assert shape (P ) == shape (L ) == shape (D ) == (m , m )
42164218 assert shape (A ) == shape (U ) == (m , n )
42174219 assert is_permutation (P )
4220+ print ('c' )
42184221 assert L .is_lower_triangular ()
4222+ print ('d' )
42194223 assert U .is_upper_triangular ()
4224+ print ('e' )
42204225 assert D .is_diagonal ()
4226+ print ('f' )
42214227
42224228 for M , S , is_field in _all_matrices ():
42234229 # XXX: Add this to more matrix types...
42244230 if M is not flint .fmpz_mat :
42254231 continue
42264232
4233+ print (0 )
42274234 A = M ([[1 , 2 ], [3 , 4 ]])
42284235 P , L , D , U = A .fflu ()
42294236 assert P == M ([[1 , 0 ], [0 , 1 ]])
42304237 assert L == M ([[1 , 0 ], [3 , - 2 ]])
42314238 assert D == M ([[1 , 0 ], [0 , - 2 ]])
42324239 assert U == M ([[1 , 2 ], [0 , - 2 ]])
42334240
4241+ print (1 )
42344242 check_fflu (M (0 , 0 , []))
4243+ print (2 )
42354244 check_fflu (M (2 , 0 , []))
4245+ print (3 )
42364246 check_fflu (M (0 , 2 , []))
4247+ print (4 )
42374248 check_fflu (M ([[1 ]]))
42384249
4250+ print (5 )
42394251 check_fflu (M ([[1 , 2 ], [3 , 4 ]]))
4252+ print (6 )
42404253 check_fflu (M ([[1 , 2 , 3 ], [4 , 5 , 6 ]]))
4254+ print (7 )
42414255 check_fflu (M ([[1 , 2 ], [3 , 4 ], [5 , 6 ]]))
4256+ print (8 )
42424257 check_fflu (M ([[1 , 2 ], [2 , 4 ]]))
4258+ print (9 )
42434259 check_fflu (M ([[0 , 0 ], [0 , 0 ]]))
4260+ print (10 )
42444261 check_fflu (M ([[1 , 1 , 1 ], [1 , 1 , 1 ]]))
4262+ print (11 )
42454263
42464264 for _ in range (10 ):
42474265 for m in range (1 , 5 ):
0 commit comments