Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add fmpz_poly_decompose [WIP] #742

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

tthsqe12
Copy link
Contributor

This is only intended to get some feed back on the interface. If you actually want to decompose a polynomial into indecomposables, you would have to call this in a loop.

@fredrik-johansson
Copy link
Collaborator

Seems like a function that takes care of the looping would be useful. Presumably, you could try mod p decompositions to rule out cases?

Related to this, have you thought about:

@tthsqe12
Copy link
Contributor Author

tthsqe12 commented Jun 8, 2020

I think neither of these belong in flint. The former seems too hard, and @rfourquet should have something for the latter with slp's. As for univariate decomposition, I hope I designed it to fail as quickly as possible if the decomp does not exist. Will require testing

@fredrik-johansson
Copy link
Collaborator

fredrik-johansson commented Jun 10, 2020

It would be useful to have a fmpz slp representation in flint as an intermediate representation for evaluation/composition (here I'm just thinking of a linear-time conversion to slp form, not expensive optimizations). For example, I could use that to evaluate an fmpz_mpoly at fmpq, arb, acb or fmpz_mpoly_q arguments.

@wbhart wbhart changed the title add fmpz_poly_decompose add fmpz_poly_decompose [WIP] Jan 11, 2021
@fredrik-johansson fredrik-johansson added this to the flint-3.1 milestone Oct 9, 2023
@fredrik-johansson
Copy link
Collaborator

If anyone is interested, it should be straightforward to rebase this PR and maybe implement this:

If you actually want to decompose a polynomial into indecomposables, you would have to call this in a loop.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants