Skip to main content

forced_values_prime_power

Function forced_values_prime_power 

Source
pub fn forced_values_prime_power(
    equations: &[ModpEquation],
    num_vars: usize,
    m: u64,
) -> Option<ForcedM>
Expand description

Which variables a ℤ/m system forces, for any composite m — by CRT over its prime-power components (ℤ/m ≅ ∏ ℤ/pᵢ^{kᵢ}), each solved scalably by Smith normal form (solve_space_prime_power): a variable is forced mod m iff its kernel never moves it in every component, and the value is the CRT of the residues. This is the Smith-form generalization that replaces the old bounded brute force — no size cap; None only on Smith overflow. Inconsistent when any component is.