will hold. The source of
should be a free module.
i1 : R = ZZ[x,y]
o1 = R
o1 : PolynomialRing
|
i2 : f = random(R^2,R^{2:-1})
o2 = | 4x+9y 2x+y |
| 7x+7y 4x+5y |
2 2
o2 : Matrix R <--- R
|
i3 : g = vars R ++ vars R
o3 = | x y 0 0 |
| 0 0 x y |
2 4
o3 : Matrix R <--- R
|
i4 : (q,r) = quotientRemainder(f,g)
o4 = ({1} | 4 2 |, 0)
{1} | 9 1 |
{1} | 7 4 |
{1} | 7 5 |
o4 : Sequence
|
i5 : g*q+r == f
o5 = true
|
i6 : f = f + map(target f, source f, id_(R^2))
o6 = | 4x+9y+1 2x+y |
| 7x+7y 4x+5y+1 |
2 2
o6 : Matrix R <--- R
|
i7 : (q,r) = quotientRemainder(f,g)
o7 = ({1} | 4 2 |, | 1 0 |)
{1} | 9 1 | | 0 1 |
{1} | 7 4 |
{1} | 7 5 |
o7 : Sequence
|
i8 : g*q+r == f
o8 = true
|