import echelon as ec import matutil as mu from GF2 import one r0 = [0, 0, one, one] r1 = [one, 0, one, one] r2 = [one, 0, 0, one] r3 = [one, one, one, one] rows = [r0, r1, r2, r3] A = mu.listlist2mat(rows) print(A) 0 1 2 3 ----------------- 0 | 0 0 one one 1 | one 0 one one 2 | one 0 0 one 3 | one one one one M = ec.transformation(A, one) print(M) 0 1 2 3 ----------------- 0 | 0 one 0 0 1 | 0 one 0 one 2 | one 0 0 0 3 | one one one 0 print(M * A) 0 1 2 3 ----------------- 0 | one 0 one one 1 | 0 one 0 0 2 | 0 0 one one 3 | 0 0 0 one s0 = [0, 2, 4, 2, 8] s1 = [2, 1, 0, 5, 4] s2 = [4, 1, 2, 4, 2] s3 = [5, 0, 0, 2, 8] rows2 = [s0, s1, s2, s3] B = mu.listlist2mat(rows2) print(B) 0 1 2 3 4 ----------- 0 | 0 2 4 2 8 1 | 2 1 0 5 4 2 | 4 1 2 4 2 3 | 5 0 0 2 8 N = ec.transformation(B) print(N) 0 1 2 3 ------------------ 0 | 0 1 0 0 1 | 1 0 0 0 2 | 0.5 -2 1 0 3 | 0.625 0 -1.25 1 print(N * B) 0 1 2 3 4 ------------------ 0 | 2 1 0 5 4 1 | 0 2 4 2 8 2 | 0 0 4 -5 -2 3 | 0 0 0 -1.75 10.5