Thank you all, I hope that I didn't seem annoyed by the current way of doing things. I have been charged with translating some examples for an undergraduate algebra course which use Magma where this is a valid construction.
The whole goal of the example was to have the students do the extension over the non-prime field, but since this isn't possible, and may be very difficult to do in general, I will find a way around this. Thank you for all of the help! Regards, David M. Monarres <dmmonar...@gmail.com> P.S. If anybody has any literature which outlines the algorithms required to implement the more general construction it would be great. I have time over the summer and would love to contribute what I can. On Thu, Jun 2, 2011 at 11:44 AM, Nils Bruin <nbr...@sfu.ca> wrote: > On May 25, 12:26 pm, "D. Monarres" <dmmonar...@gmail.com> wrote: >> Then I construct F_{5^2} >> >> sage: F25.<a> = F5.extension( PR[0], 'a') >> >> and everything works great. The problem arises when I want to extend >> this field. When I try to construct my polynomial over F25 I get an >> error that F25 does not allow for iteration. > > You are hitting a generic implementation here. The same code would get > called for other base rings as well. If you want a finite field, you > can use the "modulus=" keyword with GF. See "GF?" for more > information. > >> Do you think that >> PolynomialQuotientRing_field can be extended to support iteration as >> long as it is finite? > > It could, but it might be the wrong place to do it. The fact that the > result was going to be finite was already known when F5.extension got > called, so the obvious place to effect a changed behaviour would be by > specializing the "extension" method on finite fields. If the modulus > is irreducible (and even the generic code seems to check for that), it > could specialize to the required GF(...,modulus=,,,) call. > > One might want to check that all the generic methods available on the > result of F5.extension are also available on the result of GF, > otherwise the change would break code that depends on the current > behaviour (if any). > > The reason why F5.extension doesn't produce a "finite field" is > probably because there is another way of doing that and the original > authors didn't bother specializing F5.extension to it (the very > existence of F5.extension might postdate the GF(...modulus=...) call > and only appear on finite fields due to inheritance). > > -- > To post to this group, send email to sage-support@googlegroups.com > To unsubscribe from this group, send email to > sage-support+unsubscr...@googlegroups.com > For more options, visit this group at > http://groups.google.com/group/sage-support > URL: http://www.sagemath.org > -- To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URL: http://www.sagemath.org