Hi,

I've got a (truncated) matrix over a power series ring over a finite
field that I want to convert to a GP matrix so that I can take its
kernel. Since the matrix is truncated, it can be viewed as just being
over a univariate polynomial ring. I want to take its kernel, but the
echelon form over a univariate polynomial ring over a finite field is
not yet implemented. I knew GP can do this, so I was going to send the
matrix to GP and have GP compute the kernel. But if I send the matrix
as a matrix over the power series ring, the coefficients are not sent
as being over a finite field. On the other hand, if I redefine the
matrix over the polynomial ring, the coefficients are treated as being
over a finite field. I could reconstruct all of my matrices as being
over the polynomial ring once I truncate my series, but that seems
like a silly hack -- GP understands power series rings over a finite
field, so the conversion shouldn't be a problem. I'm running SAGE
v3.0.2.

Thanks,
Salman

Here is the code and output:

sage: R.<x>=PowerSeriesRing(GF(5),"x")
sage: m=matrix(R,2,[2+x, 1+x, 2+3*x,1+2*x])
sage: m.kernel()
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call
last)

/Users/salmanhb/Documents/work/research/computations/sage/<ipython
console> in <module>()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix.left_kernel (sage/matrix/matrix2.c:7985)
()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix.echelon_form (sage/matrix/matrix2.c:
15292)()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix.echelonize (sage/matrix/matrix2.c:15092)
()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix._echelonize_ring (sage/matrix/matrix2.c:
14807)()

NotImplementedError: echelon form over Power Series Ring in x over
Finite Field of size 5 not yet implemented
sage: gp(m)
[x + 2, x + 1; 3*x + 2, 2*x + 1]
sage: R.<x>=PolynomialRing(GF(5),"x")
sage: m=matrix(R,2,[2+x, 1+x, 2+3*x,1+2*x])
sage: m.kernel()
---------------------------------------------------------------------------
NotImplementedError                       Traceback (most recent call
last)

/Users/salmanhb/Documents/work/research/computations/sage/<ipython
console> in <module>()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix.left_kernel (sage/matrix/matrix2.c:7985)
()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix.echelon_form (sage/matrix/matrix2.c:
15292)()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix.echelonize (sage/matrix/matrix2.c:15092)
()

/Users/salmanhb/Documents/work/research/computations/sage/matrix2.pyx
in sage.matrix.matrix2.Matrix._echelonize_ring (sage/matrix/matrix2.c:
14807)()

NotImplementedError: echelon form over Univariate Polynomial Ring in x
over Finite Field of size 5 not yet implemented
sage: gp(m)
[Mod(1, 5)*x + Mod(2, 5), Mod(1, 5)*x + Mod(1, 5); Mod(3, 5)*x +
Mod(2, 5), Mod(2, 5)*x + Mod(1, 5)]
--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/sage-support
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to