Version classiqueVersion mobile

Epistémologie & didactique

 | 
Manuel Bächtold
, 
Viviane Durand-Guerrier
, 
Valérie Munier

Partie 1. Épistémologie et recherches didactiques sur les connaissances scientifiques enseignées

Conception et application d’un modèle épistémologique en didactique l’exemple du concept algorithme

Simon Modeste

Texte intégral

1L’introduction d’éléments liés à l’informatique, tels que l’algorithmique, dans l’enseignement des mathématiques, en France comme à l’étranger, soulève des questions profondes d’ordre didactique et nécessite de porter un regard nouveau sur certains concepts mathématiques enseignés traditionnellement. Ces questions sont d’ordre épistémologique, au sens où elles touchent à la nature des objets, des méthodes et de la validation en mathématiques et où ces évolutions sont le reflet de mutations dans la discipline mathématique elle-même. Nous faisons l’hypothèse qu’une approche articulant didactique et épistémologie est pertinente et efficace pour aborder ces enjeux. Nous montrons ici comment un travail épistémologique sur le concept d’algorithme permet d’apporter un éclairage sur des questions didactiques et comment, dans ce cas précis, ont été construits et mis en œuvre nos outils épistémologiques en relation avec des cadres didactiques.

1. Un contexte qui appelle à un questionnement épistémologique

1.1. L’enseignement de l’informatique en France

2Depuis plus de trente ans, la question de l’enseignement de l’informatique se pose en France, avec différents mouvements entre considération de l’informatique comme un objet ou comme un outil d’enseignement (Baron, Bruillard, 2011). Dans un premier temps – les années 1980 qui ont vu la mise en place de l’option dite « informatique des lycées » – des éléments d’algorithmique et de programmation furent enseignés auxquels s’est substitué l’usage de progiciels dans les années 1990 et 2000. Depuis les années 2000, on constate un regain d’intérêt pour la question de l’enseignement de la science informatique. En 2001, la Commission de Réflexion sur l’enseignement des mathématiques (Kahane, 2002) proposait et motivait l’introduction d’une part d’informatique dans l’enseignement des mathématiques. On trouve parmi les motivations, celle d’une prise en compte des changements dans les mathématiques :

L’ordinateur a permis, par sa puissance de calcul, d’aborder certains objets sous un jour nouveau [et] le traitement par ordinateur pose de nouvelles questions et permet de revisiter certains domaines (Kahane, 2002, p. 24-25).

3Plus récemment, en 2013, l’Académie des sciences a publié un rapport préconisant un enseignement généralisé d’informatique :

Même si l’informatique est un domaine où la création est rapide et où les produits deviennent rapidement obsolètes, cette création et ces produits s’appuient sur des connaissances fondamentales et des savoir-faire stables. En particulier, la science informatique repose sur de grands concepts unificateurs. Ainsi, le récent programme de la spécialité Informatique et sciences du numérique, en terminale scientifique, s’articule autour de quatre concepts et de leurs interactions : algorithme, langage, information et machine (Académie des Sciences, 2013, p. 12).

1.2. L’introduction de l’algorithmique dans les programmes de lycée de 2009 en France

4En 2009, puis graduellement, dans le cadre de la mise en place de nouveaux programmes en mathématiques pour le lycée en France, une part d’algorithmique a été introduite (B.O. spécial n° 30 du 23 juillet 2009, B.O. spécial n° 9 du 30 septembre 2010, B.O. spécial n° 8 du 13 octobre 2011). « Les objectifs pour le lycée » sont les mêmes dans chaque filière et pour chaque année et précisent :

La démarche algorithmique est, depuis les origines, une composante essentielle de l’activité mathématique. […] L’algorithmique a une place naturelle dans tous les champs des mathématiques et les problèmes posés doivent être en relation avec les autres parties du programme (fonctions, géométrie, statistiques et probabilité, logique) mais aussi avec les autres disciplines ou la vie courante (B.O. spécial n° 30 du 23 juillet 2009, p. 9).

5Le programme de chaque section souligne ensuite dans les contenus ceux qui sont propices à un travail algorithmique. Il apparaît que ce qui est visé n’est pas seulement l’introduction d’un nouveau concept, il s’agit également d’introduire une démarche particulière. Cela touche à la nature même de l’activité mathématique.

1.3. Une problématique d’ordre épistémologique

6Les éléments présentés ici, les justifications et les choix défendus par les auteurs cités appellent à un regard épistémologique pour nourrir l’approche didactique.

7Le débat sur la place de l’informatique comme objet d’enseignement ou comme outil d’enseignement tel qu’il apparaît dans l’argumentaire de l’Académie des Sciences, met en évidence selon nous le conflit épistémologique sous-jacent sur le statut de la science informatique : qu’est-ce qui fait la spécificité de l’informatique ? Quels en sont les fondements, les méthodes, les résultats ? Peut-on identifier des savoirs élémentaires de la discipline ? Et que doit-on enseigner de tout cela ? La nécessité de prise en compte des interactions entre mathématiques et informatique défendue dans le rapport Kahane s’appuie elle-même sur un argument d’ordre épistémologique relatif à l’évolution d’une discipline et de ses concepts. On pourrait aussi citer (Cornu, 1992 ; Howson, Kahane, 1986 ; Kuntzmann, 1974) qui évoquent déjà de tels arguments. L’évolution de la discipline mathématique sous l’influence de l’informatique est une question épistémologique délicate mais importante et nécessiterait d’être explorée avec soin. Nous allons ici nous concentrer sur le concept d’algorithme ; il s’agit d’un concept central dans les interactions entre informatique et mathématiques, qui est présent depuis 2009 dans les enseignements de mathématiques du lycée en France, et qui a été introduit de manière significative dans les programmes du collège à la rentrée 2016. Cette introduction dans le curriculum soulève de multiples questions didactiques qui relèvent de la transposition didactique (Chevallard, 1985) et de ce que Michèle Artigue appelle la vigilance épistémologique :

Dans cette direction, celle de la vigilance épistémologique, de la prise de distance par rapport à l’objet d’étude, l’analyse épistémologique permet également au didacticien de prendre la mesure des disparités existant entre savoir ‘’savant’’ […] et savoir enseigné. En effet, alors que l’école vit sur la fiction consistant à voir dans les objets d’enseignement des copies simplifiées mais fidèles des objets de la science, l’analyse épistémologique, en nous permettant de comprendre ce qui gouverne l’évolution de la connaissance scientifique, nous aide à prendre conscience de la distance qui sépare l’économie des deux systèmes (Artigue, 1990, p. 244-245).

8Dans le cas de l’algorithmique, c’est l’économie du système du savoir savant qui est invoquée pour justifier des transformations à apporter dans l’économie du système du savoir enseigné ou plutôt du système du savoir à enseigner.

9Néanmoins, le concept d’algorithme n’est pas un concept nouveau en mathématiques ; il s’agit même d’un concept extrêmement ancien dans les mathématiques (Chabert, 2010), ce qui soulève plusieurs questions : en quoi le développement de l’informatique implique-t-il une évolution de la place ou du rôle du concept d’algorithme en mathématiques ? En quoi (et comment) cela doit-il être pris en compte dans l’enseignement des mathématiques ? Enfin, face à l’introduction de l’informatique au lycée et de l’algorithmique en mathématiques, quel statut est conféré au concept d’algorithme et comment ce concept peut-il vivre dans l’activité mathématique en classe ?

10Nous allons nous intéresser plus en détail à deux de ces questions, celles du rôle et de la place de l’algorithme dans les mathématiques du savoir savant d’une part, dans les programmes de mathématiques du lycée en France d’autre part.

2. L’algorithme en mathématiques, vers un modèle épistémologique

2.1. Le concept d’algorithme et ses spécificités

11En nous appuyant sur la littérature existante (notamment Beauquier, Berstel, Chrétienne, 1992 ; Bouvier, George, Le Lionnais, 2005 ; Cormen, Leiserson, Rivest, Cazin, 1994 ; Knuth, 1973) nous avons retenu la définition suivante d’algorithme :

Un algorithme est une procédure de résolution de problème, s’appliquant à une famille d’instances du problème et produisant, en un nombre fini d’étapes constructives, non-ambiguës et organisées, la réponse au problème pour toute instance de cette famille (Modeste, 2015, p. 234).

  • 1 Le lecteur pourra trouver les détails de cet algorithme en annexe.

12De cette définition, nous dégageons deux caractéristiques importantes : l’effectivité et la relation algorithme-problème. Un algorithme résout un problème, c’est-à-dire qu’il fournit une réponse à une question qui peut porter sur un ensemble d’instances : en appliquant l’algorithme à l’une de ces instances (on parle parfois d’entrée), on obtient une solution spécifique à cette instance (parfois appelée sortie). Par exemple, l’algorithme classique de la division euclidienne posée tel qu’enseigné en France en fin d’école primaire permet de calculer le quotient et le reste de la division de n’importe quel dividende par n’importe quel diviseur (non nul)1.Pour un même problème, plusieurs algorithmes existent : on peut, par exemple, appliquer l’algorithme des soustractions itérées pour rechercher le reste et le quotient de la division de deux entiers : on retranche autant de fois que possible le diviseur au dividende, du moment que le résultat reste positif. Le résultat obtenu est le reste, le nombre de soustractions effectuées donne le quotient.

  • 2 Sans entrer dans des détails calculatoires qui nous éloigneraient de notre propos, ici, l’étape rép (...)

13Cette méthode est extrêmement simple et fonctionne toujours. Pourquoi préférer l’algorithme proposé ci-dessus à celui correspondant aux soustractions itérées ? Si l’on s’intéresse au nombre d’étapes de calcul dans chacun des deux algorithmes on se rend compte qu’il faut faire autant de soustractions que la valeur du quotient q dans le cas des soustractions itérées, alors que dans l’algorithme de division posée, il faut répéter une étape2 autant de fois que le nombre de chiffres dans q (qui est logarithmique en q). La division posée demande au final un nombre d’opérations bien moindre. C’est la question de la complexité qui est ici en jeu. La complexité d’un algorithme est le nombre d’étapes nécessaires à son exécution en fonction de la taille de l’instance. C’est une notion fondamentale en algorithmique et spécifique au concept algorithme. Elle est un des critères qui permettent de comparer et classifier les algorithmes. Pour certains auteurs (Knuth, 1985), c’est même la complexité qui différencie la pensée informatique (ou algorithmique) de la pensée mathématique. Nous faisons l’hypothèse que cet élément ne peut être mis de côté ni dans une perspective épistémologique ni dans une perspective didactique.

14Enfin, un dernier point se doit selon nous d’être pris en compte : il s’agit du lien algorithme-preuve. Tout d’abord pour pouvoir utiliser un algorithme dans la résolution d’un problème, il faut garantir qu’il résout bien ce problème (et pour toute instance). Il faut prouver l’algorithme, c’est-à-dire montrer qu’il fournit effectivement une réponse au problème (i.e. après un nombre fini d’étapes et de manière non-ambiguë (on parle de preuve de terminaison) et que la réponse apportée est valide quelle que soit l’instance (on parle de preuve de correction). Ces éléments sont les pendants, du côté de la preuve, des aspects d’effectivité et de la relation problème-algorithme. Ensuite, toute preuve constructive (par exemple une preuve par récurrence) cache en fait un algorithme qui peut être explicité. Ainsi, un algorithme peut être utilisé comme étape d’une preuve. Dans la perspective d’étudier d’un point de vue didactique la transposition de ces éléments d’épistémologie du concept d’algorithme dans l’enseignement des mathématiques, nous utilisons dans nos travaux le modèle ck¢ (lire « cécacébar »), développé en didactique des mathématiques par Balacheff et Margolinas (2005) et en particulier son modèle de conception, que nous croisons avec le point de vue de la dialectique outil-objet de Douady (1986).

2.2. Conception, connaissance, concept : ck¢ un modèle cognitif et épistémologique

15Le modèle ck¢ (Balacheff, Margolinas, 2005) est un modèle didactique de la connaissance qui s’ancre dans une approche à la fois cognitive et épistémologique (voir texte de Jean-Luc Dorier dans ce même ouvrage), dans la lignée de la théorie des champs conceptuels (Vergnaud, 1990) et de la théorie des situations didactiques (Brousseau, 1998). Un trait caractéristique de ce modèle est la prise en compte de l’épistémologie à la fois au niveau du regard porté par l’observateur sur la connaissance de l’élève, et de la cohabitation chez l’élève de connaissances a priori contradictoires. Balacheff (1995) propose une définition de la notion de conception :

L’acception [du terme conception] que nous entendons ici forger est issue du paradigme de l’erreur et de la problématique des obstacles, une conception n’a pas en soi de caractère local, elle est d’abord une connaissance au sens d’un état d’équilibre dynamique du système en interaction sujet/milieu. […] Nous avons choisi un détour théorique par une formalisation dont nous attendons qu’elle permette de dépasser la contradiction liée à la coexistence chez un sujet de connaissances recouvrant une multiplicité de conceptions éventuellement contradictoires (Balacheff, 1995, p. 224).

16Dans le modèle ck¢, une conception C est décrite par un quadruplet (P, R, L, Σ), où :

  • P est un ensemble de problèmes sur lequel C est opérationnelle ;

  • R est un ensemble d’opérateurs qui permettent d’agir sur les problèmes de P ;

  • L est un système de représentation permettant d’exprimer les éléments de P et R ;

  • Σ est une structure de contrôle, elle décrit les relations entre les éléments de P et de R (elle a à la fois un rôle de prédiction et de vérification).

17Une connaissance est alors un ensemble de conceptions ayant un même objet, et un concept peut se définir comme un ensemble de connaissances. Le concept relève d’un niveau indépendant du sujet, la connaissance se situe au niveau du sujet (ou d’une institution) et la conception est relative à un sujet dans une situation donnée. On voit alors plus nettement en quoi le modèle rapproche les points de vue épistémologiques et cognitifs en proposant de distinguer, de structurer et de mettre en relation les connaissances elles-mêmes, qu’elles soient celles d’un élève, d’un expert ou encore d’une institution et les conceptions qui les constituent.

18Dans la troisième partie de ce texte, nous nous proposons de donner une expression du concept d’algorithme du point de vue du savoir savant en termes de conception. Pour cela, nous utiliserons la notion de µ-conception (ou Cμ), « la conception [qui] peut être dérivée du corpus des savoirs consensuels (académiques) en mathématiques dont on sait qu’ils le sont du point de vue des systèmes de représentation qu’ils manipulent et des structures de contrôles (i.e. la démonstration) » (Balacheff, Margolinas, 2005).

2.3. Intégration du modèle ck¢ et dialectique outil-objet

19Pour exprimer les problèmes sur lesquels le concept d’algorithme est opérationnel, nous choisissons d’introduire un formalisme issu de la théorie de la complexité algorithmique (Garey, Johnson, 1979) : un problème p est un couple (I, Q) où I est l’ensemble de toutes les instances du problème et Q est une question qui peut être posée à chacune des instances. Par exemple, pour le problème de la primalité d’un entier, I représentera l’ensemble des entiers positifs non-nuls et Q sera la question ‘’l’entier est-il premier ?’’. Comme nous l’avons vu plus haut, résoudre algorithmiquement p, c’est trouver un algorithme a qui, pour chaque élément, de I peut apporter une réponse à la question Q. Prouver cet algorithme a, c’est montrer qu’il apporte une réponse pour tout élément de I et que la réponse est toujours correcte.

  • 3 Nous laissons volontairement de côté la question de L dans ce texte, que nous ne pouvons pas détail (...)

20Ainsi nous pouvons décrire les éléments de P, R et Σ3 : P sera l’ensemble des problèmes que l’on peut résoudre algorithmiquement, R l’ensemble des algorithmes permettant de résoudre ces problèmes, et Σ les preuves des algorithmes (rappelons que nous nous plaçons du point de vue du savoir savant, et que nous ne cherchons pas à décrire, à ce niveau, de conceptions erronées).

  • 4 Pour plus de détails, on pourra consulter (Modeste, 2012).

21Tout problème résoluble par un algorithme peut être décrit ainsi. Cependant, si l’on veut être exhaustif et décrire les problèmes pour lesquels le concept algorithme est opérationnel, autrement dit les problèmes qui donnent sens au concept d’algorithme, il nous faut introduire d’autres problèmes. Ce sont ceux qui portent sur un algorithme ou plusieurs, autrement dit les problèmes dont les algorithmes sont l’objet. Par exemple le problème de savoir quelle est la complexité d’un algorithme donné. À ces problèmes, il faut associer des opérateurs (les preuves et les outils d’étude des algorithmes) et des contrôles (les outils mathématiques et logiques soutenant ces preuves)4.

22On distingue ainsi deux familles de problèmes : ceux pour lesquels l’algorithme est un outil et ceux dans lesquels il est un objet. Cela nous permet de formaliser une dialectique outil-objet pour le concept d’algorithme, au sens de Douady (1986), rendant explicites les aspects outils et objets qui transparaissaient déjà en 2.1, lorsque l’on discutait respectivement d’effectivité et résolution de problème (outil) et de preuve et complexité (objet). Dans nos travaux, nous soutenons la thèse selon laquelle c’est le regard sur un algorithme en tant qu’objet qui permet de prendre la mesure de l’aspect générique de la méthode qu’il décrit et de son domaine de validité, mais aussi de questionner son efficacité à résoudre un problème, et par là même sa raison d’être. On le distingue ainsi d’autres concepts aux contours plus vagues comme méthode, technique, heuristique, etc. Dans ce qui suit, nous montrons comment ce modèle et les notions de problème, opérateurs et structures de contrôle ainsi que les statuts outil et objet outillent nos analyses didactiques pour analyser les programmes et documents ressources pour le lycée et soutenir la construction d’une situation d’enseignement.

3. Exemples de mise en œuvre du modèle dans l’analyse de la transposition didactique en mathématiques au lycée en France

23Nous présentons maintenant deux exemples illustrant la mise en œuvre des éléments épistémologiques présentés dans l’étude d’une transposition didactique spécifique. Nous ne donnerons pas tous les détails pour nous focaliser sur les aspects illustratifs de ces exemples. Une analyse complète relative à ce thème se trouve dans (Modeste, 2012).

3.1. Programmes et documents ressources : un algorithme outil

24Nous nous intéressons ici aux conceptions de l’algorithme en jeu dans les programmes et documents ressource du lycée (MENESR, 2009a, 2009b, 2010, 2011). Nous étudions en particulier les deux questions suivantes : quelles structures de contrôle sont explicitées ? L’algorithme a-t-il parfois le statut d’objet ? Tout d’abord, il faut noter que le concept d’algorithme n’est pas défini dans le programme qui réfère plutôt à une démarche algorithmique ou une activité algorithmique (MENESR, 2009, p. 9). Cela ne contribue pas à lui conférer un statut d’objet et aucun problème portant sur les algorithmes n’est soulevé. Très peu de structures de contrôle sont évoquées. On peut seulement relever la remarque suivante : « À l’occasion de l’écriture d’algorithmes et de petits programmes, il convient de donner aux élèves de bonnes habitudes de rigueur et de les entraîner aux pratiques systématiques de vérification et de contrôle » (ibidem). On peut supposer que la seule structure de contrôle est l’ensemble des règles des langages utilisés, et les tests via l’implémentation et la compilation/exécution des programmes.

  • 5 C’est nous qui soulignons.

25Ce point de vue se confirme lorsqu’on analyse le document ressource pour la classe de seconde (MENESR, 2009b). En effet, on y retrouve deux fois seulement des références à des tâches relatives à des structures de contrôle ou à ce qui pourrait être l’algorithme pris comme objet : « mettre au point une solution algorithmique : comment écrire un algorithme en “langage courant’’ en respectant un code, identifier les boucles, les tests, des opérations d’écriture, d’affichage… » ou « valider la solution algorithmique par des traces d’exécution et des jeux d’essais simples »5 qui confirment ce que nous relevions dans les programmes, et « valider un programme simple » qui pourrait être considéré comme faire une preuve d’algorithme mais dont on ne retrouve aucun exemple dans le reste du document. En outre, la grille proposant des critères d’évaluation des algorithmes produits par les élèves montre bien que l’on est dans un tout autre cadre :

Figure 1 : grille d’évaluation des productions d’élèves (MENESR, 2009b, p. 13)

Critères

Excellent

Bon

Moyen

Insuffisant

Respect des bons usages
Le but visé par l’algorithme est explicité, et des commentaires précisent le déroulement. Les variables ont des noms biens choisis.

Aucune erreur.

De petits détails sont négligés.
Le but est difficile à déterminer.

Des détails manquent, mais le programme tente quand même d’accomplir ses fonctions essentielles.

Ne répond pas au problème posé.
Objectif impossible à déterminer.

Correction du code :
L’algorithme fonctionne.

Fonctionne correctement dans tous
les cas.

Fonctionne pour des données (entrées) standard mais échecs mineurs sur des cas particuliers.

Échoue pour des données (entrées) standard, mais pour une raison mineure.

Échoue pour des données (entrées) standard, pour une raison importante.

Interface utilisateur :
(Entrées, sorties)
Elle est claire et commode.

Aucune faute.

1-3 fautes mineures.

Plus de trois fautes mineures ou une faute majeure.

Plus d’une faute majeure.

26On peut donc constater un premier phénomène de transposition didactique, où le concept d’algorithme est essentiellement restreint à son statut d’outil, où sa validité et sa complexité ne sont pas en jeu. Nous avons montré que cela est lié à un amalgame entre les concepts d’algorithme et de programme. Notons que ce n’est pas le cas dans les programmes de l’option Informatique et Sciences du Numérique où les deux concepts sont bien distingués (Modeste, 2012, p. 145-146, 199-201).

3.2. Algorithme instancié : un objet produit par la transposition didactique

27Dans la suite de ces effets de transposition didactique, observons l’algorithme proposé dans l’exercice suivant intitulé « un peu d’épargne » :

Figure 2 : un « algorithme » de calcul d’épargne (document ressource p. 12)

On considère l’algorithme suivant :

 

Mettre 5000 dans S
Mettre 0 dans N
Effacer l’écran
Tant que S est strictement inférieur à 8000

 

 

Remplacer S par S*1,02 Augmenter N de 1
Afficher N et S

 

Fin du Tant Que

Où S désigne la somme détenue par Paul à la banque et N désigne le nombre de semestres de dépôt.
Questions :

 

– Écrire les affichages successifs qui apparaîtront à l’écran.
– Donner un problème dont la solution est donnée par cet algorithme

  • 6 Notons au passage que ce type de question n’est pas sans intérêt au plan mathématique, même si la f (...)

28La seconde question demande de retrouver le problème dont la solution est donnée par l’algorithme. Nous faisons l’hypothèse que la réponse attendue6 est la durée en semestres pendant laquelle il faut placer un capital de 5000 € à 2 % par semestre avant d’atteindre 8000 € (on obtient ici 24 semestres). Cependant, si l’on s’en tient à la définition que nous avons donnée du fait qu’un algorithme résolve un problème, la réponse Combien y-a-t-il d’heures dans une journée ? (ou toute question dont la réponse est 24) convient. L’algorithme proposé ici ne résout pas une famille d’instances mais seulement une instance. On peut difficilement associer un problème à l’algorithme et étudier sa correction ou sa terminaison. En outre, il est difficile de rejeter l’algorithme qui affiche directement 24, ou encore l’algorithme ci-dessous qui est une réponse au problème d’épargne énoncé plus haut mais basée sur l’erreur suivante : si le capital augmente de 2% par semestre, il augmente de 4 % par an.

Figure 3 : un autre algorithme de calcul d’épargne qui produit la réponse correcte 24

Mettre 5000 dans S
Mettre 0 dans N
Tant que S est strictement inférieur à 8000
Remplacer S par S × (1,04)
Augmenter N de 2
Fin du Tant que
Afficher N

29Nous avons nommé ce type d’objet algorithme instancié, au sens où il décrit un algorithme correct sur une unique instance d’un problème. Ils sont un objet à la limite entre la description de l’algorithme et son exécution sur une instance. On voit bien dans ce cas, la difficulté de prendre en compte la relation problème-algorithme et la preuve (en tant que structure de contrôle de l’algorithme). Cet exemple n’est pas sans lien avec la non-distinction des notions d’entrée/sortie et de saisie/affichage que l’on retrouve dans les instructions officielles et les manuels.

4. Une situation pour faire vivre la dialectique outil-objet

30Avec l’exemple ci-dessous, nous souhaitons montrer comment nous nous appuyons sur les outils épistémologiques pour élaborer des situations d’enseignement permettant de faire vivre la dialectique outil-objet dont nous avons souligné l’importance pour une appropriation adéquate du concept d’algorithme. Ceux-ci nous permettent en particulier de dresser une liste de propriétés que doit vérifier un problème susceptible de favoriser un travail sur l’algorithme en tant qu’outil et objet. Tout d’abord ce problème doit être algorithmiquement résoluble et porter sur une toute une famille d’instances, pour favoriser un travail sur la relation algorithme-problème. Si cette famille est infinie, cela imposera nécessairement d’entrer dans la recherche d’une méthode générique. Le concept algorithme doit être nécessaire à la résolution. Le problème doit permettre de soulever des questions dans lesquelles l’algorithme est objet (sur sa validité, sa complexité, …). Ajoutons un critère qui n’est pas indispensable mais qui apporte une dimension supplémentaire : le problème peut soulever d’autres problèmes algorithmiquement résolubles, liés à ce dernier.

31Le problème suivant, par exemple, répond à ces critères :

Dans un ensemble de pièces indiscernables à la vue et au toucher, se trouvent de fausses pièces. Les vraies pièces pèsent toutes le même poids, les fausses aussi mais leur poids est différent de celui des vraies. À l’aide d’une balance Roberval à deux plateaux et sans poids, peut-on retrouver les fausses pièces ? Si oui, quelle est la méthode qui permet de les retrouver en effectuant le moins de pesées possible ?

32C’est un problème d’optimisation qui, comme il implique de produire une solution et d’en étudier l’optimalité, contribue à la mise en place d’une dialectique outil-objet autour du concept algorithme. Ce problème, pour lequel on peut décrire en détail les conceptions qu’il met en jeu à l’aide des éléments présentés du modèle ck¢, nous a permis de proposer des situations en classe qui ont révélé un potentiel pour le travail du concept algorithmique. Le travail d’ingénierie didactique (Artigue, 1990) est détaillé dans (Modeste, 2012 ; Modeste, Gravier, Ouvrier-Buffet, 2010).

5. Conclusions et perspectives

33Nous avons illustré, dans le cas particulier du concept algorithme, comment les questions didactiques se nourrissent des analyses épistémologiques et comment un modèle épistémologique peut outiller l’analyse didactique, tant au niveau de la transposition didactique que de la construction de situation.

34En ce qui concerne la problématique initiale de ce texte, qui interroge les relations entre informatique et mathématiques et leur prise en compte dans l’enseignement, nous espérons avoir souligné, au travers de l’exemple du concept d’algorithme, la nécessité de développer un véritable travail épistémologique susceptible de soutenir le chantier d’envergure en didactique des mathématiques et didactique de l’informatique qui s’annonce. Deux tendances complémentaires se dégagent des recherches épistémologiques concernant l’informatique en mathématiques. La première défend que l’épistémologie des mathématiques reste fondamentalement inchangée, et que les questions de constructivité et de complexité sont présentes depuis toujours au cœur des mathématiques. Une autre tendance, relevant d’une épistémologie plus pragmatique, défend que le changement d’échelle (de temps notamment) apporté par l’informatique est d’un ordre de grandeur qui transforme la pratique mathématique et que les approches épistémologiques classiques ne permettent pas de prendre cela en compte. Hamming illustre bien ce point de vue : « It is like the statement that, regarded solely as a form of transportation, modern automobiles and aeroplanes are no different than walking ». (Hamming, 1965, p. 1)

35Ce second point de vue nous semble pertinent dans une perspective didactique où les effets de l’informatique sur les pratiques ne peuvent être négligés. Ceci ouvre un vaste champ de recherche qui nécessite de croiser les études épistémologiques et didactiques des deux disciplines.

Bibliographie

Références

Académie des Sciences. (2013). L’enseignement de l’informatique en France. Il est urgent de ne plus attendre (Rapport No. 513). Disponible en ligne : http://www.academie-sciences.fr/activite/rapport/rads_0513.pdf

Artigue M. (1990). Épistémologie et Didactique. Recherches en Didactique des Mathématiques,10 (2.3), p. 241-285.

Artigue M. (1990). Ingénierie didactique. Recherches en Didactique des Mathématiques, 9/3, p. 281-308.

Balacheff N. (1995). Conception, connaissance et concept. In D. Grenier (éd.). Didactique et technologies cognitives en mathématiques, séminaires1994-1995 (p. 219-244). Grenoble : Université Joseph Fourier.

Balacheff N., Margolinas C. (2005). ck¢ Modèle de connaissances pour le calcul de situations didactiques. In A. Mercier, C. Margolinas (eds). Balises pour la didactique des mathématiques (p. 1-32). Grenoble : La Pensée Sauvage.

Baron G.-L., Bruillard É. (2011). L’informatique et son enseignement dans l’enseignement scolaire général français : enjeux de pouvoirs et de savoirs. Recherches et Expertises Pour L’enseignement Scientifique. Bruxelles : De Boeck, p. 79-90.

Beauquier D., Berstel J., Chrétienne P. (1992). Éléments d’algorithmique. Masson.

Bouvier A., George M., Le Lionnais F. (2005). Dictionnaire des mathématiques. PUF.

Brousseau G. (1998). Théorie des Situations Didactiques. La Pensée Sauvage.

Chabert J.-L. (2010). Histoire d’algorithmes – du caillou à la puce (2e éd.). Belin.

Chevallard Y. (1985). La transposition didactique – du savoir savant au savoir enseigné. Grenoble : La Pensée Sauvage.

Cormen T. H., Leiserson C. E., Rivest R. L., Cazin X. (1994). Introduction à l’algorithmique. Paris : Dunod. Disponible en ligne : http://opac.inria.fr/record=b1077377

Cornu B. (ed.) (1992). L’ordinateur pour enseigner les mathématiques. PUF.

Douady R. (1986). Jeux de cadres et dialectique outil-objet. Recherches en Didactique des Mathématiques, 7 (2), p. 5-31.

Garey M. R., Johnson D. S. (1979). Computers and Intractability : AGuide to the Theory of NP-Completeness. W. H. Freeman.

Hamming R. W. (1965). Impact of Computers. The American Mathematical Monthly, 72(2), p. 1-7.

Howson A. G., Kahane J.-P. (eds) (1986). The Influence of computers and informatics on mathematics and its teaching (International Commission on Mathematical Instruction). Cambridge University Press.

Kahane J.-P. (2002). Enseignement des sciences mathématiques : Commission de réflexion sur l’enseignement des mathématiques : Rapport au ministre de l’éducation nationale (CNDP). Paris : Odile Jacob.

Knuth D. E. (1973). The Art of Computer Programming, volume I : Fundamental Algorithms (2nd ed.). Addison-Wesley.

Knuth D. E. (1985). Algorithmic Thinking and Mathematical Thinking. The American Mathematical Monthly, 92(1), p. 170-181.

Kuntzmann J. (1974). Apport de l’informatique à l’enseignement mathématique. Cedic.

MENESR – Ministère de l’Éducation Nationale, de l’Enseignement Supérieur et de la Recherche (2009a). Programmes de mathématiques de seconde, Bulletin officiel n° 30 du 23 juillet 2009.

MENESR – Ministère de l’Éducation Nationale, de l’Enseignement Supérieur et de la Recherche (2009b). Ressources pour la classe de seconde – Algorithmique. http://cache.media.eduscol.education.fr/file/Programmes/17/8/Doc_ress_algo_v25_109178.pdf

MENESR – Ministère de l’Éducation Nationale, de l’Enseignement Supérieur et de la Recherche (2010). Programmes de mathématiques de première des voies générale et technologique, Bulletin officiel spécial n° 9 du 30 septembre 2010.

MENESR – Ministère de l’Éducation Nationale, de l’Enseignement Supérieur et de la Recherche (2011). Programmes des classes terminales des voies générale et technologique, Bulletin officiel spécial n° 8 du 13 octobre 2011.

Modeste S. (2012). Enseigner l’algorithme pour quoi ? Quelles nouvelles questions pour les mathématiques ? Quels apports pour l’apprentissage de la preuve ? Université de Grenoble. Disponible en ligne : https://tel.archives-ouvertes.fr/tel-00783294/

Modeste S. (2015). Enseigner l’algorithme pour quoi ? Quelles nouvelles questions pour les mathématiques ? Quels apports pour l’apprentissage de la preuve ? In A.-C. Mathé & É. Mounier (eds), Actes du Séminaire National de Didactique des Mathématiques 2014 (p. 231 – 252). IREM de Paris 7 et ARDM. Disponible en ligne : http://numerisation.irem.univ-mrs.fr/PS/IPS15004/IPS15004.pdf

Modeste S., Gravier S., Ouvrier-Buffet C. (2010). Algorithmique et apprentissage de la preuve. Repères IREM, 79, p. 51-72.

Vergnaud G. (1990). La théorie des champs conceptuels. Recherches en Didactique des Mathématiques, 10 (2-3), p. 133-170.

Notes

1 Le lecteur pourra trouver les détails de cet algorithme en annexe.

2 Sans entrer dans des détails calculatoires qui nous éloigneraient de notre propos, ici, l’étape répétée correspond à : rechercher le plus grand multiple du diviseur inférieur au dernier reste calculé, soustraire ce multiple, et abaisser le chiffre suivant du diviseur.

3 Nous laissons volontairement de côté la question de L dans ce texte, que nous ne pouvons pas détailler ici.

4 Pour plus de détails, on pourra consulter (Modeste, 2012).

5 C’est nous qui soulignons.

6 Notons au passage que ce type de question n’est pas sans intérêt au plan mathématique, même si la formulation du problème permet sa résolution même sans nécessité de compréhension de l’algorithme, par un effet de contrat didactique lié notamment aux définitions des variables utilisées.

Table des illustrations

URL http://books.openedition.org/pufc/docannexe/image/11377/img-1.jpg
Fichier image/jpeg, 91k

Auteur

Institut Montpelliérain Alexander Grothendieck. CNRS. Univ. Montpellier.

© Presses universitaires de Franche-Comté, 2018

Conditions d’utilisation : http://www.openedition.org/6540

Rechercher dans OpenEdition Search

Vous allez être redirigé vers OpenEdition Search