def pow_mod
import bend-collections-laws-crypto@1.0.0.0/src/math/natural.bend as Naturalimport Base
293def pow_mod(+b: Nat, +e: Nat, +m: Nat) -> Result<&2, &2, MathError, Nat>:
294 match m:
295 case 0n:
296 Fail{ZeroDivision{}}
297 case 1n+ +mp:
298 Done{pow_mod_go(e, 1n+mp, e, Nat.mod(b, 1n+mp), Nat.mod(1n, 1n+mp))}
Uses (5)
Used by (5)
- bend-collections-laws-crypto@1.0.0.0/proofs/math/natural/modpow:pow_mod_ok
- bend-collections-laws-crypto@1.0.0.0/proofs/math/natural/modpow:pow_mod_zero
- bend-collections-laws-crypto@1.0.0.0/spec/math/natural:PowMod.value
- bend-collections-laws-crypto@1.0.0.0/spec/math/natural:PowMod.zero_modulus
- bend-collections-laws-crypto@1.0.0.0/spec/math/generic:PowMod.agrees