Ticket #487 (closed defect: fixed)
problem with the is_principal method for fractional ideals in a number field.
| Reported by: | mabshoff | Owned by: | was |
|---|---|---|---|
| Priority: | major | Milestone: | sage-2.8.4 |
| Component: | algebraic geometry | Keywords: | |
| Cc: | Work issues: | ||
| Report Upstream: | Reviewers: | ||
| Authors: | Merged in: | ||
| Dependencies: | Stopgaps: |
Description
The Problem has been reported by Kevin McGown? at http://groups.google.com/group/sage-forum/t/a8a6efc565e36339
In SAGE 2.8 it seems there is a problem with the is_principal method for fractional ideals in a number field. In the code below I create the same ideal in two different ways and obtain two different answers from is_principal (True and False).
sage: K = QuadraticField(-119,'a') sage: P2 = K.ideal([2]).factor()[0][0] sage: I = P2^5 sage: a = K.0 sage: J = K.ideal([1/2*a+3/2]) sage: I==J True sage: I.is_principal() False sage: J.is_principal() True
Kevin also suggested a fix:
I believe the problem is with the following line in the is_principal() method: if len (self.gens()) <= 1: Instead it should read: if len (self.gens_reduced()) <= 1: Not 100% sure, but I thought I would bring it to your attention. - Kevin
Cheers,
Michael
Change History
Note: See
TracTickets for help on using
tickets.

Another suggestion from Kevin: