สิ่งนี้อยู่ในบริบทที่มีฟังก์ชัน berlekamp_massey ในตัวใน SAGEMATH
ขณะคำนวณพหุนามขั้นต่ำของลำดับโดยใช้ฟังก์ชัน Berlekamp Massey ฉันรู้สึกว่าฟังก์ชัน Berlekamp Massey ใน Sagemath ได้รับการออกแบบมาเพื่อให้ลำดับธาตุซ้ำสองครั้งเพื่อให้ได้ผลลัพธ์ที่ถูกต้อง
พิจารณาปัญหาการคำนวณความซับซ้อนเชิงเส้นของสตริงคาบ $$s = 110010100001110$$
ฟังก์ชัน Berlekamp Massey พร้อมอินพุตที่ต่อกัน $$อินพุต = s+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])
เหตุใดจึงต้องเพิ่มลำดับเป็นสองเท่าสำหรับการคำนวณพหุนามขั้นต่ำที่ถูกต้องใน SAGEMATH อัลกอริทึมดั้งเดิมไม่ได้พูดอะไรแบบนี้ สิ่งนี้เกี่ยวข้องกับสาเหตุที่ฟังก์ชันนี้ยอมรับอินพุตที่มีความยาวเท่ากัน นี่เป็นวิธีที่กำหนดโมดูลใน sagemath หรือไม่
หมายเหตุ: บางครั้งสำหรับลำดับ s = $(s_0, s_1,......, s_{N-1})$พหุนามขั้นต่ำสำหรับกรณีที่พิจารณาลำดับ $s$ และลำดับ $s+s$ แตกต่างกันและในบางกรณีก็เหมือนกัน ดังนั้น ในกรณีที่มันแตกต่างกัน เราควรใช้พหุนามขั้นต่ำสำหรับลำดับซ้ำสองเท่า เพราะมันเห็นด้วยกับการพิจารณาเมทริกซ์ของ Hankel หรือไม่
หมายเหตุ: ฉันได้ทำตัวอย่างมากมายในช่วงสองสามวันที่ผ่านมา และจากนั้นฉันก็นำเสนอข้อโต้แย้งนี้ ขอบคุณสำหรับความช่วยเหลือ