#16268: Better normalization for function field elements
-------------------------------------+-------------------------------------
Reporter: cremona | Owner:
Type: defect | Status: needs_review
Priority: minor | Milestone: sage-6.2
Component: algebra | Resolution:
Keywords: | Merged in:
Authors: Robert Bradshaw | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/emassop/ticket/16268 | a4221ed3e1d16d38b271316b01b91344fb195746
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by emassop):
I couldn't help myself and hacked a bit on this.
* Removed normalize from generic {{{FractionFieldElement}}}, as I don't
think it can live up to the behaviour in its documentation. For instance
(2x)/(2x+1) and (-2x)/(-2x-1) in Q(ZZ[x]) did not have the same
normalisation. I doubt this can be fixed for general rings.
* Removed call to reduce for non-exact rings, as reduces' documentation
says "Automatically called for exact rings, but because it may be
numerically unstable for inexact rings it must be called manually in that
case."
* Raise {{{NotImplementedError}}} in generic
{{{FractionFieldElement.__hash__}}} except when the denominator is 1. In
this exceptional case the hash necessarily agrees with the hash of the
corresponding element of the integral domain and therefore can be computed
without any trouble.
I (re)implemented hashing for elements of Q(R[X]) with R an integral
domain, by passing from Q(R[X]) to Q(Q(R)[X]), reducing to the case of
this bug. I haven't pushed this, as I don't like the architecture in my
patch and that should probably be a separate bug anyway. There should
probably be separate bug reports for many kinds of rings.
--
Ticket URL: <http://trac.sagemath.org/ticket/16268#comment:12>
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.