On Mon, 30 Oct 2023, 05:57 John H Palmieri, <jhpalmier...@gmail.com> wrote:

> Does anyone have any tips for how to compute the kernel of a map between
> polynomial algebras, or for checking whether the map is injective? I have
> families of such maps involving algebras with many generators. I'm working
> over GF(2), if that matters. In one example I defined the map phi: R -> S
> where R has 12 generators, S has 19 generators, and did
>
>     sage: phi.is_injective()
>
> After about 30 hours, Sage quit on me, perhaps running out of memory
> ("Killed: 9"). An example of the sort of map I'm interested in:
>
> sage: phi
> Ring morphism:
>   From: Multivariate Polynomial Ring in h20, h21, h30, h31, h40, h41, h50
> over Finite Field of size 2
>   To:   Multivariate Polynomial Ring in h20, h21, h30, h31, h40, h41, h50,
> xi1, xi2, xi3, xi4, xi5 over Finite Field of size 2
>   Defn: h20 |--> h20
>         h21 |--> h21
>         h30 |--> h20*xi1^4 + h21*xi1 + h30
>         h31 |--> h21*xi1^8 + h31
>         h40 |--> h21*xi1^9 + h30*xi1^8 + h20*xi2^4 + h31*xi1
>         h41 |--> h31*xi1^16 + h21*xi2^8
>         h50 |--> h31*xi1^17 + h21*xi1*xi2^8 + h30*xi2^8 + h20*xi3^4
>
> Any suggestions?
>

The standard way to find the kernel of a map
phi: A->B is to take the
ring R generated by the gens of A and B and compute the Gröbner basis of
the ideal I generated by {a-phi(a)|a in gens(A)}, and then
take the intersection of I with A.
(for the latter you have to take R with an appropriate order)

The Gröbner basis would be done by Singular.
Better Gröbner basis routines are available in the msolve spkg.

I'd try using msolve. There are also options such as computing I w.r.t. to
an "easier" order and then chaniging the order (so-called Gröbner walk),
they might work better here (it's all more of art than science here)



HTH
Dima


> --
> John
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "sage-support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sage-support+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/sage-support/97318b8e-f4c9-4af3-a8ff-b901a4f2c971n%40googlegroups.com
> <https://groups.google.com/d/msgid/sage-support/97318b8e-f4c9-4af3-a8ff-b901a4f2c971n%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-support+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-support/CAAWYfq20q%3Dt1RzkNvxCT5RW9GNQAXHX7JfuKsCWaJjv_2F2aEw%40mail.gmail.com.

Reply via email to