Я запустил следующий код в sage-math и получил матрицу генератора, которая содержит нулевой столбец: я начал с матрицы кода [128, 107, 7] Goppa и выполнил серию расширений (Fix k; увеличение n ; увеличить r.) и Сокращения (Сокращение. Исправить r; уменьшить n; уменьшить k.), чтобы получить окончательную матрицу генератора.
Полученный результат представляет собой [128,105] матрицу, как и предполагалось, но имеет вектор нулевого столбца. Это действительный линейный блочный код?
Примечание. Последние два шага предназначались для извлечения субкода исходной матрицы, чтобы сделать его [128,105]. Удаление строки также привело к появлению нулевого столбца в матрице генератора.
F = GF(2^7)
R.<x> = F[]
g = x^3 + x + 1
L = [a for a in F.list() if g(a) != 0]
C = codes.GoppaCode(g, L)
show("Original",C)
ExtendedCode = codes.ExtendedCode(C)
show("Extended : ",ExtendedCode)
Cs=ExtendedCode.shortened([128])
show("Shortened: ",Cs)
SubC2=Cs.shortened([105])
SubC = codes.ExtendedCode(SubC2)
show("SubCode: ",SubC)
GeneratorMat=SubC2.generator_matrix()