e6-1 / NeuralIdeals

A collection of files related to neural ideals.
MIT License
4 stars 2 forks source link

groebner_basis() docstring #1

Open nickcameron opened 7 years ago

nickcameron commented 7 years ago

While using this package (quite nice in general) in our research with Professor Nora Youngs, we discovered the methods NeuralCode.groebner_basis() and NeuralCode.universal_groebner_basis() are both described as returning Groebner bases, but they instead return ideals generated by said bases.

The docstrings could be changed to reflect this more clearly - though universal_groebner_basis() does specify later in its docstring, it is possible this could confuse another user.

e6-1 commented 7 years ago

Great! Should we change the code to return the basis or update the doc-string to specify that an ideal is returned? Which would be more useful and user-friendly?

nickcameron commented 7 years ago

Hmm... I favor returning the basis, to match the behavior of the sage.rings.polynomial.multi_polynomial_ideal.MPolynomialIdeal.groebner_basis() method, which returns a ...polynomial.multi_polynomial_sequence.PolynomialSequence_gf2.

Considered this and having users make their own Groebner-generated ideals, but then they may accidentally use a different polynomial ring than NeuralCode.F and run into problems. I think the most user friendly way would be to just introduce other methods as well for the ideals.