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

Runtime error due to precision bug #5

Open
aghitza opened this issue Oct 12, 2020 · 1 comment
Open

Runtime error due to precision bug #5

aghitza opened this issue Oct 12, 2020 · 1 comment

Comments

@aghitza
Copy link

aghitza commented Oct 12, 2020

R<x> := PolynomialRing(Rationals()); C := HyperellipticCurve(R![11, 64, 80, 40, 0, 4, 1], R![]);
Conductor_Genus2(C);

returns the following:

    Conductor_Genus2(
        C: Hyperelliptic Curve defined by y^2 = x^6 + 4*x^5 + 40*x^3 + ...
    )
    EvenConductorExponent_Genus2(
        C: Hyperelliptic Curve defined by y^2 = x^6 + 4*x^5 + 40*x^3 + ...
    )
    evencondexp(
        C: Hyperelliptic Curve defined by y^2 = x^6 + 4*x^5 + 40*x^3 + ...,
        p: 2
    )
    evencondexpdata(
        C: Hyperelliptic Curve defined by y^2 = x^6 + 4*x^5 + 40*x^3 + ...,
        p: 2
    )
    find_3torsion(
        f: 4*x^6 + 16*x^5 + 160*x^3 + 320*x^2 + 256*x + 44,
        p: Ideal of Integer Ring generated by 2
    )
    go(
        r: rec<recformat<success, err, seed, moebius, groebner_basis, K...
    )
    factorization(
        f: (1 + O(2))*$.1^40 + (2^6 + O(2^7))*$.1^39 + (2^5 + O(2^6))*$...
    )
    Factorization(
        f: (1 + O(2))*$.1^40 + (2^6 + O(2^7))*$.1^39 + (2^5 + O(2^6))*$...
    )
    ExactpAdics_Factorization(
        f: (1 + O(2))*$.1^40 + (2^6 + O(2^7))*$.1^39 + (2^5 + O(2^6))*$...
    )
    factorize(
        st: rec<recformat<xpol_state, xpol_get, xpols, brs_todo, brs_don...
    )
    In file "/home/ghitza/ExactpAdics2/common/Factorization_new.mag", line 850,
    column 11:
    >>           assert x0 eq br`width;
                 ^
    Runtime error in assert: Assertion failed
@cjdoris
Copy link
Owner

cjdoris commented Oct 12, 2020

Thanks, this is a difficult-to-avoid precision error in Magma's p-adics.

A work-around is to do Conductor_Genus2(C : MobiusRandomize:=1) instead, which solves a different formulation of the same problem. (If that doesn't work, keep incrementing MobiusRandomize by 1 until it works.)

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

2 participants