#14990: Implement algebraic closures of finite fields
-------------------------------------+-------------------------------------
       Reporter:  pbruin             |        Owner:
           Type:  enhancement        |       Status:  needs_work
       Priority:  major              |    Milestone:  sage-5.13
      Component:  algebra            |   Resolution:
       Keywords:  finite field       |    Merged in:
  algebraic closure                  |    Reviewers:
        Authors:  Peter Bruin        |  Work issues:
Report Upstream:  N/A                |       Commit:
         Branch:  u/pbruin/14990     |  4265b4fe176d32b3bc7cbc616f8f0964e273ecdb
   Dependencies:  #14958, #13214     |     Stopgaps:
-------------------------------------+-------------------------------------

Comment (by pbruin):

 Just to get an idea of what would be good to do before setting this to
 "needs-review", here is the status of the items from Vincent's list
 (comment:9):

 >  - .some_elements() returns a very stupid list

 This can be made less stupid by implementing `_an_element_()` to return
 `self.gen(2)`.

 >  - .gens() is not happy. I guess we can return a `Family`. The problem
 is that in the specification it is written that the method should return a
 tuple.

 I think returning a `Family` is acceptable given that there is no finite
 set of generators.

 >  - many methods can be implemented in two lines as
 > {{{
 >    def my_method(self):
 >        return self._value.my_method()
 > }}}
 >    this concerns `minimal_polynomial`, `trace`, `norm`,
 `multiplicative_order`, ...

 I agree for `minimal_polynomial` and `multiplicative_order`; the latter
 was implemented by Vincent.

 The trace and norm, on the other hand, are not well-defined since the
 definition requires a ''finite'' extension, for which there is no canical
 choice.

 It remains to implement `minimal_polynomial`, which can of course be done
 in two lines as above.

 >  - in a similar way (calling apropriate method of _value and applying a
 morphism) it is straightforward to implement `frobenius`, `pth_power`,
 `pth_root`, ...

 We now have `pth_power` and `pth_root`, again thanks to Vincent, and the
 field itself has `frobenius`.  I don't think an additional `frobenius` on
 elements would be useful.

--
Ticket URL: <http://trac.sagemath.org/ticket/14990#comment:49>
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/groups/opt_out.

Reply via email to