IntModSub
Description
Compute (a - b) mod modulus.
Parameters
| Name | Direction | Description |
|---|---|---|
result |
out | Destination for the reduced difference |
a |
in | Left operand |
b |
in | Right operand |
modulus |
in | Modulus |
Usage example (from documentation)
IntModSub(&result, &a, &b, &modulus);Success
Returns true. *result holds (a - b) mod modulus, normalised into [0, modulus).
Failure
Returns false on modulus == 0 or allocator OOM. *result is left untouched.
Usage example (Cross-references)
Usage examples (Cross-references)
- In
Int.c:2048:
}
bool IntModSub(Int *result, const Int *a, const Int *b, const Int *modulus) {
ValidateInt(result);
ValidateInt(a);- In
Int.Math.c:695:
bool test_int_mod_sub(void) {
WriteFmt("Testing IntModSub\n");
DefaultAllocator alloc = DefaultAllocatorInit();- In
Int.Math.c:704:
Int result_value = IntInit(&alloc.base);
IntModSub(&result_value, &a, &b, &m);
bool result = IntToU64(&result_value) == 9;
Last updated on