of truth in the algebraic automatic theorem proving model, as well as some of the .... Of course, one can write, by hand, the set of equations defining in this case .... GDI proceeds in a mechanic way (at user's request) towards the discovery of.
Proceedings ICCSA (International Conference on Computational Science and its Applications 2004. Springer. Lec. Not. Com. Sci. 3044, pp. 761-771
Where the Truth Lies (in Automatic Theorem Proving in Elementary Geometry) T. Recio! and F. Botana Departamento de Matem´ aticas, Estad´ıstica y Computaci´ on, Universidad de Cantabria, Avda. de los Castros, 39071 Santander, Spain, http://www.recio.tk Departamento de Matem´ atica Aplicada I, Universidad de Vigo, Campus A Xunqueira, 36005 Pontevedra, Spain, http://rosalia.uvigo.es/fbotana
Abstract. In this paper we use a new integrated theorem prover (GDI), codeveloped by the second author, to discuss a geometric result due to Maclane, the 83 theorem, which has been declared to be true, according some authors, while other claim it is false. Our approach is based in Gr¨ obner bases computations and illustrates the controversial concept of truth in the algebraic automatic theorem proving model, as well as some of the new features provided by GDI. The potential applications to computer graphics of the idea behind these rather unique features, are also briefly discussed.
1
Introduction
This note exhibits, through a well-known example, i) the difficulties of modeling some basic reasoning on simple geometric objects such as points and lines on a plane, and ii) the advantages of using GDI [2, 3], an integrated (dynamic geometry screen+algebraic engine) prover prototype created by the second author (with J.L. Valcarce), to exemplify the situation. We will consider (Section 2) the well established algebraic approach to automatic theorem proving in elementary geometry (we refer to [21] for an exhaustive repository of related papers). Within this approach, a theorem due to Maclane [15] (the so called theorem 83 ) has been declared to be true, according to some authors (“if we adhere to our definition of (algebraic) truth, the theorem should be considered true: an example of an obviously false theorem that is true” [8]); but which has also been reputed by some other authors to be false (“it holds in the real plane but fails in the complex one” [9]). As it has been already remarked [8], what lies behind this controversy is the (intrincate) concept of truth in the algebraic automatic theorem proving model. We will discuss briefly this issue (Section 4) and, basically, show (in Section 5) what (and how) GDI has to conclude about this paradigmatic example, as well as (in Section 6) what could become in the future, for computer graphics, of the idea behind this software. !
First author supported by grant BFM2002-04402-C02-02 from the Spanish MCyT and by the University of Vigo, as a visiting scholar during October 2003
2
The Algebraic Approach to Automatic Theorem Proving
For the last 20 years, symbolic algebraic techniques have been successfully used for automatically proving theorems in elementary geometry. The practical interest of this goal (i.e to automate, through the algebraic translation of hypotheses and theses, theorem proving in euclidian geometry) could be related, for instance, to its potential applications in geometric constraint solving and parameterized CAD [13, 10, 11], as well as in computer assisted learning, etc. In [4, 19] one can navigate on many interesting details concerning the mentioned topics and their mutual relationship, as well as providing a source for further references. The standard algebraic approach proceeds, roughly, as follows (see [6] for some basic details). A geometric statement (a finite set of hypotheses and a thesis) is translated into two multivariate polynomial systems, H, T . The statement is declared to be true if the hypotheses variety (where all polynomials in H are zero) is contained in the thesis variety, V ar(H) ⊆ V ar(T ). Different approaches exist to compute whether V ar(H) ⊆ V ar(T ), after performing a suitable algebraic translation (based on Hilbert’s Nullstellensatz) of the set inclusion, mainly Wu–Ritt characteristic sets and Gr¨obner bases. As this algebra/geometry translation usually assumes working over an algebraically closed field, the overall decision procedure about the truth of a geometric statement involves not only real solutions, but complex ones as well.
3
Integrated Theorem Provers
The history of the algebraic approach to elementary geometry theorem proving, very roughly stated, begins with an initial phase devoted to the mathematical modeling of proving (in this specific context), then followed by an era of extensive experimentation (such as in [6]) on different built–on–purpose automatic provers. Thousands of theorems, mostly classic but some also quite new, have been successfully proved in this way. Moreover, in the last years a handful of these provers [20, 12, 22, 17] integrate, jointly with the traditional computer algebra engine, a dynamic geometry environment, allowing the user to sketch geometric figures, to mark distinguished elements on them, and to graphically state (ie. by selecting with a computer device on the screen some of these geometric elements) different hypotheses and theses, thus avoiding the cumbersome task of explicitly writing the corresponding equations as an input for the algebraic prover. 3.1
GDI
GDI, a Spanish acronym of Intelligent Dynamic Geometry, is a prototype of these last generation provers. Besides offering the user a friendly interface for stating, in a graphical mode, hypotheses and theses, GDI has a distinguished feature, the
Discovery option, allowing a user to specify some extra constraints over a geometric construction and then finding necessary conditions on the free elements so that the given constraints will hold in the resulting modified construction. This option can also be invoked through the internet (using the webDiscovery feature of GDI [1]). The algebraic machinery behind this comes from [16] and uses the symbolic computation packages CoCoA [5] or Mathematica in an automatic way, at user’s choice, who has just to graphically sketch a construction and then start a dialog (deciding what he/she wants to test about the construction) with some pre-build menus options. Let us illustrate it with an elementary example. Consider an arbitrary triangle ABC and an arbitrary point X on its plane and construct the symmetrical points X ! , X !! , X !!! of X with respect to the sides of ABC; then drag X. One can observe that the triple of symmetrical points X ! , X !! , X !!! becomes sometimes collinear. Asking about the necessary conditions for this alignment GDI discovers two conditions: one is a degenerate case (The points A, B, C are aligned), while the other is the cocircularity of points A, B, C and X (Fig. 1).
Fig. 1. Necessary conditions for the alignment of the symmetrical points of X
4
Maclane 83 : Difficult to Prove. . .
This theorem of MacLane can be stated as follows: Consider eight points A, B,..., H such that the following (also eight) triples are collinear ABD, BCE, CDF , DEG, EF H, F GA, GHB, HAC. Then all eight points lie on a line. As noted in the Introduction, Dolzmann, Sturm and Weispfenning [9] point out, without further discussion, that this theorem holds in the real plane, but fails in
the complex one, while Conti and Traverso [8] consider it as “an example of an obviously false theorem that is true”. Leaving aside reality issues, i.e. considering just the complex case (as it is usual up to now in most theorem provers), we have attempted to verify with GDI the truth/falsity of this result. To begin with, the first difficulty we face is that the GDI prover only accepts geometric statements of constructive type (for a definition of constructibility, see [6, p. 16]) and this one is not of this kind. In fact, using the graphical interface of GDI, one is tempted to proceed as follows: first, freely place the points A(u1 , u2 ) and B(u3 , u4 ) defining a line, then point D is constructed as a point on it (hence having a free coordinate u5 and a bounded one x1 ). Similarly, point B(u3 , u4 ) and a new free point C(u6 , u7 ) define another line, and point E(u8 , x2 ) lies on it, and so on . . . . But the coordinates of A have got to be redefined when imposing the alignment of F , G and A (since A must lie on line F G), and the same problem appears with B and C for the last two conditions of alignment. Thus, as remarked in [8, p. 93], “no construction can contain an 83 condition, since every point is involved in three alignment conditions”. Of course, one can write, by hand, the set of equations defining in this case the hypothesis variety H (eight alignment conditions, each yielding a second degree equation) and the thesis variety T (for instance, the single equation stating that C is aligned with A, B, hence all the points are aligned). In order to check if V ar(H) ⊆ V ar(T ), one can compute (for instance, with CoCoA) the saturation [14] of the ideal Ideal(H) by Ideal(T ). It yields a proper ideal, and thus it means that the inclusion of varieties does not hold (because 1 "= Sat(Ideal(H), Ideal(T )) is equivalent to saying T is not in the radical of Ideal(H)). In particular, we can quote Conti and Traverso [7], who explicitly give the collection of points ! (0, 0), (1, 0), (0, α), (∞, 0), (α + 1, −1), (−2α, α), (2, −1), (0, 1) where α = i/ (3), verifying the hypothesis but not the conclusion of Maclane’s theorem. Furthermore the same authors explicitly compute (in a highly non-automatic, but clever way) nine eight dimensional components of the hypothesis variety where the theorem fails [8], and parts of them represent eight–tuples of different points verifying the hypotheses but not the thesis. So the theorem is not true all over the points of V ar(H), although, for each element G ∈ Sat(Ideal(H), Ideal(T )), the theorem holds over the points V ar(H) ∩ {G "= 0}, because for some power m, G ∗ T m ∈ Ideal(H), by definition of saturation. Next one could show that, actually, there exists some G ∈ Sat(Ideal(H), Ideal(T )) such that there are points where V ar(H) ∩ {G "= 0}; in fact it is enough to check among the elements of a base of Sat(Ideal(H), Ideal(T )) in order to find one of these G’s with the required property; computationally speaking, one just verifies that for any base there is some element G such that Sat(Ideal(H), Ideal(G)) is not 1. So the actual issue is, how relevant is this subset of V ar(H) where the theorem is true? For some, if this set includes an open subset in every higher dimensional component of the hypothesis variety (and this is the case here as we will see in the next section), it can be said the theorem holds (in general), while for others, the fact that there are components (such as the nine eight dimensional
ones of Conti and Traverso, although the variety is 10–dimensional) where the theorem fails is enough to label the theorem as intuitively false. Dependent and independent variables play as well a precise role in this discussion. . . All this is a subtle issue, which has been thoroughly analyzed in the cited papers, but it is not the topic of this short and much less ambitious paper.
5
Maclane 83 : . . . Easier to Discover with GDI
In sharp contrast, it seems much more feasible to study this theorem using the automatic Discovery feature of GDI. Since this approach consists of imposing some extra, hypothetical, conditions on a construction, we can sketch the construction as above, namely, we construct two free points A(u1 , u2 ) and B(u3 , u4 ) which define a line containing the point D(u5 , x1 ). A new free point C(u6 , u7 ) is used to define line BC containing the point E(u8 , x2 ). Analogously, the line CD contains the point F (u9 , x3 ), the line DE contains the point G(u10 , x4 ), and the line EF contains the point H(u11 , x5 ) (Fig. 2).
Fig. 2. The construction for discovering 83
There are eleven free variables in the above construction: A, B and C each contribute with two new variables, while the other five points give only one free coordinate each. Then the last three alignment conditions are imposed on the sketch by selecting the corresponding triple of points and declaring them as collinear (Fig. 3). Thus the alignment of F , G and A should (in general) reduce by one the number of free variables (as it imposes a new relation between them), and the same should happen for the remaining two conditions. Finally, it seems that there are just eight free variables (except for the case that some of these constraints were locally or globally redundant).
Fig. 3. Imposing the alignment of F , G and A in GDI
For symbolic purposes, the sketch is internally (in GDI) translated as follows, where A and B have been declared in the construction as the origin and the xaxis unit point, without loss of generality and in order to reduce the number of involved variables, Points A(0,0) B(1,0) C(u[6],u[7]) D(u[5],x[1]) E(u[8],x[2]) F(u[9],x[3]) G(u[10],x[4]) H(u[11],x[5]) Properties Aligned(D,A,B) Aligned(E,B,C) Aligned(F,D,C) Aligned(G,D,E) Aligned(H,E,F)
(0-x[1])*(1-0)-(0-0)*(0-u[5]) (0-x[2])*(u[6]-1)-(u[7]-0)*(1-u[8]) (x[1]-x[3])*(u[6]-u[5])-(u[7]-x[1])*(u[5]-u[9]) (x[1]-x[4])*(u[8]-u[5])-(x[2]-x[1])*(u[5]-u[10]) (x[2]-x[5])*(u[9]-u[8])-(x[3]-x[2])*(u[8]-u[11])
Conditions Aligned(F,G,A) (x[4]-x[3])*(0-u[10])-(0-x[4])*(u[10]-u[9]) Aligned(G,H,B) (x[5]-x[4])*(1-u[11])-(0-x[5])*(u[11]-u[10]) Aligned(H,A,C) (0-x[5])*(u[6]-0)-(u[7]-0)*(0-u[11]) Let I be the ideal automatically generated by the eight polynomials (properties + conditions) in the ring R = Q[x1 , . . . , x5 , u5 , . . . , u11 ]. The dimension of R/I, computed with CoCoA, turns out to be 6 (it yields dimension 10 if A and B are not declared as origin and unit, respectively), thus showing that the alignment conditions are not totally independent of each other, since one would have expected dimension 4 (because we have seven apparently independent variables u5 , . . . , u11 in the construction and three extra conditions over them); likewise, one would have expected dimension 8, as counted above, if A and B would have been taken as free points. So there is a dimension increase from 4 to 6 (or from 8 to 10 in the latter case). This agrees with Conti and Traverso [8], who state without further details that there is a highest dimension component in V ar(H) of dimension 10 (since they work without fixing any points a priori; and, by the way, it happens that the theorem holds over this component, ie. it consists of points where the eight points are collinear). Anyway, without taking into consideration this non-automatic observation, GDI proceeds in a mechanic way (at user’s request) towards the discovery of properties induced on the eight points configuration after imposing the last three conditions. This is (roughly) done by eliminating the (construction declared) bounded variables xi in order to find necessary conditions expressed by means of the supposedly free variables. This elimination ideal, computed with CoCoA in a few seconds, is generated by 28 polynomials, say pi , i = 1, . . . , 28. The vanishing of any of these polynomials, involving just the variables u5 , . . . , u11 , is a mere consequence of the proposed hypotheses and gives some necessary conditions for the configuration to verify the construction and the extra conditions. Now the surprise comes when we realize that the gcd of these polynomials is u7 . But u7 = 0 gives the collinearity of the eight given points! In fact, u7 = 0 expresses that point C is aligned with points A, B. Let us call qi , i = 1, . . . , 28 the polynomials such that u7 ∗ qi = pi . Therefore, if all the polynomials in I vanish (ie. if we are on the hypothesis variety) and some qi "= 0, then u7 = 0, that is, the theorem is true over the open set of the hypothesis variety described by the union of qi "= 0, i = 1, . . . , 28. Finally, as a personal and non–automatic remark, we might observe that u5 , u6 , u8 , . . . , u11 is a maximal set of 6 independent variables modulo I, and that Sat(I, Ideal(u7 ))∩Q[u5 , u6 , u8 , . . . , u11 ] is not zero (for instance, it contains q1 = −u5 u6 u8 u11 + u5 u6 u10 u11 + u5 u6 u8 − u6 u8 u10 + u6 u8 u11 − u5 u10 u11 − u6 u10 u11 + u8 u10 u11 − u5 u6 + u6 u10 + u5 u11 − u8 u11 ) which implies [18] that the theorem holds over all components of the hypothesis variety where these variables (of number equal to the dimension of the variety) remain independent; this fact (for some of us) supports calling this a generally true theorem.
6
Conclusion
As mentioned in the introduction, the main point of this paper is showing how such a paradigmatic and debated problem, which has concealed non–automatic efforts from many researchers, can be approached in a simple way via GDI, a mixture of a dynamic geometry software and an automatic theorem prover and discoverer (by algebraic means), built up by the second author (Botana). Such program, for this particular problem of Maclane, starting from a simple graphic construction of a configuration satisfying some of the hypothesis and then imposing the remaining ones as further conditions on the geometric objects, without further human intervention, automatically (except for a GCD calculation, that could be in the future included as a final check in the program) discovers the thesis and provides the user with some solid arguments to conclude that the theorem of Maclane 83 might be generally true (after all, it is even guessed by a machine!). We think that the mere fact that GDI is capable of suggesting the thesis in Maclane’s theorem in a purely automatic way and with little effort from the user and the machine, is already interesting on its own (leaving aside the discussion about the truth/falsity of the whole statement). After all, automatic theorem provers should be tools for experimentation, not oracles for deciding. And GDI shows in this example its capability for bringing up non-trivial conjectures, such as if you make such construction and impose such conditions it might happen that . . . the eight points are collinear. We think that the idea of finding automatically the (sometimes unexpected) geometric consequences of a given sequence of steps in a construction with geometric entities, has a natural repercussion in Computer Aided Geometric Design. It is easy to imagine a situation in which one is imposing different properties to some objects on a sketch, without noticing it will end up with an (undesirable or, perhaps, lucky) configuration. . . . Maclane’s could be an example of this situation. Or, on the other way, it might be the case that one wants to find out what extra conditions should be imposed to a collection of objects on a construction so that a certain desirable property holds: for instance, as in the (toy) example in 3.1. Both situations will require automatic discovery and could be treated in a unified way: in the second case, one is lead to discover the consequence of imposing some concrete condition, such as the alignment of the symmetrical points; in the first case, of Maclane’s theorem, one talks about discovering the consequence(s) of imposing no extra condition, (i.e. a trivial condition such as 1=1, in algebraic terms) on the set of already given ones, i.e. on the given construction. GDI automatic discovery feature is quite unique and, if not adequately explained by showing, as in the preceding sections, some of the involved methods and, also, its inherent limitations (concerning, for instance, the choice of independent variables), could be considered as miraculous. This is clearly not the case, but even so, the idea behind it (of automatically discovering) deserves, in our opinion, further research in view of its potential application to various fields
in computer graphics, as a helper feature on CAD programs, providing them with an (apparently) omniscent ability to answer queries about a given sketch. Automatic proving has had in the past an important connection to computational geometric design; automatic discovering should have, in the future, a closer connection. After all, when working with geometric entities, only a few statements we can imagine about them will hold true. . . most will be false. Thus, in some sense, proving refers just to a small portion of reality, while discovering deals with wide, open, everyday situations. . .
References 1. Botana, F.: A Web-based intelligent system for geometric discovery. In P.M.A. Sloot et al, editors, Proc. 2nd International Conference on Computational Science (ICCS 2003), LNCS, 2657, 801–810 (2003) 2. Botana, F., Valcarce, J.L.: A software tool for the investigation of plane loci. Mathematics and Computers in Simulation, 61(2), 141–154 (2003) 3. Botana, F., Valcarce, J.L.: Automatic determination of envelopes and other derived curves within a graphic environment. Mathematics and Computers in Simulation, to appear 4. Bouma, W., Chen, X., Fudos, I., Hoffmann, C., Vermeer, P.J.: An electronic primer on geometric constraint solving. http://www.cs.purdue.edu/homes/cmh/electrobook/into.html 5. A. Capani, G. Niesi and L. Robbiano, CoCoA, a system for doing Computations in Commutative Algebra. Available via anonymous ftp from: cocoa.dima.unige.it 6. Chou, S.C.: Mechanical geometry theorem proving. D. Reidel Publishing Company, Dordrecht, Boston (1988) 7. Conti, P., Traverso, C.: A case study of semiautomatic proving: the Maclane 83 theorem. In G. Cohen, M. Giusti and T. Mora, editors, Proc. 11th International Symposium in Applied Algebra, Algebraic Algorithms and Error–Correcting Codes (AAECC–11), LNCS, 948, 183–193 (1995) 8. Conti, P., Traverso, C.: Algebraic and semialgebraic proofs: Methods and paradoxes. In J. Richter–Gebert and D. Wang, editors, Proc. 3rd International Workshop on Automated Deduction in Geometry (ADG 2000), LNAI, 2061, 83–103 (2000) 9. Dolzmann, A., Sturm, A., Weispfenning, V.: A new approach for automatic theorem proving in real geometry. Journal of Automated Reasoning, 21, 357–380 (1998) 10. Gao, X.S., Chou, S.C.: Solving geometric constraint systems. I. A global propagation approach. Computer–Aided Design, 30, 47–54 (1998) 11. Gao, X.S., Chou, S.C.: Solving geometric constraint systems. II. A symbolic approach and decision of Rc–constructibility. Computer–Aided Design, 30, 115-122 (1998) 12. Gao, X.S., Zhang, J.Z., Chou, S.C.: Geometry Expert. Nine Chapters, Taiwan (1998) 13. Hoffmann, C., Bouma, W., Fudos, I., Cai, J., Paige, R.: A geometric constraint solver. Computer–Aided Design, 27, 487–501 (1995) 14. Kreuzer, M., Robbiano, L.: Computational Commutative Algebra I. Springer, Berlin (2000) 15. MacLane, S.: Some interpretation of abstract linear dependence in terms of projective geometry. American Journal of Mathematics, 58, 236–240 (1936)
16. Recio, T., V´elez, M. P.: Automatic discovery of theorems in elementary geometry. Journal of Automated Reasoning, 23, 63–82 (1999) 17. Richter–Gebert, J., Kortenkamp, U.: The Interactive Geometry Software Cinderella. Springer, Berlin (1999) 18. V´elez, P., Recio, T., Sterk, H.: Project: Automated Geometry theorem proving. In A.M. Cohen, H. Cuypers and H. Sterk, editors, Some Tapas of Computer Algebra (Algorithms and Computations in Mathematics, Vol. 4), Springer, Berlin, 276–296 (1999) 19. Vona, M.: Annotated links on geometry and geometric design. http://www.mit.edu/~vona/links/links-geometry-only.html 20. Wang, D.: GEOTHER: A geometry theorem prover. In M. McRobbie and J. Slaney, editors, Proc. 13th International Conference on Automated Deduction (CADE 1996), LNCS, 1104, 166–170 (1996) 21. http://www-calfor.lip6.fr/~wang/GRBib/ Welcome.html 22. http://www.acailabcom/english/mathxp.htm