Hi Waldek,

On 13.07.23 01:09, Waldek Hebisch wrote:
Partly motiveted by Ralf, partly by needs of various algorithms I
looked at "algebraic" operations that we offer, and it seems that we
miss or at least make hard to use some operation.

Indeed. Up to now I've mostly avoided these "hard" parts of FriCAS.
FriCAS' strength is not in formal manipulation of expressions that an
"every day user" usually deals with, but rather in the wealth of
opportunities to combine parametrized domains and packages. Of course,
that is a personal opinion. Nevertheless, it is commonly agreed that
FriCAS has a steep learning curve and seemingly people turn away before
they even give feedback of what they actually cannot achieve with
FriCAS, although perhaps the functionality is implemented, but not
easily reachable from a beginner's point of view.

For example consider 'minimalPolynomial', we have that in SimpleAlgebraicExtention, FramedAlgebra, finite fields and in Complex. However, AFAICS only finite fields give possiblity to
compute minimal polynomial over someting different than parameter of
the domain.  So when dealing with towers, we do not have easy way to
compute minimal polynomial of element of the tower with respect to
base field.

What could be done here?  One possble way would equip each stage of
tower with structure of FramedAlgebra over base field.  Another way
could use triangular systems, we could specify a field extention via
triangular system giving equations for generators and do computations
there (possibly going to SimpleAlgebraicExtention via primitive
element).

Using triangular sets reminds me of my attempts to implement dynamical algebraic closures \cite{Steel_AlgebraicallyClosedFields_2002}.

Code is currently here. I haven't touched it recently, but it worked for simple cases, became, however, unmanageably slow with several extensions
due to slow factorization of finite fields in FriCAS.

https://github.com/hemmecke/qeta/blob/master/src/iffts.spad
https://github.com/hemmecke/qeta/blob/master/src/ffalgclos.spad
https://github.com/hemmecke/qeta/blob/master/src/algclos.spad

I'd be happy, if that makes it in one form or the other into FriCAS.
Maybe, Waldek, it does not exactly solve your problem from above, but I wanted to share my experiments.

Actually, also here we have domains with history, i.e. store some state (namely the triangular set). Theoretically, it works like an algebraic closure, but the more extensions are involved the more time it consumes, so it might be necessary to implement a way to either (A) create a second copy of such a domain that builds another triangular set or (B) to clear the triangular set and build it anew for a different task. (A) has the problem that one would have to add a parameter like the minimal polynomial for SAE, but that is what I actually wanted to hide in an implementation of an algebraic closure. (B) is problematic, since it invalidates all elements of the domain that have been created before.

Actually, there could be a third option. Elements carry a pointer to the underlying triangular set of the extension, but then it's probably not so easy to add elements that have different triangular sets attached.

Ralf

===================
@InProceedings{Steel_AlgebraicallyClosedFields_2002,
  author =       {Steel, Allan},
  editor =       {Fieker, Claus and Kohel, David R.},
  title =        {A New Scheme for Computing with Algebraically Closed
                  Fields},
  booktitle =    {Algorithmic Number Theory},
  year =         2002,
  publisher =    {Springer Berlin Heidelberg},
  address =      {Berlin, Heidelberg},
  pages =        {491--505},
  doi =          {10.1007/3-540-45455-1_38},
  abstract =     {A new scheme is presented for computing with an
                  algebraic closure of the rational field. It avoids
                  factorization of polynomials over extension fields,
                  but gives the illusion of a genuine field to the
                  user. A technique of modular evaluation into a
                  finite field ensures that a unique genuine field is
                  simulated by the scheme and also provides fast
                  optimizations for some critical operations. Fast
                  modular matrix techniques are also used for several
                  non-trivial operations. The scheme has been
                  successfully implemented within the Magma Computer
                  Algebra System.},
  isbn =         {978-3-540-45455-7}
}

--
You received this message because you are subscribed to the Google Groups "FriCAS - 
computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/fricas-devel/6b3f22d8-f495-0b29-6e1e-decfd782819d%40hemmecke.org.

Reply via email to