Hi, I guess one of the issue is that there is no canonical map between two different representations of the same finite field (so no coercion). In your case it is slightly more specific as it might be the case that K1 and K2 are constructed in the same exact way (expect for the string 'a' and 'b') so we could just decide to send "a" onto "b", but I'm not sure it is very helpful to define an exception in this case.
There are some way to deal with the general problem in a smart way. See http://trac.sagemath.org/ticket/8335 (closed) http://trac.sagemath.org/ticket/14990 (closed) trac.sagemath.org/ticket/8751 (needs work, dead for two years) for some work toward this within Sage. We also have a project with a bunch of people to compute isomorphisms between finite field faster here: https://github.com/defeo/ffisom/ https://github.com/jpflori/sagemath/tree/ffisom Best, JP On Wednesday, September 16, 2015 at 11:26:40 AM UTC+2, Nathann Cohen wrote: > > GF(4) is not a subfield of GF(8). >> > > Oh. Right. Actually, the problem with my code happened when both finite > fields were equal, and I wrote this message without thinking. > > sage: K1 = GF(8,'a') > sage: K2 = GF(8,'b') > sage: K2(K1(1)) > TypeError: unable to coerce from a finite field other than the prime > subfield > > Perhaps it is then easier to solve. > > Nathann > > > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.