This header plots the critical line of the Riemann Zeta Function.  A complete understanding wins a $1,000,000 prize.
. . .
Main   Links   Orders   Post   Next Page   Next + 10
The following triangle:

              . .
            .     .
          .         .
        E             .
      .                 .
    .                     .

with lengths

  AD = 80
  DB = 128
  AE = 49
  EC = 63
  CB = 112
  CD = 48
  DE = 39

is a partition of an integer-sided triangle into 3 mutually dissimilar
integer-sided triangles. It is not the smallest, see below.

The [7,7,13] triangle is not the smallest (in perimeter) which can be
partitioned into 2 dissimilar integer-sided triangles. In a [6,8,10]
right triangle, the line from the right angle to the midpoint of the
hypotenuse partitions it into [5,5,6] and [5,5,8], which are dissimilar
as required. In general, a [2x,2y,2z] right triangle can be partitioned
into triangles [z,z,2x] and [z,z,2y].

The general problem of finding integer-sided 2-partitions goes like

        / \ .
       /   \  .
     d/     \   .e
     /      a\    .
    /         \     .
   /           \      .
        b           c

One requires angle CDA to be complementary to CDB. This means that the
sum of their cosines is 0. Using the law of cosines and eliminating the
cosine term, one arrives at

  f(a,b,c,d,e) = ba^2 + ca^2 + cb^2 + bc^2 - cd^2 - be^2 = 0

This defines a surface in 5 dimensions. Suppose that (A,B,C,D,E) is any
known solution. If we substitute (a,b,c,d,e) = (A,B,C,D,E) +
(r,s,t,u,v)*x, with rational parameters r,s,t,u,v to be determined and x
variable, we get a cubic in x with the known root x = 0, thus of the

  K*x^3 + L*x^2 + M*x = 0

Here, K, L and M are rational functions of (A,B,C,D,E) and (r,s,t,u,v).
M in particular is linear in (r,s,t,u,v), thus we can impose the extra
condition M = 0 by setting r equal to some appropriate rational linear
function of s,t,u,v. This leaves

  K*x^3 + L*x^2 = 0

which has a double root x = 0 and a single root x = -L/K, with K and L
rational. If we then substitute x = -L/K, we get (after clearing

  (a,b,c,d,e) = (A,B,C,D,E)*K - (r,s,t,u,v)*L

which gives another generally distinct rational solution. Any rational
solution (a,b,c,d,e) corresponds to an integer solution

The condition M = 0 means that the vector (r,s,t,u,v) lies in the
hyperplane tangent to the surface f at (A,B,C,D,E). This hyperplane is
orthogonal to the vector

  W = (2AB+2AC,A^2+2BC+C^2-E^2,A^2+B^2+2BC-D^2,-2CD,-2BE)

thus we will have M = 0 if (r,s,t,u,v).dot.W = 0. The components of W
are the partial derivatives of f with respect to each variable,
evaluated at (A,B,C,D,E). It is easily verified that (r,s,t,u,v) =
(-A,-B,-C,-D,-E) satisfies this condition, thus the point (0,0,0,0,0) =
(A,B,C,D,E)+(r,s,t,u,v) always lies in the tangent hyperplane.

If the required calculations are carried out, the result is a parametric
solution in 4 rational parameters s,t,u,v which gives all rational
solutions in the tangent hyperplane at (A,B,C,D,E). If we choose any
other solution in the hyperplane and repeat the procedure, we will
obtain another parametric family of all rational solutions in a distinct
tangent hyperplane. Note that a given hyperplane cannot be tangent to f
at two distinct points.

Another way of obtaining new solutions is, given any two distinct
solutions (A,B,C,D,E) and (A',B',C',D',E'), where neither point lies in
the tangent hyperplane of the other point, if we write

  (a,b,c,d,e) = (A,B,C,D,E) + (A'-A,B'-B,C'-C,D'-D,E'-E)*x

we get a cubic in x with known roots x = 0 and x = 1. The third root
will perforce be rational, and will generate a new solution.

Most of the above is analogous to the well-known chord-tangent procedure
for finding rational points on an elliptic curve. An elliptic curve is
equivalent to a homogeneous cubic in three variables, while the surface
f is a homogeneous cubic in five variables. I don't know if anyone has
systematically investigated such curves, but it seems likely to me that
there is a group law for f which gives all rational solutions of f.

I think it is likely that any rational-sided triangle can be partitioned
into two other rational-sided triangles in an infinite number of ways.
Let's see for example whether an equilateral triangle can be thus
partitioned. In order for the outer triangle to be equilateral, we

  (a,b,c,d,e) = (x,y,z-y,z,z)

for some unknowns x,y,z. This gives

  f = z*(x^2 - y^2 + yz - z^2) = 0

and since we want z <> 0, we need

  x^2 = y^2 - yz + z^2


  (2x)^2 = (2y-z)^2 + 3z^2

This has the parametric solution

  2x = u^2 + 3v^2
  2y-z = u^2 - 3v^2
  z = 2uv

With (u,v) = (5,3) we get (x,y,z) = (26,14,30), which leads to the
integer solution (a,b,c,d,e) = (13,7,8,15,15). In general, to obtain
distinct integer solutions, we want u and v to be coprime and we need u
and v to have the same parity, thus both odd, and to ensure 0 < y < z we
need v < u < 3v. The resulting values (x,y,z) will always be even, so we
can reduce them to (x/2,y/2,z/2). This leads to an infinite number of
distinct solutions for the equilateral triangle.

This gives another general procedure for finding solutions. Suppose that
the sides of the outer triangle d:e:(b+c) are in the ratio R:S:T. Choose
odd coprime integers u,v so that

  v*(S^2-(R-T)^2) < u < v*((S+T)^2-R^2)


  D = (R+S+T)*(R+S-T)*(S+T-R)*(T+R-S)

  x = u^2 + D*v^2
  y = (u + v*((R+T)^2-S^2)) * (u + v*((R-T)^2-S^2))
  z = 4*T*u*v

(At this point, any common divisor of x,y,z can be factored out.)

  (a,b,c,d,e) = (x,y,T*z-y,R*z,S*z)

This gives an integer solution whose perimeter is (R+S+T)*z.

Note that the discriminant D is 16 times the square of the area of a
triangle with sides R,S,T.

I used this to search for a small perimeter solution without any
isosceles triangles and came up with (11,2,6,12,10) with perimeter 30. I
haven't tried an exhaustive search, so I don't know if this is minimal.

Working from the (11,2,6,12,10) solution, I found the following solution
to the 3-partition problem:

              . .
            .     .
          .         .
        E             .
      .                 .
    .                     .

with lengths

  AD = 4
  DB = 12
  AE = 6
  EC = 18
  CB = 20
  CD = 22
  DE = 5

This looks pretty good, with perimeter only 60. I wouldn't be surprised
if it is the smallest possible. This is spoiled somewhat by the fact
that ADE is similar to ABC, but the three small triangles are pairwise

Somewhat surprisingly, it is also possible to add a point F to this
along the CB edge, with

  CF = 5
  FB = 15
  DF = 18

This gives a 4-partition of the triangle with the same small perimeter.
But wait, there is more. Point G can be added to the BD edge with

  DG = 7
  GB = 5
  CG = 20

Using points A,B,C,D,G we have a 3-partition in which no two triangles,
including outer triangles, are similar. It's too bad that BCG is

Unfortunately, DF intersects CG, so you can't use both. Wait, there's
still more. Point H can be added to the DF edge, with

  DH = 10
  HF = 8
  BH = 10

With points A,B,C,D,E,F,H this gives a 5-partition of the triangle.

I'm not even sure that there aren't more points that can be added. I've
found at least several points that can be added if all the lengths are

Of course, this is not quite as magic as it might appear, since DE is
parallel to BC and DF is parallel to AC.


I have a fairly simple algorithm to search for small integer-sided
triangles which can be partitioned into two smaller integer-sided
triangles. To recap a part of my earlier message:

Given a triangle with sides in the proportion R:S:T, we want to divide
the T edge at an integer point so that the distance from this point to
the opposite vertex is also an integer. The parametric solution which I
derived is (written somewhat differently)

  D1 = (R+S+T)*(R-S+T)
  D2 = (S-T+R)*(T-R+S)
  D3 = (R+S+T)*(T-R+S)
  D4 = (S-T+R)*(R-S+T)

  D2*v < u < D3*v

  x = u^2 + D1*D2*v^2
  y = (u + D1*v)*(u - D2*v)
  z = 4T*u*v
  T*z-y = (D4*v + u)*(D3*v - u)

corresponding to the partition

        / \ .
       /   \  .
   R*z/     \   .S*z
     /      x\    .
    /         \     .
   /           \      .
        y         T*z-y

As I noted before, any common divisor of x,y,z can be factored out. The
perimeter of this triangle is (R+S+T)*z, thus for any given values of
R,S,T, the solution with the smallest perimeter will be the one with the
smallest value of z. Apart from the issue of common factors, this
implies that u and v should be chosen to be as small as possible. Now
suppose that p is a common prime divisor of y and z. Then p also divides
T*z-y. Thus, p must divide one of the factors u + D1*v or u - D2*v of y,
and also one of the factors D4*v + u and D3*v - u of T*z-y. If p divides
u + D1*v and D4*v + u, then it also divides (D1-D4)*v. If it divides v,
then it also divides u, thus assuming u and v are coprime, p must divide
D1-D4 = 2T*(R-S+T). Using the other possible pairs of factors, we can
conclude that p must divide one of

  D1-D4 = 2T*(R-S+T)
  D1+D3 = 2T*(R+S+T)
  D3-D2 = 2T*(T-R+S)
  D4+D2 = 2T*(S-T+R)

If p divides D1*D2 = D3*D4, then it must also divide u. If p does not
divide u, then it must divide 2T and cannot divide R^2-S^2.

I have chosen (for the moment) to ignore the primes dividing 2T. My
algorithm works as follows. For each divisor g of D1*D2, let u be the
smallest multiple of g which is larger than D1. If g is odd and u does
not have the same parity as D1*D2, then replace u by u+g; this ensures
that a factor of 4 can always be removed. If u is not less than D3, go
to the next iteration. Then let v = 1 and calculate x,y,z. Factor out
the gcd of x,y,z (which will always be a multiple of g). Find the result
for which the final value of z is smallest.

I have found several new results with this algorithm. This includes a
2-partition smaller than the [7,7,13] or [6,8,10], namely that the
[6,4,5] triangle can be partitioned into a [6,4,4] and a [4,4,1]. This
is obtained from the above using R:S:T = 6:4:5 and (u,v) = (35,1). There
is also a 4-partition constructible as follows. Start with triangle ABC

  AB = 15
  AC = 18
  BC = 12

Add D on AB so that

  AD = 12
  DB = 3
  CD = 12

Add E on AC so that

  AE = 10
  EC = 8
  DE = 8

Add F on AD so that

  AF = 3
  FD = 9
  EF = 8

The resulting triangles are pairwise dissimilar, albeit three of them
are isosceles and ADE is similar to ACB.

It is also possible to add another point G on AE with

  AG = 2
  GE = 8
  FG = 2

but there are two pairs of similar triangles here.

All of these results have been derived from triangles similar to
[6,5,4], which appears to be an amazingly good source of solutions.


Of course, there is one other aspect of the 4-partition problem that I
haven't attempted to approach yet. A triangle can also be 4-partitioned
by choosing one point  on each edge and drawing the three edges
connecting these points. I'm not sure even how to begin analyzing this
type of 4-partition.

This raises an interesting question. The 4-partitions that I have
analyzed are all created by applying the following operation three

  O1. Draw a line from a vertex of a triangle to a point on the opposite

As noted above, this does not generate all possible partitions of a
triangle into smaller triangles. We need at least one other operation:

  O2. Choose one point on each edge of a triangle and draw the three
edges connecting these points.

Are these two operations sufficient to construct all possible partitions
of a triangle into smaller triangles, or is there a partition that
cannot be constructed in this way?