#7927: Extend coleman integration to handle Weierstrass points
-----------------------------+----------------------------------------------
   Reporter:  robertwb       |       Owner:  was       
       Type:  defect         |      Status:  needs_work
   Priority:  major          |   Milestone:  sage-4.3.3
  Component:  number theory  |    Keywords:            
     Author:                 |    Upstream:  N/A       
   Reviewer:                 |      Merged:            
Work_issues:                 |  
-----------------------------+----------------------------------------------

Comment(by kedlaya):

 It appears I spoke to soon. An example which used to work but is now
 broken:
 {{{
 sage: R.<x> = QQ['x']
 sage: H = HyperellipticCurve(x^3+1)
 sage: K = Qp(5,8)
 sage: HK = H.change_ring(K)
 sage: P = HK(0,1)
 sage: Q = HK.lift_x(5)
 sage: HK.tiny_integrals_on_basis(P,Q)
 ---------------------------------------------------------------------------
 ValueError                                Traceback (most recent call
 last)

 
/home/r1/kedlaya/.sage/temp/dwork.mit.edu/31681/_home_r1_kedlaya__sage_init_sage_0.py
 in <module>()

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_padic_field.pyc
 in tiny_integrals_on_basis(self, P, Q)
     298         R = PolynomialRing(self.base_ring(), ['x', 'y'])
     299         x, y = R.gens()
 --> 300         return self.tiny_integrals([x**i for i in
 range(2*self.genus())], P, Q)
     301
     302

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_padic_field.pyc
 in tiny_integrals(self, F, P, Q)
     250         P and Q MUST be in the same residue disk for this result
 to make sense.
     251         """
 --> 252         x, y, z = self.local_analytic_interpolation(P, Q)
 #homogeneous coordinates
     253         x = x/z
     254         y = y/z

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_padic_field.pyc
 in local_analytic_interpolation(self, P, Q)
      82         """
      83         prec = self.base_ring().precision_cap()
 ---> 84         if self.is_same_disc(P,Q) == False:
      85             raise ValueError, "%s and %s are not in the same
 residue disc"%(P,Q)
      86         disc = self.residue_disc(P)

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_padic_field.pyc
 in is_same_disc(self, P, Q)
     238             False
     239         """
 --> 240         if self.residue_disc(P) == self.residue_disc(Q):
     241             return True
     242         else:

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_padic_field.pyc
 in residue_disc(self, P)
     203         yPv = P[1].valuation()
     204         F = self.base_ring().residue_field()
 --> 205         HF = self.change_ring(F)
     206         if P == self(0,1,0):
     207             return HF(0,1,0)

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.pyc in
 change_ring(self, R)
      78         y = self._printing_ring.gen()
      79         x = self._printing_ring.base_ring().gen()
 ---> 80         return HyperellipticCurve(f.change_ring(R), h,
 "%s,%s"%(x,y))
      81
      82     def _repr_(self):

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/constructor.pyc in
 HyperellipticCurve(f, h, names, PP)
      94             return HyperellipticCurve_g2_finite_field(PP, f, h,
 names=names, genus=g)
      95         else:
 ---> 96             return HyperellipticCurve_finite_field(PP, f, h,
 names=names, genus=g)
      97     elif is_RationalField(R):
      98         if g == 2:

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/schemes/hyperelliptic_curves/hyperelliptic_generic.pyc in
 __init__(self, PP, f, h, names, genus)
      66             names = names.split(",")
      67         self._names = names
 ---> 68         P1 = PolynomialRing(R,name=names[0])
      69         P2 = PolynomialRing(P1,name=names[1])
      70         self._PP = PP

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/rings/polynomial/polynomial_ring_constructor.pyc in
 PolynomialRing(base_ring, arg1, arg2, sparse, order, names, name,
 implementation)
     341                 raise TypeError, "if second arguments is a string
 with no commas, then there must be no other non-optional arguments"
     342             name = arg1
 --> 343             R = _single_variate(base_ring, name, sparse,
 implementation)
     344         else:
     345             # 2-4. PolynomialRing(base_ring, names,
 order='degrevlex'):

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/rings/polynomial/polynomial_ring_constructor.pyc in
 _single_variate(base_ring, name, sparse, implementation)
     393 def _single_variate(base_ring, name, sparse, implementation):
     394     import sage.rings.polynomial.polynomial_ring as m
 --> 395     name = normalize_names(1, name)
     396     key = (base_ring, name, sparse, implementation)
     397     R = _get_from_cache(key)

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/structure/parent_gens.so in
 sage.structure.parent_gens.normalize_names
 (sage/structure/parent_gens.c:2089)()

 /scratch/sage-4.2.1/local/lib/python2.6/site-
 packages/sage/structure/parent_gens.so in
 sage.structure.parent_gens._certify_names
 (sage/structure/parent_gens.c:1647)()

 ValueError: variable names must be alphanumeric, but one is '(1 +
 O(5^8))*x' which is not.
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/7927#comment:5>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to