>
> You could hold a vote to make "forms" a standard package and then
> require it, but your new code would have to be pretty awesome for
> that to be worth it.
>


> Instead, I would suggest leaving it optional and marking the tests
> with "# optional - gap_package_forms". People using the system GAP
> would then be free to install forms (if it isn't installed already)
> when they want to use your code. Adding forms to gap_packages is still
> useful because it provides a way for the people who installed GAP via
> sage to install forms. In particular, one of the people who install
> GAP via sage is our CI.


 While I do think "forms" has some nice features, I don't think we need to
take it to a vote at this time.

This code is essentially using one function, BaseChangeToCanonical, for a
Hermitian form. We were able to achieve the same decomposition with Sage
code in just a few lines, as well as replicate exactly what GAP is doing.

def base_change_hermitian(U):
Up = U.LU()[2]
D = Up.diagonal()
A = ~Up * matrix.diagonal([d.sqrt() for d in D])
diag = (A.H * U * A).diagonal()
factor_diag = diagonal_matrix([conj_square_root(d) for d in diag])
return factor_diag*A.inverse()

The GAP code performs the row operations explicitly and is lengthy. For
now, we simply avoid any call to libgap, and tests are beginning to pass.

Thanks,
Jackson

On Thu, Dec 5, 2024 at 9:14 PM Michael Orlitzky <mich...@orlitzky.com>
wrote:

> On 2024-12-05 20:31:40, Jackson Walters wrote:
> >
> > It would be nice to just have these installed. This isn't something I can
> > do, right? I should mention that locally this is all working in my
> > installation, where I have installed `forms`.
> >
>
> You could hold a vote to make "forms" a standard package and then
> require it, but your new code would have to be pretty awesome for
> that to be worth it.
>
> Instead, I would suggest leaving it optional and marking the tests
> with "# optional - gap_package_forms". People using the system GAP
> would then be free to install forms (if it isn't installed already)
> when they want to use your code. Adding forms to gap_packages is still
> useful because it provides a way for the people who installed GAP via
> sage to install forms. In particular, one of the people who install
> GAP via sage is our CI.
>
> --
> 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 visit
> https://groups.google.com/d/msgid/sage-devel/Z1Jd5ocv8CUTHCf9%40mertle.
>

-- 
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 visit 
https://groups.google.com/d/msgid/sage-devel/CAGqtwVBGiHUzNfRP3qkdwPs_oE4WuWw_Hzpf8-aMR6cVL-j0zw%40mail.gmail.com.

Reply via email to