Điều này phù hợp với hàm berlekamp_massey có sẵn trong SAGEMATH.
Trong khi tính toán đa thức tối thiểu của các chuỗi bằng cách sử dụng hàm Berlekamp Massey, tôi cảm thấy rằng hàm Berlekamp Massey trong Sagemath được thiết kế đến mức nó yêu cầu lặp lại chuỗi tuần hoàn hai lần để có kết quả chính xác.
Xét bài toán tính độ phức tạp tuyến tính của chuỗi tuần hoàn $$s = 110010100001110$$
Hàm Berlekamp Massey với đầu vào nối $$input = s+s$$ mang lại kết quả chính xác.
Mã số: berlekamp_massey([GF(2)(1), 1, 0, 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 0 , 1, 0, 0, 0, 0, 1, 1, 1, 0])
Tại sao cần phải nhân đôi trình tự để tính toán đa thức tối thiểu chính xác trong SAGEMATH. Tuy nhiên, thuật toán ban đầu không nói bất cứ điều gì như thế này. Đây có phải là điều gì đó liên quan đến lý do tại sao chức năng này chấp nhận đầu vào với độ dài chẵn, đây có phải là cách mô-đun trong sagemath được xác định không?
Lưu ý: Đôi khi đối với một chuỗi s = $(s_0, s_1,......, s_{N-1})$, đa thức nhỏ nhất đối với các trường hợp xét dãy $s$ và trình tự $s+s$ khác nhau và trong một số trường hợp nó giống nhau. Vì vậy, trong trường hợp khi nó khác, chúng ta có nên lấy đa thức tối thiểu cho dãy lặp lại kép vì nó phù hợp với các cân nhắc của ma trận Hankel không?
Lưu ý: Tôi đã thực hiện nhiều ví dụ hơn trong vài ngày qua và sau đó tôi trình bày lập luận này. Cảm ơn đã giúp đỡ.