Function algebraic_equation_over_finite_prime_field::jacobi_symbol [−][src]
pub fn jacobi_symbol<T>(a: T, m: T) -> i8 where
T: Sized + Eq + Zero + One + for<'x> DivAssign<&'x T> + for<'x> RemAssign<&'x T> + From<u8>,
for<'x> &'x T: Rem<Output = T>,
Expand description
calcurate Jacobi symbol
Requires: a
is positive integer. m
is positive odd integer.
use algebraic_equation_over_finite_prime_field::jacobi_symbol; assert_eq!(jacobi_symbol::<i32>(5, 21), 1i8); assert_eq!(jacobi_symbol::<i32>(7, 15), -1i8); assert_eq!(jacobi_symbol::<i32>(12, 27), 0i8); assert_eq!(jacobi_symbol::<i32>(1001, 9907), -1i8); assert_eq!(jacobi_symbol::<i32>(12345, 331), -1i8);