Singular.jl icon indicating copy to clipboard operation
Singular.jl copied to clipboard

Gröbner bases in plural

Open mohamed-barakat opened this issue 4 years ago • 2 comments

I will collect here some remarks on the Gröbner basics (std, liftstd, lift, syz, ...) in Singular's subsystem Plural. These remarks might be helpful for designing the interaction between the noncommutative ring interface in Oscar/AbstractAlgebra and Plural.

Whenever I say matrix below I mean a matrix or module in Singular/Plural. I think of what is called a module in Singular/Plural as a sparse, column-oriented data structure for matrices.

  1. By design Plural's std command computes GB of left ideals/modules. I am happy to see that this is now explicitly stated in the documentation.

To understand this claim it suffices to look at the documentation of liftstd in Plural. The multiple occurrences of the transposition could be interpreted as follows:

Let A is an r x c matrix over the noncommutative ring R provided by Plural. Then liftstd (taking into account the multiple transpositions) takes A as input and returns:

  • its left GB matrix B, i.e., a GB of its rows which generate a left submodule of the free left module R^{1 x c} of row vectors.
  • a transformation matrix X such that X * A = B.

Currently, Plural does not take A as input but transpose(A) and returns transpose(B) and transpose(X) instead of B and X.

  1. If the noncommutative algebra has no or at least no known involution then Plural has no way to compute GB of right ideals/modules. This is because the transposition trick that works for commutative rings allowing one to move from left to right modules and back does not work here since:

transpose(AB) is not equal to transpose(B) * transpose(A) over noncommutative rings.

  1. The transpositions of input and output also affect the commands lift and syz. For the latter, this means, that Plural can a priori only compute the left kernel of the matrix A. In order to compute the right kernel the ring R has to have a known involution.

I will be updating/clarifying/augmenting this post upon request.

mohamed-barakat avatar May 13 '20 15:05 mohamed-barakat

@tthsqe12 are you aware of this issue with remarks regarding PLURAL? Now that you implemented access to Plural, it would be good to check these things

fingolfin avatar Nov 09 '21 13:11 fingolfin

I am well aware of this post and have the issues on my radar.

tthsqe12 avatar Nov 09 '21 13:11 tthsqe12