Files
calc/help/gcdrem
2017-05-21 15:38:25 -07:00

55 lines
1.2 KiB
Plaintext

NAME
gcdrem - result of removing factors of integer common to a specified integer
SYNOPSIS
gcdrem(x, y)
TYPES
x integer
y integer
return non-negative integer
DESCRIPTION
If x and y are not zero, gcdrem(x, y) returns the greatest integer
divisor d of x relatively prime to y, i.e. for which gcd(d,y) = 1.
In particular, gcdrem(x,y) = abs(x) if x and y are relatively
prime.
For all x, gcdrem(x, 0) = 1.
For all nonzero y, gcdrem(0, y) = 0.
PROPERTIES
gcdrem(x,y) = gcd(abs(x), abs(y)).
If x is not zero, gcdrem(x,y) = gcdrem(x, gcd(x,y)) = gcdrem(x, y % x).
For fixed nonzero x, gcdrem(x,y) is periodic with period abs(x).
gcdrem(x,y) = 1 if and only if every prime divisor of x
is a divisor of y.
If x is not zero, gcdrem(x,y) == abs(x) if and only if gcd(x,y) = 1.
If y is not zero and p_1, p_2, ..., p_k are the prime divisors of y,
gcdrem(x,y) = frem(...(frem(frem(x,p_1),p_2)...,p_k)
EXAMPLE
> print gcdrem(6,15), gcdrem(15,6), gcdrem(72,6), gcdrem(6,72)
2 5 1 1
> print gcdrem(630,6), gcdrem(6,630)
35 1
LIMITS
none
LIBRARY
NUMBER *qgcdrem(NUMBER *x, NUMBER *y)
SEE ALSO
gcd, frem, isrel