#prime-field #prime #modulo #algebra

algebraic-equation-over-finite-prime-field

在有限素域上求解代数方程

3个不稳定版本

0.2.1 2021年8月4日
0.2.0 2021年8月4日
0.1.0 2021年5月5日

#1840 in 数学

AGPL-3.0-or-later

21KB
516

在模素数下寻找多项式的根。

use algebraic_equation_over_finite_prime_field::{find_all_roots_over_mod_p, PolynomialOverP};
// (x^2+2)(x-1)(x-3)≡x^4+x^3+2x+1 (mod 5)
let p = PolynomialOverP::<i32>::new(vec![1, 2, 0, 1, 1], 5);
let mut v = find_all_roots_over_mod_p::<i32>(p);
v.sort();
assert_eq!(vec![1, 3], v);

许可证

AGPL-3.0-or-later


lib.rs:

在模素数下寻找多项式的根。

use algebraic_equation_over_finite_prime_field::{find_all_roots_over_mod_p, PolynomialOverP};
// (x^2+2)(x-1)(x-3)≡x^4+x^3+2x+1 (mod 5)
let p = PolynomialOverP::<i32>::new(vec![1, 2, 0, 1, 1], 5);
let mut v = find_all_roots_over_mod_p::<i32>(p);
v.sort();
assert_eq!(vec![1, 3], v);

依赖项

~3.5MB
~64K SLoC