code wiki / (root) / nx_pow_mod.nx

nx_pow_mod.nx

buildroot/runtime/nx_pow_mod.nx

1422 B40 linesdepth 2pulls 2 transitivereach 3 importersview sourcekind librarytopic pow
docsdependenciesstructsconstsfunctions

about

nx_pow_mod.nx -- fast modular exponentiation (binary method). genealogy_id: knuth_taocp_4_6_3_evaluation_of_powers lineage_id: modular_arithmetic_foundation references: Knuth TAoCP Vol 2 4.6.3; Cohen 'Computational Algebraic Number Theory'. license: public_domain complexity: O(log exp) multiplications mod m. Tier discipline: all arithmetic uses nx_int. Caller must ensure m^2 fits in nx_int (or use nx_i128 / nx_i256 variants for wider m).

dependencies 2 imports · 2 importers

nx_syscalls.nx nx_tier.nx nx_pow_mod.nx nx_miller_rabin.nx nx_pow_mod_test.nx

imports: nx_syscalls.nxnx_tier.nx

imported by: nx_miller_rabin.nxnx_pow_mod_test.nx

structs

none

consts

none

functions

23func nx_pow_mod(base: nx_int, exp: nx_int, m: nx_int) -> nx_int
called by 2: nx_mr_witnessmain