Macaulay2 Engine
Loading...
Searching...
No Matches

◆ power()

void M2::ARingZZp::power ( elem & result,
elem a,
int n ) const
inline

Definition at line 291 of file aring-zzp.hpp.

292 {
293 if (a != 0)
294 {
295 result = (a * n) % p1;
296 if (result <= 0) result += p1;
297 }
298 else
299 {
300 // a == 0
301 if (n == 0) result = p1; // the element 1 in this ring.
302 else if (n > 0) result = 0;
303 else throw exc::division_by_zero_error();
304 }
305 }
VALGRIND_MAKE_MEM_DEFINED & result(result)

References p1, and result().

Referenced by power_mpz().