pub fn modulo_division<T>(a: T, b: T, m: T) -> Option<T> where
    T: Sized + Clone + Eq + Zero + One + RingNormalize,
    for<'x> &'x T: EuclideanRingOperation<T>, 
Expand description

division in modulo

calc x ($bx \equiv a \pmod{m}$)

use ring_algorithm::modulo_division;
let a = 42;
let b = 32;
let m = 98;
let x = modulo_division::<i32>(a, b, m).unwrap();
assert_eq!((b * x - a) % m, 0);