Journal of Automated Reasoning

, Volume 55, Issue 1, pp 39–59 | Cite as

Automated Theorem Proving in GeoGebra: Current Achievements

  • Francisco Botana
  • Markus Hohenwarter
  • Predrag Janičić
  • Zoltán Kovács
  • Ivan Petrović
  • Tomás Recio
  • Simon Weitzhofer


GeoGebra is an open-source educational mathematics software tool, with millions of users worldwide. It has a number of features (integration of computer algebra, dynamic geometry, spreadsheet, etc.), primarily focused on facilitating student experiments, and not on formal reasoning. Since including automated deduction tools in GeoGebra could bring a whole new range of teaching and learning scenarios, and since automated theorem proving and discovery in geometry has reached a rather mature stage, we embarked on a project of incorporating and testing a number of different automated provers for geometry in GeoGebra. In this paper, we present the current achievements and status of this project, and discuss various relevant challenges that this project raises in the educational, mathematical and software contexts. We will describe, first, the recent and forthcoming changes demanded by our project, regarding the implementation and the user interface of GeoGebra. Then we present our vision of the educational scenarios that could be supported by automated reasoning features, and how teachers and students could benefit from the present work. In fact, current performance of GeoGebra, extended with automated deduction tools, is already very promising—many complex theorems can be proved in less than 1 second. Thus, we believe that many new and exciting ways of using GeoGebra in the classroom are on their way.


Secondary education Interactive learning environments Intelligent tutoring systems Automatic theorem proving 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Avigad, J., Dean, E., Mumma, J.: A formal system for Euclid’s Elements. Rev. Symb. Log. 2(4), 700–768 (2009)CrossRefzbMATHMathSciNetGoogle Scholar
  2. 2.
    Baulac, Y., Bellemain, F., Laborde, J.M.: Cabri Geometry II. Dallas, Texas Instruments (1994)Google Scholar
  3. 3.
    Bernat, P.: Using dynamic geometry environments for problem solving: CHYPRE: an interactive environment for elementary geometry problem solving. Abstract of a presentation at The 8th International Congress on Math Education (ICME 8). Retrieved 06.08.13, from,∖_bernat.html. Seville (1996)
  4. 4.
    Bertot, Y., Guilhot, F., Pottier, L.: Visualizing geometrical statements with GeoView. Electr. Notes Theor. Comput. Sci. 103, 49–65 (2004)CrossRefGoogle Scholar
  5. 5.
    Botana F., Kovács, Z., Recio, T., Weitzhofer, S.: Implementing theorem proving in GeoGebra by using a Singular webservice, or by exact check of a statement in a bounded number of test cases,∼kovzol/talks/eaca12/EACA2012-BotanaKovacsRecioWeitzhofer.pdf (2012)
  6. 6.
    Botana, F., Kovács, Z., Weitzhofer, S.: Implementing theorem proving in GeoGebra by using a Singular webservice. In: Proceedings EACA 2012. Libro de Resúmenes del XIII Encuentro de Álgebra Computacional y Aplicaciones, pp 67–70. Alcalá de Henáres, Universidad de Alcalá (2012)Google Scholar
  7. 7.
    Botana, F., Valcarce, J.: A dynamic symbolic interface for geometric theorem discovery. Comput. Educ. 38, 21–35 (2002)CrossRefGoogle Scholar
  8. 8.
    Buchberger, B. In: Rice, J.R. (ed.) : Applications of Gröbner Bases in Non-Linear Computational Geometry, pp 59–87. Springer, New York (1987)Google Scholar
  9. 9.
    Chou, S.C.: Mechanical Geometry Theorem Proving. D. Reidel Publishing Company, Dordrecht (1988)zbMATHGoogle Scholar
  10. 10.
    Chou, S.C., Gao, X.S., Zhang, J.Z.: Automated production of traditional proofs for constructive geometry theorems. In: Vardi, M. (ed.) Proceedings of the 8th Annual IEEE Symposium on Logic in Computer Science (LICS), pp 48–56. IEEE Computer Society Press (1993)Google Scholar
  11. 11.
    Chou, S.C., Gao, X.S., Zhang, J.Z.: Machine Proofs in Geometry. World Scientific, Singapore (1994)zbMATHGoogle Scholar
  12. 12.
    Chou, S.C., Gao, X.S., Zhang, J.-Z.: Automated generation of readable proofs with geometric invariants (II). Theorem proving with full-angles. J. Autom. Reason. 17, 349–370 (1996)CrossRefzbMATHMathSciNetGoogle Scholar
  13. 13.
    Chou, S.C., Gao, X.S., Zhang, J.Z.: An introduction to Geometry Expert. In: McRobbie, M. A., Slaney, J. K. (eds.) CADE 13, volume 1104 of Lecture Notes in Artificial Intelligence. Springer-Verlag (1996)Google Scholar
  14. 14.
    Chou S.C., Gao X.S.: Automated reasoning in geometry. In: Handbook of Automated Reasoning. Elsevier, and MIT Press (2001)Google Scholar
  15. 15.
    Coelho, H., Moniz-Pereira, M.: Automated reasoning in geometry theorem proving with Prolog (1986). J. Autom. Reason. 2, 329–390 (1986)CrossRefzbMATHGoogle Scholar
  16. 16.
    CoCoATeam: CoCoA: A system for doing Computations in Commutative Algebra. Retrieved 02.09.13, from (2012)
  17. 17.
    Cox, D., Little, J., O’Shea, D.: Ideals, Varieties and Algorithms. An Introduction to Computational Algebraic Geometry and Commutative Algebra (Undergraduate Texts in Mathematics). Springer-Verlag, Secaucus, NJ (2008)Google Scholar
  18. 18.
    Decker, W., Greuel, G.-M., Pfister, G., Schönemann, H.: Singular 3-1-6 — A Computer Algebra System for Polynomial Computations. Retrieved 02.09.13, from, (2012)
  19. 19.
    Desfontaines, D.: Theorem proving in GeoGebra: Implementing the Area Method into OpenGeoProver (Internship report). Retrieved 02.02.13, from, (2012)
  20. 20.
    DeVilliers, M.: Rethinking Proof with Sketchpad. Key Curriculum Press. Retrieved 02.02.13, from, (1999)
  21. 21.
    Gao, X.S., Lin, Q.: MMP/Geometer a software package for automated geometric reasoning. In: Winkler, F. (ed.) Automated Deduction in Geometry: 4th International Workshop, (ADG 2002), volume 2930 of Lecture Notes in Computer Science, 44–66. Springer-Verlag (2004)Google Scholar
  22. 22.
    Gelernter, H.: Realisation of a geometry-proving machine. In: Proceedings of the International Conference on Information Processing, 273–282, Paris, vol. 15-20, p 1959 (1959)Google Scholar
  23. 23.
    Gressier, J.: Geometrix IV. Retrieved 06.08.13, from, (2013)
  24. 24.
    Hanna, G., Jahnke, H.N.: Proofs and proving. In: A.J. Bishop A.J., Clements K., Keitel C., Kilpatrick J., Laborde C. (eds.) International Handbook of Mathematics Education, Part Two, pp 877–908. Kluwer Academic Publishers, Dordrecht (1996)Google Scholar
  25. 25.
    Hanna, G.: The ongoing value of proof. J. Math. Didaktik 18(2), 171–185 (1997)CrossRefGoogle Scholar
  26. 26.
    Hohenwarter, M.: Ein Softwaresystem für dynamische Geometrie und Algebra der Ebene, master thesis. Paris Lodron University, Salzburg (2002)Google Scholar
  27. 27.
    Isotani, S., Brandão, L. O.: An algorithm for automatic checking of exercises in a dynamic geometry system: iGeom. Comput. Educ. 51, 1283–1303 (2008)CrossRefGoogle Scholar
  28. 28.
    Jackiw, N.R.: The Geometer’s Sketchpad, v3.0. Key Curriculum Press, Berkeley, CA (1995)Google Scholar
  29. 29.
    Janičić, P.: Geometry constructions language. J. Autom. Reason. 44(1-2), 3–24 (2010)CrossRefzbMATHGoogle Scholar
  30. 30.
    Janičić, P., Narboux, J., Quaresma, P.: The area method: a recapitulation. J. Autom. Reason. 48(4), 489–532 (2012)CrossRefzbMATHGoogle Scholar
  31. 31.
    Kapur, D.: Using Gröbner bases to reason about geometry problems. J. Symb. Comput. 2(4), 399–408 (1986)CrossRefzbMATHMathSciNetGoogle Scholar
  32. 32.
    Kortenkamp, U.: Foundations of Dynamic Geometry. Ph.D. Dissertation, ETH, Zurich (1999)Google Scholar
  33. 33.
    Kortenkamp, U., Richter-Gebert, J.: Using automatic theorem proving to improve the usability of geometry software. In: Workshop on Mathematical User Interfaces (2004)Google Scholar
  34. 34.
    Kovács, Z., Recio, T., Weitzhofer, S.: Implementing theorem proving in GeoGebra by exact check of a statement in a bounded number of test cases. In: Proceedings EACA 2012. Libro de Resúmenes del XIII Encuentro de Álgebra Computacional y Aplicaciones, pp 123–126. Alcalá de Henáres, Universidad de Alcalá (2012)Google Scholar
  35. 35.
    Kovács, Z., Weitzhofer, S., Desfontaines, D., Janičić, P.: Test cases for benchmarking statements. Retrieved 11.09.12, from, (2012)
  36. 36.
    Kovács, Z., Parisse, B.: Giac and GeoGebra — improved Gröbner basis computations, Special Semester on Applications of Algebra and Number Theory, Workshop 3 on Computer Algebra and Polynomials. Retrieved 18.10.14, from, (2013)
  37. 37.
    Kovács, Z.: Prover benchmark for GeoGebra Retrieved 10.09.14, from,∼kovzol/data/Prove-20150219/ (2014)
  38. 38.
    Luengo, V.: Cabri-Euclide: Un micromonde de Preuve intégrant la réfutation, PhD thesis. Université Joseph Fourier, Grenoble (1997)Google Scholar
  39. 39.
    Magajna, Z.: An observation tool as an aid for building proofs. Electronic J. of Mathematics and Technology 5/3. Retrieved 02.02.13, from, (2011)
  40. 40.
    Marić, F., Petrović, I., Petrović, D., Janičić, P.: Formalization and implementation of algebraic methods in geometry. Electron. Proc. Theor. Comput. Sci. 79, 63–81 (2011)Google Scholar
  41. 41.
    Narboux, J.: A graphical user interface for formal proofs in geometry. J. Autom. Reason. 39(2), 161–180 (2007)CrossRefzbMATHGoogle Scholar
  42. 42.
    Narboux, J.: Geoproof, a user interface for formal proofs in geometry. In: Mathematical User-Interfaces Workshop, Schloss Hagenberg, Linz, Austria. Electronic proceedings at (2007)
  43. 43.
    Nikolić, M., Marić, F., Janičić, P.: Instance-based selection of policies for SAT Solvers. In: Theory and Applications of Satisfiability Testing – SAT 2009, volume 5584 of Lecture Notes in Computer Science, pp 326–340. Springer-Verlag (2009)Google Scholar
  44. 44.
    Quaresma, P., Janičić, P.: GeoThms — a web system for euclidean constructive geometry. Electron. Notes Theor. Comput. Sci. (ENTCS) 174(2), 35–48 (2007).  10.1016/j.entcs.2006.09.020 CrossRefGoogle Scholar
  45. 45.
    Recio, T., Vélez, M.P.: Automatic discovery of theorems in elementary geometry. J. Autom. Reason. 23, 63–82 (1999)CrossRefzbMATHGoogle Scholar
  46. 46.
    Schwartz, J. L., Yerushalmy, M.: The Geometric Supposer. Sunburst Communications, Pleasantville, NY (1983)Google Scholar
  47. 47.
    Sutherland, I.E.: Sketchpad: A Man-Machine Graphical Communication System, Lincoln Laboratory, Massachusetts Institute of Technology via Defense Technical Information Center, Technical Report No. 296. Lexington, MA. Retrieved 02.02.13, from, (1963)
  48. 48.
    Tall, D.: Cognitive development, representations and proof. In: Proceedings of the conference Justifying and Proving in School Mathematics, pp 27–38. Institute of Education, London (1995)Google Scholar
  49. 49.
    The GeoGebra Team: Reference: Command Line Arguments — GeoGebraWiki (2015) []
  50. 50.
    Wang, D.: Geother 1.1: Handling and proving geometric theorems automatically. In: Automated Deduction in Geometry, volume 2930 of Lecture Notes in Artificial Intelligence, pp 194–215. Springer-Verlag (2004)Google Scholar
  51. 51.
    Wang, D.: Elimination Practice: Software Tools and Applications. London: Imperial College Press. Geother 1.1: Handling and proving geometric theorems automatically. In: Automated Deduction in Geometry, volume 2930 of Lecture Notes in Artificial Intelligence, pp 194–215. Springer-Verlag (2004)Google Scholar
  52. 52.
    Weitzhofer, S: Mechanic Proving of Theorems in Plane Geometry. Johannes Kepler University, Linz, Austria (2013).∼kovzol/guests/SimonWeitzhofer/DiplArbeit.pdf Google Scholar
  53. 53.
    Wilson, S., Fleuriot, J.: Combining dynamic geometry, automated geometry theorem proving and diagrammatic proofs. In: Workshop on User Interfaces for Theorem Provers (UITP) (2005)Google Scholar
  54. 54.
    Wolfram Research, Inc.: Mathematica, Version 3.0. Champaign, IL (1996)Google Scholar
  55. 55.
    Wu, W.T.: On the decision problem and the mechanization of theorem proving in elementary geometry. Sci. Sin. 21, 157–179 (1978)Google Scholar
  56. 56.
    Xu, L., Hutter, F., Hoos, H. H., Leyton-Brown, K.: SATzilla: Portfolio-based algorithm selection for SAT. J. Artif. Intell. Res. (JAIR) 32, 565–606 (2008)zbMATHGoogle Scholar
  57. 57.
    Ye, Z., Chou S.C., Gao, X.S.: An Introduction to Java Geometry Expert. In: Automated Deduction in Geometry, 7th International Workshop, ADG 2008, Shanghai, China, September 22-24, 2008, Revised Papers, volume 6301 of Lecture Notes in Computer Science, pp 189–195. Springer-Verlag (2011)Google Scholar
  58. 58.
    Ye, Z., Chou, S.C., Gao, X.S.: Visually dynamic presentation of proofs in plane geometry. J. Autom. Reason. 45(3), 213–241 (2010)CrossRefzbMATHMathSciNetGoogle Scholar
  59. 59.
    Zhang, J.Z., Yang, L., Deng, M.: The parallel numerical method of mechanical theorem proving. Theor. Comput. Sci. 74(3), 253–271 (1990)CrossRefzbMATHMathSciNetGoogle Scholar
  60. 60.
    Zou, Y., Zhang, J.Z.: Automated Generation of Readable Proofs for Constructive Geometry Statements with the Mass Point Method. In: Lecture Notes in Computer Science, Volume 6877, Automated Deduction in Geometry, 221–258 (2011)Google Scholar

Copyright information

© Springer Science+Business Media Dordrecht 2015

Authors and Affiliations

  • Francisco Botana
    • 1
  • Markus Hohenwarter
    • 2
  • Predrag Janičić
    • 3
  • Zoltán Kovács
    • 2
  • Ivan Petrović
    • 3
  • Tomás Recio
    • 4
  • Simon Weitzhofer
    • 2
  1. 1.Department of Applied Mathematics I, Escola de Enxeñería ForestalUniversity of Vigo at Pontevedra, Campus A XunqueiraPontevedraSpain
  2. 2.Department of Mathematics EducationJohannes Kepler UniversityLinzAustria
  3. 3.Department for Computer Science, Faculty of MathematicsUniversity of BelgradeBelgradeSerbia
  4. 4.Department of Mathematics, Statistics and Computation, Faculty of SciencesUniversity of Cantabria, Avenida de los Castros, s/nSantanderSpain

Personalised recommendations