Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make PolynomialQuotientRing_generic inherit from QuotientRing_generic #34463

Closed
yyyyx4 opened this issue Aug 31, 2022 · 10 comments
Closed

make PolynomialQuotientRing_generic inherit from QuotientRing_generic #34463

yyyyx4 opened this issue Aug 31, 2022 · 10 comments

Comments

@yyyyx4
Copy link
Member

yyyyx4 commented Aug 31, 2022

This will make it easier to write code that works uniformly for all kinds of quotient rings.

(Example: Polynomial quotient rings currently do not have the .cover() and .defining_ideal() methods, which are very useful when writing generic quotient-ring code.)

Component: algebra

Author: Lorenz Panny

Branch/Commit: b56ebf9

Reviewer: Marc Mezzarobba

Issue created by migration from https://trac.sagemath.org/ticket/34463

@yyyyx4 yyyyx4 added this to the sage-9.8 milestone Aug 31, 2022
@yyyyx4
Copy link
Member Author

yyyyx4 commented Aug 31, 2022

Commit: 0d42205

@yyyyx4
Copy link
Member Author

yyyyx4 commented Aug 31, 2022

Author: Lorenz Panny

@yyyyx4
Copy link
Member Author

yyyyx4 commented Aug 31, 2022

@roed314
Copy link
Contributor

roed314 commented Sep 14, 2022

comment:2

There seems to be a test failure

File "sage/schemes/elliptic_curves/hom_velusqrt.py", line 829, in sage.schemes.elliptic_curves.hom_velusqrt.EllipticCurveHom_velusqrt
Failed example:
    any(map(check, psi.codomain().isomorphisms(phi.codomain())))
Expected:
    True
Got:
    False

and some linting failures

sage/schemes/elliptic_curves/hom_velusqrt.py:325:9: E306 expected 1 blank line before a nested definition, found 0
sage/schemes/elliptic_curves/hom_velusqrt.py:327:9: E306 expected 1 blank line before a nested definition, found 0
sage/functions/special.py:867:12: W605 invalid escape sequence '\p'
sage/functions/special.py:867:19: W605 invalid escape sequence '\p'
sage/algebras/clifford_algebra.py:2987:21: E721 do not compare types, use 'isinstance()'

The linting problems don't look like they're due to this ticket, but I'm not sure about the test failure.

@yyyyx4
Copy link
Member Author

yyyyx4 commented Sep 14, 2022

comment:3

Thanks for having a look. The test failure is #34467, and the linter errors should go away with #34466.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 29, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

b56ebf9Merge tag '9.7' into public/make_PolynomialQuotientRing_inherit_from_QuotientRing

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Sep 29, 2022

Changed commit from 0d42205 to b56ebf9

@mezzarobba
Copy link
Member

Reviewer: Marc Mezzarobba

@mezzarobba
Copy link
Member

comment:5

I think is_Class functions that just perform a type test are considered obsolete, so I would write if not isinstance(x, PolynomialQuotientRing_generic) instead of calling is_PolynomialQuotientRing. Lgtm otherwise!

@vbraun
Copy link
Member

vbraun commented Oct 16, 2022

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants