+1 for Vincent's zero-dimensional variety point finding.   I used to
use Magma's AlgebraicallyClosedField a lot for this (for some project
which I did before Sage existed).  The idea is to find the points over
Qbar, then construct the absolute field they generate, then find them
again over that field before continuing.  I can imagine a nice Sage
function to do that automatically  including a field_of_definition_of
points method on such a variety.

John

On Sun, 25 Apr 2021 at 23:35, Michael Orlitzky <mich...@orlitzky.com> wrote:
>
> On Sun, 2021-04-25 at 15:07 +0200, Fredrik Johansson wrote:
> > Hi all,
> >
> > I'm looking for benchmark problems for QQbar/AA arithmetic. Ideally such a
> > problem will:
> >
> > * Be reducible to a short program that, apart from using QQbar/AA
> > operations, is reasonably self-contained.
> > * Reflect real-world use, i.e. originate from using Sage to solve an actual
> > mathematical problem, with QQbar/AA arithmetic being a significant
> > ingredient.
>
> I'm interested in Gram-Schmidt and the coordinate_vector() methods that
> solve linear systems over AA.
>
> For a benchmark, you could conjure a set of long vectors with entries
> in AA/QQbar, and orthonormalize them using the kindergarten algorithm
> that everyone knows. That will leave a linearly-independent set, and if
> you keep the input/output indices matched up, will let you know which
> of the input vectors correspond to that linearly independent set. Call
> the set of those input vectors "X". Then to benchmark the
> coordinate_vector() methods, you can generate random elements in
> W=span(X), and solve the system to find their W-coordinates in terms of
> the basis X. (Using the de-orthonormalized vectors as the basis makes
> the system harder to solve, and more representative of the general
> case.)
>
>
> Unimportant background information:
>
> A Euclidean Jordan algebra (EJA) is a real vector space where every
> element "x" has a self-adjoint "left multiplication by x" operation
> that I'll write L_x.
>
> It turns out that every EJA is a mishmash of various Hermitian matrix
> algebras, which is nice, because it lets you think of their elements as
> being some concrete object rather than just an abstract vector space
> element. For example, the space of real symmetric matrices with
>
>   L_x(y) := (xy + yx)/2
>
> induces an EJA. But when people think of a symmetric matrix, they're
> thinking of it in terms of the standard basis, which leads to a
> problem; namely that the basis
>
>   [1 0]  [0 1]  [0 0]
>   [0 0], [1 0], [0 1]
>
> for S^2 is not normalized. This raises a problem: while L_x is always
> self-adjoint, its matrix representation won't be symmetric unless your
> basis is orthonormal. And you need its matrix to be symmetric if you
> want to do anything cool with it in sage, because sage assumes that
> when you have a matrix full of numbers, they're with respect to the
> standard basis.
>
> In short, this means that a sqrt(2) must become involved, and the "2"
> isn't special. Here's where Gram-Schmidt comes in. Afterwards, matrices
> aren't vectors in sage, so converting back and forth between
> matrix/vector representations involves a lot of to_vector() and
> coordinate_vector() over AA.
>
> Things get worse: when constructing a subalgebra, its basis needs to be
> orthonormalized as well, and we need to be able to convert back and
> forth between the orthonormalized superalgebra coordinates and the
> orthonormalized subalgebra coordinates. Thus we wind up
> orthonormalizing vectors that already have ugly entries, and solving
> systems with uglier and uglier entries in AA. This is a bottleneck when
> the algebras get "big," which they do even in simple examples (the
> Albert algebra has dimension 27).
>
>
> --
> 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 view this discussion on the web visit 
> https://groups.google.com/d/msgid/sage-devel/1620f0b7f268a16e477d74f7295d9b1340285604.camel%40orlitzky.com.

-- 
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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/CAD0p0K4sFsRNjEQ8aL%2BATfQ5hngik4aonLPX14sRkPdmoFnq0g%40mail.gmail.com.

Reply via email to