Учитывая первый вектор строки R0 = [a0,a1,...,a(n-1)]
и конкретный вектор V
, я хотел бы создать «векторную циркулянтную матрицу» в SAGE, которая будет построена следующим образом.Как создать векторную циркулянтную матрицу в Sage?
Строки матрицы будет
R0=R0; R1=p(R0); R2=p(R1), ..., R(n-1)=p(R(n-2))
где p
является карта, которая принимает, например, строки Ri = [r0,r1,...,r(n-1)]
и делает его [0, r0, r1,...,r(n-2)]+r(n-1)*V
Обратите внимание, что я пытался написать все, что в языке Sage. И это не похоже на классические циркулянтные, теплицкие или ганкелевые матрицы.
(п, R0, а вектор V будет определяться пользователем в начале)
Как написать простую программу, которая даст мне матрицу, определенную выше?
Действительно оценил, чтобы получить ответ так быстро, спасибо очень много. Это, похоже, работает с векторами и на ZZ. –
Я беру эти векторы как список коэффициентов полиномов над конечными полями, можете ли вы также изменить эту функцию для этого? Потому что здесь мы берем векторы как «списки»? –
Ах. Я вижу, что просто написал r = vector (L) для списка L, и он сработал. Большое спасибо! –