1
$\begingroup$

$b^n$ where the base $b$ is a positive integer greater than $1$ and the exponent $n$ is a rational number in simplified form. How would one compare (resulting in <, =, or >) two such exponentiations without evaluating the exponentiatoins, and without the use of functions or operations that produce real numbers (e.g., log(), pow(), etc)?

  • 0
    As in comparing $b^n$ and $c^m$ ? different bases and different exponents?2012-12-28
  • 1
    I do not understand what is being asked. Could you please elaborate? What do you mean by compare?2012-12-28
  • 0
    if $gcd(b,c)=1$ can the two numbers be equal?2012-12-28
  • 2
    I give an algorithm for exactly this problem in this question: http://math.stackexchange.com/questions/97049/comparing-powers-without-logarithms2012-12-28
  • 0
    @RustynYazdanpour I don't know.2012-12-28

1 Answers 1

3

In order to compare, say, $b_{1}^{p_{1}/q_{1}}$ and $b_2^{p_2/q_2}$, the simplest approach is to raise both to the same power ($q_1 q_2$) and compare the resulting integers, $b_{1}^{p_1 q_2}$ and $b_2^{p_2 q_1}$.

  • 0
    That won't work for all cases because the exponents can be negative rationals. Besides, I forgot to mention in my question, I can't evaluate the exponentiation because it can easily overflow.2012-12-28
  • 0
    If both exponents are negative, do the comparison with positive exponents and return the opposite result. If one is negative and the other non-negative, then the one with the negative exponent is smaller. And you need, I think, to be able to use either big integers or floating-point numbers to do this problem.2012-12-28