Class Genus2reduction
source code
object --+
|
structure.sage_object.SageObject --+
|
Genus2reduction
Conductor and Reduction Types for Genus 2 Curves.
Use \code{R = genus2reduction(Q, P)} to obtain reduction
information about the Jacobian of the projective smooth curve
defined by $y^2 + Q(x)y = P(x)$. Type \code{R?} for further
documentation and a description of how to interpret the local
reduction data.
EXAMPLES:
sage: x = QQ['x'].0
sage: R = genus2reduction(x^3 - 2*x^2 - 2*x + 1, -5*x^5)
sage: R.conductor
1416875
sage: factor(R.conductor)
5^4 * 2267
This means that only the odd part of the conductor is known.
sage: R.prime_to_2_conductor_only
True
The discriminant is always minimal away from 2, but possibly not at 2.
sage: factor(R.minimal_disc)
2^3 * 5^5 * 2267
Printing R summarizes all the information computed about the curve
sage: R
Reduction data about this proper smooth genus 2 curve:
y^2 + (x^3 - 2*x^2 - 2*x + 1)*y = -5*x^5
A Minimal Equation (away from 2):
y^2 = x^6 - 240*x^4 - 2550*x^3 - 11400*x^2 - 24100*x - 19855
Minimal Discriminant (away from 2): 56675000
Conductor (away from 2): 1416875
Local Data:
p=2
(potential) stable reduction: (II), j=1
p=5
(potential) stable reduction: (I)
reduction at p: [V] page 156, (3), f=4
p=2267
(potential) stable reduction: (II), j=432
reduction at p: [I{1-0-0}] page 170, (1), f=1
Here are some examples of curves with modular Jacobians:
sage: R = genus2reduction(x^3 + x + 1, -2*x^5 - 3*x^2 + 2*x - 2)
sage: factor(R.conductor)
23^2
sage: factor(genus2reduction(x^3 + 1, -x^5 - 3*x^4 + 2*x^2 + 2*x - 2).conductor)
29^2
sage: factor(genus2reduction(x^3 + x + 1, x^5 + 2*x^4 + 2*x^3 + x^2 - x - 1).conductor)
5^6
EXAMPLE:
sage: genus2reduction(0, x^6 + 3*x^3 + 63)
Reduction data about this proper smooth genus 2 curve:
y^2 = x^6 + 3*x^3 + 63
A Minimal Equation (away from 2):
y^2 = x^6 + 3*x^3 + 63
Minimal Discriminant (away from 2): 10628388316852992
Conductor (away from 2): 2893401
Local Data:
p=2
(potential) stable reduction: (V), j1+j2=0, j1*j2=0
p=3
(potential) stable reduction: (I)
reduction at p: [III{9}] page 184, (3)^2, f=10
p=7
(potential) stable reduction: (V), j1+j2=0, j1*j2=0
reduction at p: [I{0}-II-0] page 159, (1), f=2
In the above example, Liu remarks that in fact at $p=2$, the reduction
is [II-II-0] page 163, (1), $f=8$. So the conductor of J(C) is actually
$2 \cdot 2893401=5786802$.
A MODULAR CURVE:
Consider the modular curve $X_1(13)$ defined by an equation
$$
y^2 + (x^3-x^2-1)y = x^2 - x.
$$
We have:
sage: genus2reduction(x^3-x^2-1, x^2 - x)
Reduction data about this proper smooth genus 2 curve:
y^2 + (x^3 - x^2 - 1)*y = x^2 - x
A Minimal Equation (away from 2):
y^2 = x^6 + 58*x^5 + 1401*x^4 + 18038*x^3 + 130546*x^2 + 503516*x + 808561
Minimal Discriminant (away from 2): 169
Conductor: 169
Local Data:
p=13
(potential) stable reduction: (V), j1+j2=0, j1*j2=0
reduction at p: [I{0}-II-0] page 159, (1), f=2
So the curve has good reduction at 2. At $p=13$, the stable reduction is
union of two elliptic curves, and both of them have 0 as modular invariant.
The reduction at 13 is of type [I_0-II-0] (see Namikawa-Ueno,
page 159). It is an elliptic curve with a cusp. The group of connected
components of the Neron model of $J(C)$ is trivial, and the exponent
of the conductor of $J(C)$ at $13$ is $f=2$. The conductor of $J(C)$
is $13^2$. (Note: It is a theorem of Conrad-Edixhoven-Stein that the
component group of $J(X_1(p))$ is trivial for all primes $p$.)
|
|
__init__(self)
x.__init__(...) initializes x; see x.__class__.__doc__ for signature |
source code
|
|
|
|
|
|
|
|
|
|
raw(self,
Q,
P)
Return the raw output of running the \code{genus2reduction}
program on the hyperelliptic curve $y^2 + Q(x)y = P(x)$ as a
string. |
source code
|
|
|
|
|
|
|
|
|
Inherited from structure.sage_object.SageObject:
__hash__,
__new__,
__repr__,
_axiom_,
_axiom_init_,
_gap_,
_gap_init_,
_gp_,
_gp_init_,
_interface_,
_interface_init_,
_interface_is_cached_,
_kash_,
_kash_init_,
_macaulay2_,
_macaulay2_init_,
_magma_,
_magma_init_,
_maple_,
_maple_init_,
_mathematica_,
_mathematica_init_,
_maxima_,
_maxima_init_,
_octave_,
_octave_init_,
_pari_,
_pari_init_,
_r_init_,
_sage_,
_singular_,
_singular_init_,
category,
db,
dump,
dumps,
plot,
rename,
reset_name,
save,
version
Inherited from object:
__delattr__,
__getattribute__,
__reduce_ex__,
__setattr__,
__str__
|
|
Inherited from object:
__class__
|
x.__init__(...) initializes x; see x.__class__.__doc__ for signature
- Overrides:
object.__init__
- (inherited documentation)
|
Return the raw output of running the \code{genus2reduction}
program on the hyperelliptic curve $y^2 + Q(x)y = P(x)$ as a
string.
INPUT:
Q -- something coercible to a univariate polynomial over Q.
P -- something coercible to a univariate polynomial over Q.
OUTPUT:
string -- raw output
Q -- what Q was actually input to auxiliary genus2reduction program
P -- what P was actually input to auxiliary genus2reduction program
EXAMPLES:
sage: x = QQ['x'].0
sage: print genus2reduction.raw(x^3 - 2*x^2 - 2*x + 1, -5*x^5)[0]
a minimal equation over Z[1/2] is :
y^2 = x^6-240*x^4-2550*x^3-11400*x^2-24100*x-19855
<BLANKLINE>
factorization of the minimal (away from 2) discriminant :
[2,3;5,5;2267,1]
<BLANKLINE>
p=2
(potential) stable reduction : (II), j=1
p=5
(potential) stable reduction : (I)
reduction at p : [V] page 156, (3), f=4
p=2267
(potential) stable reduction : (II), j=432
reduction at p : [I{1-0-0}] page 170, (1), f=1
<BLANKLINE>
the prime to 2 part of the conductor is 1416875
in factorized form : [2,0;5,4;2267,1]
|
helper for pickle
- Overrides:
object.__reduce__
- (inherited documentation)
|