Ticket #2220 (closed defect: fixed)
irreducibility testing in relative extensions seems to be messed up
|Reported by:||jason||Owned by:||davidloeffler|
|Cc:||ncalexan, ccitro, mjo||Work issues:|
|Report Upstream:||N/A||Reviewers:||Colton Pauderis|
|Authors:||Michael Orlitzky||Merged in:||sage-4.8.alpha5|
> Is the following output for b.gens() correct? > sage: NumberField([x,x^2-3],'a') > Number Field in a0 with defining polynomial x over its base field > sage: b=NumberField([x,x^2-3],'a') > sage: b.gens() > (0, 0) > To contrast: > sage: c=NumberField([x^2-3, x^2-2],'a') > sage: c.gens() > (a0, a1) > Also, this blows up: > sage: c=NumberField([x^2-3, x],'a') The problem here is that x is triggering a an error in the irreducibility test, which is a little bizarre since of course x is irreducible. So the real issue is: why is x allowed to determine an absolute number field (base Q) but not a relative one? My guess is that this is a side-effect of the differing code being used to test irreducibility in the two cases, Personally, I think that trivial extensions should be allowed and treated just as non-trivial ones. I have recently had to define extensions of the ring ZZ, and find this awkward: sage: R=ZZ.extension(x^2+5,'a') sage: R.gens() [1, a] sage: S=ZZ.extension(x+5,'b') sage: S.gens()  In the latter case I need S to remember the polynomial used to generaite it and would expect its gens() to include (in this case) -5. On the same topic, R and S above have no defining_polynomial() method. I'll try to fix that if it looks easy.
- Owner changed from was to davidloeffler
- Component changed from number theory to number fields
- Cc mjo added
- Status changed from new to needs_review
- Authors set to Michael Orlitzky
- Status changed from needs_review to positive_review
- Reviewers set to Colton Pauderis
Note: See TracTickets for help on using tickets.