pub fn checked_pow(base: u64, exp: u32) -> Result<u64, ProgramError>
Checked exponentiation via repeated squaring.
Computes base^exp with overflow checking at each step. Useful for compound interest and exponential decay.
base^exp