Proof of Parralelogram Theorem from CLO Section 6.4
Michael Monagan
interface(imaginaryunit=_i): # so that we can use I for an ideal
with(PolynomialIdeals):
C=(u2,u3)
D=(x1,y1)
N
= (x2,y2)
A=(0,0)
B=(u1,0)
Hypotheses (see CLO)
h1 := x2-u3;
h2 := (x1-u1)*u3-u2*u3;
h3 := x1*x4-x2*x3;
h4 := u3*(u1-x3)-x4*(u1-u2);
(1)
Consequences (if the Theorem is true these should be consequences of the hypotheses)
g1 := x3^2+x4^2 - ((x1-x3)^2+(x2-x4)^2);
g2 := (u1-x3)^2+x4^2 - ((x3-u2)^2+(x4-u3)^2);
(2)
I := <h1,h2,h3,h4>;
(3)
Note, by default, all uknowns are treated as variables.
IdealInfo[Variables](I);
(4)
(4)
IdealInfo[Parameters](I);
(5)
Thus the ideal I is an ideal in =[x1,x2,x3,x4,u1,u2,u3]
The test if g1 and g2 are in I is false
IdealMembership(g1,I);
(6)
IdealMembership(g2,I);
(7)
The test if they are in
also fails
R := <h1,h2,h3,h4,1-g1*y>;
(8)
IdealMembership(1,R);
(9)
The problem is that u1 and u3 can be 0 - i.e., we have degenerate cases.
If we knew what the degenerate cases were, one solution would be to specify that
and
.
J := <h1,h2,h3,h4,1-u1*u3*t>;
(10)
IdealInfo[Variables](J);
(11)
IdealInfo[Parameters](J);
(12)
Okay, so we want to eliminate t.
J := EliminationIdeal(J,{x1,x2,x3,x4,u1,u2,u3});
(13)
IsRadical(J);
true
(14)
Well, the ideal is now radical and prime (it's linear) so it should be easy
IdealMembership(g1,J);
true
(15)
IdealMembership(g2,J);
true
(16)
The correct test as advocated by CLO is to place the ideal I in the ring =(u1,u2,u3)[x1,x2,x3,x4] that is
to treat the parameters as part of the coefficient ring. CLO gives a formal justification for thus but the
simple reasoning is that if we have an equation like
we want to cancel the factor of
to get the equation
which will happen if we make part of the coefficient ring.
K := <h1,h2,h3,h4,(variables={x1,x2,x3,x4})>;
(17)
IdealInfo[Variables](K);
(18)
IdealInfo[Parameters](K);
(19)
(19)
IsRadical(K);
true
(20)
true
(21)
true
To cause a Groebner basis computation for K use
Simplify(K);
(22)
IdealMembership(g1,K);
IdealMembership(g2,K);
(23)
So the theorem is proven true. We could have tested if g1 and g2 vanish on the radical.
K := <h1,h2,h3,h4,1-g1*y,(variables={x1,x2,x3,x4,y})>;
(24)
IdealMembership(1,K);
true
(25)
Simplify(K);
(26)
Finally the other hypotheses.
K := <I,1-g2*y,(variables={x1,x2,x3,x4,y})>;
(27)
Simplify(K);
(28)
© Copyright 2026 Paperzz