Opened 13 years ago

Closed 13 years ago

Last modified 6 years ago

#7331 closed defect (fixed)

Conditions for non-split multiplicative reduction in p_primary_bound of Tate-Shafarevich groups

Reported by: wuthrich Owned by: davidloeffler
Priority: minor Milestone: sage-4.2.1
Component: elliptic curves Keywords: sha, tate-shafarevich group, primary bound
Cc: was, rlm Merged in: sage-4.2.1.alpha0
Authors: Chris Wuthrich Reviewers: Robert Miller
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description

p_primary_bound fails on the following rank 0 curve with non-split multiplicative reduction.

E = EllipticCurve('270b')
E.sha().p_primary_bound(5)

Attachments (2)

trac_7331.patch (5.0 KB) - added by wuthrich 13 years ago.
exported against sage 4.2.alpha1
trac_7331_2.patch (922 bytes) - added by wuthrich 13 years ago.
to be applied after teh first patch

Download all attachments as: .zip

Change History (10)

Changed 13 years ago by wuthrich

exported against sage 4.2.alpha1

comment:1 Changed 13 years ago by wuthrich

  • Status changed from new to needs_review

This patch allows now for non-split multiplicative reduction and for p=3 when the rank is 0. (As we do not need p-adic heights in this case)

comment:2 Changed 13 years ago by rlm

  • Authors set to Christian Wuthrich
  • Reviewers set to Robert Miller
  • Status changed from needs_review to needs_work

For p=3, an error is getting triggered in computation of the p-adic regulator:

sage: E = EllipticCurve('148a')
sage: E.is_surjective(3)
(True, None)
sage: E.has_additive_reduction(3)
False
sage: E.has_nonsplit_multiplicative_reduction(3)
False
sage: E.is_good(3)
True
sage: E.is_ordinary(3)
True
sage: E.sha().p_primary_bound(3)
BOOM

I have a feeling that this just means that the documentation needs to include the rank 0 condition when p=3:

E.rank()
1

comment:3 Changed 13 years ago by rlm

This one is a different failure:

sage: E = EllipticCurve('336c')
sage: E.rank()
0
sage: E.is_surjective(3)
(True, None)
sage: E.has_additive_reduction(3)
False
sage: E.has_nonsplit_multiplicative_reduction(3)
False
sage: E.is_good(3)
False
sage: E.is_ordinary(3)
True
sage: E.has_split_multiplicative_reduction(3)
True
sage: E.sha().p_primary_bound(3)
Traceback (most recent call last):
/space/rlm/sage-4.2.alpha0-x86_64-Linux/local/lib/python2.6/site-packages/sage/schemes/elliptic_curves/sha_tate.pyc in p_primary_bound(self, p)
    588             if not su :
    589                 raise ValueError, "The mod-p Galois representation is not surjective. Current knowledge about Euler systems does not provide an upper bound in this case. Try an_padic for a conjectural bound."
--> 590             shan = self.an_padic(p,prec = 0,use_twists=True)
    591             if shan == 0:
    592                 raise RuntimeError, "There is a bug in an_padic."

/space/rlm/sage-4.2.alpha0-x86_64-Linux/local/lib/python2.6/site-packages/sage/schemes/elliptic_curves/sha_tate.pyc in an_padic(self, p, prec, use_twists)
    450             not_yet_enough_prec = True
    451             while not_yet_enough_prec:
--> 452                 lps = lp.series(n,quadratic_twist=D,prec=r+1)
    453                 lstar = lps[r]
    454                 if (lstar != 0) or (prec != 0):

/space/rlm/sage-4.2.alpha0-x86_64-Linux/local/lib/python2.6/site-packages/sage/schemes/elliptic_curves/padic_lseries.pyc in series(self, n, quadratic_twist, prec)
    762                 for ell in prime_divisors(D):
    763                     if valuation(self._E.conductor(),ell) > valuation(D,ell) :
--> 764                         raise ValueError, "can not twist a curve of conductor (=%s) by the quadratic twist (=%s)."%(self._E.conductor(),D)
    765
    766

ValueError: can not twist a curve of conductor (=168) by the quadratic twist (=-4).

comment:4 Changed 13 years ago by wuthrich

I agree that I should change the documentation about p=3 => rank 0. I prefer not to catch them at the start of p_primary_bound since in principle it should work. The only issue is that Kedlaya's algorithm is not implemented in sage for p=3.

But I can not reproduce your second issue. This should have been solved by #6455, merge in 4.2.alpha1.

Changed 13 years ago by wuthrich

to be applied after teh first patch

comment:5 Changed 13 years ago by rlm

  • Status changed from needs_work to needs_review

comment:6 Changed 13 years ago by rlm

  • Status changed from needs_review to positive_review

comment:7 Changed 13 years ago by mhansen

  • Merged in set to sage-4.2.1.alpha0
  • Resolution set to fixed
  • Status changed from positive_review to closed

comment:8 Changed 6 years ago by chapoton

  • Authors changed from Christian Wuthrich to Chris Wuthrich
  • Report Upstream set to N/A
Note: See TracTickets for help on using tickets.