Vieta jumping

In number theory, Vieta jumping, also known as root flipping, is a proof technique. It is most often used for problems in which a relation between two positive integers is given, along with a statement to prove about its solutions. There are multiple methods of Vieta jumping, all of which involve the common theme of infinite descent by finding new solutions to an equation using Vieta's formulas.


Vieta jumping is a technique to produce new solutions of a Diophantine equation from known ones. It is a classical technique in the theory of quadratic Diophantine equations. It came to the attention to mathematical olympiad problems, as the first olympiad problem to use it in a solution was proposed in 1988 for the International Mathematics Olympiad and assumed to be the most difficult problem on the contest:[1][2]

Let a and b be positive integers such that ab + 1 divides a2 + b2. Show that   is the square of an integer.[3]

Arthur Engel wrote the following about the problem's difficulty:

Nobody of the six members of the Australian problem committee could solve it. Two of the members were husband and wife George and Esther Szekeres, both famous problem solvers and problem creators. Since it was a number theoretic problem it was sent to the four most renowned Australian number theorists. They were asked to work on it for six hours. None of them could solve it in this time. The problem committee submitted it to the jury of the XXIX IMO marked with a double asterisk, which meant a superhard problem, possibly too hard to pose. After a long discussion, the jury finally had the courage to choose it as the last problem of the competition. Eleven students gave perfect solutions.

Among the eleven students receiving the maximum score for solving this problem were Ngô Bảo Châu, Ravi Vakil, Zvezdelina Stankova, and Nicușor Dan.[4] Emanouil Atanassov (from Bulgaria) solved the problem in a paragraph and received a special prize.[5]

Standard Vieta jumpingEdit

The concept of standard Vieta jumping is a proof by contradiction, and consists of the following three steps:[6]

  1. Assume toward a contradiction that some solution exists that violates the given requirements.
  2. Take the minimal such solution according to some definition of minimality.
  3. Show that this implies the existence of a smaller solution, hence a contradiction.

Problem #6 at IMO 1988: Let a and b be positive integers such that ab + 1 divides a2 + b2. Prove that a2 + b2/ab + 1 is a perfect square.[7][8]

  1. Fix some value k that is a non-square positive integer. Assume there exist positive integers (a, b) for which k = a2 + b2/ab + 1.
  2. Let (A, B) be positive integers for which k = A2 + B2/AB + 1 and such that A + B is minimized, and without loss of generality assume AB.
  3. Fixing B, replace A with the variable x to yield x2 – (kB)x + (B2k) = 0. We know that one root of this equation is x1 = A. By standard properties of quadratic equations, we know that the other root satisfies x2 = kBA and x2 = B2k/A.
  4. The first expression for x2 shows that x2 is an integer, while the second expression implies that x2 ≠ 0 since k is not a perfect square. From x22 + B2/x2B + 1 = k > 0 it further follows that x2 is a positive integer. Finally, AB implies that x2 = B2k/A < A and thus x2 + B < A + B, which contradicts the minimality of A + B.

Constant descent Vieta jumpingEdit

The method of constant descent Vieta jumping is used when we wish to prove a statement regarding a constant k having something to do with the relation between a and b. Unlike standard Vieta jumping, constant descent is not a proof by contradiction, and it consists of the following four steps:[9]

  1. The equality case is proven so that it may be assumed that a > b.
  2. b and k are fixed and the expression relating a, b, and k is rearranged to form a quadratic with coefficients in terms of b and k, one of whose roots is a. The other root, x2 is determined using Vieta's formulas.
  3. It is shown that for all (a, b) above a certain base case, 0 < x2 < b < a and that x2 is an integer. Thus we may replace (a, b) with (b, x2) and repeat this process until we arrive at the base case.
  4. The statement is proven for the base case, and as k has remained constant through this process, this is sufficient to prove the statement for all ordered pairs.

Let a and b be positive integers such that ab divides a2 + b2 + 1. Prove that 3ab = a2 + b2 + 1.[10]

  1. If a = b, a2 must divide 2a2 + 1 and thus a = b = 1 and 3(1)(1) = 12 + 12 + 1. So, without loss of generality, assume that a > b.
  2. Let k = a2 + b2 + 1/ab and rearrange and substitute to get x2 − (kb) x + (b2 + 1) = 0. One root to this quadratic is a, so by Vieta's formulas the other root may be written as follows: x2 = kba = b2 + 1/a.
  3. The first equation shows that x2 is an integer and the second that it is positive. Because a > b, x2 = b2 + 1/a < b as long as b > 1.
  4. The base case we arrive at is the case where b = 1. For this to satisfy the given condition, a must divide a2 + 2, making a either 1 or 2. The first case is eliminated because a = b. In the second case, k = a2 + b2 + 1/ab = 6/2 = 3. As k has remained constant throughout this process, this is sufficient to show that k will always equal 3.

Geometric interpretationEdit

Vieta jumping can be described in terms of lattice points on hyperbolas in the first quadrant.[1] The same process of finding smaller roots is used instead to find lower lattice points on a hyperbola while remaining in the first quadrant. The procedure is as follows:

  1. From the given condition we obtain the equation of a family of hyperbolas that are unchanged by switching x and y so that they are symmetric about the line y = x.
  2. Prove the desired statement for the intersections of the hyperbolas and the line y = x.
  3. Assume there is some lattice point (x, y) on some hyperbola and without loss of generality x < y. Then by Vieta's formulas, there is a corresponding lattice point with the same x-coordinate on the other branch of the hyperbola, and by reflection through y = x a new point on the original branch of the hyperbola is obtained.
  4. It is shown that this process produces lower points on the same branch and can be repeated until some condition (such as x = 0) is achieved. Then by substitution of this condition into the equation of the hyperbola, the desired conclusion will be proven.

This method can be applied to problem #6 at IMO 1988: Let a and b be positive integers such that ab + 1 divides a2 + b2. Prove that a2 + b2/ab + 1 is a perfect square.

  1. Let a2 + b2/ab + 1 = q and fix the value of q. Then (a,b) represents a lattice point on the hyperbola H defined by the equation x2 + y2qxyq = 0.
  2. If x = y then we find x = y = q = 1, which trivially satisfies the statement.
  3. Let (x, y) be a lattice point on a branch H, and assume 0 < x < y so that it is on the higher branch. By applying Vieta's Formulas, (x, qxy) is a lattice point on the lower branch of H. Since x > 0, by the equation of H, it follows that y’ = qxy ≥ 0. Unless y’ = qxy = 0, by reflection (qxy, x) is another lattice point on the original branch. This new point has smaller positive (x, y)-coordinate, and thus is in the first quadrant, and lies below the original point.
  4. This process can be repeated; however, only for finitely many times. Thus, this process must arrive at some point (x, 0) on the lower branch of H; by substitution, q = x2 is a square as required.

See alsoEdit


  1. ^ a b Arthur Engel (1998). Problem Solving Strategies. Springer. p. 127. doi:10.1007/b97682. ISBN 978-0-387-98219-9.
  2. ^ "The Return of the Legend of Question Six". Numberphile. August 16, 2016 – via YouTube.
  3. ^ "International Mathematical Olympiad". Retrieved 29 September 2020.
  4. ^ "Results of International Mathematical Olympiad 1988". Retrieved 2013-03-03.
  5. ^
  6. ^ Yimin Ge (2007). "The Method of Vieta Jumping" (PDF). Mathematical Reflections. 5.
  7. ^ "AoPS Forum – One of my favourites problems, yeah!". Retrieved 2013-03-03.
  8. ^ K. S. Brown. "N = (x^2 + y^2)/(1+xy) is a Square". Retrieved 2016-09-26.
  9. ^ "AoPS Forum — Lemur Numbers". Retrieved 2013-03-03.
  10. ^ "AoPS Forum – x*y | x^2+y^2+1". 2005-06-07. Retrieved 2013-03-03.

External linksEdit