#14990: Implement algebraic closures of finite fields
-------------------------------------+-------------------------------------
Reporter: pbruin | Owner:
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-6.2
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 | 33f982f1acbf61cf08897e6a46ee23bb14e78e1e
Dependencies: #14958, #13214 | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by jpflori):
Replying to [comment:65 vdelecroix]:
> Hello,
>
> Thanks Peter and Luca for the lights.
>
> 1) For the comparison of `AlgebraicClosureFiniteField` you rely on the
equality in `PseudoConwayLattice`... which is not exactly what you want.
It compares the nodes which is something dynamical by definition. We have
for example
> {{{
> sage: P1 = PseudoConwayLattice(5, use_database=False)
> sage: P2 = PseudoConwayLattice(5, use_database=False)
> sage: P1 == P2
> True
> sage: _ = P1.polynomial(1)
> sage: P1 == P2 # hum!?
> False
> sage: _ = P2.polynomial(1)
> sage: P1 == P2 # hum hum!!??
> True
> }}}
> It is fine for the lattices but not for the fields. The simplest fix
would be
Is it really fine for lattices?
I would say lattices with different polynomials shouldn't evaluate equal.
> {{{
> class AlgebraicClosureFiniteField_pseudo_conway:
> ...
> def __cmp___(self, other):
> ...
> return self._pseudo_conway_lattice is other._pseudo_conway_lattice
> }}}
>
> 2) It makes sense to have something more flexible like
> {{{
> sage: AC = AlgebraicClosureFiniteField_pseudo_conway
> sage: AC(GF(3), lattice=my_pc_lattice)
> }}}
> where "my_pc_lattice" is an instance of a subclass or
`PseudoConwayLattice` or something with the same specifications (i.e. at
least a method `polynomial`). That way we can already have two
implementations of the algebraic closure (calling `PseudoConwayLattice`
with the option `use_database=True` or `use_database=False`).
>
That sounds like a good idea.
> 3) In the example above, there is some redundancy as the pseudo-Conway
lattice already knows the finite field... so it would be nice if the
pseudo-Conway lattice implements a method `base_ring` that returns the
finite field it is based on.
>
+1
> 4) It would also make sense in `PseudoConwayLattice` to have a method
`associated_finite_field_algebraic_closure` (with a better name if
possible).
>
Would that be really useful?
That does not really make sense, but one might want to create a lattice
without the corresponding algebraic closure :)
--
Ticket URL: <http://trac.sagemath.org/ticket/14990#comment:66>
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/d/optout.