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

Multivariate rational functions over the integers mod n #2041

Open
kaelingre opened this issue Jul 26, 2024 · 5 comments
Open

Multivariate rational functions over the integers mod n #2041

kaelingre opened this issue Jul 26, 2024 · 5 comments

Comments

@kaelingre
Copy link

Finite field methods are frequently used in many areas of theoretical physics. In particular "multivariate rational functions over the integers mod n" would be a useful addition to flint. Is there an easy way to have such objects, essentially having a similar interface like fmpz_mpoly_q, or are there plans to add this to flint?

@albinahlback
Copy link
Collaborator

I suppose this would be pretty easy to implement with the generic rings interface by Fredrik. Ping @fredrik-johansson

@Sander80
Copy link

Sander80 commented Jul 30, 2024

Not that this is directly what you want, but we made an implementation of this around a year ago based on flint multivariate polynomials mod n in our project
https://gitlab.com/feynmanintegrals/fuel

@Sander80
Copy link

See fuel::mod_ratfunc_flint there

@albinahlback
Copy link
Collaborator

@kaelingre Have you looked into Oscar.jl? They support that specific field (not natively, however).

There you should be able to do it by creating a parent object R of type ZZModMPolyRing (which is a FLINT object) by utilizing residue_ring and polynomial_ring, to then create a fraction field K = fraction_field(R).

I can highly recommend Oscar.jl in general, they have excellent developers and a great community.

@kaelingre
Copy link
Author

I haven't heard of Oscar.jl, thanks for the hint! I'll check it out.

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

No branches or pull requests

3 participants