# Géométrix

Géométrix est un logiciel pédagogique de géométrie dynamique doublé d'un système d'aide à la démonstration. Son développement repose sur des méthodes et des techniques d'intelligence artificielle. Il peut corriger un élève sur tout exercice de construction géométrique et vise à le guider lors d'exercices de démonstration. Depuis 1992, il est le seul logiciel capable de détecter toute erreur de construction, la commenter, intervenir sur la figure de l'élève, la modifier, l'animer pour lui suggérer des pistes de recherche. Il est aussi depuis décembre 2011 le seul logiciel en mesure de « raisonner » sur la figure pendant que l'élève la construit et d'afficher ses propriétés et leur codage. L'élève peut ainsi lire et visionner, pas à pas, toutes les « implications logiques » de sa construction.
Jusqu'à la version 3.9.5, il disposait d'un module de raisonnement automatisé (niveau collège) capable, à partir d'une figure, d'en établir et démontrer les propriétés. Sur cette base, l'enseignant devait générer (et apprendre à générer) les exercices de démonstration pour les élèves au travers d'une interface spécifique.
À partir de la version 4.0 (version bêta publiée en juillet 2013), cette interface disparaît. Le professeur n'est plus contraint de créer un exercice de démonstration au préalable puisque le logiciel peut guider directement l'élève dans sa démonstration de n'importe quelle propriété de la figure. Deux types de raisonnements sont autorisés (et peuvent être entremêlés) : chaînage avant, chaînage arrière. Géométrix, qui génère un grand nombre de solutions différentes, propose à l'élève, lorsque celui-ci a terminé sa démonstration, de la rédiger sous une forme canonique, puis il affiche quelques suggestions sur les autres solutions possibles.
Sur le plan pédagogique, ce logiciel met l’accent sur le langage. La construction de tout objet géométrique exige la formulation d’une phrase (automatiquement générée par le logiciel) qui le définit totalement dans ses relations logiques avec ses ascendants. Cette construction basée sur des phrases exprimant les relations logiques entre les objets est essentielle pour l’étape suivante : la démonstration.
Géométrix tente de promouvoir une approche pédagogique constructiviste. Les élèves doivent pouvoir agir comme des chercheurs. Conjectures, tests, preuves, formalisations, abstractions, nouvelles conjectures, tests, erreurs, etc. Pour cela, il faut un logiciel capable de détecter et traiter toute erreur. L’ordinateur est ici un outil d’investigation, il doit permettre de mener une « enquête » basée sur des expériences.
Géométrix a reçu le CERVOD d'argent en 1998. Le Ministère de l'Éducation nationale lui a accordé le label RIP (« Reconnu d'intérêt pédagogique ») en 2001.
Sur le plan informatique, deux langages de programmation sont à l'œuvre : Pascal (dans l'environnement Lazarus) et Prolog. Le premier a exclusivement servi à développer l'interface graphique ; le reste (constructions géométriques, vérification de la figure élève, vérification du raisonnement et moteur d'inférence) est pris en charge par SWI-Prolog (en). Le choix de ces deux langages a, entre autres, permis d'obtenir un code extrêmement « serré » (4 Mo) pour les versions 4.0 et 4.1. En juin 2016, une deuxième implémentation de Prolog, YAP (en), est intégrée à l'environnement de développement de la version 4.2. Extrêmement rapide, il permet d'accélérer le moteur d'inférences d'un facteur trois ou quatre pour des constructions géométriques ordinaires (niveau collège) et parfois d'un facteur dix ou plus pour des constructions complexes.
Deux méthodes d'intégration sont utilisées pour SWI-Prolog. Il est « embarqué » (embedded) dans Lazarus grâce à son interface C et une autre instance de SWI-Prolog est lancée dans un processus différent avec lequel le noyau principal communique au travers de sockets. Ce processus, qui pourrait être distant, est tout entier consacré au moteur d'inférence principal.
Le langage YAP est abandonné en 2022. SWI-Prolog le remplace intégralement.
De nombreux professeurs de mathématiques ont contribué par leurs suggestions et leurs conseils au développement du logiciel : Martin Acosta (Universidad Industrial de Santander), Régis Deleuze, Franck Jarnier, Jean-Philippe Froment, Pa et Ph Saint-Maxent, M.O. Fuin, D. Mascarte, Bernard Montuelle, Danièle Fosseux, JC Fénice, Guy Brandenburg, Hervé Benoit-Chieux.