greatest common divisor theorem