Вы находитесь на странице: 1из 254

THSE

Pour obtenir le grade de


DOCTEUR DE LUNIVERSIT DE GRENOBLE
Spcialit : Mathmatiques-Informatique
Arrt ministrial : 12.1
Prsente par
MODESTE Simon
Thse dirige par GRAVIER Sylvain
et codirige par OUVRIER-BUFFET Ccile
prpare au sein Institut Fourier
et de MSTII
Enseigner lalgorithme pour quoi ?
Quelles nouvelles questions pour les
mathmatiques ?
Quels apports pour lapprentissage de la
preuve ?
Thse soutenue publiquement le 5 dcembre 2012,
devant le jury compos de :
Mme BLOCH Isabelle
Professeure des Universits mrite, Universit Bordeaux 4, Rapporteur
M. SOPENA ric
Professeur, Universit Bordeaux 1, Rapporteur
Mme CASTELA Corine
Matre de confrence HDR, Universit de Rouen, Examinatrice
M. VUILLON, Laurent
Professeur des Universits, Universit de Savoie, Examinateur
M. GRAVIER Sylvain
Directeur de Recherche, CNRS et Universit Grenoble 1, Directeur de thse
Mme OUVRIER-BUFFET Ccile
Matre de confrence, Universit Paris-Est Crteil, Co-Directrice de thse
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
4
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Remerciements
Le problme des remerciements exhaustifs est dune grande complexit : aucun algorithme
exact nest beaucoup plus ecace que lnumration de toutes les personnes la surface du
globe. Je vais donc me contenter ici dune heuristique de remerciement, plus rapide mais
sans garantie de noublier personne...
Je tiens tout dabord remercier Ccile Ouvrier-Buet et Sylvain Gravier, qui, aprs avoir
accompagn mon travail de Master, ont accept de mencadrer pour trois annes suppl-
mentaires. Jai beaucoup appris leurs cts. Leurs questions et leurs conseils mont guid
tout au long de ce travail. Ils ont su me laisser suivre mes propres pistes et tre prsents
quand je me perdais. Jai sincrement apprci de travailler avec eux, de discuter de nos
recherches et de tout le reste. Certains doctorants, surprotgs par leurs encadrants, sont
parfois coups de la ralit (pas si idyllique) de la recherche et de luniversit. loppos,
Ccile et Sylvain men ont fait dcouvrir les rouages, mont impliqu dans des projets et
pouss minvestir dans dautres. Je suis ravi dtre tomb sur de tels encadrants, qui ne
limitent pas leur rle aux aspects scientiques.
Merci encore Sylvain pour tout le reste : les maths, les sms je fume en bas, les bires,
les discussions sur tout, nos dsaccords constructifs, son enthousiasme et ses 12 000 pro-
jets/seconde.
Merci aussi Ccile qui ma fait dcouvrir les branches et autres chocolats suisses, les
coulisses de la DDM et la vodka la cerise en Pologne ; merci aussi pour les restos partags
en conf et les appels tlphoniques rassurants de ces derniers mois.
Isabelle Bloch et ric Sopena ont accept dtre rapporteurs de cette thse. Je les remer-
cie pour cela, pour leur ecacit, pour leur lecture attentive de mon manuscrit et leurs
remarques qui mont aid clarier mes ides. Mes remerciements vont aussi Corine
Castela et Laurent Vuillon qui ont accept de participer au jury de cette thse.
Une partie de mes recherches sest appuye sur des interviews de chercheurs. Je remercie
ici, anonymement, tous ceux et toutes celles, de chercheur 1 chercheur 22, qui ont port
un intrt mon travail en acceptant de me donner un peu de leur temps pour rpondre
mes questions.
Je remercie les membres de lInstitut Fourier, quelle que soit leur fonction, que jai ctoys
durant ces trois annes. Je remercie plus particulirement les thsards avec qui jai partag
les tracas et les euphories de la recherche, en particulier Bashar, Aline, Ximena, Laurent,
Camille, Nicolas, Thomas, Ariadna, Gunnar, lise, Marianne, Maxime, Alix et Mathieu
(jen oublie surement). Je remercie aussi les membres de lIREM de Grenoble pour leur
accueil, les enseignants rencontrs dans un cadre de recherche pour leurs retours, les col-
lgues de lIUT Informatique de Grenoble (en particulier lquipe des matheux) qui mont
5
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
guid dans mes premiers pas dans lenseignement suprieur, toute lquipe du dpartement
de mathmatiques de lUniversit de Lige et Michel Rigo en particulier, et mes nouveaux
collgues lIUFM de Chambry qui me font dcouvrir un monde inni de sigles et de
rformes...
Quand jai dcouvert lquipe Maths Modeler et ses actions, jai aussi fait la connaissance
de nombreuses personnes passionnes, sympathiques et bienveillantes. Je les salue toutes ici.
chaque fois que jai ressenti la solitude du didacticien au milieu des matheux Greno-
blois, lARDM et le groupe des jeunes chercheurs en particulier mont permis de me sentir
membre dune communaut de recherche vivante et de parler en dtail de certaines de mes
proccupations. Je remercie aussi les young researchers rencontrs Rzeszw et Faro, mais
aussi les moins young researchers de ERME, qui mont montr que la didactique franaise
nest pas tout.
Merci encore tous les amis proches qui mont soutenu, questionn et maintenu en contact
avec le monde rel. Merci Claire C, Claire B et Baptiste, merci Mlaine, Fred M, Fred
S et tous ceux cits plus haut. Une mention particulire doit tre faite Jean Q, qui a t
tout la fois -testeur de mes ides, soutien moral, support technique, rfrence scienti-
que en informatique thorique, co-crateur de projets jamais raliss et mme fournisseur
de cloud. Je remercie aussi les acteurs de notre projet Palestinien, avec qui jai partag
cette exprience incomparable.
Je remercie enn toute ma famille (dans un sens trs large), qui je dois beaucoup, et
plus spcialement mes parents, pour le got dapprendre et lesprit critique quils mont
transmis et pour leur soutien moral et logistique sans faille, ainsi quAlex et Lucie pour
leur humour et peut-tre pour mavoir, malgr eux, donn le got denseigner les maths.
Pour terminer, je remercie Camille, la lle la plus super du monde, de mavoir support
(dans presque tous les sens du terme). Sans sa prsence mes cts, je naurai peut-tre
pas tenu le coup ces trois annes. Pour tout le bonheur que tu mapportes, Camille, merci.
6
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Table des matires
Introduction 11
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1 Algorithme, mathmatiques et enseignement . . . . . . . . . . . . . . 11
1.2 Contexte en France . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 Problmatique et questions de recherche . . . . . . . . . . . . . . . . . . . . 13
2.1 Une approche pistmologique . . . . . . . . . . . . . . . . . . . . . . 14
2.2 Lenseignement de lalgorithmique en France . . . . . . . . . . . . . . 16
2.3 Dveloppement de situations pour la classe . . . . . . . . . . . . . . 17
I Une analyse pistmologique du concept algorithme 19
1 Un premier modle pistmologique 21
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1 Autour du concept dalgorithme . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.1 Quest-ce quun algorithme ? . . . . . . . . . . . . . . . . . . . . . . . 22
1.2 Une formalisation du concept mathmatique . . . . . . . . . . . . . . 25
1.3 Quest-ce-que lalgorithmique ? . . . . . . . . . . . . . . . . . . . . . 26
2 Exemples caractristiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.1 Plus grand diviseur commun . . . . . . . . . . . . . . . . . . . . . . 30
2.2 Cycle eulrien dans un graphe . . . . . . . . . . . . . . . . . . . . . . 33
2.3 Tris et permutations . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 Aspects de lalgorithme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1 Cinq aspects fondamentaux . . . . . . . . . . . . . . . . . . . . . . . 40
3.2 Dualit outil-objet . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Conclusion et nouvelles questions . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2 Rexion sur la pense algorithmique 45
1 La Pense ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2 La pense algorithmique en tant que pense mathmatique . . . . . . . . . . 46
2.1 Considrations pistmologiques . . . . . . . . . . . . . . . . . . . . 46
2.2 Perspectives pour lenseignement . . . . . . . . . . . . . . . . . . . . 48
3 Pense algorithmique versus pense mathmatique . . . . . . . . . . . . . . 48
3.1 Considrations pistmologiques . . . . . . . . . . . . . . . . . . . . 48
3.2 Perspectives pour lenseignement . . . . . . . . . . . . . . . . . . . . 51
Conclusion et nouvelles questions . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
7
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
3 Un modle de conceptions pour lalgorithme 55
1 La notion de conception et le modle cK,c . . . . . . . . . . . . . . . . . . . 55
2 Problmes et problmes dalgorithmique . . . . . . . . . . . . . . . . . . . . 57
2.1 Une notion de problme adapte . . . . . . . . . . . . . . . . . . . . 57
2.2 Direntes familles de problmes . . . . . . . . . . . . . . . . . . . . 58
2.3 Dialectique outil-objet . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3 Trois fois deux conceptions pour lalgorithme . . . . . . . . . . . . . . . . . 60
3.1 Trois paradigmes pour lalgorithmique . . . . . . . . . . . . . . . . . 60
3.2 Six conceptions pour lalgorithme . . . . . . . . . . . . . . . . . . . . 62
3.3 Relation entre ces conceptions . . . . . . . . . . . . . . . . . . . . . . 64
3.4 Relation aux aspects . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Conclusion et nouvelles questions . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Conclusion et utilisation les modles 69
II Entretiens avec des chercheurs 71
Questions et problmatiques 73
4 Entretien avec des chercheurs - Confrontation des modles 75
1 Construction et gestion des entretiens . . . . . . . . . . . . . . . . . . . . . 75
1.1 Choix de ltude par des entretiens . . . . . . . . . . . . . . . . . . . 75
1.2 Construction des entretiens . . . . . . . . . . . . . . . . . . . . . . . 76
1.3 Ralisation et traitement des entretiens . . . . . . . . . . . . . . . . 79
2 Analyse des entretiens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.1 Mthodologie pour la validation des modles . . . . . . . . . . . . . . 79
2.2 Aspects fondamentaux dans les entretiens . . . . . . . . . . . . . . . 80
2.3 -conceptions dans les entretiens . . . . . . . . . . . . . . . . . . . . 85
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
5 Conceptions des chercheurs - Construction dun outil 91
1 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2 Mthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.1 lments pour lanalyse des conceptions . . . . . . . . . . . . . . . . 92
2.2 aspects et paradigmes en jeu . . . . . . . . . . . . . . . . . . . . . 92
3 Les conceptions des chercheurs . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.1 Tableau rcapitulatif . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.2 Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Conclusion - Vers une grille danalyse . . . . . . . . . . . . . . . . . . . . . . . . . 95
Conclusion sur les entretiens 99
III Lalgorithmique au lyce en France 101
Questions et problmatiques 103
8
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
6 Programmes et documents-ressources 105
1 Organisation des programmes . . . . . . . . . . . . . . . . . . . . . . . . . . 105
1.1 Le lyce en France . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
1.2 En mathmatiques : des objectifs communs pour le lyce . . . . . . . 106
1.3 Document ressource . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
2 Grille danalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
3 Analyse des programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
3.1 Algorithmique dans len-tte des programmes . . . . . . . . . . . . . 108
3.2 Objectifs pour le lyce . . . . . . . . . . . . . . . . . . . . . . . . . . 109
3.3 Les algorithmes prsents dans les programmes . . . . . . . . . . . . . 112
3.4 Conclusion pour les programmes de mathmatiques . . . . . . . . . . 118
4 Algorithmique de la spcialit ISN . . . . . . . . . . . . . . . . . . . . . . . 120
4.1 Discours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.2 Contenus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
5 Documents-ressources pour la seconde . . . . . . . . . . . . . . . . . . . . . 124
5.1 Discussion sur lalgorithmique . . . . . . . . . . . . . . . . . . . . . . 125
programme-papier . . . . . . . . . . . . . . . . . . . . . . . . 129
5.2 Activits proposes pour la classe . . . . . . . . . . . . . . . . . . . . 135
algorithme-instanci . . . . . . . . . . . . . . . . . . . . . . . 139
programme de modlisation-simulation . . . . . . . . . . . . . 142
5.3 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
7 Ressources du site des IREM en algorithmique 147
1 Quelles ressources ? Quels outils ? . . . . . . . . . . . . . . . . . . . . . . . . 147
1.1 Les ressources en ligne des IREM . . . . . . . . . . . . . . . . . . . . 148
1.2 Outils danalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
2 Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
2.1 Illustration : dirents traitements de la dichotomie . . . . . . . . . . 150
2.2 Quels Aspects dans les ressources ? . . . . . . . . . . . . . . . . . . . 164
2.3 Quelles conceptions dans les ressources . . . . . . . . . . . . . . . . . 168
2.4 Quels algorithmes dans les ressources ? . . . . . . . . . . . . . . . . . 173
2.5 Classication des documents . . . . . . . . . . . . . . . . . . . . . . 174
Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.6 Rsum des rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.7 Interprtations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
8 Manuels du lyce 177
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
1 Mthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
1.1 Collections de manuels tudies . . . . . . . . . . . . . . . . . . . . . 178
1.2 Hypothses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
1.3 Grille danalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
2 Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.1 Collection Indice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.2 Collection Transmath . . . . . . . . . . . . . . . . . . . . . . . . . . 187
2.3 Enseignements de spcialit . . . . . . . . . . . . . . . . . . . . . . . 192
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Conclusions 199
9
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
IV Problmes et situations pour lalgorithme 203
Introduction : un travail en cours 205
9 Problmes fondamentaux - Vers des situations pour lalgorithme 207
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
1 Problmes fondamentaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
1.1 Problmes et dialectique outil-objet . . . . . . . . . . . . . . . . . . . 208
1.2 La notion de problme fondamental . . . . . . . . . . . . . . . . . . . 209
2 Quelques propositions de problmes . . . . . . . . . . . . . . . . . . . . . . . 211
3 Quels types de situations pour lalgorithme ? . . . . . . . . . . . . . . . . . . 215
3.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
3.2 SiRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
3.3 Problmes doptimisation . . . . . . . . . . . . . . . . . . . . . . . . 216
4 Une proposition de situation . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
4.1 Le problme des peses . . . . . . . . . . . . . . . . . . . . . . . . . . 217
4.2 Analyse mathmatique du problme . . . . . . . . . . . . . . . . . . 218
4.3 Un problme fondamental . . . . . . . . . . . . . . . . . . . . . . . . 227
4.4 Analyse a priori de la situation . . . . . . . . . . . . . . . . . . . . . 228
Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232
Conclusions et perspectives 233
1 Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
1.1 pistmologie de lalgorithme . . . . . . . . . . . . . . . . . . . . . . 233
1.2 Conceptions de chercheurs . . . . . . . . . . . . . . . . . . . . . . . . 234
1.3 Transposition au lyce . . . . . . . . . . . . . . . . . . . . . . . . . . 235
1.4 Situations pour la classe . . . . . . . . . . . . . . . . . . . . . . . . . 236
1.5 Rsultats thoriques . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
2.1 Situations pour lalgorithme . . . . . . . . . . . . . . . . . . . . . . . 238
2.2 Contraintes et conditions . . . . . . . . . . . . . . . . . . . . . . . . 238
2.3 Conceptions sur lalgorithme . . . . . . . . . . . . . . . . . . . . . . 239
2.4 Smiotique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
2.5 Modles et pistmologie . . . . . . . . . . . . . . . . . . . . . . . . . 240
Rfrences 241
Glossaire 243
Acronymes et symboles 249
10
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Introduction
Sommaire
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1 Algorithme, mathmatiques et enseignement . . . . . . . . . . . 11
1.2 Contexte en France . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 Problmatique et questions de recherche . . . . . . . . . . . . . 13
2.1 Une approche pistmologique . . . . . . . . . . . . . . . . . . . 14
2.2 Lenseignement de lalgorithmique en France . . . . . . . . . . . 16
2.3 Dveloppement de situations pour la classe . . . . . . . . . . . . 17
1 Introduction
1.1 Algorithme, mathmatiques et enseignement
Lalgorithme, un objet ancien...
Souvent considr comme un objet de linformatique, lalgorithme est parfois associ la
programmation. Pourtant cest avant tout un objet des mathmatiques. Avant tout car
la notion dalgorithme prcde de beaucoup linformatique. Le terme trouve dailleurs son
origine dans le nom al-Khwarizmi , nom de lauteur dun des plus anciens traits dal-
gbre connus, datant du IX
e
sicle.
On peut penser que lobtention de procdures de rsolution de problmes systmatiques et
facilement transmissibles est lune des motivations premires de la recherche dalgorithmes.
Les procdures de calcul les plus courantes sont dailleurs des algorithmes : addition, sous-
traction, multiplication et division de nombres entiers et dcimaux.
...pour des questions nouvelles...
Bien entendu, la dnition actuelle du concept doit beaucoup aux avances de linforma-
tique thorique, avec les premiers modles de calcul automatique, puis pratique, avec les
premiers calculateurs. Linformatique qui a aussi enrichi les mathmatiques de nouveaux
objets et de nouveaux problmes le dveloppement des mathmatiques discrtes est forte-
ment li celui de linformatique mais qui a aussi chang les pratiques des mathmaticiens
en apportant de nouveaux outils. Finalement, la recherche de procdures eectives est, au-
jourdhui encore plus, une problmatique centrale des mathmatiques.
Le rle de lalgorithme est si important quil est au centre dune discipline propre, lalgo-
rithmique, lintersection entre mathmatiques et informatique et dont lessor actuel est
considrable.
11
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
...et qui interroge lenseignement des mathmatiques
Face cette volution de la science mathmatique et la prsence grandissante de lin-
formatique et de ses applications autour de nous, lenseignement des mathmatiques doit
tre questionn, dautant plus que linformatique et lalgorithmique font leur apparition
dans les curriculums en France et ltranger. En 1998, aux tats-Unis, National Council
of Teachers of Mathematics consacrait son Yearbook aux questions de lapprentissage des
algorithmes dans la classe de mathmatiques (Morrow & Kenney, 1998). En France, en
2000, la commission Kahane
1
proposait lintroduction dune part dinformatique dans
lenseignement des sciences mathmatiques et dans la formation des matres (Kahane,
2002). Il faut donc sattendre de fortes volutions des cursus en ce qui concerne linfor-
matique et lalgorithmique. Ds lors, il est important dtudier les questions souleves par
une didactique de lalgorithmique.
1.2 Contexte en France
Algorithmique au lyce
Aujourdhui, on peut trouver dans les programmes de mathmatiques du lyce franais une
part dalgorithmique. Cette introduction a commenc en 2009 dans la classe de seconde,
puis les annes suivantes dans les classes de premire puis terminale. Aujourdhui lalgo-
rithmique est prsente dans les programmes de mathmatiques de lensemble des lires
gnrales du lyce.
Cette introduction dans lenseignement mathmatique peut entrainer des malentendus
entre les communauts mathmatique et informatique, notamment concernant la lgiti-
mit des enseignants en mathmatiques enseigner lalgorithmique. Et bien que ces der-
niers puissent penser que linformatique est loin de leurs proccupations, lalgorithmique
relve bien de problmatiques mathmatiques.
Naturellement, on peut penser que les motivations pour enseigner lalgorithmique en classe
de mathmatiques sont multiples : introduction de problmatiques rcentes (comme cela
existe en physique ou en SVT), vivier pour lutilisation des TICE dans la classe, intro-
duction de la dmarche exprimentale, prparation la cration dun enseignement din-
formatique, mathmatiques citoyennes (comme pour lintroduction des probabilits et
statistiques), etc. Il est donc important de se demander ce qui peut tre fait dans un en-
seignement dalgorithmique et dans quel but.
Dans les programmes, lalgorithmique fait lobjet dun paragraphe part. Ce paragraphe
attribue lalgorithmique un rle prpondrant dans lactivit mathmatique et transver-
sal aux dirents champs des mathmatiques. Cependant, premire vue, laccent est mis
essentiellement sur la programmation, la mise en uvre dalgorithmes et la description
dalgorithmes, les dirents objectifs attendus des lves le montrent bien. aucun mo-
ment le lien fondamental entre algorithme et rsolution de problmes nest explicit et il
semble que lobjectif principal dun enseignement dalgorithmique soit lapprentissage de
la rigueur
2
.
1. Runie en 1999 par le ministre de lducation nationale autour de Jean-Pierre Kahane, la demande
dassociations de mathmaticiens et de professeurs, pour produire une rexion en amont de la refondation
des programmes, sur lenseignement des mathmatiques de la maternelle luniversit.
2. Ce qui constitue, a priori, un objectif assez ou.
12
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Il nous semble que, plus que lide de rigueur, cest la notion de preuve qui est sous-
jacente au concept dalgorithme. Dans le cadre dun enseignement de mathmatiques, il
nous semble pertinent de questionner le rle que peut jouer lalgorithmique dans lappren-
tissage de la preuve.
Dans une perspective denseignement, il nous parat fondamental de ne pas rduire les
questions dalgorithmique des questions de programmation, de rdaction, et dexcution
dalgorithmes. Les algorithmes et leur tude jouent un rle important dans lactivit ma-
thmatique. Lactivit algorithmique demande dtre analyse de manire dtaille an de
lui donner sa place dans la classe de mathmatiques. Dans cette optique, il est important de
savoir reconnatre les problmes qui mettent rellement en jeu une activit algorithmique.
Les mathmatiques discrtes (et celles lies la discrtisation des objets du continu) en-
tretiennent des liens privilgis avec lalgorithmique. De tels objets sont prsents dans les
programmes depuis longtemps (en arithmtique par exemple) et dautres ont t introduits
plus rcemment (thorie des graphes en srie ES par exemple). Cependant, lintroduction
de lalgorithme comme objet transversal toutes les mathmatiques pose la question de
son rapport aux objets mathmatiques des dirents chapitres des programmes.
Enseignement de lInformatique
De plus en plus de voix se font entendre pour demander une introduction de linformatique
comme discipline part entire dans lenseignement secondaire en France
3
et ltranger.
Un premier pas dans ce sens a t fait avec louverture dun enseignement de spcialit
en Terminale Scientique intitul Informatique et Sciences du Numrique (ISN) et dans
lequel lune des quatre parties du programme est intitule algorithmique.
Si un vritable enseignement dinformatique venait natre au lyce, lalgorithmique serait
certainement un point dinteraction fort avec le cours de mathmatiques. Il semble donc
indispensable de comprendre les regards que mathmatiques et informatique portent sur
lalgorithmique. Cela est dautant plus complexe que linformatique et son inuence sur les
mathmatiques sont relativement rcents.
Une telle introduction soulve une autre question importante concernant les mathma-
tiques ncessaires pour linformatique et les implications quelles pourraient engendrer sur
le curriculum.
2 Problmatique et questions de recherche
Ce travail sarticule autour de trois axes : la construction dun modle pistmologique,
ltude de la transposition didactique et le dveloppement de situations pour la classe.
Pour chacun de ces axes, nous commencerons par prciser la problmatique gnrale qui
est en jeu. Nous exprimerons ensuite les questions de recherche. Enn, nous expliciterons
les outils mthodologiques associs.
3. Ces derniers mois, on peut citer la tribune du 22 juin 2012 de Serge Abiteboul, Colin de la Higuera
et Gilles Dowek, Linformatique est une science bien trop srieuse pour tre laisse aux informaticiens,
sur lemonde.fr et celle du 28 juin 2012 de Jean-Pierre Archambault, Grard Berry et Maurice Nivat
Linformatique lcole : il ne sut pas de savoir cliquer sur une souris sur rue89.fr.
13
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
2.1 Une approche pistmologique
Problmatique
Pour questionner lenseignement de lalgorithme, il nous semble ncessaire dinterroger ce
qui donne son sens au concept : quel besoin rpond-il et quelles sont ses spcicits ? Cela
relve de lpistmologie de lalgorithme, au sens dune connaissance des processus par
lesquels les concepts mathmatiques se forment et se dveloppent (Artigue, 1990, p. 243)
Lalgorithmique, vue comme science des algorithmes, est aussi concerne par une telle
analyse pistmologique. Cependant, on parle aussi dune activit algorithmique ou dune
pense algorithmique en mathmatiques. La partie algorithmique dans les programmes du
lyce commence dailleurs par cette phrase : La dmarche algorithmique est, depuis les
origines, une composante essentielle de lactivit mathmatique. (seconde 2009). Cette
activit algorithmique ncessite aussi dtre questionne du point de vue de lpistmologie
de lactivit mathmatique, cest--dire dans le sens suivant :
Au-del de lanalyse conceptuelle, lpistmologie intervient ce niveau sur un
plan plus gnral car ce que vise lenseignement des mathmatiques, ce nest
pas simplement la transmission de connaissances mathmatiques, cest plus
globalement celle dune culture. Il sagit de faire entrer les lves dans le jeu
mathmatique. Mais, quest ce jeu mathmatique ? Quels sont les processus
gnraux de pense qui le gouvernent ? Cest lanalyse pistmologique [...] qui
est au premier chef concerne par ces questions. (Artigue, 1990, p. 246).
Nous pensons quil est important de mieux comprendre ce quest (et peut tre) lactivit
algorithmique et quel rle elle joue (ou peut jouer) dans lactivit mathmatique.
Pour aborder une telle problmatique pistmologique, plusieurs approches existent en
didactique des sciences. Les deux principales sont surement ltude de la gense historique
dun concept (pistmologie historique) et ltude dun concept tel quil vit actuellement
dans le savoir savant (pistmologie contemporaine). La spcicit du concept dalgorithme
nous pousse vers ltude de son pistmologie contemporaine (et peut-tre son histoire
rcente) tant il a volu au cours du temps. Chabert (2010) montre bien cette volution
dans lintroduction louvrage Histoire dalgorithmes. Par exemple, concernant le concept
actuel dalgorithme :
Aujourdhui, principalement sous linuence de linformatique, la nitude de-
vient une notion essentielle contenue dans le terme algorithme, le distinguant
de mots plus vagues comme procd, mthode ou technique. [...] Par ailleurs,
une autre notion apparat dans lide dalgorithme : litration, la rcurrence.
Ainsi, dans les annes 1950, le terme algorithme est essentiellement employ,
avec un certain anachronisme, propos de lalgorithme dEuclide. (Chabert,
2010, p. 6-7)
Lintroduction des auteurs la seconde dition tmoigne plus fortement encore de lvolu-
tion actuelle du concept :
Quinze ans aprs la premire dition, [...] il leur a sembl important de te-
nir compte de lvolution rcente de lusage du mot algorithme et dvoquer
quelques notions simples dalgorithmique couramment associes. (Chabert, 2010,
p. 9-10)
Questions
Dans un premier temps, nous allons donc nous concentrer sur ltude pistmologique
du concept algorithme, de la discipline algorithmique et de lactivit algorithmique. Tout
14
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
cela passe par une tude du savoir savant qui permettra un regard sur la transposition
didactique. Nous chercherons donc apporter des rponses aux questions suivantes (nous
les reformulerons ensuite dans des cadres thoriques appropris) :
Question Q1. Quels sont les lments constitutifs spciques du concept dalgorithme ?
Quels sont lobjet et les proccupations fondamentales de la discipline algorithmique ? Quel
lien entretiennent algorithme et preuve ?
Question Q2. Peut-on parler dactivit ou de pense algorithmique dans les mathma-
tiques ? Et dans linformatique ? Quelles perspectives cela peut-il ouvrir pour une approche
didactique ?
Question Q3. Peut-on construire un modle de lactivit algorithmique permettant de
questionner la transposition didactique ?
La problmatique dtudier lpistmologie contemporaine ncessite une confrontation aux
conceptions et aux activits actuelles de la production du savoir savant. Il nous parat bon
que les modles que lon peut obtenir en tentant de rpondre aux questions Q1, Q2 et Q3
soient mis en cho avec la recherche en mathmatiques et informatique. Nous ajoutons la
question suivante :
Question Q4. Les rponses ces questions, issues du texte du savoir savant, saccordent-
elles avec la conception quont les chercheurs de lalgorithme et de lalgorithmique ? Quels
apports notre questionnement peuvent fournir les points de vue de chercheurs ? Comment
interprter les variations que lon pourrait entrevoir dans les discours de chercheurs ?
Mthodologie
Pour rpondre aux questions Q1, Q2 et Q3 nous nous appuierons sur la littrature du
savoir savant et des crits rexifs portant sur lactivit mathmatique et linuence de
linformatique sur celle-ci. laide de ces rfrences, nous proposerons dans un premier
temps une courte tude du concept algorithme et de lalgorithmique.
Nous illustrerons cette tude par des exemples dalgorithmes, des problmes mettant en
jeu une activit algorithmique et des problmes que soulvent certains de ces algorithmes.
Ces exemples permettront dexpliquer les analyses qui suivront.
Cette tude pistmologique du concept nous amnera, dans un second temps, propo-
ser une rponse la question Q1 sous la forme dune grille mettant en avant les aspects
importants du concept algorithme. Nous classierons ces aspects selon une dualit outil-
objet. Cela nous permettra de proposer un premier outil pour analyser le rle attribu
lalgorithme dans toute transposition didactique.
Ensuite, nous essaierons dapporter un clairage sur la question Q2, notamment en nous
appuyant sur les crits de chercheurs en mathmatiques et en informatique ainsi que des
recherches sur le mathematical thinking. Cela nous permettra de mettre en avant la n-
cessit de prendre en compte le point de vue informatique dans un modle de lactivit
algorithmique.
Enn, il nous faudra dgager un cadre thorique adapt pour modliser lactivit algorith-
mique, pour tudier les direntes transpositions didactiques et pour dcrire les rapports
dindividus ou dinstitutions au concept algorithme.
15
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Ce travail pistmologique sappuyant sur le texte du savoir sera lobjet de la premire
partie.
Dans la deuxime partie, nous proposerons des rponses la question Q4. Nous commen-
cerons par reformuler la question la lumire de la premire partie. Pour rpondre ces
nouvelles questions nous proposerons des entretiens avec des chercheurs en mathmatiques
et en informatique an de mettre lpreuve notre modle pistmologique par comparai-
son leurs discours sur lalgorithmique. Cela nous permettra la fois de confronter notre
modle et de reprer quelles conceptions sont dominantes chez les chercheurs en fonction
de leurs disciplines de recherche.
2.2 Lenseignement de lalgorithmique en France
Problmatique
Aprs avoir rpondu aux questions pistmologiques souleves par lalgorithme et lalgo-
rithmique, nous pouvons questionner leur transposition didactique. Il sagit donc de porter
un regard sur le savoir enseign laide des outils pistmologiques dvelopps :
Dans cette direction, celle de la vigilance pistmologique, de la prise de dis-
tance par rapport lobjet dtude, lanalyse pistmologique permet galement
au didacticien de prendre la mesure des disparits existant entre savoir sa-
vant [...] et savoir enseign . En eet, alors que lcole vit sur la ction
consistant voir dans les objets denseignement des copies simplies mais -
dles des objets de la science, lanalyse pistmologique, en nous permettant
de comprendre ce qui gouverne lvolution de la connaissance scientique, nous
aide prendre conscience de la distance qui spare les conomies des deux
systmes. (Artigue, 1990, p. 244-245)
Ici, la transposition est double. Il y a tout dabord un passage du savoir savant au savoir
enseigner, savoir enseigner qui se manifeste par les instructions ocielles des programmes
du lyce et par les documents daccompagnement des programmes. On peut imaginer que
cette transposition est elle-mme inuence par les transpositions qui pr-existent dans
lenseignement universitaire o lalgorithme et lalgorithmique font lobjet denseignements
depuis plusieurs dizaines dannes. Une autre transposition a lieu entre le savoir enseigner
et le savoir enseign. Les manuels jouent un rle dans cette transposition et leur tude peut
mettre en avant une distance entre les instructions des programmes et les tches attendues
de llve. Notamment, ltude quantitative de ces tches devient possible et peut rvler
une sur-reprsentation de certaines instructions ou au contraire une ngligence de celles-ci.
En complment des manuels, les ressources en ligne guident souvent les enseignants. La
transposition des instructions des programmes dans ces ressources peut tre dirente de
celle des manuels. De plus, face ce nouvel objet denseignement quest lalgorithme, nous
pensons quune partie des enseignants va avoir besoin de se former mathmatiquement. L
encore, une transposition va entrer en jeu, mais son but et les contraintes qui psent sur elle
seront bien dirents. tudier ces transpositions devrait permettre de mieux comprendre
ce qui peut se passer dans la classe de mathmatiques autour de lalgorithmique.
Questions
Nous allons donc nous intresser deux transpositions regardes usuellement : celle eec-
tue dans les programmes et documents daccompagnement et celle qui apparat dans les
16
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
manuels pour le lyce. Cela nous amne soulever les questions suivantes :
Question Q5. Quel rle et quelle place sont attribus lalgorithmique dans les pro-
grammes de mathmatiques et documents daccompagnement du lyce ?
Quelle transposition a t eectue par rapport au savoir savant ? Quel est lcart avec la
transposition en place dans les programmes de la spcialit ISN?
Question Q6. Comment cela est-il transpos dans les manuels du lyce ? Quels types de
questions et de problmes sont mis en jeu dans les exercices et activits relatifs lalgo-
rithmique ?
Question Q7. Quels types de ressources en ligne sont mis la disposition des enseignants ?
Pour se former ? Pour construire des activits en classe ?
Mthodologie
Ces questions seront lobjet de la troisime partie. Pour y rpondre, nous commencerons
par en proposer une reformulation au regard des deux premires parties. Cela nous per-
mettra de proposer des outils danalyse adapts.
Dans le chapitre 6, pour traiter la question Q5, nous proposerons une tude dtaille des
programmes des lires gnrales du lyce ainsi que des documents daccompagnement.
Pour aborder la question Q7, nous proposerons un corpus de ressources en ligne issues du
site des IREM, comportant la fois des documents pour la formation des enseignants et
des activits pour la classe. Ltude de ces ressources sera lobjet du chapitre 7
Enn, pour rpondre la question Q6, nous eectuerons une tude qualitative et quan-
titative de ce qui est propos dans les manuels autour de lalgorithmique. Pour cela nous
tudierons quelques collections de manuels proposes par dirents diteurs.
2.3 Dveloppement de situations pour la classe
Problmatique
Un des objectifs de ce travail est aussi de proposer des situations pour la classe autour de
lalgorithmique. En particulier, nous souhaitons aboutir la cration de situations longues
mettant en jeu une forte composante de recherche. Un objectif long terme serait la
constitution de situations fondamentales pour le concept algorithme.
Les rsultats de ltude pistmologique doivent fournir un support pour dvelopper de
telles situations. Ils doivent constituer un guide pour mieux comprendre les enjeux lis au
concept dalgorithme et construire des situations adaptes. Un autre point important est
la recherche de problmes mathmatiques fort potentiel didactique pour mettre en jeu
lalgorithme.
Les rsultats concernant ltude de la transposition au lyce et de celle dans les ressources
en ligne peut aussi nous guider dans la construction de situations. Notamment, il nous
semble pertinent de chercher proposer des situations complmentaires ce qui existe
dj dans lenseignement et traitant les points que lon pourrait reprer comme dlicats ou
peu abords.
17
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Questions
Nous concentrerons notre attention sur deux questions centrales pour le dveloppement de
ressources pour la classe :
Question Q8. Comment caractriser les problmes fort potentiel pour lalgorithmique
laide du modle pistmologique dvelopp ? Quels critres doivent-il vrier ? Quels
problmes rpondant ces critres peut-on proposer ?
Question Q9. Quels lments pistmologiques sont prendre en compte pour construire
des situations autour de lalgorithme ? Quelles situations peut-on proposer ?
Mthodologie
Pour rpondre ces questions, nous commencerons par les reformuler en fonction des mo-
dles proposs et des rsultats obtenus dans les parties prcdentes. Nous proposerons une
caractrisation des problmes mathmatiques qui ont un potentiel pistmologique pour
lalgorithmique.
Ensuite nous dvelopperons une proposition de situation autour dun de ces problmes.
Nous montrerons pourquoi cette situation constitue un bon candidat et essaierons den
dduire certaines caractristiques.
Pour ce travail, nous nous appuierons sur la Thorie des Situations Didactiques (Brousseau,
1998) et sur les travaux autour des Situations de Recherche en Classe, en particulier ceux
mens dans lquipe Maths Modeler.
18
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Premire partie
Une analyse pistmologique du
concept algorithme
19
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 1
Un premier modle pistmologique
Sommaire
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1 Autour du concept dalgorithme . . . . . . . . . . . . . . . . . . 22
1.1 Quest-ce quun algorithme ? . . . . . . . . . . . . . . . . . . . . 22
1.2 Une formalisation du concept mathmatique . . . . . . . . . . . 25
1.3 Quest-ce-que lalgorithmique ? . . . . . . . . . . . . . . . . . . . 26
2 Exemples caractristiques . . . . . . . . . . . . . . . . . . . . . . 29
2.1 Plus grand diviseur commun . . . . . . . . . . . . . . . . . . . . 30
2.2 Cycle eulrien dans un graphe . . . . . . . . . . . . . . . . . . . . 33
2.3 Tris et permutations . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 Aspects de lalgorithme . . . . . . . . . . . . . . . . . . . . . . . . 40
3.1 Cinq aspects fondamentaux . . . . . . . . . . . . . . . . . . . . . 40
3.2 Dualit outil-objet . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Conclusion et nouvelles questions . . . . . . . . . . . . . . . . . . . . . 43
Introduction
Ce chapitre a pour but de prsenter la notion dalgorithme et lactivit algorithmique an
dintroduire un premier modle pistmologique.
Avant de rpondre aux premires questions poses dans le chapitre dintroduction, nous
proposons donc une discussion sur le concept dalgorithme et sur lalgorithmique. Ce sera
loccasion de xer certaines dnitions et dintroduire quelques concepts rcurrents. Nous
proposerons ensuite quelques exemples qui serviront dillustrations tout au long du cha-
pitre.
Intentions
Ce chapitre prsente de nombreuses notions lies lalgorithme et au champ de lalgorith-
mique. Un des objectifs est de prsenter lactivit algorithmique et de montrer les grandes
questions qui laniment. Bien quune certaine exprience de lalgorithmique soit ncessaire
la lecture de ce chapitre (et de cette partie), un lecteur moins familier la discipline
peut aborder ce chapitre en essayant de retenir les lments constitutifs importants dun
algorithme et les grandes lignes qui guident lactivit algorithmique. En particulier, il nest
pas ncessaire de matriser en dtails les points dvelopps dans la section 1 ni lensemble
21
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
des exemples, preuves, lments de langages de programmation voqus la section 2, pour
comprendre les enjeux prsents et aborder la suite du document.
Remarque terminologique
Un vocabulaire spcique lalgorithmique, issu des mathmatiques et de linformatique,
sera utilis ici. La plupart des termes utiliss sont dnis lors de leur introduction et ap-
paraissent au glossaire. Cependant, certains termes classiques et ne pouvant pas prter
confusion seront supposs connus du lecteur.
Traiter de lalgorithmique demande une vigilance particulire quant au vocabulaire uti-
lis, notamment certains usages communs du terme algorithme (parfois pjoratifs) sont
mettre de ct ici. De mme, certains termes qui peuvent tre parfois utiliss au quotidien
comme synonymes seront clairement distingus ici et il importera de tenir compte de ces
distinctions tout au long de la lecture du document.
1 Autour du concept dalgorithme : vers un modle pist-
mologique
Nous commenons par prsenter et discuter, dans cette premire partie, certaines dni-
tions et notions qui reviendront tout au long de ce chapitre et de la thse.
1.1 Quest-ce quun algorithme ?
Plusieurs dnitions
Il existe direntes dnitions de ce quest un algorithme mais nous verrons quelles ont
toutes un certain nombre de points communs.
Knuth, dans le premier volume de The Art of Computer Programming propose la dnition
suivante :
The modern meaning for algorithm is quite similar to that of recipe, process, me-
thod, technique, procedure, routine, except that the word algorithm connotes
something just a little dierent. Besides merely being a nite set of rules which
gives a sequence of operations for solving a specic type of problem, an algo-
rithm has ve important features :
1) Finiteness. An algorithm must always terminate after a nite number of
steps. [...]
2) Deniteness. Each step of an algorithm must be precisely dened ; the
actions to be carried out must be rigourously and unambigously specied for
each case. [...]
3) Input. An algorithm has zero or more inputs, i.e., quantities which are
given to it initially before the algorithm begins. These inputs are taken from
specied sets of objects. [...]
4) Output. An algortihm has one or more outputs, i.e., quantities which have
a specied relation to the inputs. [...]
5) Eectiveness. An algorithm is also generally expected to be eective. This
means that all of the operations to be performed in the algorithm must be suf-
ciently basic that they can in principle be done exactly and in a nite length
of time by a man using pencil and paper. (Knuth, 1973, p. 4-6)
22
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Il ne sagit pas tout fait dune dnition, mais cela soulve les caractristiques importantes
dun algorithme. La notion de rsolution de problme est centrale et elle est mise en
avant par beaucoup dauteurs (Garey & Johnson, 1979 ; Beauquier, Berstel, & Chrtienne,
1992 ; Cormen, Leiserson, Rivest, & Cazin, 1994 ; Aho, Hopcroft, & Ullman, 1989). Elle
est trs lie aux notions dentre et de sortie. Les caractristiques sont dailleurs prsentes
dans la plupart des dnitions dalgorithme, mais toutes ne sont pas aussi dtailles. Par
exemple, Sedgewick (1988) parle simplement des algorithmes comme des mthodes de
rsolution de problmes, adaptes une implmentation sur ordinateur :
When one writes a computer program, one is generally implementing a method
of solving a problem which has been previously devised. This method is often
independent of the particular computer to be used : its likely to be equally ap-
propriate for many computers. In any case, it is the method, not the computer
program itself, which must be studied to learn how the problem is being atta-
cked. The term algorithm is universally used in computer science to describe
problem-solving methods suitable for implementation as computer programs.
(Sedgewick, 1988, p. 4)
Bien que le dveloppement de linformatique et larrive des ordinateurs aient confr un
rle de plus en plus grand aux algorithmes, il est important de noter la dirence entre
algorithme et programme souleve par Sedgewik. Knuth (1996) insiste lui-aussi sur ce
point :
[...] algorithms are concepts that have existence apart from any programming
language. To me the word algorithm denotes an abstract method for compu-
ting some output from some input, while a program is an embodiement of a
computational method in some language. (Knuth, 1996, p. 1)
Une mthode eective
Les critres de niteness, deniteness et eectiveness que Knuth donne, se rfrent
tous au fait quun algorithme doit pouvoir tre eectivement mis en uvre, soit par un
oprateur, soit par une machine. Aucune ambigut dinterprtation des tapes ne doit
tre possible, chaque tape doit faire rfrence une action lmentaire pour loprateur
et toute excution de lalgorithme doit se terminer. La dnition de Bouvier, George, et
Le Lionnais (2005) met aussi ce ct eectif en avant :
Un algorithme est une suite nie de rgles appliquer dans un ordre dtermin
un nombre ni de donnes pour arriver avec certitude (cest--dire sans in-
dtermination ou ambigut), en un nombre ni dtapes, un certain rsultat
et cela indpendamment des donnes. (Bouvier et al., 2005, p. 27)
Validit
Toutes ces proprits dun algorithme doivent tre valides. Plus prcisment, un algo-
rithme peut tre dmontr. Gnralement, la preuve dun algorithme se fait selon deux
points :
Preuve de correction : quelle que soit lentre, lalgorithme produit une rponse valide.
Preuve de terminaison : quelle que soit lentre, lalgorithme produit une rponse
aprs un nombre ni dtapes.
23
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Ces preuves sappuient trs souvent sur lexplicitation dun invariant, cest--dire une pro-
prit reliant divers lments de lalgorithme qui est vraie la premire tape de lalgo-
rithme et reste vraie tout au long de son excution. Cela permet souvent de dmontrer la
correction.
On peut aussi exhiber un variant, cest--dire une fonction valeur dans N calcule
chaque tape de lalgorithme et dont la valeur dcroit strictement au cours de lexcution.
Cela sert principalement prouver la terminaison.
Direntes formes
Un algorithme peut tre exprim de diverses faons : langages de programmation, langage
courant, diagrammes, etc. Cela dpend de loprateur qui cet algorithme est destin et
de la technologie qui permet dexcuter lalgorithme :
Un algorithme peut tre spci dans un langage humain ou en langage infor-
matique, mais peut aussi tre bas sur un systme matriel. Lunique obligation
est que la spcication fournisse une description prcise de la procdure de cal-
cul suivre (Cormen et al., 1994, p. 3)
Ainsi, un algorithme peut tre exprim dans un langage de programmation, destination
dun ordinateur. Dans ce cas, le langage peut tre dcrit de manire trs prcise par une
grammaire et les oprations dcrites sont des oprations formelles (elles sont de lordre de
la manipulation de symboles)
1
. On peut cependant donner une signication ces mani-
pulations mais cest lutilisateur humain qui interprte le sens de ces manipulations.
On retrouve dans la plupart des langages de programmation des instructions permettant
de contrler lenchanement des oprations. Le plus souvent elles comportent :
linstruction conditionnelle de type IF C THEN I
1
ELSE I
2
qui permet de raliser
la squence dinstructions I
1
si la condition C est vraie et I
2
sinon,
la boucle de rptition de type FOR qui permet de rpter une squence dinstruc-
tions un certain nombre de fois,
la boucle conditionnelle de type WHILE qui permet de rpter une squence dins-
tructions tant quune certaine condition reste vraie.
Un algorithme peut aussi tre exprim dans un langage bien moins formalis, tel que le
langue franaise ou le langage mathmatique. Assez souvent, des algorithmes sont pro-
poss dans un langage intermdiaire, inspir des instructions des langages informatiques
mais libr de certaines contraintes et manipulant directement les objets mathmatiques.
Limportant pour un tel langage est quil ne laisse aucune ambigit pour le destinataire de
lalgorithme. Dirents niveaux de langage peuvent tre utiliss. On parle de pseudo-code
lorsque le langage choisi reste proche des langages de programmation.
Certaines preuves, dites preuves algorithmiques, contiennent dans leur expression la des-
cription dun algorithme. Une preuve de ce genre contient un algorithme de rsolution du
problme pos ainsi que la preuve de lalgorithme. Le mme algorithme, prsent avec une
preuve de sa correction et de sa terminaison constituerait une preuve compltement qui-
valente. Cest un aspect de lalgorithme qui questionne la pratique des mathmaticiens :
A characteristic feature of recent development in combinatorics and graph
theory is the increasingly important role of algorithms. The main reason for
1. En particulier, un programme ne manipule que des reprsentations des objets mathmatiques qui
peuvent tre en jeu.
24
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
this is certainly the mushrooming use of computers, but probably in part it is
also due to the intrinsic development of the subject. Just how far the Theorem-
Proof style of mathematics we learned at school will shift to the Algorithm-
Analysis of the algorithm style is dicult to predict. (Lovsz & Plummer,
2009, p. 16-17)
Choix dune dnition
Pour la suite du travail, nous devons xer une dnition du terme algorithme. Nous nous
appuyons sur les dnitions tudies prcdemment, en essayant de prendre en compte tous
les lments importants que nous avons identis. Nous posons donc la dnition suivante :
Un algorithme est une procdure de rsolution de problme, sappliquant
une famille dinstances du problme et produisant, en un nombre ni
dtapes constructives, eectives, non-ambiges et organises, la rponse
au problme pour toute instance de cette famille.
Cette dnition met bien en vidence la rsolution de problmes et leectivit des algo-
rithmes. Nous insistons sur le fait que cette dnition est propose hors de tout systme de
reprsentation des algorithmes (ni langage de programmation, ni mots-cls, ni diagrammes,
etc).
Les tapes dun algorithme doivent tre organises, au sens o une srie de critres doit
permettre de dcider de quelle tape doit tre applique chaque instant (non-ambigit
de la mthode elle-mme).
1.2 Une formalisation du concept mathmatique
Toutes les dnitions vues prcdemment sont souvent susantes pour concevoir et tudier
des algorithmes. Cependant, au dbut du XX
e
sicle, une ncessit de formaliser la notion
dalgorithme a fait merger divers modles thoriques de ce quest une procdure eective :
Pourquoi la dnition formelle du concept dalgorithme simpose-t-elle ? Pour
dmontrer justement quil existe certains problmes auxquels aucun algorithme
ne peut rpondre. (Chabert, 2010, p. 508)
Parmi ces modles thoriques, tous quivalents, certains sont dnis par des familles de
fonctions qui reprsentent les algorithmes (modles de Kleene, Church et Gdel), dautres
sappuient sur lide de machines qui modlisent les algorithmes (travaux de Turing ou de
Post). Aujourdhui le modle de machine de Turing et celui de fonctions rcursives sont
couramment utiliss
2
.
Ces modles ont permis de mettre en vidence que tous les problmes mathmatiques ne
peuvent pas tre rsolus algorithmiquement : il existe des problmes indcidables. Savoir
si un problme est dcidable ou non constitue actuellement une question importante pour
les mathmatiques. Par exemple, en 1970 fut prouv que le 10
e
problme de Hilbert est
indcidable : il nexiste aucun algorithme pour dcider de lexistence de solutions pour les
quations diophantiennes.
Le modle de machine de Turing a aussi permis de classier les problmes selon leur di-
cult. En particulier, il permet de dnir les classes de problmes P et NP : les problmes
2. Pour une introduction ces modles et aux notions voques dans la section 1.2, on pourra, par
exemple, consulter (Wolper, 2006)
25
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
pour lesquels il existe un algorithme de complexit
3
polynomiale (classe P) et ceux pour
lesquels il existe un algorithme polynomial pour vrier quune solution donne en est bien
une (classe NP). La question de savoir si les classes P et NP sont direntes est un des
problmes du millnaire de lInstitut Clay.
Cette notion de modle thorique se place aussi sur un plan allant au-del des mathma-
tiques car il est impossible de prouver que les modles proposs sont quivalents lide
de calcul eectif :
La question de lquivalence entre tous ces modles de calculabilit noncs
entre 1931 et 1936 est essentielle. Dune part elle assure la cohrence ma-
thmatique des dirents rsultats obtenus. Dautre part elle intervient dans
la question mtamathmatique suivante : est-ce que le concept dalgorithme
correspond la notion dalgorithme et lide intuitive mme dalgorithme ?
(Chabert, 2010)
La rponse, positive, cette question est aujourdhui appele thse de Church. Cest elle
qui garantit la cohrence de ces modles avec lide de calcul automatique eectu par un
oprateur quelconque.
Il faut remarquer que ces modles sont bien antrieurs aux premiers ordinateurs et que les
modles proposs de calcul automatis sont thoriquement ralisables sans lectronique : la
machine de Turing, par exemple, est un modle qui peut tre ralis de manire totalement
mcanique
4
.
1.3 Quest-ce-que lalgorithmique ?
Lalgorithmique est la science dont lobjet dtude est lalgorithme. Cette discipline, la
frontire entre les mathmatiques et linformatique, sintresse la cration, la description
et lanalyse des algorithmes.
Avec lintroduction du concept dalgorithme [via les modles thoriques], lhis-
toire des algorithmes se transforme en lhistoire dun nouveau domaine scienti-
que : lalgorithmique. Il ne sagit pas de rechercher un algorithme pour un pro-
blme particulier, mais de chercher rsoudre les problmes poss par ltude
gnrale des algorithmes. Cette tude sest particulirement dveloppe avec
la construction des ordinateurs et linvention des langages de programmation.
(Chabert, 2010, p. 534)
Dveloppement dalgorithmes
Une question fondamentale de lalgorithmique est de savoir crer un algorithme adapt
pour rsoudre un problme. Cela est souvent li la validation de cet algorithme et ltude
de ses proprits.
Pour le dveloppement dalgorithmes, il existe des principes de fonctionnement gnriques
qui permettent de dcrire des familles dalgorithmes. On peut citer, par exemple, diviser
3. Nous prcisons ce quest la complexit dans la section 1.3.
4. Rcemment, les tudiants du projet Rubens, lENS Lyon, ont construit en lego, une machine de
Turing 100% mcanique que lon peut voir fonctionner en ligne : http://rubens.ens-lyon.fr.
26
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
pour rgner, la programmation dynamique ou encore les algorithmes gloutons. Ces m-
thodes
5
constituent des guides qui permettent de crer de nouveaux algorithmes.
Bien quassez rcentes, beaucoup de techniques de design dalgorithmes sont dj
standardises et font lobjet denseignements universitaires de premier cycle :
Cet ouvrage vous enseignera des techniques de conception et danalyse dalgo-
rithme, de faon que vous puissiez crer des algorithmes de votre cru, prouver
quils fournissent la bonne rponse et comprendre leur ecacit. (Cormen et
al., 1994, p. 7)
Bien entendu, la cration dalgorithmes pose la question de leur expression et de leur
interprtation par loprateur. En particulier, la description dalgorithmes destination de
machines demande la spcication de langages particuliers et leur tude. Cela constitue
une branche importante de linformatique.
Variable informatique et aectation
Trs souvent, lexpression dun algorithme utilise un type de variable spcique appele
variable informatique. Une variable informatique modlise un emplacement dans la m-
moire et son contenu peut changer. On modie le contenu dune variable informatique
par laectation dune nouvelle valeur la variable (ou assignation). On crit souvent
var:=val ou varval pour aecter la valeur val la variable var. Les langages
de programmation utilisent parfois dautres symboles pour la reprsenter, parfois mme
le symbole = . Il faut cependant noter que lopration daectation dune valeur une
variable est non-symtrique, contrairement loprateur dgalit.
La notion de variable informatique permet de ne conserver que linformation ncessaire
au droulement de la suite de lalgorithme. Elle constitue une modlisation de la mmoire
dune machine.
Dans certaines preuves algorithmiques ou dans certaines preuves dalgorithmes, on peut
retrouver des suites qui reprsentent les valeurs successives prises par une variable informa-
tique. Bien quextrmement prsente en algorithmique, la notion de variable informatique
nest pas indispensable lexpression dalgorithmes.
Complexit
Une question spcique lalgorithmique est celle de la complexit des algorithmes. Il
sagit de ltude du comportement de lalgorithme en fonction de ses entres. Lorsquil
sagit dtudier le nombre dtapes de calcul (ou doprations considres comme lmen-
taires) ncessaires la rsolution du problme on parle de complexit en temps. Lorsquil
sagit dtudier la quantit de mmoire ncessaire, on parle de complexit en espace (la
notion de variable informatique permet alors de prciser quelle est linformation que lon
garde accessible et celle dont on na plus besoin).
Cette complexit sexprime en fonction de la taille de lentre (souvent la taille ncessaire
la coder). Cette complexit peut tre tudie dans le pire des cas (combien dtapes
demande la division euclidienne de a par b dans le pire des cas en fonction de la grandeur
des entiers a et b ?) ou en moyenne (pour tous les entiers a n chires et b p chires,
5. Voir le glossaire pour plus de prcisions.
27
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
combien dtapes demande en moyenne la division euclidienne de a par b ?).
De telles questions peuvent tre poses dans dirents contextes : nombre de lignes nces-
saires dans la division euclidienne papier-crayon, nombre dadditions et de soustractions
eectues par lordinateur, etc.
De nombreux outils et techniques sont dvelopps en algorithmique pour pouvoir tudier
avec prcision ces questions de complexit. Cela entraine aussi lapparition de nouvelles
questions en mathmatiques, comme par exemple ltude de certains types de suites.
Ces dirents types de complexit peuvent aussi tre dnis dans les modles thoriques.
En particulier, avec les classes P et NP prsentes prcdemment, mais aussi avec dautres
outils apportant une classication des problmes selon leur dicult tre rsolus algo-
rithmiquement.
Structuration de linformation et codage des donnes
Les questions de dveloppement dalgorithme et de complexit mnent naturellement se
poser la question de la reprsentation des instances et celle de linformation manipule.
Par exemple, on ne calculera pas de la mme manire le pgcd dentiers donns en base 10
et dentiers donns par la liste des puissances de leurs facteurs premiers.
La structuration de linformation et le choix des oprations autorises sur ces structures
inuencent fortement la construction dun algorithme et modient la manire dont on va
valuer sa complexit. Par exemple, diviser par deux un entier crit en base 2 revient sim-
plement eacer le chire des units.
Le fonctionnement des ordinateurs joue un rle prpondrant dans les choix de ces struc-
tures. Il sagit tout dabord de coder lentre et les objets en jeu an de les rendre ma-
nipulables par lordinateur, mais il sagit aussi de faire des choix pertinents pour rendre
lalgorithme le plus ecace possible. Beaucoup de modles thoriques dorganisation des
informations en algorithmique sinspirent souvent des structures de donnes utilises pour
la programmation.
Dautres modles dordinateurs ou de machines sont tudis et amnent considrer de
nouveaux algorithmes pour des problmes connus : algorithmes parallles (o plusieurs
oprations peuvent tre menes en mme temps), algorithmes distribus (ou dirents
processus agissent indpendamment sur les objets), algorithmes quantiques (pour le modle
thorique dordinateur quantique), etc.
Comparaison et optimalit
La comparaison de solutions algorithmiques direntes devient alors un enjeu important.
La complexit est un des critres utiles pour cela, mais dautres critres peuvent tre uti-
liss. Le choix de la reprsentation de linformation y joue aussi un rle crucial.
Pour un critre x, lalgorithmique sintresse aussi chercher le meilleur algorithme
permettant de rsoudre un problme. En montrant quil nexiste aucun algorithme plus
performant que celui propos pour un problme donn, on obtient un critre permettant
de parler de la complexit intrinsque dun problme.
28
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Classes de complexit de problmes
Cette notion de complexit dun problme permet de classier les problmes mathma-
tiques. Les modles thoriques jouent un rle central dans cette thorie de la complexit.
Nous ne dtaillerons pas cet aspect.
Certains problmes peuvent alors tre prouvs comme diciles : il nest pas possible de
rendre leur rsolution rapide. Se pose alors la question de proposer des algorithmes plus
ecaces qui, ne pouvant pas donner la solution exacte toutes les instances, garantissent
au moins une solution relativement raisonnable. Le contrle et les garanties que lon peut
avoir sur les solutions produites devient fondamental. Ces questions sont notamment lobjet
des disciplines optimisation combinatoire et recherche oprationnelle dans lesquelles lalgo-
rithme joue un rle central. L encore, les modles thoriques permettent une classication
des problmes selon leur facult tre plus ou moins bien approximables.
Algorithmique et informatique
Knuth (1985) peroit lalgorithmique comme tant linformatique toute entire.
For many years I have been convinced that computer science is primarily the
study of algorithms. My colleagues dont all agree with me, but it turns out
that the source of our disagreement is simply that my denition of algorithms
is much broader than theirs : I tend to think of algorithms as encompassing
the whole range of concepts dealing with well-dened processes, including the
structure of data that is being acted upon as well as the structure of the se-
quence of operations being performed [...] However, if I had a chance to vote for
the name of my own discipline, I would choose to call it Algorithmics.(Knuth,
1985, p. 170)
Selon lui, lalgorithmique peut tre vue comme ltude de ce qui est automatisable. Une
telle vision de lalgorithmique stend au-del des mathmatiques.
Dautres points de vue prsentent plutt lalgorithmique comme une branche de linforma-
tique (commune aux mathmatiques) parmi dautres : thorie des langages, architecture
des machines, reprsentation de linformation, etc. Ce point de vue sappuie sur les sp-
cialisations qui ont eu lieu autour de ces questions. Cependant, lalgorithme est le trait
dunion entre toutes ces branches :
I have emphasized algorithms because they are realy the central core of the sub-
ject, the common denominator that underlies and unies the dierent branches.
(Knuth, 1974, p. 7)
Dans la suite, nous utiliserons le terme algorithmique dans un sens plus restreint que celui
de Knuth mais nous garderons lesprit que les algorithmes sont un lment central de
linformatique. Nous reviendrons sur la position de Knuth et sur cette discussion au chapitre
2.
2 Exemples caractristiques
Avant daller plus loin dans la discussion sur lpistmologie de lalgorithme. Il nous semble
utile de dvelopper quelques exemples pour donner une vision plus concrte des points
voqus prcdemment mais aussi pour servir dillustration aux futures discussions de
ce chapitre et des suivants. Pour cela, nous avons choisi trois problmes classiques pour
29
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
lesquels nous allons montrer les algorithmes et questions algorithmiques qui peuvent tre
abords. Cet ensemble de problmes, algorithmes et questions nous semble mettre en avant
les principales caractristiques de lalgorithmique.
Pour chacun des problmes et thmes dvelopps, nous allons montrer comment peut
sarticuler un questionnement algorithmique. Pour cela nous prsenterons des algorithmes
et tudierons quelques questions que ces algorithmes peuvent soulever, nous essaierons
de montrer comment lon peut expliciter les algorithmes prsents dans certaines preuves
algorithmiques et nous voquerons les questions que pose limplmentation dun algorithme
dans un langage de programmation.
Le point de vue adopt dans ces exemples est un point de vue mathmatique et nous nous
attacherons prouver les rsultats prsents.
2.1 Plus grand diviseur commun
Preuve
Lexistence du pgcd de 2 nombres peut tre prouve comme suit :
Dmonstration. Soient a et b deux entiers avec a b. Notons D lensemble des diviseurs
communs a et b. Comme 1[a et 1[b, on a D ,= , et D 1, ..., b. D est born non vide,
donc possde un plus grand lment d not pgcd(a, b).
Obtention du pgcd
Le pgcd peut tre obtenu par lalgorithme dEuclide. Pour dcrire cet algorithme et les
suivants nous utiliserons quelques notations propres linformatique et la logique pour
simplier la prsentation, notamment :
ou := pour laectation,
du texte en gras pour les instructions de contrle,
des indentations et de lignes verticales pour faciliter la lecture en dlimitant les
squences dinstructions,
les termes Donnes et Rsultat pour reprer les entres et sorties de lalgorithme,
des notations logiques et ensemblistes courantes.
Lalgorithme dEuclide peut alors tre dcrit de la manire suivante :
Donnes : a, b, deux entiers
r
1
a
r
2
b
tant que r
2
,= 0 faire
la division euclidienne donne r
1
= q.r
2
+r
r
1
r
2
r
2
r
Rsultat : r
1
Algorithme 1 : Euclide
Il nest pas vident que cet algorithme fonctionne et construise le pgcd de a et b. Il est
ncessaire de le prouver :
Dmonstration. Preuve de correction
6
. Notons a
k
, b
k
et q
k
les valeurs successives prises
par r
1
, r
2
et q aprs k pas de la boucle tant que. On a pour tout k : a
k
= q
k
.b
k
+ b
k+1
et
6. Cest--dire : preuve que lalgorithme donne bien le pgcd.
30
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
a
k+1
= b
k
. Donc pour tout entier d, (d[a
k
et d[b
k
) (d[a
k+1
et d[b
k+1
)
Do pgcd(a
k
, b
k
) = pgcd(a
k+1
, b
k+1
). Ainsi lorsque lalgorithme sarrte aprs n pas :
pgcd(a, b) = pgcd(a
n
, b
n
) = pgcd(a
n
, 0) = a
n
.
Preuve de terminaison
7
. On remarque que la suite (b
k
) dentiers naturels est strictement
dcroissante. Donc la condition darrt b
k
= 0 sera vrie aprs un nombre ni ditrations
et lalgorithme sarrtera.
Preuve algorithmique
On aurait aussi pu obtenir ce mme algorithme en traduisant, par exemple, la preuve par
rcurrence de lexistence du pgcd ci-dessous :
Dmonstration. Dmontrons la proprit (m, n) N
2
, pgcd(m, n) existe, par rcurrence
sur min(m, n).
Initialisation : Soient (a, b) N
2
tel que min(a, b) = 0, i.e. a = 0 ou b = 0. Alors pgcd(a, b)
existe et vaut max(a, b).
Hrdit : Supposons que (m, n) tel que min(m, n) p, pgcd(m, n) existe.
Soit un couple (a, b) tel que min(a, b) = p+1. Supposons, par exemple, b a et posons r le
reste de la division de a par b = p +1. Alors (cf preuve prcdente) pgcd(a, b) = pgcd(b, r)
et comme r < p + 1, par hypothse de rcurrence, pgcd(a, b) existe.
Pour ce premier exemple, prcisons un peu les choses. Lhrdit nous dit que calculer le
pgcd de deux entiers a etb (a b) revient calculer celui de b avec le reste r de la division
euclidienne de a par b. De plus, on a la garantie que le maximum des deux entiers dont on
calcule le pgcd a diminu strictement.
Linitialisation prcise que si lun des deux entiers est nul, on peut expliciter le pgcd qui
est gal lautre entier.
Cela donne une mthode de calcul du pgcd de deux entiers qui correspond lalgorithme 1.
Programmation
Lalgorithme du pgcd (algorithme 1) peut tre dcrit dans un langage de programmation.
Par exemple, dans le langage Caml
8
, cela peut scrire comme suit (pour ce premier pro-
gramme, nous ajoutons des commentaires, entre (* et *), pour clarier les instructions
7. Cest--dire : preuve que lalgorithme donne le rsultat aprs un nombre ni dtapes.
8. Nous choisissons de prsenter les algorithmes dans le langage Caml. Ce langage prsente plusieurs
aspects qui nous paraissent adapts une activit de programmation dans le cadre dun enseignement
de lalgorithmique en mathmatiques : typage fort, algorithmes prsents comme des fonctions, facilit
manipuler la rcursivit... Ce choix est arbitraire et sappuie sur un point de vue personnel. La caractri-
sation (ncessaire !) des langages adapts un tel enseignement demanderait une tude pousse qui nest
pas lobjet de cette thse.
31
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
utilises) :
let pgcd_it(a,b) =
let r = ref (a mod b) in (* on dfinit les variables utilises *)
let u = ref a in
let v = ref b in
while !r<>0 do (* tant que le reste est non-nul *)
u:=!v;
v:=!r; (* les 3 variables sont ncessaires pour
r:=!u mod !v; ne pas perdre dinformation *)
done;
!v;;
Algorithme 2 : Une version itrative de lalgorithme du pgcd en Caml
Lalgorithme, une fois programm permet de faire calculer le pgcd de deux entiers lordi-
nateur de manire rapide. Il est ici programm de faon itrative : lalgorithme est dcrit
comme une suite doprations qui ne font pas dappel lalgorithme lui-mme.
loppos, on peut programmer une version rcursive de lalgorithme dEuclide de la faon
suivante
9
:
let rec pgcd_rec(a,b) =
match (a,b) with
|(0,_) -> b
|(_,0) -> a
|(_,_) -> pgcd_rec(b,a mod b);;
Algorithme 3 : Une version rcursive de lalgorithme du pgcd en Caml
Plusieurs questions pourraient tre souleves concernant ces versions programmes : ces
deux programmes sont-ils des expressions correctes de lalgorithme dEuclide ? Produisent-
ils le mme rsultat quelles que soient leurs donnes en entre ? Font-ils les mmes tapes
de calcul ? Lun est-il plus rapide que lautre ? Plus conome en mmoire ?
Lalgorithme rcursif 3 peut tout fait tre exprim hors dun langage de programmation.
On pourrait par exemple lcrire comme une fonction :
Algorithme 3bis :
pgcd(a, b) =

b si a = 0
a si b = 0
pgcd(b, r)sinon, o r est le reste de la division euclidienne de a par b
Utilisation de lalgorithme dans une preuve
Lalgorithme du pgcd peut tre rutilis dans la preuve dexistence des coecients de
Bzout : soient a et b deux entiers et d = pgcd(a, b), il existe deux entiers u et v appels
coecients de Bzout tels que : au +bv = d.
9. la commande match with permet de traiter par reconnaissance de motifs les dirents cas de la forme
rcursive. Le symbole _ reprsente une valeur quelconque et les cas sont toujours tests suivant une logique
temporelle.
32
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Dmonstration. On crit lalgorithme dEuclide pour a et b, avec les notations de la preuve
prcdente. On a :
a
0
= q
0
.b
0
+b
1
a
1
= b
0
= q
1
.b
1
+b
2
.
.
.
a
n1
= b
n2
= q
n1
.b
n1
+b
n
a
n
= b
n1
= q
n
.b
n
+ 0 avec b
n
= d
En remplaant les a
k
dans cette suite dgalits, en partant de la n on a :
d = b
n
= b
n2
q
n1
b
n1
= b
n2
q
n1
(b
n3
q
n2
b
n2
) = (q
n1
q
n2
+ 1)b
n2
q
n1
b
n3
.
.
.
= au +bv
2.2 Cycle eulrien dans un graphe
Soit G = (V, E) un graphe. Un cycle eulrien est un cycle passant une et une seule fois
par chaque arte du graphe.
Proprit. Un graphe admet un cycle eulrien si et seulement si il est connexe et que tous
ses sommets sont de degr pair.
Dmonstration. La condition est ncessaire : soit G un graphe admettant un cycle eulrien
(. Il est clair que pour que ( parcoure toutes les artes le graphe doit tre connexe. De
plus lorsque ( passe par un sommet il entre par une arte non parcourue et ressort par une
autre arte non parcourue. Le nombre dartes incidentes au sommet est donc un nombre
pair.
La condition est susante : soit G un graphe connexe dont tous les sommets sont de degr
pair. On raisonne par induction sur le nombre dartes de G.
Si G na pas darte alors il ne contient quun seul sommet et admet un cycle eulrien.
Sinon tous les sommets de G sont de degr gal ou suprieur 2. Alors il existe un cycle
( dans G
10
. Si lon enlve les artes de ( du graphe G, on obtient un sous-graphe G

dont tous les sommets sont de degr pair et qui est form dun ensemble de composantes
connexes G
1
, G
2
, . . . , G
n
. Chacune de ces composantes connexes G
i
a un nombre dartes
strictement plus petit que celui de G et ses sommets sont de degr pair. Donc par induction,
chaque G
i
contient un cycle eulrien (
i
. Reste reconstruire un cycle eulrien pour G. Pour
cela on parcourt le cycle ( et lorsque que lon rencontre un sommet dune composante
connexe G
i
non parcourue, on parcourt (
i
puis on reprend le parcours de (.
10. Tout graphe dont les sommets sont de degr suprieur ou gal 2 contient un cycle. Cela peut se
montrer avec un algorithme.
33
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Algorithme de construction
Cette preuve cache en fait un algorithme de construction dun cycle eulrien que lon peut
crire comme suit :
Donnes : G = (V, E) un graphe
Cycle-eulrien(G)=
(On va construire un cycle eulrien ( = [u
1
, ..., u
m
] avec u
i
V )
s un sommet de G
( := [s]
tant que il existe (q, t) E avec q le dernier sommet de ( et (q, t) / ( faire
ajouter t (
(on a un cycle de G)
pour chaque composante connexe G
i
de G priv des artes de ( faire
(
i
:=Cycle-eulrien(G
i
)
parcourir ( et insrer (
i
dans ( au premier sommet de G
i
rencontr
Rsultat : (
Algorithme 4 : Construction dun cycle eulrien
Algorithme de reconnaissance
De plus, partir de la proprit que nous venons de dmontrer et qui donne une carac-
trisation des graphes contenant un cycle eulrien, on peut construire un algorithme de
reconnaissance. Il sut de vrier que chaque sommet est de degr pair et que le graphe
est connexe :
Donnes : G = (V, E) un graphe
(on construit lensemble T des sommets qui sont dans la mme composante connexe et de
degr pair)
s un sommet de G
T := s
si deg(s) impair alors
Rsultat : faux
sinon
tant que il existe (u, v) E, u T, v / T et deg(v) pair faire
ajouter v T
si T = E alors
Rsultat : vrai
sinon
Rsultat : faux
Algorithme 5 : Test de lexistence dun cycle eulrien
Complexit et types de donnes abstraits
En revenant sur lalgorithme 4, on peut se poser la question de sa complexit. Cest--dire,
on peut se demander combien dtapes sont ncessaires la construction dun cycle eul-
rien en fonction de la taille du graphe donn
11
. Lalgorithme 4 prend en entre un graphe
et manipule cet objet mathmatique sans ncessit de prciser quelles sont les oprations
11. En ce qui concerne les graphes comme donnes dun algorithme, la taille est reprsente soit par le
nombre de sommets, soit par le nombre dartes. Les deux cas sont lis par le fait que le nombre dartes
est au plus de lordre du carr du nombre de sommets.
34
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
lmentaires que lon peut faire avec. Ds lors que lon se pose la question de la complexit
de lalgorithme, il faut prciser quelles oprations seront considres comme oprations de
base ou unitaires pour lvaluation.
Pour dcrire la complexit des algorithmes de ce chapitre, nous utiliserons les notations
asymptotiques de Landau O, et , issues de lanalyse asymptotique de fonctions et
courantes en algorithmique
12
Supposons que tester si une arte est dans ( est une opration de base, ainsi que lajout
dun lment (, linsertion dun cycle dans ( un endroit donn.
Supposons aussi que lon puisse dterminer les composantes connexes dun graphe linai-
rement en fonction du nombre dartes
13
. Notons c(n) le nombre dtapes lmentaires
eectues par lalgorithme pour un graphe n artes. Lalgorithme eectue une premire
boucle qui eectue autant dtapes quil y aura dlments dans (. Ensuite, il recherche
les composantes connexes G
i
du graphe G avec les artes restantes, ce qui demande un
nombre dtapes en O de ce nombre dartes restantes, et applique lalgorithme chacune
des composantes. Enn il parcourt ( pour insrer les cycles eulriens obtenus dans les G
i
.
Finalement, on a la relation :
c(n) = 2[([ +O(n) +

G
i
c(n
i
) o n
i
est le nombre dartes dans G
i
.
Si un graphe G ne produit pas de G
i
il vrie c(n) = 2n+O(n) = O(n). Et par rcurrence,
on obtient que quel que soit G, c(n) = O(n).
Pour viter davoir recours la recherche de composantes connexes, on peut modier
lalgorithme 4 en notant que lon peut rechercher les cycles eulriens des composantes
connexes non parcourues en recherchant simplement une arte qui na pas t visite et qui
nest donc pas encore dans le cycle (. Cet algorithme est appel algorithme de Hierholzer.
On peut aussi prciser lalgorithme pour quil dise si le graphe est eulrien ou non. Cela
donne lalgorithme ci-dessous, qui teste si oui ou non le graphe est eulrien, et qui retourne
un cycle eulrien ( dans le cas favorable et un sommet de degr impair s ou deux sommets
de composantes connexes direntes dans le cas dfavorable. Le cycle eulrien, le sommet
de degr impair, ou le couple de sommets retourns par lalgorithme permettent de vrier
que la rponse de lalgorithme est correcte. Ils sont appels certicats
14
.
Cet algorithme sappuie sur lalgorithme ci-dessous de recherche dans un graphe de cycles
12. Rappelons leur dnition (en +) :
f(x) = O(g(x)) A et k > 0 tels que x > A, |f(x)| k |g(x)|,
f(x) = (g(x)) A et k > 0 tels que x > A, |f(x)| k |g(x)|,
f(x) = (g(x)) A, k
1
> 0 et k
2
> 0 tels que x > A, k
1
|g(x)| |f(x)| k
2
|g(x)|.
On pourra consulter (Beauquier et al., 1992) pour plus de dtails.
13. Ce qui est ralisable par un parcours en profondeur par exemple.
14. De manire gnrale, lorsquun algorithme est excut sur une instance dun problme, il peut parfois
fournir une information supplmentaire permettant de vrier rapidement que la solution est correcte
(dans notre cas, le cycle ou le sommet de degr impair). Une telle information est appele un certicat. Les
algorithmes avec certicats jouent un rle important dans la thorie de la complexit.
35
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
nayant que des sommets de degr pair ou dun sommet de degr impair :
Donnes : G un graphe, v
0
un sommet, e une arte incidente v
0
Chercher-cycle(G,e,v
0
)=
(On cherche construire un cycle ( de G contenant e et uniquement des sommets pairs ou
trouver un sommet de degr impair.)
tant que cela est possible faire
Parcourir G depuis le sommet v
0
en commenant par e en retirant chaque arte
visite.
si le dernier sommet visit est v
0
alors
Rsultat : (Oui, () o ( est le cycle parcouru.
sinon
Rsultat : (Non, w) o w est le dernier sommet visit.
Algorithme 6 : Une recherche de cycle
On peut maintenant dcrire lalgorithme voulu pour tester si un graphe est eulrien :
Donnes : G = (V, E) un graphe
(On cherche construire un cycle eulrien ()
( :=
tant que il existe (u, v) E avec u ( et (u, v) / ( faire
H := G priv des artes de (
si Chercher-cycle(G,u,(u, v)) est de la forme (Oui, (

) alors
insrer (

dans (
sinon
Rsultat : Chercher-cycle(G,u,(u, v))
si lensemble des artes de G est dans ( alors
Rsultat : (Oui, )
sinon
Rsultat : (Non, (s, t)) o s est un sommet de ( et t un sommet qui nest pas
dans (.
Algorithme 7 : Reconnaissance des graphes eulriens avec certicats
La correction et la terminaison de cet algorithme demanderaient tre prouves. Nous ne
donnerons pas les dtails ici mais seulement un invariant qui permet ces preuves :
Aprs chaque pas de la boucle tant que, soit on a trouv un sommet de degr impair, soit
( est un cycle sans rptition darte dont la longueur a augment strictement.
On peut aussi valuer la complexit de cet algorithme. On trouve une complexit linaire en
fonction du nombre dartes, en considrant comme lmentaires les oprations suivantes :
trouver les artes non-parcourues adjacentes un sommet,
trouver un sommet de ( incident une arte non-visite,
insrer un nouveau cycle dans (.
Un ensemble muni doprations lmentaires est appel un type de donnes abstrait. Cest
un modle qui permet dvaluer la complexit (comme nous lavons fait pour tudier la
complexit de lalgorithme 4) sans entrer dans les dtails de codage des donnes et de
programmation
15
. Ici, deux types de donnes abstraits sont en jeu : celui permettant de
reprsenter le graphe G et celui permettant de reprsenter le cycle (.
15. Pour plus de dtails sur les types de donnes abstraits, voir (Aho et al., 1989)
36
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Programmation et structures de donnes
Pour pouvoir programmer lalgorithme prcdent en gardant la complexit linaire tho-
rique, il est ncessaire de trouver une reprsentation du graphe et des objets manipuls
sous la forme de structures de donnes qui respectent les contraintes des types de donnes
abstraits du paragraphe prcdent. Un tel programme peut tre ralis, Fleischner (1991)
en propose une version qui utilise des listes doublement chanes.
Notons que la version de lalgorithme donne ici nest pas directement due Hierholzer.
Elle est drive de sa preuve (algorithmique), publie en 1873, de la caractrisation des
graphes eulriens (nonce en 1736 par Euler).
2.3 Tris et permutations
Gnrateurs du groupe des permutations
Rappelons quelques proprits classiques du groupe des permutations S
n
(ou groupe sy-
mtrique). S
n
peut tre vu comme lensemble des bijections de 1, n dans 1, n. On crira
une permutation de S
n
sous la forme [(1), ..., (n)]. On notera (i, j) la permutation qui
envoie i sur j et j sur i en laissant xes les autres lments. Une telle permutation, qui
change deux lments, est appele transposition. Une transposition de la forme (i, i + 1)
est dite lmentaire.
Proprit. Le groupe des permutations est engendr par les transpositions.
Dmonstration. Par induction sur n, montrons que pour tout n 2, toute permutation
scrit comme produit de transpositions.
Si n = 2, alors il ny a que deux permutations : lidentit et la transposition (1, 2). La
proprit est vraie.
Soit p le plus petit entier tel que S
p
ne soit pas engendr par les transpositions.
Alors p > 2. Soit = [(1), ..., (p)] S
p
et i lindice qui vrie (i) = p. Posons
= (i, p). On a (p) = p donc
|1,p1
est un lment de S
p1
. Par hypothse,
|1,p1
peut donc se dcomposer en produit de transpositions :

|1,p1
=

k
t
k
Comme les transpositions de S
p1
peuvent tre vues comme des transpositions de S
p
, on
obtient :
=

k
t
k
(i, p)
Cest une contradiction avec lexistence de p. Toute permutation se dcompose comme
produit de transpositions.
Proprit. Le groupe des permutations est engendr par les transpositions lmentaires.
Dmonstration. (version 1)
Il sut de montrer que toute transposition peut scrire comme produit de transpositions
lmentaires, le reste dcoule de la proprit prcdente.
Soit (i, j) une transposition de S
n
(avec i < j).
On peut crire :
(i, j) = (i, i + 1) (i + 1, i + 2)...(j 1, j) (j 1, j 2)...(i + 2, i + 1) (i + 1, i)
37
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Dmonstration. (version 2)
On adapte la dmonstration pour les transpositions aux transpositions lmentaires. Par
induction sur n, on montre que pour tout n 2, toute permutation scrit comme produit
de transpositions lmentaires. Il sut de remplacer = (i, i+1)(i+1, i+2)...(p1, p)
dans la dmonstration.
Algorithmes sous-jacents et tris
Ces dmonstrations constituent toutes trois des preuves algorithmiques. On pourrait fa-
cilement expliciter les algorithmes quelles sous-tendent pour produire la dcomposition
dune permutation. On peut aussi y voir des algorithmes de tri
16
: tant donne une liste
dentiers dsordonne, on veut produire la liste ordonne de ces nombres (les oprations
autorises sont la comparaison de deux entiers et leur transposition dans la liste).
Nous nallons pas dtailler ces algorithmes, mais seulement prciser que la premire d-
monstration induit lalgorithme du tri par slection et les deux suivantes des algorithmes
proches du tri bulles. Pour trier n lments, ces tris demandent un nombre de comparai-
sons dlments de lordre de n
2
.
Tri rapide, complexit au pire et en moyenne
Voici un autre algorithme de tri. Il prend en entre une liste L = (a
1
, a
2
, ..., a
n
) dentiers
et retourne la liste trie de ces entiers.
Le tri rapide est un algorithme du type diviser pour rgner. Son principe est de prendre le
premier entier de la liste, quon appellera le pivot, et de sparer les lments de la liste qui
sont plus petits que le pivot de ceux qui sont plus grands.
On trie ensuite sparment ces deux listes dentiers et il ny a plus qu les rcrire bout
bout avec le pivot au milieu.
Le tri de ces deux listes se fait en rutilisant le tri rapide sur chacune delles. Cela donne
lalgorithme suivant :
Donnes : L = (a
1
, a
2
, ..., a
n
) une liste dentiers
Tri-rapide(L)=
si [L[ 2 alors
Trier L en L

en comparant les lments si ncessaire


Rsultat : L

sinon
pour i allant de 2 n faire
si a
i
a
1
alors
Mettre a
i
dans L

sinon
Mettre a
i
dans L
>
L
1
=Tri-rapide(L

)
L
2
=Tri-rapide(L
>
)
Rsultat : (L
1
, a
1
, L
2
)
Algorithme 8 : Tri rapide, version rcursive
Cet algorithme peut tre prouv par rcurrence sur le nombre dlments dans L.
16. condition de prciser comment lon devine la position attendue i dun lment en position (i)
avant le tri.
38
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
On peut prouver que la complexit au pire de cet algorithme est en O(n
2
) comparaisons
pour trier une liste de n lments (ce cas est atteint pour le cas dune liste dj trie, par
exemple
17
). Cependant, cet algorithme est trs utilis car sa complexit en moyenne est
est en O(nlog(n)) si lon suppose toutes les permutations dlments quiprobables
18
.
Lalgorithme, tel quil est crit ici, cre de nombreuses listes tout au long de son excution.
On peut amliorer sa complexit en espace en remarquant que lon peut faire ce tri sur
place, cest--dire en utilisant uniquement lespace de la liste de dpart. On peut aussi
rcrire lalgorithme pour quil soit sous une forme itrative.
Algorithmes optimaux
Une autre raison de lutilisation courante du tri rapide est quil est optimal. On ne peut
pas rsoudre le problme du tri par comparaison en mieux que nlog(n) . Autrement dit
le problme du tri est de complexit nlog(n) :
Proprit. Tout algorithme de tri par comparaison a une complexit au pire et en moyenne
en (nlog(n)).
Dmonstration. Tout algorithme de tri par comparaison peut tre reprsent par son arbre
de dcision. Cest un arbre binaire o chaque nud de larbre reprsente une comparaison
c et chaque branche, le rsultat ( gauche) ou > ( droite) de cette comparaison.
Voici un exemple darbre de dcision :
c
c
c
c

c
c

c
c
c
c
c
Les feuilles (carrs) reprsentent les rponses de lalgorithme . Lorsque il trie une liste
de n lments, un algorithme doit pouvoir direncier toutes les permutations possibles
des lments. Le nombre de feuilles est donc au moins n!.
Or, un arbre binaire p feuilles a toujours une profondeur maximale en (log(p)) et une
profondeur moyenne en (log(p)).
Ici, p = n! et lon peut conclure en utilisant log(n!) = (nlog(n)) que lon a une profondeur
au pire et en moyenne en (nlog(n))
Proprit. Pour la complexit en moyenne, le tri rapide est optimal pour le problme du
tri par comparaison.
17. Pour viter que cela ne se produise trop souvent, on peut tirer au hasard llment qui va servir de
pivot.
18. Pour plus de dtails, voir par exemple (Cormen et al., 1994).
39
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
3 Aspects de lalgorithme
Ces premiers exemples et premires discussions sur le concept dalgorithme nous permettent
de relever un certain nombre de points essentiels regroups en cinq grands groupes. Nous
les appellerons les Aspects de lalgorithme. Ils constituent un premier modle pistmolo-
gique du concept qui doit permettre de mettre en avant les lments constitutifs spciques
du concept dalgorithme en rpondant Q1 :
Question Q1. Quels sont les lments constitutifs spciques du concept dalgorithme ?
Quels sont lobjet et les proccupations fondamentales de la discipline algorithmique ?
3.1 Cinq aspects fondamentaux
Laspect problme
Un algorithme rsout un problme, cest--dire, rpond une question prcise pose pour
une famille dinstances. Pour chaque instance, le mme algorithme donne une rponse la
question du problme. On parle dentre et de sortie de lalgorithme : lentre reprsente
linstance traiter, la sortie la rponse la question pour cette instance.
Les points importants sont :
les notions dentre et de sortie
la notion dinstance dun problme auquel rpond lalgorithme
le fait quun algorithme rponde une question pour toutes les instances du problme
Laspect effectivit
Un algorithme apporte une solution eective. Cest une mthode systmatique quun op-
rateur peut mettre en uvre. Sur des donnes nies, en suivant des rgles non-ambiges,
un algorithme sexcute en un nombre ni dtapes. Loprateur peut tre de toute sorte
mais bien souvent il sagit dun ordinateur pour lequel lalgorithme a t exprim sous
forme dun programme dans un langage extrmement prcis.
La notion dalgorithme englobe dautres notions pouvant tre constructives et nies : for-
mules mathmatiques, programmes de calcul, constructions gomtriques, activit de la
vie courante...
Les points importants sont :
un algorithme peut tre mis en uvre par un oprateur quelconque,
un algorithme est excutable par un ordinateur/une machine,
un algorithme peut tre exprim sous forme dun programme,
un algorithme agit sur des donnes nies,
un algorithme sexcute en un nombre ni dtapes,
la non-ambigut de la description des tapes,
un algorithme permet de dcrire des formules, des programmes de calcul ou de cons-
truction.
Laspect preuve
Comme nous lavons vu dans les exemples, preuve et algorithme interagissent de manire
importante. Tout dabord, pour prsenter un algorithme et armer quil rsout un pro-
blme donn, il convient den donner une dmonstration. Il faut tre certain quil aboutit
40
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
au bon rsultat quelle que soit linstance, cest ce que lon appelle la correction, et pouvoir
garantir que ce rsultat sera atteint en un nombre ni dtapes, cest la terminaison. Cest
ce que lon a fait pour prouver lalgorithme dEuclide au paragraphe 2.1.
Ces preuves dalgorithme sappuient souvent sur la preuve dun invariant ou dun variant
de lalgorithme qui garantissent la correction et la terminaison.
De plus, un algorithme peut tre utilis au cours dune preuve en tant quinfrence : cela
a t le cas lorsque lon a utilis lalgorithme dEuclide pour prouver lexistence des coe-
cients de Bzout. La validit de lalgorithme utilis est alors un point indispensable celle
de la dmonstration concerne.
Les preuves dites constructives (la preuve par induction en est un exemple) peuvent en
gnral donner lieu un algorithme. Nous en avons vu une illustration pour la preuve
de lexistence de cycles eulriens (paragraphe 2.2). Il peut tre ncessaire dexpliciter ces
algorithmes sous-jacents.
Ce type de preuves constructives concerne le plus souvent des problmes dexistence dob-
jets ou de reconnaissance dune classe dobjets.
An de dmontrer lexistence dun objet ayant une certaine proprit (P), les mthodes
constructives exhibent de tels objets. En mathmatiques, la question de la caractrisation
de tous les objets vriant (P) savre une question de recherche souvent dicile. Un moyen
de rpondre cette question est lnumration de tous ces objets : cette technique peut
aussi faire appel un algorithme. Cependant, le problme dnumration est parfois encore
trop dicile. De plus, lalgorithmique permet daborder des questions de reconnaissance
des objets vriant (P) : tant donn un objet O, un algorithme de reconnaissance permet
de dire si O vrie (P). Ces questions de reconnaissance sont clairement de nature math-
matique et ne peuvent tre abordes sans le concept dalgorithme.
Dans le cas du cycle eulrien, nous avons vu quil existe un algorithme de construction
dun cycle ainsi quun algorithme de reconnaissance de la classe des graphes eulriens
19
.
Dans les problmes doptimisation, pour un algorithme x, la preuve peut aussi intervenir
pour tudier loptimalit des solutions produites, les instances pour lesquelles la solution
est optimale ou encore la marge derreur entre les solutions produites et les solutions op-
timales.
La preuve dalgorithmes revt aussi une importance particulire depuis lutilisation dal-
gorithmes dans des preuves rcentes, en tant que substitut au mathmaticien pour des
tches non accessibles lhomme (thorme des 4 couleurs ou conjecture de Kepler par
exemple). Des programmes permettent donc maintenant de prouver des thormes ou de
valider dautres programmes, de manire plus ou moins automatique, par des mthodes de
preuves formelles ou de vrication.
Les points importants sont :
la preuve de correction,
la preuve de terminaison,
la notion dinvariant,
lutilisation dalgorithmes dans des preuves,
la preuve dexistence,
la preuve dune proprit,
les preuves algorithmiques, par rcurrence, par induction,
un algorithme avec sa preuve quivaut une preuve constructive,
la preuve doptimalit de la solution,
19. Qui contiennent un cycle eulrien.
41
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
les preuves formelles par ordinateur et la vrication de preuves et de programmes.
Laspect complexit
La notion de complexit est essentielle et spcique lalgorithmique. La complexit dun
algorithme se mesure en fonction de la taille de linstance (par exemple pour un graphe, son
nombre de sommets et/ou dartes). Elle reprsente le nombre doprations lmentaires
eectues par lalgorithme (il faut donc dcider de ce que lon choisit comme opration
lmentaire) queectue lalgorithme. Ce nombre peut tre calcul pour le pire des cas (le
maximum des nombres doprations eectues pour les instances dune taille xe) ou en
moyenne (le nombre moyen doprations eectues pour les instances dune taille xe). La
complexit peut aussi tre tudie en espace : il sagit de mesurer la quantit dinformation
maximale ou moyenne ncessaire lexcution de lalgorithme pour les instances dune
taille donne.
Cette notion de complexit peut tre mesure en temps ou en taille de mmoire ncessaire
dans le cas dalgorithmes sous forme de programmes informatiques ou tudie dans le cadre
de modles de traitement et stockage de linformation (structures de donnes) proches du
fonctionnement des ordinateurs.
Cette notion de complexit permet de comparer des algorithmes entres eux et de rechercher
lalgorithme le plus ecace pour un problme donn. Cela permet aussi de classier les
problmes selon la complexit des algorithmes permettant de les rsoudre.
Pour des problmes dont on sait quil nexiste probablement pas dalgorithme ecace, on
peut rechercher des heuristiques : des algorithmes la complexit convenable apportant
des solutions approches dont on matrise lerreur produite.
Les points importants sont :
la complexit en temps, en espace,
la complexit calcule au pire, en moyenne,
la complexit comme critre de comparaison dalgorithmes,
la recherche dalgorithmes optimaux,
les heuristiques dapproximation de solution.
Laspect modles thoriques
Les questions de classication des algorithmes et des problmes peuvent sappuyer sur des
modles thoriques de ce qui est calculable. Pour cela plusieurs modles ont t proposs
tels que les machines de Turing ou les fonctions rcursives de Kleene. Ces modles peuvent
tre considrs comme dautres dnitions, plus thoriques, de ce quest un algorithme. Ils
permettent de mettre en vidence que tous les problmes ne sont pas algorithmiquement
rsolubles (dcidabilit ou indcidabilit). Pour le cas des problmes rsolubles algorithmi-
quement, ces modles thoriques permettent une classication selon leur complexit.
Les points importants sont :
les machines de Turing, fonctions rcursives et autres modles,
les classes de complexit (P, NP, etc...),
les notions de dcidabilit et dindcidabilit.
3.2 Dualit outil-objet
Ces cinq aspects peuvent tre articuls selon une dualit outil-objet, au sens de Douady :
42
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Ainsi, nous disons quun concept est outil lorsque nous focalisons notre intrt
sur lusage qui en est fait pour rsoudre un problme. Un mme outil peut
tre adapt plusieurs problmes, plusieurs outils peuvent tre adapts un
mme problme. Par objet, nous entendons lobjet culturel ayant sa place dans
un dice plus large qui est le savoir savant un moment donn, reconnu
socialement. (Douady, 1986, p. 9)
Parmi les dirents aspects de lalgorithme relevs ci-dessus, certains font rfrence loutil
et dautres lobjet. Regarder lalgorithme en tant quobjet cest sintresser aux questions
de bon fonctionnement, de domaine de validit, de complexit et de description des al-
gorithmes. Ce sont les problmatiques de lalgorithmique. Regarder lalgorithme en tant
quoutil, cest sintresser lutilisation que lon en fait pour rsoudre des problmes. Les
aspects problme et effectivit se rfrent loutil, les aspects preuve, complexit
et modles Thorique se rfrent lobjet :
Outil Objet
Problme Preuve Complexit
Effectivit Modles Thoriques
Cette dualit nous semble particulirement utile en ce qui concerne lalgorithmique : la
particularit des algorithmes dtre des mthodes de rsolution de problme (aspect pro-
blme) faciles transfrer (aspect effectif) implique un risque de ne considrer lal-
gorithmique uniquement sur ce point de vue outil (notamment dans un contexte den-
seignement). Or lanalyse ci-dessus laisse percevoir un objet riche avec un potentiel fort
denrichissement de lactivit mathmatique (en particulier du point de vue de la preuve).
Nous reviendrons plus loin sur la dualit outil-objet autour de lalgorithme.
Conclusion et nouvelles questions
Ces aspects constituent pour nous un premier modle pistmologique pour lalgorithmique
et fournissent une rponse la question Q1 :
Question Q1. Quels sont les lments constitutifs spciques du concept dalgorithme ?
Quels sont lobjet et les proccupations fondamentales de la discipline algorithmique ? Quel
lien entretiennent algorithme et preuve ?
Cette analyse du concept sous forme daspects peut constituer un outil relativement souple
danalyse : en relevant les aspects prsents dans un discours ou un document, on peut
tudier quelle vision de lalgorithme est en jeu et si les aspect outils et objets sont prsents.
En particulier, cet outil peut permettre de fournir certaines rponses aux questions Q5, Q6
et Q7.
Cela nous amne reformuler ces questions en fonction de ce premier modle :
Question Q5
aspects
. Quels aspects de lalgorithme sont prsents dans les programmes
de mathmatiques et documents daccompagnements du lyce ? Les aspects outils et objets
sont-ils reprsents ? Quen est-il dans les programmes de la spcialit ISN?
Question Q6
aspects
. Quels aspects de lalgorithme sont prsents dans les manuels de
mathmatiques ? Les aspects outils et objets sont-ils reprsents ?
Question Q7
aspects
. Quels aspects de lalgorithme sont prsents dans les ressources en
ligne ? Les aspects outils et objets sont-ils reprsents ? Y-a-t-il une dirence entre les
documents de formation et ceux pour la classe ?
43
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
La question (Q4) concerne entre autres le modle pistmologique dvelopp pour (Q1).
On peut maintenant reformuler cette question :
Question Q4
aspects
. Notre modle des aspects de lalgorithme saccorde-il avec la per-
ception quont les chercheurs ? Le modle peut-il nous informer sur les variations que lon
pourrait entrevoir dans les discours de chercheurs ?
44
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 2
Rexion sur la pense
algorithmique : apport dun point de
vue extrieur aux mathmatiques
Sommaire
1 La Pense ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2 La pense algorithmique en tant que pense mathmatique . . 46
2.1 Considrations pistmologiques . . . . . . . . . . . . . . . . . . 46
2.2 Perspectives pour lenseignement . . . . . . . . . . . . . . . . . . 48
3 Pense algorithmique versus pense mathmatique . . . . . . . 48
3.1 Considrations pistmologiques . . . . . . . . . . . . . . . . . . 48
3.2 Perspectives pour lenseignement . . . . . . . . . . . . . . . . . . 51
Conclusion et nouvelles questions . . . . . . . . . . . . . . . . . . . . . 53
Nous avons prsent dans le chapitre prcdent, une analyse pistmologique de lalgo-
rithme sous forme daspects. Cela fournit un modle du concept-algorithme, mais cela
ne permet pas de dcrire lactivit algorithmique elle-mme. Les exemples prsents pr-
cdemment ont montr des facettes de cette activit algorithmique qui semble partager
beaucoup avec lactivit mathmatique.
Cela soulve la question de lexistence dun mode de pense algorithmique, proche de celui
des mathmatiques, et de ses spcicits. Cela tait lobjet de la question Q2 :
Question Q2. Peut-on parler dactivit ou de pense algorithmique dans les mathma-
tiques ? Et dans linformatique ? Quelles perspectives cela peut-il ouvrir pour une approche
didactique ?
Nous reformulons cette question en trois sous-questions auxquelles nous allons essayer de
rpondre par la suite.
Q2a : Quest-ce que la pense algorithmique et quelles sont ses caractristiques ?
Q2b : Quelles relations entretiennent la pense mathmatique et la pense algorith-
mique ? La pense algorithmique et les diverses penses mathmatiques ?
Q2c : Quels intrts didactiques distinguer la pense algorithmique de/dans la
pense mathmatique ?
45
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Nous nous focaliserons essentiellement sur la relation entre pense mathmatique et al-
gorithmique dun point de vue pistmologique et nous soulverons certains aspects im-
portants pour la mise en uvre et lapprentissage de ces penses. Notre objectif tant de
produire un modle de lactivit algorithmique, nous essaierons de mettre en avant quelques
critres importants pour ce futur modle.
Lalgorithmique peut tre vue comme une branche des mathmatiques, mais nous lavons vu
prcdemment, on peut voir lalgorithmique dans un sens plus large comme linformatique
toute entire (cest en particulier ce que propose Knuth). Nous articulerons donc notre
questionnement suivant ces deux visions de la pense algorithmique : la premire comme
une pense des mathmatiques, la seconde comme la pense de la science informatique.
1 La Pense ?
Commenons par prciser ce que nous entendons par pense (mathmatique ou algorith-
mique). Le terme provient des recherches anglo-saxonnes sur le mathematical thinking.
Concernant le sens des termes thinking ou pense nous nous rfrons notamment (Tall,
1991) et (Rasmussen, Zandieh, King, & Teppo, 2005) :
[We] take a critical look at advanced mathematical thinking as part of the living
process of human thought rather than the immutable nal product of logical
deduction. (Tall, 1991, p. 21)
Nous faisons donc rfrence la pense (mathmatique, algorithmique, etc.) comme activit
de lesprit humain et non comme son produit. Dautre part, nous utiliserons, comme le font
Rasmussen et al. (2005), le terme dactivit (mathmatique, algorithmique...) de manire
quivalente au terme pense, an dinsister sur le fait que nous nopposons pas ici la pense
laction, mais que nous parlons de pense en tant quactivit globale, la fois intellectuelle
et pratique :
We also use the term activity, rather than thinking. This shift in language re-
ects our characterization of progression in mathematical thinking as acts of
participation in a variety of dierent socially or culturally situated mathema-
tical practices. [...] We view the relationship between doing and thinking to be
reexive in nature, not dichotomous. (Rasmussen et al., 2005, p. 51)
On retrouve aussi souvent le terme de advanced mathematical thinking , quil faut
comprendre au sens de la pense (ou lactivit) du chercheur en mathmatiques. Nous
nous placerons par rapport cela dans la mme optique que Harel et Sowder (2005) :
Advanced mathematical thinking, usually conceived as thinking in advanced
mathematics, might protably be viewed as advanced thinking in mathematics
(advanced mathematical-thinking). (Harel & Sowder, 2005, p. 1)
Nous concevrons ladvanced mathematical thinking de cette faon, comme la pense avance
en mathmatique. Nous donnerons un sens quivalent un advanced algorithmic thinking.
2 La pense algorithmique en tant que pense mathmatique
2.1 Considrations pistmologiques
La pense algorithmique, contrairement la pense mathmatique, na t que trs peu
tudie. Dans les travaux o on la rencontre, elle est souvent aborde comme une pense
46
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
mathmatique en particulier. Cest ce point de vue que nous allons adopter dans un pre-
mier temps.
Mingus et Grassl (1998) tudient la vision denseignants de mathmatiques en activit et en
formation concernant la pense algorithmique, la pense rcursive et le problem-solving. Ils
se placent implicitement lintrieur de la pense mathmatique et dnissent lalgorithmic
thinking de la manire suivante :
Algorithmic thinking is a method of thinking and guiding
thought processes that uses step-by-step procedures, requires inputs and pro-
duces outputs, requires decisions about the quality and appropriateness of infor-
mation coming and information going out, and monitors the thought processes
as a means of controlling and directing the thinking process. In essence, al-
gorithmic thinking is simultaneously a method of thinking and a means for
thinking about ones thinking. (Mingus & Grassl, 1998, p. 34)
Les auteurs donnent comme modle (au sens de modlisation) de la pense algorithmique,
lheuristique de rsolution de problmes propose par Plya (1945). Ceci pose la question
de la dirence entre problem-solving et pense algorithmique, ainsi que la dirence avec
lactivit mathmatique en gnral (lheuristique de Plya concernant la rsolution de nim-
porte quel problme mathmatique). Il nous semble que les auteurs font plutt rfrence
ici ce que lon pourrait traduire par une pense algorithmise , cest--dire un eort
pour forcer sa pense, en mathmatique par exemple, suivre un cheminement tabli, sys-
tmatique, avec un contrle sur son produit.
Nous nous distinguons dune telle approche. Nous nous intressons ici, non pas rendre la
pense algorithmique ( lalgorithmiser), mais bien ltude de la pense (ou lactivit)
en algorithmique
1
. Dans cette optique, la dnition prcdente nous semble trop ambige
et non eective pour notre questionnement.
Hart (1998) parle, quant lui, dalgorithm problem solving, un thme central dans toutes
les branches des mathmatiques discrtes, quil dnit comme ltude de la question : une
solution peut-elle tre construite de manire eective ? On trouve ici encore le problem-
solving et lalgorithmique mls. La pense algorithmique serait alors une faon daborder
un problme en essayant de systmatiser sa rsolution, de se questionner sur la faon dont
des algorithmes pourraient ou non le rsoudre. On peut rapprocher cette dnition de la
vision constructiviste des mathmatiques.
Notre vision de la pense algorithmique se rapproche de celle de Hart (1998). Lactivit
mathmatique tant centre sur la rsolution de problmes, la pense algorithmique, en
tant que pense mathmatique parmi dautres, serait une approche particulire des pro-
blmes mathmatiques (de certains en tout cas).
Ces problmes sont gnralement issus dune branche particulire des mathmatiques, les
mathmatiques discrtes ou bien dune discrtisation dobjets du continu (problmes dap-
proximation en analyse, etc.).
1. De mme que les penses algbrique ou statistique ne sont pas la conduite de sa pense de manire
algbrique ou statistique mais les modes de pense en jeu dans les branches concernes.
47
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
2.2 Perspectives pour lenseignement
Rasmussen et al. (2005) sintressent ladvanced mathematical thinking dans une perspec-
tive ducative. Dans une description de ce quils nomment advancing mathematical activity,
ils se focalisent sur trois grandes pratiques dans lactivit mathmatique :
Students symbolizing, algorithmatizing, and dening activities are three examples
of such social or cultural practices. These three mathematical practices are not
meant to be exhaustive, but represent a useful set of core practices that cut
across all mathematical domains. Another signicant mathematical practice,
one that we leave to later analysis, is justifying. (Rasmussen et al., 2005, p. 52)
Attardons-nous sur ce quils nomment lalgorithmatizing. Bien quils utilisent le terme
algorithme dans un sens plus large que le notre, as a reference for a generalized procedure
that is eective across a wide range of tasks (Rasmussen et al., 2005, p. 63), leur approche
nous parat enrichissante :
Keeping this activity perspective of algorithms in the forefront suggests that
instead of focusing on the acquisition of these algorithms, we can characterize
learning to use and understand algorithms as participating in the practice of
algorithmatizing. By examining the activity that leads to the creation and use
of artifacts, as opposed to the acquisition of the artifacts, we view mathematical
learning of and in reference to algorithms through a dierent lens. (Rasmussen
et al., 2005, p. 63)
Lactivit algorithmique ne se rsume donc pas lapprentissage et la mise en uvre dalgo-
rithmes mais englobe aussi leur production, leur comprhension et leur tude. Rasmussen
et al. (2005) montrent ensuite quil est possible et pertinent de mettre des tudiants en
situation dalgorithmitazing.
En mathmatiques, lactivit algorithmique peut se dnir comme une partie de lactivit
en jeu dans la rsolution dune certaine catgorie de problmes dans laquelle on recherche
un procd systmatique et eectif de rsolution. Il est possible daborder lobjet algorithme
et la pense algorithmique en classe dans le cadre dune relle activit mathmatique (r-
solution de problmes, preuve de solutions, etc).
Cependant, il est peut-tre restrictif de voir la pense algorithmique comme une pense
des mathmatiques et il nous semble que ltude de la pense algorithmique comme la
pense en jeu dans la science informatique (lalgorithmics de Knuth) peut enrichir notre
approche.
3 Pense algorithmique versus pense mathmatique
3.1 Considrations pistmologiques
Donald Knuth, mathmaticien de formation, devenu lun des pionniers de linformatique
et auteur des ouvrages de rfrence The Art of Computer Programming, sest beaucoup
intress aux liens quentretiennent mathmatiques et informatique. Dans larticle Algo-
rithmic thinking and mathematical thinking (Knuth, 1985), il aborde la question du rle
de lalgorithmique dans les sciences mathmatiques et se demande ce qui direncie al-
gorithmic thinking et mathematical thinking
2
. Il formule Do most mathematicians have
2. Comme prcis prcdemment, pour Knuth, algorithmics prend le sens dinformatique (computer
science)
48
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Figure 2.1 Les direntes penses mathmatiques selon Knuth et leur prsence dans
divers ouvrages mathmatiques.
an essentially dierent thinking process from that of most computer scientists ? (Knuth,
1985).
Knuth sintresse donc la pense algorithmique comme distincte des mathmatiques. Il
sappuie sur des ouvrages de mathmatiques et sur des preuves qui y sont prsentes pour
analyser la pense mathmatique et la comparer la pense algorithmique. Il divise la
pense mathmatique en neuf modes de pense quil rsume dans le tableau de la gure
2.1 :
la manipulation de formules,
la reprsentation dune ralit,
le comportement des valeurs de fonctions,
la rduction des problmes plus simples,
la manipulation de linni,
la gnralisation,
le raisonnement abstrait,
les structures dinformation,
les algorithmes.
Prcisons que Knuth ne considre pas ce dcoupage comme parfait ou immuable : Thus, I
am not all certain of the categories ; they are simply put forward as a basis for discussion
Knuth (1985, p. 180)
En sappuyant sur ce dcoupage, il analyse ce quil considre comme la pense algorith-
mique. Selon lui elle englobe, parmi les manires de raisonner prcdentes, la reprsenta-
tion dune ralit, la rduction des problmes plus simples, le raisonnement abstrait, les
structures dinformation, les algorithmes et, dans une moindre mesure, la manipulation de
formules.
On pourrait reprocher Knuth de mlanger la pense (algorithmique ou mathmatique)
et les questions auxquelles cette pense sapplique ou les objets dont elle traite. Cepen-
dant, son analyse peut enrichir notre questionnement : nest-ce pas davantage le type de
49
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
questionnement et les objets tudis qui distinguent mathmatique et algorithmique ?
Wilf (1982) semble aller dans ce sens : dans un article intitul What is an Answer, il
analyse ce qui est une rponse acceptable dans un problme de dnombrement et montre
notamment quune formule de dnombrement peut tre parfois plus complexe
3
valuer
que lensemble tudi numrer. Dans un tel cas, peut-on considrer la rponse produite
comme une rponse acceptable du point de vue mathmatique ? Du point de vue algorith-
mique ?
De tels exemples ne sont pas uniquement lis aux mathmatiques discrtes. Par exemple,
une formule exacte donnant la valeur dune intgrale est-elle toujours plus simple valuer
que lintgrale elle-mme ? Un tel exemple est dvelopp dans Maurer (1998).
Il semblerait que ce qui caractrise la pense algorithmique soit plutt une proccupation
quant leectivit des rsultats recherchs quune relle dirence dans lactivit.
Cependant, Knuth (1985) note aussi que deux aspects fondamentaux de la pense algorith-
mique ne sont pas prsents dans sa liste des modes de pense mathmatique : la notion de
complexit et lopration daectation quil symbolise par := (et que nous avons aussi
note prcdemment).
Selon lui, ces deux aspects pourraient tre ce qui direncie les penses mathmatiques et
algorithmiques.
La notion de complexit est relative lecacit dun algorithme ou dune procdure
eective. Elle englobe toutes les questions se rapportant au nombre dtapes de calcul,
au temps, ou lespace mmoire, ncessaires lexcution dun algorithme, dans le pire
des cas ou en moyenne. La notion de complexit est clairement lie des problmatiques
de mathmatiques constructives ou eectives, cependant elle prcise ces notions et permet
une hirarchisation des algorithmes selon certains critres deectivit relle, ou decacit.
La notion daectation (ou assignation) voque ici le concept de variable informatique,
par opposition variable mathmatique. Cette notion daectation (de mme que le con-
cept de variable informatique) est en lien troit avec la notion de complexit. En eet, cest
lutilisation de variables informatiques qui permet la production dalgorithmes ecaces en
terme de complexit en espace.
Labsence de ces deux aspects dans la pense mathmatique peut se rsumer par les re-
marques de Knuth concernant Bishop
4
:
Bishops mathematics is constructive, but it does not have all the ingredients
of an algorithm because it ignores the cost of the constructions. [...] The as-
signement operation in Bishops constructions arent really assignements, they
are simply denitions of quantities, and those denitions wont be changed.
(Knuth, 1985, p. 181)
En dautres termes, la pense des mathmatiques constructives dire de la pense algo-
rithmique par le fait quelle ne questionne pas lecacit des algorithmes quelle produit,
3. au sens de la complexit algorithmique
4. Bishop est un mathmaticien amricain, dfenseur du constructivisme en mathmatiques et fondateur
de lanalyse constructive.
50
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
quelle ne cherche pas toujours dcrire avec prcision ces algorithmes et quelle nutilise
pas la notion de variable informatique.
Dans un autre article traitant des mmes questions, Knuth (1974) aborde les interactions
entre informatique et mathmatiques et voque les diverses faons dont linformatique
inuence les mathmatiques. Il note que linformatique permet deectuer certains calculs
inaccessibles et de valider ou dinvalider certaines conjectures, que linformatique a fait
mettre laccent sur les constructions en mathmatiques (notamment par le remplacement
de preuves constructives par des algorithmes), que linformatique permet la construction
de certaines bijections et que linformatique a compltement tendu et enrichi le champ
des mathmatiques discrtes. Cependant, limpact le plus notable selon Knuth (1974) est
que linformatique apporte de nouveaux problmes.
The most signicant thing is that the study of algorithms themselves has opened
up a fertile vein of interesting new mathematical problems ; it provides a breath
of life for many areas of mathematics that had been suering from a lack of
new ideas. (Knuth, 1974, p. 328)
Le mathmaticien Herbert S. Wilf, dans larticle Mathematics : An Experimental Science
(2005), voque lui aussi les changements apports par linformatique aux mathmatiques. Il
se concentre principalement sur les interactions possibles lors des phases dexprimentation
et de conjecture dans lactivit mathmatique. La pense mathmatique se trouve donc
change par linformatique, et son aspect exprimental sen trouve renforc :
A mathematician can act in concert with a computer to explore a world wi-
thin mathematics. From such explorations there can grow understanding, and
conjectures, and roads to proofs, and phenomena that would not have been
imaginable in the pre-computer era. (Wilf, 2005, p. 999)
Finalement, linformatique est source de questions dordre mathmatique mais aussi de
questions sur lessence des mathmatiques. Ces questionnements doivent aussi atteindre
lenseignement des mathmatiques, dans ses pratiques mais aussi dans ses contenus.
The most surprising thing to me, in my own experiences with applications of
mathematics to computer science, has been the fact that so much of the mathe-
matics has been of a particular discrete type. [...] Such mathematics was almost
entirely absent from my own training, although I had a reasonably good un-
dergraduate and graduate education mathematics. Nearly all of my encounters
with such techniques during my student days occurred when working problems
from the American Mathematical Monthly. I have naturally been wondering
whether or not the traditional curriculum the calculus courses, etc. should
be revised in order to include more of these discrete mathematical manipula-
tions, or whether computer science is exceptional in its frequent application of
them. (Knuth, 1974, p. 329)
3.2 Perspectives pour lenseignement
Une vision de la pense algorithmique, non seulement comme une pense mathmatique
mais aussi comme la pense informatique semble largir les perspectives pour son ensei-
gnement.
Les aspects que Knuth prsente comme absents de la pense mathmatique descrip-
tion eective dalgorithmes et tude de leur complexit nous paraissent tre propices
51
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
une vritable mise en uvre de la pense mathmatique. De plus, ces aspects sont de
plus en plus pris en compte par les mathmaticiens qui travaillent avec des algorithmes, et
la frontire entre pense algorithmique et pense mathmatique nen devient que plus oue.
Selon le mathmaticien Lovsz (1988, 2007), lactivit mathmatique a subi des change-
ments importants durant les cinquante dernires annes et le dveloppement de linforma-
tique en est la source la plus importante. Il rsume son questionnement ainsi :
Is algorithmic mathematics of higher value than classical, structure-oriented,
theorem-proof mathematics, or does it just hide the essence of things by making
them more complicated then necessary ? Does teaching of an algorithm lead to
a better understanding of the underlying structure, or is it a more abstract,
more elegant setting that does so ? (Lovsz, 1988, p. 1)
Il insiste sur le fait que lalgorithmique peut apporter un regard nouveau sur des problmes
anciens et se base sur divers exemples. Il sinterroge alors sur les implications de tels
changements sur lenseignement des mathmatiques, et propose des pistes pour faire entrer
lalgorithmique dans lenseignement des mathmatiques. Lovsz insiste sur le fait que la
cration dalgorithmes devrait tre aborde avant lapprentissage de leur excution. Dans
un deuxime temps, il considre que ltude dalgorithmes et de leur analyse devrait tre
aborde au mme titre que celle de thormes et de leur preuve. Il met aussi en garde
contre une utilisation trop rapide de lordinateur dans ltude des algorithmes.
The route from the mathematical idea of an algorithm to a computer program
is long. It takes the careful design of the algorithm; analysis and improvements
of running time and space requirements ; selection of (sometimes mathemati-
cally very involved) data structures ; and programming. In college, to follow
this route is very instructive for the students. But even in secondary school
mathematics, at least the mathematics and implementation of an algorithm
should be distinguished. (Lovsz, 1988, p. 10)
Dautre part, il insiste sur le fait que lactivit mathmatique est en plein changement pour
plusieurs autres raisons et insiste sur le fait que lenseignement des mathmatiques doit
suivre cette volution :
In addition, as we will see, we should put more emphasis on (which also means
giving more teaching time to) some non-traditional mathematical activities
like algorithm design, modeling, experimentation and exposition. I also have
to emphasize the necessity of preserving problem solving as a major feature of
teaching mathematics. (Lovsz, 2007, p. 3)
Il semble donc important que la pense algorithmique prenne une place dans lenseignement
des mathmatiques. Certaines branches des mathmatiques paraissent plus favorables que
dautres au dveloppement de cette pense. Les mathmatiques discrtes, qui se situent
la frontire entre mathmatiques et informatique, peuvent tre un champ fertile pour
dvelopper la pense algorithmique et sont un domaine favorable lexprimentation, la
modlisation, au problem-solving et la preuve (Ouvrier-Buet, 2009).
Des exprimentations ont t menes en classe avec des rsultats convaincants, concer-
nant lalgorithmique en thorie des graphes, optimisation combinatoire ou dans dautres
branches des mathmatiques discrtes (Schuster, 2004 ; Hart, 1998).
52
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conclusion et nouvelles questions
La pense algorithmique peut tre vue comme faisant partie de la pense mathmatique
et nous avons voqu certaines de ses caractristiques. Cependant, voir la pense algo-
rithmique comme pense majeure de linformatique permet un rel enrichissement de son
analyse. Nous avons montr en quoi cette pense algorithmique inue sur la pense ma-
thmatique. Il nous semble donc que, pour aborder la pense algorithmique, il soit indis-
pensable dapprhender simultanment les deux points de vue, intra-mathmatique mais
aussi extra-mathmatique. Cela constitue une premire rponse Q2.
Pour poursuivre le travail, une tude dtaille des dirences et similarits entre pense
mathmatique et algorithmique reste dvelopper et nous lavons vu, ce sont davantage
les objets et les questions en jeu que lactivit elle-mme qui dire. Notamment, il nous
semblerait appropri dtudier en quoi les modles pour la pense mathmatique et son
enseignement (par exemple ceux de Rasmussen et al. (2005) ou de Dreyfus (1991)) peuvent
se direncier de modles pour la pense algorithmique.
Pour autant, les conclusions que nous apportons ici fournissent dj des repres importants
pour construire un modle de lactivit algorithmique Cest ce que nous proposerons dans le
chapitre suivant en abordant la question Q3. Le modle que nous proposerons peut donner
aussi un certain clairage pour poursuivre ltude de la pense algorithmique.
53
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
54
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 3
Un modle de conceptions pour
lalgorithme
Sommaire
1 La notion de conception et le modle cK,c . . . . . . . . . . . . . 55
2 Problmes et problmes dalgorithmique . . . . . . . . . . . . . 57
2.1 Une notion de problme adapte . . . . . . . . . . . . . . . . . . 57
2.2 Direntes familles de problmes . . . . . . . . . . . . . . . . . . 58
2.3 Dialectique outil-objet . . . . . . . . . . . . . . . . . . . . . . . . 59
3 Trois fois deux conceptions pour lalgorithme . . . . . . . . . . 60
3.1 Trois paradigmes pour lalgorithmique . . . . . . . . . . . . . . . 60
3.2 Six conceptions pour lalgorithme . . . . . . . . . . . . . . . . . . 62
3.3 Relation entre ces conceptions . . . . . . . . . . . . . . . . . . . . 64
3.4 Relation aux aspects . . . . . . . . . . . . . . . . . . . . . . . . 66
Conclusion et nouvelles questions . . . . . . . . . . . . . . . . . . . . . 66
Nous avons dj dtaill de nombreux points de lpistmologie de lalgorithme et de lal-
gorithmique dans les sections prcdentes. En particulier, le chapitre 2 a mis en avant des
lments importants pour comprendre et dcrire lactivit algorithmique. Nous voulons
maintenant proposer un modle de cette activit algorithmique. Cela tait lobjet de la
question Q3 :
Question Q3. Peut-on dcrire un modle de lactivit algorithmique permettant de ques-
tionner la transposition didactique ?
Nous prsentons maintenant un tel modle, qui sappuie sur la notion de conception du
modle cK,c, dvelopp par Balache et qui complte les analyses du concept algorithme
du chapitre 1.
1 La notion de conception et le modle cK,c
La notion de conception, dnie par Balache, drive de la notion de concept dnie par
(Vergnaud, 1990).
Vergnaud dnit un concept C comme un triplet (S, I, S) o :
S est lensemble des situations qui donnent du sens au concept,
55
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
I est lensemble des invariants opratoires,
S est lensemble des reprsentations du concept.
Une conception est, pour Vergnaud, lquivalent du concept mais du ct de lindividu.
Balache propose de dcrire les conceptions en prcisant deux niveaux dinvariants : les
oprateurs qui permettent dagir sur la situation et les structures de contrle qui justient
et valident lutilisation des oprateurs.
Une conception C est alors dcrite par un quadruplet (P, R, L, ) o :
P est un ensemble de problmes sur lesquels C est opratoire,
R est un ensemble doprateurs,
L est un systme de reprsentation qui permet dexprimer les lments de P et de R,
est une structure de contrle qui assure la non contradiction de C. Un problme p
de P sera rsolu sil existe r de R et s de tel que s(r(p)) est vrai.
Nous appelons oprateur ce qui permet la transformation des problmes ; ces
oprateurs sont attests par des productions et des comportements.
Un systme de reprsentation (langagier ou non) permet lexpression des pro-
blmes et des oprateurs.
Enn, une structure de contrle assure la non contradiction de la conception
et contient au moins sous la forme doracles les outils de dcision sur la lgi-
timit de lemploi dun oprateur ou sur ltat (rsolu ou non) dun problme.
(Balache & Margolinas, 2005, p. 80)
La notion de conception de Balache, par rapport au concept de Vergnaud, nous permet-
tra de mettre en avant une dualit outil-objet laide de la relation entre oprateurs et
structures de contrle. Nous verrons aussi quen choisissant la notion de problme utilise
par Giroud (2011), on peut prciser cette dualit.
Dans notre cas, il sagit de dnir les grandes conceptions autour du concept algorithme.
Nous ne chercherons donc pas dcrire en dtail les ensembles P et R, comme cela peut
tre fait dans le cas de conceptions plus prcises et spciques (comme celles, par exemple,
lies au concept de tangente une courbe de fonction ou encore de cercle).
Nous nous limiterons plutt une caractrisation de ces ensembles de problmes et dop-
rateurs, dans le but de montrer en quoi les conceptions que nous prsentons ncessitent
dtre distingues.
Lobjectif est de caractriser des conceptions pour une tude pistmologique de lalgo-
rithme. Nous nous situons donc ici du ct du savoir-savant. Cela correspond aux -
conceptions dcrites par Balache et Margolinas (2005) :
On appellera C

une conception rendant compte du texte du savoir mathma-


tique.
Contrairement la conception gnrale dans labsolu, C

est plus porte. La


conception peut tre drive du corpus des savoirs consensuels (acadmiques)
en mathmatiques dont on sait quils le sont du point de vue des systmes de
reprsentation quils manipulent et des structures de contrle (i.e. la dmons-
tration).
On appellera -objet (ou objet mathmatique) la classe dquivalence de concep-
tions C

. (Balache & Margolinas, 2005, p. 98)


56
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Nous pouvons reformuler notre objectif : dcrire le -objet algorithme. Comme prcis
prcdemment, il sagira pour nous dtudier le corpus du savoir en mathmatique et en
informatique.
2 Problmes et problmes dalgorithmique
2.1 Une notion de problme adapte
Balache et Margolinas (2005) dnissent la notion de problme comme suit :
Nous appelons problmes les perturbations du systme. Le domaine de la va-
lidit de la conception, ou sphre de pratique, est constitu de lensemble des
problmes que la conception permet de rsoudre et qui ne conduisent pas
une rupture de lquilibre du [sujet<>milieu]. (Balache & Margolinas, 2005,
p. 80)
Cette dnition correspond un besoin de dcrire les conceptions dun sujet dans une
situation particulire. Elle na pas de sens lorsquil sagit de dcrire les -conceptions.
Cela ne permet pas de rendre compte des problmes identis comme tels par le savoir
savant. Il est ncessaire ici de proposer une autre dnition du terme problme, adapte
la description de -conceptions (en mathmatiques ou en mathmatique-informatique en
tout cas). Pour cela, nous nous appuierons sur la notion de problme telle quelle est dnie
dans la thorie de la complexit algorithmique. Une dnition de ce type a notamment t
utilise par Giroud pour tudier la notion de concept-problme dans sa thse (Giroud,
2011). Un problme, dans la thorie de la complexit algorithmique, peut tre dcrit ainsi :
For our purposes, a problem will be a general question to be answered, usually
possessing several parameters, or free variables, whose values are left unspe-
cied. A problem is described by giving : (1) a general description of all its
parameters, and (2) a statement of what properties the answer, or solution, is
required to satisfy. An instance of a problem is obtained by specifying particular
values for all the problems parameters. (Garey & Johnson, 1979, p. 4)
Pour la suite, nous considrerons donc quun problme p est un couple (I, Q), o I est
lensemble des instances (pouvant tre dcrit par plusieurs paramtres) du problme et Q
une question portant sur ces instances (spciant les proprits de la solution attendue).
Lorsque lon xe une instance i I du problme, nous parlerons dinstanciation du pro-
blme. Lorsque lon rduit lensemble de dnition des instances I

I, (I

, Q) on parlera
de sous-problme de (I, Q).
Notons quau sens de Turing, tout problme peut tre ramen un problme de reconnais-
sance, cest--dire, un problme de test de lappartenance de linstance un ensemble
donn, autrement dit un problme dont la question attend une rponse de type oui ou
non. Il est clair que dans un but didactique, rduire tout problme une question de re-
connaissance est trop restrictif, cest pourquoi nous faisons le choix de permettre tout type
de question pour un problme (du moment quelle dnit clairement les caractristiques
de la rponse attendue).
Exemple. Avec cette dnition de problme, on peut dcrire les problmes suivants :
p
CE
, le problme de lexistence dun cycle Eulrien :
I
CE
= lensemble des graphes nis
Q
CE
=Contient-il un cycle eulrien ?
57
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
p
Tri
, le problme du tri :
I
Tri
= lensemble des listes L dentiers
Q
Tri
=Quelle est la liste ordonne des lments de L?
Pour rsoudre un problme p = (I, Q), un algorithme peut tre donn. Un tel algorithme
doit pouvoir recevoir en entre nimporte quelle instance i I du problme p et rpondre
la question Q pose. Il est clair quun enjeu de preuve est alors prsent : lalgorithme
propos rpond-il toujours la question et donne-t-il une rponse valide ?
Une autre faon de rpondre un problme p est dnoncer un thorme qui permet de
rpondre de manire gnrique p. Dans ce cas aussi, cest la preuve qui garantit la
validit de la rponse propose. Cette preuve peut tre (mais ce nest pas toujours le cas)
algorithmique : elle contient une description constructive de la rponse toute instance de
p qui se ferait de manire nie. Dans une preuve constructive, on peut dire que lalgorithme
implicite et sa preuve sont prsents simultanment.
Lorsquil existe un algorithme (ou un thorme et une preuve algorithmique) rsolvant un
problme, on dira quil est algorithmiquement rsoluble.
2.2 Direntes familles de problmes
Nous noterons P lensemble des problmes tels que nous les avons dnis prcdemment.
Lensemble des problmes pouvant tre rsolus algorithmiquement sera not P
a
.
Nous dnissons aussi le sous-ensemble P P des problmes dalgorithmique. Ce ne sont
pas les problmes pour lesquels lalgorithme intervient en tant que moyen de rsolution
(mme si cela peut tre le cas) mais ce sont les problmes qui se placent dans le domaine
de lalgorithmique. Autrement dit, P contient les problmes dont la question porte sur un
algorithme (i.e. I contient un ensemble dalgorithmes) ou dont la question spcie que la
rponse doit tre de type algorithmique ou avoir un lien avec des notions dalgorithmique
(de complexit par exemple).
Le schma suivant rsume ces ensembles :
P
P
a
P
p
0
P
ca
P
cp
Dans lensemble P, on peut distinguer les lments et sous-ensembles suivants :
le problme p
0
qui consiste savoir si un problme p appartient P
a
autrement dit : p
0
= (I, Q) avec
I = P et Q = Est-il rsoluble algorithmiquement ?
la famille P
ca
des problmes prenant pour instance un algorithme a et dont la question
porte sur la complexit de a.
la famille P
cp
des problmes prenant pour instance un problme p et dont la question
porte sur la complexit de la rsolution algorithmique de p.
58
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Exemples :
p
CE
, p
Tri
sont des problmes de P
a
.
On peut instancier p
0
avec le problme p
CE
, cela revient se poser la question : p
CE
est-il rsoluble algorithmiquement ?.
p
Cmoyenne
= ({algorithmes en Caml }, quelle est sa complexit en moyenne ?) est
un problme de P
ca
. On pourrait par exemple linstancier sur lalgorithme 2.
p
poly
= (P, Est-il polynomial ?) est un problme de la famille P
cp
. On peut lins-
tancier sur p
CE
ou p
Tri
lorsque lon se demande sil existe un algorithme polynomial
pour les rsoudre.
2.3 Dialectique outil-objet
Lalgorithme est un outil de rsolution de problmes. Cest aussi un objet dtude des
mathmatiques. Nous voulons ici clarier ces deux aspects en nous appuyant sur la dualit
outil-objet introduite par Douady (1986) et dj cite prcdemment.
Ainsi nous disons quun concept est outil lorsque nous focalisons notre intrt
sur lusage qui en est fait pour rsoudre un problme. Un mme outil peut
tre adapt plusieurs problmes, plusieurs outils peuvent tre adapts un
mme problme. Par objet, nous entendons lobjet culturel ayant sa place dans
un dice plus large qui est le savoir savant un moment donn, reconnu
socialement. (Douady, 1986, p. 9)
Cette dualit outil-objet est particulirement importante concernant le concept dalgo-
rithme. Cest seulement laspect objet de lalgorithme qui le direncie dautres processus
de rsolution de problme. Le concept dalgorithme na de sens que si lon prend du recul
sur la rsolution gnrique dun problme par un algorithme, via sa validation, son analyse,
son questionnement.
Cette dualit sarticule avec la notion de problme et de problme instanci tels que nous les
avons dnis et avec les direntes familles de problmes prsentes dans les paragraphes
prcdents. On peut aussi la mettre en lien avec les notions doprateurs et de systmes de
contrle de cK,c.
Notre point de vue sur la dualit outil-objet de lalgorithme est le suivant. On dira que
le concept algorithme est objet, lorsque lon sintresse des problmes o lalgorithme
apparat dans linstance ou dans la question. Que le problme soit instanci ou gnrique,
on considrera que cest laspect objet qui est en jeu. Ainsi, ce sont les problmes de P qui
mettent en jeu lalgorithme comme objet.
Nous considrerons que le concept algorithme est outil, lorsquil est utilis pour la rsolu-
tion dun problme ou dune instance dun problme. Cest--dire que le concept est outil
lorsquil est utilis dans la rsolution de problmes de P
a
. Notons cependant que cest
seulement dans lutilisation dun algorithme A pour rsoudre le problme ou une instance
du problme que lalgorithme A est outil. Ds lors que sont questionnes sa validit, sa
construction ou ses proprits, on sintresse en ralit un problme de P instanci pour
lalgorithme A.
59
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
O
B
J
E
T
O
U
T
I
L
Problme p P
a
I
p
: instances
Q
p
: question
Solution gnrique
algorithme, thorme, for-
mule, programme...
Problme instanci p

i : instance I
p
Q
p
(i) : question instancie
Rponse R
Qp
(i)
instanciation
Problme p P
I
p
: instances
Q
p
: question
Solution gnrique
thorme
algorithme, programme
Problme instanci p

i : instance I
p
Q
p
(i) : question instancie
Solution particulire
thorme
algorithme, programme
instanciation
instanci sur
En termes de conceptions, on peut considrer quil y a un glissement doutil vers objet
lorsque les structures de contrles deviennent oprateurs.
Le modle cK,c propose une distinction explicite entre des oprateurs, qui per-
mettent laction, et des contrles qui jugent de la pertinence et de la validit de
laction une mta-action. Une des dicults de ce modle est de caractri-
ser clairement cette distinction[...]. Le caractre implicite des contrles posera
essentiellement un problme dobservables. En revanche on voit souvent, dans
les travaux sappuyant sur cK,c, ressurgir la gne que suscite cette permabilit.
[...] La permabilit peut en fait sinterprter de deux manires.
La premire consiste en lvolution du statut des objets considrs, quon pour-
rait rapprocher de leur existence sous forme doutil ou dobjet (Douady, 1986).
La permabilit rete alors une multiplicit des points de vue possibles de
lobservateur, et nous retiendrons quun mme objet de connaissance pourra
donner lieu dirents oprateurs et contrles. (Mithalal, 2010, p. 106)
Le problme des observables et de la permabilit oprateur-contrle est moins gnant pour
dcrire des -conceptions, tant donn que lon reste, ce niveau, dans des considrations
thoriques. Cependant le lien la dialectique outil-objet nous pousse tenir compte de
cette permabilit. Cela peut se faire en doublant chaque conception en une conception
du ct outil et une autre du ct objet dans laquelle les contrles de la conception outil
deviennent oprateurs.
3 Trois fois deux conceptions pour lalgorithme
3.1 Trois paradigmes pour lalgorithmique
Nous distinguons tout dabord trois cadres dans lesquels vont tre dcrites les conceptions.
Nous les appelons des paradigmes. Ils sont la preuve algorithmique, lalgorithme mathma-
tique et lalgorithme informatique. Ces paradigmes correspondent en quelque sorte des
60
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
mode de vie de lalgorithme dans lactivit algorithmique.
Le paradigme Preuve algorithmique (PA) correspond une activit de la forme
Problme-Thorme-Preuve o la preuve est de type constructif et ni, donc de type al-
gorithmique. Les preuves par rcurrence entrent notamment dans ce cadre. Dans ce pa-
radigme, lalgorithme et la preuve sont indissociables : lalgorithme nest pas explicit
directement mais est prsent dans la preuve du thorme. Il peut tre explicit la suite
de la preuve, comme consquence ou corollaire de celle-ci : on se rapproche alors du para-
digme AM.
Le paradigme Algorithme mathmatique (AM) correspond une activit de la forme
Problme-Algorithme-Preuve. Pour un problme donn, on explicite un algorithme rsol-
vant toutes les instances du problme et on fournit une preuve que lalgorithme rpond pour
toute instance et fournit une solution valide (terminaison et correction de lalgorithme).
Lalgorithme et la preuve sont ici compltement dissocis.
Le paradigme Algorithme informatique (AI) correspond une activit de la forme
Problme-Programme-Vrication. Le terme vrication est prendre au sens de la vri-
cation formelle en informatique. Lalgorithme rpondant au problme est exprim sous-
forme dun programme que lon souhaite pouvoir excuter. La validation du programme
nest pas de lordre mathmatique mais plutt informatique, cest--dire suivant des m-
thodes dordre formel (par exemple les analyses lexicales et syntaxiques eectues dans la
compilation ou encore la vrication automatique de certaines proprits du programme).
Cependant, la validation mathmatique, dans le paradigme AM de lalgorithme sous-jacent
au programme, peut fournir une forme de validation du programme dans AI.
Un mme problme peut tre trait dans dirents paradigmes. Son tude peut mme
faire appel successivement plusieurs paradigmes. Ce qui distingue ces paradigmes nest
donc pas les problmes eux-mmes mais leur traitement et la validation des solutions pro-
poses. Ils se distinguent aussi par la forme sous laquelle sont exprims les algorithmes.
On entrevoit ici lintrt du modle de conception pour exprimer ces dirences en termes
doprateurs, de systmes de reprsentation et de structures de contrle.
Les systmes de reprsentation pour lalgorithme sont un lment important de distinction
entre les trois paradigmes mais nen constituent pas lunique critre. Il faut cependant
reconnatre limportance de leur rle dans lexpression des algorithmes. Des questions s-
miotiques apparaissent ds lors que lon sintresse aux direntes formes que peut prendre
lalgorithme.
Reste sintresser la question des problmes qui donnent du sens au concept dalgo-
rithme. Nous lavons dj souleve dans les sections prcdentes. On a pu voir notamment
que les distinctions, entre les problmes de P
a
et de P dune part, et entre problmes ins-
tancis et non-instancis dautre part, donnent un clairage sur la dialectique outil-objet.
Nous distinguerons donc deux conceptions dans chaque paradigme : une pour les problmes
de P
a
et une pour les problmes de P. Nous prsentons maintenant une description d-
taille de chacune. Pour chaque terme en italique dans la conception, nous explicitons juste
aprs le sens que nous lui donnons.
61
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Terminologie Le choix du terme paradigme nous a sembl adapt pour dcrire ces
modes de vie de lalgorithme, qui peuvent avoir chacun leur autonomie et qui peuvent en-
glober diverses conceptions. Ces paradigmes partagent beaucoup avec la notion de concep-
tions, on pourrait les voir comme des macro-conceptions. Mais il nous a paru plus com-
mode pour la suite de proposer un terme qui fait rfrence plus nettement cet aspect trs
tendu.
Le terme peut tre mis en lien avec la dnition des paradigmes gomtriques de Houde-
ment et Kuzniak. Cependant, pour la simple raison que lpistmologie de lalgorithmique
nest pas celle de la gomtrie, il ne serait pas raisonnable dessayer de mettre en parallle
chacun des paradigmes gomtriques avec les ntres.
3.2 Six conceptions pour lalgorithme
Conceptions du paradigme PA
Conception PA-outil
P : Problmes de P
a
R : Les oprateurs sont la preuve algorithmique, les raisonnements constructifs :
rcurrence, induction, descentes innies, existence de majorants/minorants
densembles nis...
L : Le systme de reprsentation est le langage mathmatique. Les objets en jeu
sont des objets mathmatiques, dans cette conception on manipule de lin-
formation. tout moment, toute linformation de linstance et toute celle
dduite est utilisable. Les seules variables prsentes sont des variables math-
matiques.
: La structure de contrle est celle de la logique mathmatique et les proprits
des objets en jeu.
Par langage mathmatique nous entendons le langage utilis usuellement par les crits ma-
thmatiques.
Par variables mathmatiques nous nous rfrons aux dirents types de variables utilises
en mathmatiques.
Par logique mathmatique nous entendons lensemble des rgles de logique et de raisonne-
ment utilises implicitement dans lactivit mathmatique. Ce terme est choisi par oppo-
sition la logique formelle.
Exemples :
- Le traitement du problme du cycle eulrien par la preuve algorithmique. Les oprateurs
sont les oprations constructives et la structure du raisonnement permet le contrle de
cette construction.
Conception PA-objet
P : Problmes de P
R : Les oprateurs sont la preuve mathmatique et les oprations sur les modles
thoriques (rductions algorithmiques, rductions polynomiales...)
L : Le systme de reprsentation est le langage mathmatique, et des modles du
concept dalgorithme (automates, machines de Turing, fonctions rcursives...)
: La structure de contrle est celle de la logique mathmatique et les proprits
des objets en jeu.
62
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conceptions du paradigme AM
Conception AM-outil
P : Problmes de P
a
R : Les oprateurs sont des algorithmes explicits et des oprations constructives
nies.
L : Le systme de reprsentation est un pseudo-code, mlange de langage math-
matique et dlments de langage de programmation. Les objets manipuls
sont des objets mathmatiques, parfois issus de linformatique et qui peuvent
tre munis doprations de base (types de donnes abstraites). Les variables
sont des variables informatiques et des variables mathmatiques.
: La structure de contrle est la preuve de lalgorithme (correction et termi-
naison) pouvant utiliser des invariants.
Les variables informatiques sont des variables qui jouent le rle dun emplacement en m-
moire en pouvant changer de valeur au cours du temps : lorsque linformation contenue
dans la variable est modie, lancienne information est alors perdue. Cest un modle
de la mmoire dune machine, issu de linformatique, an de mettre de ct les questions
dordre technologique.
Exemple : Le traitement du problme du pgcd avec lalgorithme dEuclide, le traitement du
problme du tri dune liste dentiers avec lalgorithme du tri rapide relvent de AM-outil.
Conception AM-objet
P : Problmes de P
R : Les oprateurs sont la preuve mathmatique : preuve dalgorithme, de pro-
prits dalgorithme, dinvariants, de complexit...
L : Le systme de reprsentation est le langage mathmatique.
: La structure de contrle est celle de la logique mathmatique, les rgles de
raisonnement et les proprits des objets en jeu.
Exemple : Ltude de la complexit de lalgorithme de recherche de cycles eulriens (algo-
rithme 4) eectue prcdemment relve de cette conception.
Conceptions du paradigme AI
Conception AI-outil
P : Problmes de P
a
R : Les oprateurs sont des programmes constitus des oprations informatiques
(boucles, tests, gestions des donnes...).
L : Le systme de reprsentation est un langage de programmation. Les objets
manipuls sont des donnes qui codent les objets en jeu laide de structures
de donnes permettant certaines oprations sur linformation.
: La structure de contrle est de lordre de la vrication formelle : analyse
lexicale, analyse syntaxique, vrication automatique ou preuve formelle de
proprits...
Exemple : Le calcul du pgcd par lalgorithme dEuclide propos sous forme de programme
relve de cette conception.
63
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conception AI-objet
P : Problmes de P
R : Les oprateurs sont ceux de la vrication formelle.
L : Le systme de reprsentation est le langage mathmatique et celui de la lo-
gique formelle.
: La structure de contrle est celle de la logique formelle.
3.3 Relation entre ces conceptions
Continuit outil-objet Revenons tout dabord sur le lien entre la conception-outil et
la conception-objet dun mme paradigme. Leur relation a dj t dcrite dans la section
2.3. Nous souhaitons prciser que la frontire entre ces conceptions nest pas aussi nette
que notre dcoupage pourrait le laisser penser. Il ny a pas rupture entre les deux concep-
tions mais plutt une continuit qui se fait suivant la dialectique outil-objet, ou plutt un
mouvement de loutil vers lobjet. Ce mouvement est accompagn, comme nous lavons
montr, par le passage du problme instanci au problme gnrique. Cependant il peut
exister en pratique plusieurs problmes intermdiaires mesure que lensemble dinstances
du problme tudi sagrandit. Il faut remarquer aussi que la structure de contrle de la
conception-outil joue un rle particulier dans ce glissement de loutil vers lobjet : plus elle
prend une place importante dans lactivit plus on sapproche de la conception-objet. Le
problme p
0
joue aussi un rle central dans cette articulation outil-objet.
Dautre part, il faut noter que lorsque nous parlons de mouvement ou de glissement de
loutil vers lobjet, il ne sagit pas de dire que lactivit algorithmique est linaire ou sens
unique. Il y a clairement des allers-retours permanents, comme dans lactivit mathma-
tique, entre outil et objet. Simplement, il nous semble que le mouvement global est un
mouvement de loutil vers lobjet, au sens o tout outil soulve des questions qui portent
sur lui-mme et font de lui un objet dtude. On peut aussi voir cela comme un mouvement
qui, au sens des conceptions, amne les structures de contrle devenir oprateurs dans
de nouveaux problmes.
Continuit mathmatique-informatique De mme, il nous faut prciser que le d-
coupage entre PA, AM et AI nest pas non plus aussi tranch quon pourrait croire. Ainsi la
sparation en trois familles de conceptions tmoigne dune graduation continue de concep-
tions entre mathmatiques et informatique. Le dcoupage en trois paradigmes nous semble
une bonne granularit pour fournir un outil danalyse
1
et permettre une bonne reprsen-
tation des -conceptions du texte du savoir savant et des rexions sur sa production. Il
existe donc aussi une continuit suivant laxe PA-AI et il se peut que certaines activits
se trouvent cheval entre deux de nos conceptions. Notons tout de mme quon peut voir
une hirarchie temporelle
2
entre PA, AM et AI. Ainsi, pour un mme problme de P
a
,
ltude suit plutt un mouvement de PA vers AI en passant par AM. Cest un mouvement
qui part dun point de vue constructif de lalgorithme (PA) vers un point de vue eectif
(AM) et enn vers un point de vue excutoire (AI) qui saccompagne dun mouvement vers
une spcication de plus en plus grande de lalgorithme.
La continuit de laxe PA-AI saccompagne aussi dune sparation grandissante de la
preuve, de la smantique et de la syntaxe. Ainsi, dans le paradigme PA, les trois sont
1. Cela sera questionn dans les chapitres suivants.
2. Quil ne faut surtout pas considrer comme une hirarchie de valeur.
64
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
mls. Dans AM, on spare la mthode (syntaxe et smantique) de sa validation. Enn,
le paradigme AI vise proposer une mthode purement syntaxique (lordinateur nopre
que des manipulations symboliques) laquelle le concepteur donne un sens et quil peut
valider. Ces rapports entre validation, sens et reprsentations des algorithmes, dirents
selon les paradigmes, mettent en jeu des lments relevant de la smiotique. Cela pourra,
dans un ranement du modle, faire lobjet dune tude smiotique spcique
3
.
Nouveaux problmes Lide dune continuit entre les paradigmes, dans le traitement
dun mme problme, ne doit pas occulter le fait que lactivit algorithmique dans lun des
paradigmes conduit souvent formuler et tudier de nouveaux problmes. Cela fait aussi
partie de la relation entre les -conceptions, de pouvoir soulever de nouveaux problmes
dans une autre -conception. Ltude pistmologique du concept-problme par Giroud
(2011) peut apporter un clairage sur la relation entre les dirents problmes en jeu dans
une activit algorithmique, et leur formulation dans les dirents paradigmes.
Rcapitulatif En rsum, il ne faut voir dans ce modle ni frontires nettes et immuables,
ni chelle de valeur entre les conceptions. Ces remarques faites, nous pouvons introduire le
schma rcapitulatif ci-dessous.
P
a
P
PA-Outil PA-Objet
AM-Outil AM-Objet
AI-Outil AI-Objet
Informatique
Mathmatiques
Outil Objet
3. Les approches smiotiques, notamment celles dveloppes en didactique des mathmatiques, de-
vraient permettre cela. Il est cependant noter quune telle approche ne peut tre que complmentaire
ltude pistmologique propose ici. En eet, comme nous lavons montr dans cette premire partie,
lalgorithme rpond avant tout une problmatique constructive et systmatique de rsolution de pro-
blmes, les questions dexpression des algorithmes venant se greer ensuite par la ncessit dun langage
pour exprimer ces algorithmes. Une vigilance devra donc tre exerce pour une tude smiotique, an de
ne pas rduire lalgorithmique une activit uniquement langagire, ce qui est, pistmologiquement, une
vision rductrice de lalgorithme (mais courante, comme la suite nous le montrera).
65
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
3.4 Relation aux aspects
Le modle des -conceptions que nous proposons ici, reprend et prcise de nombreux as-
pects du chapitre 1.
Laspect effectivit est prsent transversalement chaque conception. En particulier ce
sont les oprateurs des conceptions-outil qui portent cet aspect. Nous avons prcis au pa-
ragraphe prcdent que dirents niveaux deectivit sont en jeu dans chaque paradigme
(du constructif lexcutoire).
Laspect problme est prsent de manire trs forte, par notre choix de formuler les pro-
blmes en instances et questions, mais aussi par la prcision des direntes familles de
problmes. Le nouveau modle prcise la relation problme-algorithme et la place des pro-
blmes dans lactivit algorithmique.
Les aspects complexit et modles thoriques sont prsents dans les conceptions-
objet du modle. Leur rle est prcis grce la notion de conception elle-mme. La
complexit relve essentiellement dune famille de problmes de P. On pourrait aussi, dans
une analyse plus pousse associer des oprateurs et des structures de contrle spciques
aux problmes de complexit.
Les modles thoriques relvent plutt des structures de contrle et des oprateurs des
conceptions-objet. Cependant, des problmes spciques peuvent tre poss relativement
ces modles.
Nous avions vu que modles thoriques et complexit sont des aspects caractris-
tiques de lalgorithmique, et spciques. Le modles prcise bien leur rapport au concept
algorithme.
Laspect preuve est sans doute celui dont le rapport lalgorithme tait le plus dlicat dans
le modle du chapitre 1. En particulier lutilisation de lalgorithme comme outil de preuve,
rendait dicile la classication outil-objet. De plus, le rapport du concept algorithme
la preuve dalgorithmes nest pas du mme ressort que celui la preuve algorithmique ou
celui aux preuves formelles.
Le modle des -conceptions prcise ces divers liens et la preuve apparat plusieurs
niveaux :
Elle est structure de contrle des conceptions-outil et oprateur dans les conceptions-
objet.
Elle est aussi un paradigme pour lalgorithme : PA.
Elle peut adopter diverses formes et sappuyer sur des logiques plus ou moins formelles
selon les paradigmes.
Enn, ce modle de -conceptions nous permis de raner la dualit outil-objet, propose
pour classier les aspects. Notamment, grce aux notions de problme et dinstancia-
tion, nous avons pu dcrire une gradation dans cette relation outil-objet.
Conclusion et nouvelles questions
Le modle cK,c nous a permis de proposer un modle de conceptions pour lalgorithme.
Ces conceptions tiennent compte de la relation entre mathmatiques et informatique en ce
qui concerne lalgorithme. Le modle propos complte le modle daspects prcdent, en
prcisant notamment le rle des problmes et de la preuve. Il apporte aussi une dimension
66
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
dactivit algorithmique qui napparaissait pas dans le prcdent modle.
Ce modle par conceptions sappuie aussi sur les diverses formes que peuvent prendre les
algorithmes, et, en ce sens, permet de prendre en compte une dimension smiotique, ce
qui tait peu prsent dans le modle par aspects. Nous nous sommes concentr sur une
description gnrale des dirents systmes de reprsentation an de proposer une classi-
cation en grandes conceptions.
Ce nouveau modle doit permettre dtudier les transpositions en place dans dautres
institutions. En particulier, nous proposons de traiter les questions Q5, Q6 et Q7 au regard
de ce modle. Ce qui nous permet de reformuler :
Question Q5
conceptions
. Quelles conceptions sont reprsentes dans les programmes de
mathmatiques et documents daccompagnements du lyce ? Les conceptions prsentes sont-
elles compltes ? Sont-elles modies par rapport celles du savoir savant ? Relvent-elles
de loutil ou de lobjet ? Quelle place est donne aux structures de contrle ? Quen est-il
dans les programmes de la spcialit ISN?
Question Q6
conceptions
. Quelles conceptions sont reprsentes dans les manuels de ma-
thmatiques du lyce ? Les conceptions prsentes sont-elles compltes ? Sont-elles modies
par rapport celles du savoir savant ? Relvent-elles de loutil ou de lobjet ? Quelle place
est donne aux structures de contrle ?
Question Q7
conceptions
. Quelles conceptions sont reprsentes dans les ressources en
ligne ? Les conceptions prsentes sont-elles compltes ? Sont-elles modies par rapport
celles du savoir savant ? Relvent-elles de loutil ou de lobjet ? Quelle place est donne aux
structures de contrle ? Y-a-t-il une dirence entre les documents de formation et ceux
pour la classe ?
Le modle de conceptions que nous avons dvelopp est concern par la question Q4. On
peut maintenant reformuler cette question :
Question Q4
conceptions
. Notre modle de -conceptions pour lalgorithme saccorde-t-il
avec les conceptions des chercheurs ? Le modle peut-il nous informer sur les variations
que lon pourrait entrevoir dans les discours de chercheurs ?
67
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
68
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conclusion, retour sur les questions
de recherches et nouvelles questions
Rsultats
Nous avons propos dans cette partie une tude pistmologique du concept dalgorithme.
Ltude des textes du savoir savant et lanalyse dexemples choisis nous a permis de dgager
un premier modle pour dcrire le concept algorithme et les aspects fondamentaux qui lui
sont lis. Cela nous a permis de rpondre la question Q1 et de proposer une caractrisa-
tion de la dualit outil-objet pour lalgorithme.
En tudiant pense algorithmique et pense mathmatique laide des cadres thoriques
du mathematical thinking, nous avons pu claircir la relation entre ces deux penses. En
particulier, cela nous a permis de mettre en avant et dtudier lactivit algorithmique.
Cela constitue une rponse la question Q2.
En nous appuyant sur les deux analyses prcdentes, nous avons propos un modle plus
complet de lactivit algorithmique (prenant en compte lactivit algorithmique en ma-
thmatique et en informatique). Le choix dun cadre thorique adapt nos questions
thoriques et pratiques constitue un premier rsultat important. Ce cadre thorique est le
modle cK,c, plus prcisment la notion de -conception, qui a t rarement utilise. Nous
avons adapt ce modle nos problmatiques en dnissant une notion de problme sp-
cique la description de -conceptions et adapte au concept algorithme. Dans ce cadre,
nous avons dcrit un modle permettant de rpondre Q3.
Retour mthodologique
La construction successive de ces deux modles pistmologiques (aspects et -conceptions),
ainsi que la rexion intermdiaire sur la pense algorithmique montrent une volution des
modles proposs. Leur ordre de prsentation correspond lordre chronologique de nos
recherches.
Le premier modle peut sembler naf, mais il joue un rle important dans la construction
du second et dans sa comprhension. Nous conserverons ce premier modle dans les outils
pour les chapitres suivants, car il peut constituer un premier niveau danalyse propre
soutenir ltude des conceptions.
La dnition choisie dun problme et ltude de la dualit outil-objet dans le modle cK,c,
sont des outils mthodologiques susceptibles dtre adapts ltude pistmologique de
concepts. Il nous semble utile de pointer le potentiel de ces outils pour dautres tudes.
69
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Suite du travail
Le travail pistmologique dvelopp ici vise fournir des outils pour tudier les conceptions
individuelles et institutionnelles, cela dans le but de mieux comprendre les phnomnes de
transposition didactique de lalgorithme. Une autre raison de cette tude est de fournir un
support pistmologique pour construire des situations autour de lalgorithmique.
Ces questions seront abordes, au regard des rsultats que nous venons de prsenter, dans
les troisimes et quatrimes parties. Les principaux lments de cette tude pistmologique
que nous utiliserons pour cela sont :
le modle par aspects et la classication entre aspects-outil et aspects-objet, qui nous
permettront en particulier dtudier les discours sur lalgorithme,
les dirents paradigmes du modle de -conception, qui permettront notamment
ltude des formes sous lesquelles on retrouve lalgorithme,
les familles P
a
et P, pour tudier les problmes proposs et distinguer lalgorithme-
outil de lalgorithme-objet.
Dans un premier temps, nous avons souhait confronter nos modles aux conceptions de
chercheurs, an de valider exprimentalement nos rsultats. Cest lobjet de la partie
suivante.
Lutilisation du modle cK,c pour la construction dun modle du savoir-savant, via la
notion de -conception, soulve des questions thoriques et des perspectives dont il nous
faudra discuter.
70
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Deuxime partie
Entretiens avec des chercheurs
71
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Motivations et questions de recherche
Comme nous lavons soulign prcdemment, ltude des aspects principaux du concept
dalgorithme et le modle de -conceptions pour lalgorithme (lui-mme bas sur lanalyse
de lalgorithmic thinking) sont plutt thoriques. Pour les dvelopper, nous nous sommes
essentiellement bas sur le savoir savant (ouvrages de rfrences en mathmatiques ou in-
formatique), et sur le discours sur lactivit algorithmique des chercheurs dans des crits
rexifs sur leur pratique.
Avant dutiliser ces modles pour analyser programmes, manuels ou autres ressources pour
lenseignement secondaire, il nous semble bon de les confronter aux conceptions des cher-
cheurs. Cela doit permettre de tester la robustesse et la validit de nos modles du point de
vue pistmologique. Mais cela doit aussi nous permettre de raliser une premire analyse
avec ces modles et de tester leur eectivit pour rpondre concrtement nos questions
de transposition. Plus prcisment :
1. Lensemble des conceptions de chercheurs autour de lalgorithme et de lalgorith-
mique constitue un aperu des -conceptions. En considrant ces chercheurs comme
reprsentants de linstitution productrice du savoir savant, on devrait rvler un en-
semble de conceptions trs proches de nos -conceptions. tudier les conceptions de
chercheurs constitue alors une validation exprimentale de nos modles pist-
mologiques.
2. Les modles (aspects fondamentaux et -conceptions) que nous proposons ont t
construits pour rpondre des questions de recherche concernant la transposition
didactique. Il sagit donc de pouvoir les utiliser pour analyser les conceptions dune
institution au regard du savoir savant. Appliquer ces outils pour tudier la concep-
tion de chaque chercheur doit pouvoir permettre, non seulement de reprer des
conceptions dominantes selon les disciplines et les spcicits des chercheurs, mais
surtout de tester notre modle et les mthodes danalyse an de proposer un outil
danalyse systmatique. Les conceptions des chercheurs ntant, a priori, pas trop
loignes des -conceptions, nous devrions pouvoir raner nos outils danalyse grce
elles.
Cette deuxime partie se veut donc une transition entre lanalyse pistmologique du con-
cept prsente dans la partie prcdente de cette thse et la mise en uvre doutils eectifs
pour ltude de la transposition du concept de la partie 3 (que nous appliquerons au cas
de lenseignement secondaire franais).
Rappelons les questions de recherche qui motivent cette partie telles que nous les avons
formules la n de la premire partie :
Question Q4
aspects
. Notre modle des aspects de lalgorithme saccorde-il avec la percep-
tions quont les chercheurs ? Le modle peut-il nous informer sur les variations que lon
73
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
pourrait entrevoir dans les discours de chercheurs ?
Question Q4
conceptions
. Notre modle de -conceptions pour lalgorithme saccorde-t-il
avec les conceptions des chercheurs ? Le modle peut-il nous informer sur les variations
que lon pourrait entrevoir dans les discours de chercheurs ?
74
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 4
Entretien avec des chercheurs -
Confrontation des modles
Sommaire
1 Construction et gestion des entretiens . . . . . . . . . . . . . . . 75
1.1 Choix de ltude par des entretiens . . . . . . . . . . . . . . . . . 75
1.2 Construction des entretiens . . . . . . . . . . . . . . . . . . . . . 76
1.3 Ralisation et traitement des entretiens . . . . . . . . . . . . . . 79
2 Analyse des entretiens . . . . . . . . . . . . . . . . . . . . . . . . 79
2.1 Mthodologie pour la validation des modles . . . . . . . . . . . 79
2.2 Aspects fondamentaux dans les entretiens . . . . . . . . . . . . . 80
2.3 -conceptions dans les entretiens . . . . . . . . . . . . . . . . . . 85
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
1 Construction et gestion des entretiens
Dans cette section, nous allons discuter des mthodes employes et des donnes tudies.
En particulier, nous aborderons le choix des entretiens pour ltude des conceptions des
chercheurs, la construction, la ralisation et le traitement de ces entretiens avant ltude
des donnes recueillies.
1.1 Choix de ltude par des entretiens
Pour rpondre aux questions ci-dessus, nous avons choisi de raliser des entretiens avec des
chercheurs en mathmatiques fondamentales, en mathmatiques appliques et en informa-
tique. Il nous a sembl pertinent de nous concentrer aussi sur des champs lintersection
entre mathmatiques et informatique, tels que la thorie des graphes, la combinatoire, la
gomtrie algorithmique, etc
1
. Les chercheurs de ces disciplines ont une activit relevant
souvent des mathmatiques (cest--dire quils ont une dmarche visant la preuve ma-
thmatique) mais leur lien privilgi linformatique devrait nous apporter des lments
riches concernant le concept dalgorithme.
1. En France, ces champs sont regroups dans le GDR Informatique Mathmatique.Le site du GDR-IM
en donne une description assez prcise qui montre bien lintrt que peuvent avoir ces disciplines pour
notre tude : www.gdr-im.fr. Le GDR Recherche Oprationnelle couvre aussi de telles disciplines.
75
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Pour tudier les conceptions des chercheurs, loutil que constitue lentretien nous a sembl
la mthode la plus pertinente pour notre objectif dtude des conceptions de lalgorithme
et des pratiques des chercheurs. En eet, interroger en face--face les chercheurs devrait
permettre de toucher leur rapport au concept en permettant une expression plus libre
quelle ne le serait par crit. Laspect individuel des entretiens et lanonymat des rsultats
devraient aussi contribuer une plus grande libert de parole. Concernant ce choix, citons
Robert (1992) qui souligne, concernant les problmes mthodologiques en didactique des
mathmatiques, la pertinence des entretiens pour ltude des reprsentations des sujets.
Citons aussi Burton (2004) qui a tudi, par des entretiens avec des chercheurs en math-
matiques, leurs pratiques (pour chercher, apprendre, etc.).
Plus prcisment, notre choix se porte sur des entretiens semi-directifs qui permettent une
certaine libert dans la discussion tout en la guidant par une liste de questions et de points
aborder. Cela permet aussi de poser des questions supplmentaires en raction cer-
taines rponses et de faire reformuler ou dtailler certaines autres ou encore de reformuler
les questions lorsque linterview le demande ou que sa rponse montre une interprtation
de la question dirente de celle attendue.
Pour permettre ltude, les entretiens seront enregistrs et retranscrits. Les chercheurs de-
vront remplir un court questionnaire pour fournir des informations personnelles
2
(situation,
domaine de recherche, enseignements, lien ventuel lenseignement secondaire, etc.). Les
chercheurs ne connaissent pas lavance le sujet de lentretien pour quils ne rchissent
pas trop la question ou consultent des ouvrages de rfrence. Nous leur dirons seulement
quil sagit dune discussion autour dun concept mathmatique et de son enseignement.
Pour des raisons de disponibilit des chercheurs, les entretiens ne devront pas excder une
trentaine de minutes.
1.2 Construction des entretiens
La construction des entretiens et leur ralisation a eu lieu avant la production du second
modle pistmologique. Cest--dire quelles ne se sont appuyes que sur lanalyse du con-
cept algorithme sous forme des aspects fondamentaux et sur les questionnements lorigine
de notre travail. Les questions poses aux chercheurs sont donc plutt marques par cela.
Cependant, les -conceptions sont une relecture et une prcision de cette prcdente ana-
lyse et les entretiens proposs restent, comme nous le verrons, pertinents pour valider et
mettre en uvre tous les rsultats de la premire partie.
Nous avons conu les questions pour les entretiens selon deux axes :
le concept algorithme dans les sciences mathmatiques et informatiques, sa dnition
et son rle,
le concept algorithme dans lenseignement des mathmatiques dans le secondaire.
Il nous semble en eet intressant de voir si les mmes conceptions sont souleves concer-
nant lenseignement de lalgorithmique (en particulier dans les mathmatiques). De plus,
le fait daborder lenseignement peut faire soulever certains points par linterview qui lui
semblent vidents (ou partags avec lintervieweur) et quil navait pas explicits concernant
le concept dun point de vue purement scientique.
2. Ce questionnaire est en annexe B.
76
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Premire partie de lentretien
Pour cette partie, trois points ont t abords :
Dnition dalgorithme. Critre de reconnaissance des algorithmes. Exemples et non-
exemples dalgorithmes.
Place et rle des algorithmes dans lactivit mathmatique, dans le champ du cher-
cheur interrog et dans son travail.
En particulier, concernant le premier point, la discussion sur la dnition de lalgorithme
doit permettre de soulever les points importants du concept algorithme selon le chercheur.
La question de la reconnaissance des algorithmes a pour but daborder la question du lan-
gage et des reprsentations des algorithmes (et leur ventuel lien la dnition).
La demande dexemples et de non-exemples dalgorithmes doit contribuer la discussion
autour de la dnition et des critres importants que doit vrier un algorithme. Cela peut
aussi encourager et faciliter la discussion au cas o la question de donner une dnition ne
lenclencherai pas.
La discussion autour de la dnition, des exemples et des non-exemples a aussi pour ob-
jectif damener parler de la frontire entre algorithmique et non-algorithmique. Pour cela
nous proposons aux chercheurs de discuter de la technique de recherche des racines dun
polynme de degr 2 par le calcul du discriminant
3
.
Lautre point se dcompose en deux questions portant directement sur lutilisation des
algorithmes dans les direntes disciplines et lactivit personnelle du chercheur interrog.
Deuxime partie de lentretien
Cette deuxime partie porte sur lenseignement de lalgorithmique. Il est clairement prcis
au chercheur le glissement vers cette nouvelle partie.
La trame pour cette partie est daller du gnral au particulier : de lenseignement de lal-
gorithmique au secondaire (en gnral) aux contenus prcis des nouveaux programmes du
lyce, en passant par lide denseigner lalgorithmique dans le cours de mathmatiques. Il
ne sagissait pas, bien entendu, de savoir si le chercheur tait pour ou contre telle ou telle
ide mais de favoriser lexpression des conceptions de lalgorithme au travers de celles quil
pense prsentes ou indispensables dans lenseignement.
Nous faisons lhypothse que, dans certains cas, aborder le concept par la question de son
enseignement pousse formuler certains aspects du concept qui peuvent tre considrs
comme implicites dans une discussion sur le concept du point de vue purement scienti-
que. Nous pensons aussi quau travers des questions denseignement, le chercheur va tre
amen insister sur les points quil considre centraux et importants pour lenseignement
de lalgorithme et sur les caractristiques principales de lalgorithmique. Nous reviendrons
sur ce point dans une conclusion concernant les outils mthodologiques utiliss.
la n de cette partie nous avons ajout une raction aux nouveaux contenus de Nota-
tions et raisonnement mathmatiques des programmes. En demandant une raction quant
aux liens possibles entre ce contenu et celui dalgorithmique. Il nous semble a priori possible
dutiliser ce paragraphe pour discuter du lien entre activit algorithmique et raisonnement,
et par extension du lien algorithme-preuve.
3. Cet exemple soulve la question de considrer tout ce qui est eectif comme tant algorithmique
ou non. Cest une description eective dune mthode de rsolution, mais dune part il sagit simplement
dune formule avec une condition, dautre part sa complexit est constante.
77
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Liste des questions de lentretien
La trame dentretien obtenue est la suivante. Rappelons que les questions pouvaient tre
reformules, des questions ajoutes et lordre plus ou moins respect.
Algorithme et recherche :
(a) Comment dniriez-vous ce quest un algorithme ?
(b) Comment reconnat-on un algorithme ?
(c) Exemples dalgorithmes, de non-algorithmes, cas limite.
Questionner les exemples. Proposer le discriminant.
(d) quoi servent les algorithmes ?
Quel rle jouent-ils dans votre discipline ?
(e) Rencontre-t-on des algorithmes dans vos travaux de recherche ?
Concevez-vous des algorithmes ? quel niveau ?
Algorithme et enseignement :
(a) Pensez-vous quil est important dintroduire de lalgorithmique dans lensei-
gnement secondaire ? quel niveau ? Dans quelle discipline ? Quels objec-
tifs ? Quels contenus ?
(b) Une part dalgorithmique a t introduite dans lenseignement de math-
matiques en classe de seconde. Quen pensez-vous ? Voyez-vous un intrt
concernant lapprentissage des mathmatiques ?
(c) Faire lire lextrait algorithmique des programmes.
Commentaires ?
(d) Faire lire lextrait Notations et raisonnement mathmatiques des pro-
grammes.
Commentaires ? Voyez-vous un lien avec lalgorithmique ?
Un entretien bas sur les aspects mais adapt aux -conceptions
Lobjectif lorigine de ces entretiens, comme nous lavons dit, tait la validation du mo-
dle des aspects. Les questions ont particulirement t choisies pour cela. Le but tant
de vrier que ces aspects taient bien fondamentaux pour lalgorithme, les entretiens ne
devaient pas tre trop directifs et ne pas aborder les aspects de manire frontale.
Cela a men la production dun corpus susamment riche pour valider aussi une grande
partie des lments du modle des -conceptions.
En particulier, les questions de reconnaissance dalgorithmes peuvent faire rfrence aux
systmes de reprsentation ou aux oprateurs des conceptions. La demande dexemples
et la question du rle de lalgorithme peuvent amener prciser les dirents problmes
dans lesquels lalgorithme intervient. La demande de non-exemples est trs adapte faire
aborder le paradigme PA.
Ainsi, non-seulement les entretiens devraient permettre de valider nos modles mais aussi
dtudier les conceptions des chercheurs.
78
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
1.3 Ralisation et traitement des entretiens
Les entretiens ont t raliss entre janvier et avril 2010. Nous avons interrog 22 chercheurs
se rpartissant ainsi (selon leur propre considration
4
) :
Mathmatiques Informatique
Recherche
fondamentale
11 5
Recherche
applique
7 5
Nous avons essay de constituer un panel assez vari de chercheurs suivant les critres
dge, de discipline (mathmatique/informatique, fondamental/appliqu), de champs dans
la discipline, de sexe, davancement dans la recherche et de relation lenseignement. Nous
rsumons ici par quelques statistiques les informations des 22 chercheurs interviews
5
:
Hommes Femmes
27 5
26-35 ans 36-45 ans 46-62 ans
5 11 6
Ens. Ch. Chercheurs
MC PU CR DR
10 7 4 1
Section
25
e
26
e
27
e
7 6 9
Les chercheurs interrogs sont issus de laboratoires de lagglomration Grenobloise. Il faut
souligner la dicult trouver des chercheurs acceptant de se prter lexercice.
Les premiers entretiens ont permis de valider la trame des questions, du point de vue du
temps ncessaire, de la comprhension des questions et de la richesse des rponses des
chercheurs.
Les entretiens ont t entirement retranscrits et sont en annexe B. Certaines tournures
orales ont t attnues pour favoriser la comprhension du lecteur et lever certaines ambi-
guts lies labsence des intonations, modulations de la voix, hsitations, etc. Compte-
tenu de nos questions de recherche, ceci ne gnera pas lanalyse et nintroduira pas de biais
linterprtation, au niveau o nous nous plaons.
2 Analyse des entretiens
2.1 Mthodologie pour la validation des modles
Notre mthode danalyse est simple. Il sagit de reprer la prsence des lments de nos
modles dans les discours des chercheurs. Ici, nous sommes trs proches du savoir savant
et le modle peut nous servir directement doutil danalyse, dautant plus quil sagit de
valider exprimentalement ce modle.
En ce qui concerne le modle par aspects, nous verrons si les aspects sont souligns par les
chercheurs (effectivit, problme, preuve, complexit et modles thoriques).
Nous prciserons quels lments de ces aspects sont rencontrs majoritairement.
En ce qui concerne le modle de -conceptions, notre objectif sera de reprer des lments
de chaque conception. Pour cela nous essaierons de reprer les dirents problmes, opra-
teurs, systmes de reprsentations et structures de contrle. Bien sr, cela est trs li aux
4. Certains chercheurs considrent quils ont des thmes de recherches dans dirents champs. Voir en
annexe B pour le questionnaire dinformations personnelles.
5. Lintgralit des donnes se situe en annexe B.
79
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
aspects que nous aurons rencontrs.
Nous illustrerons notre analyse par des citations des entretiens. Nous utiliserons le code
(Bi.j) pour faire rfrence lentretien avec le chercheur i, lintervention j. Nous nous
autoriserons parfois retirer certains termes oraux (Heu, bref, bon, etc) et cafouillages dans
les citations pour permettre dinsister sur les points importants quelles illustrent.
2.2 Aspects fondamentaux dans les entretiens
Aspect effectivit
Leffectivit est un point voqu par tous les chercheurs interrogs. Cet aspect apparat
chaque fois, ds la dnition que donne le chercheur de lalgorithme. On le retrouve aussi
au travers des exemples de non-algorithmes (en ngatif), dans la description de la limite
entre algorithme et non-algorithme ou encore la discussion sur le discriminant. Cependant
on peut constater des nuances dans la faon dont est voqu cet aspect.
Dans ces dnitions ou dans les critres de reconnaissance dun algorithme, on retrouve
presque toujours la notion de succession dtapes ou dinstructions lmentaires (20 cher-
cheurs
6
) :
Alors un algorithme, cest un enchanement dinstructions qui permet partir
dune entre de produire une sortie [...] Donc ces instructions sont susamment
lmentaires pour pouvoir ensuite tre code sur ordinateur. (B2.2-4)
Le lien la machine et la programmation est aussi fait trs rgulirement dans les
entretiens (19 ch.) :
Un algorithme cest, pour moi, une suite dinstructions quon donne un ordi-
nateur pour rsoudre un problme quon a discrtis auparavant. (B15.2)
Le ct automatique ou systmatique de lalgorithme revient un peut moins souvent (10
ch.) mais on peut le considrer comme sous-entendu dans la notion de machine. On retrouve
aussi le terme eectif qui peut faire rfrence ce ct automatique.
Un algorithme. Pour moi a a un sens assez gnral. Cest toute procdure eec-
tive qui permet de mener bien un calcul ou une tche dductive automatise.
(B10.2)
On retrouve aussi la notion de construction (8 ch.), qui est parfois contenue dans le terme
eectif.
Je dirais que cest un moyen constructif de... Faire quelque chose. Une cons-
truction, un calcul... (B17.2)
Un autre point souvent relev est la non-ambigut dun algorithme (10 ch.). Certains
chercheurs notent que cela dpend du destinataire de lalgorithme (machine, humain, sp-
cialiste, etc.). Cette notion est donc trs lie au fait quun algorithme peut tre excut ou
appliqu par dautres personnes, en particulier comme outil :
Si on la donne nimporte qui, cette personne-l sera capable, avec cet algo-
rithme, de calculer les sorties partir des entres. Donc cest quelque chose que
6. Pour allger le texte, nous utiliserons labrviation ch. pour chercheur(s) lorsque nous citerons un
eectif.
80
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
lon peut donner droite gauche et qui ne laisse pas dambigut sur la faon
dont on fait les calculs. (B2.8)
Sil y avait un technicien ce moment-l [...] on peut lui mettre plat quelque
chose. Et eectivement, mme sil na pas des connaissances leves, il sera
capable de drouler le fonctionnement. (B18.12, propos du discriminant)
Cet aspect revient souvent concernant lenseignement, pour lequel beaucoup de chercheurs
prcisent que lenseignement de lalgorithmique ne doit pas tre la transmission dalgo-
rithmes aux lves et les algorithmes qucrivent les lves doivent tre destination dau-
trui
7
:
Dun ct, tu ne peux pas enseigner des maths sans jamais enseigner des algo-
rithmes. Dun ct a me parat clair. De lautre ct par contre, je trouve que
[...] Cest souvent tentant denseigner trop dalgorithmes, trop de mthodes.
(B21.44)
Et ce nest peut-tre pas soi-mme qui va devoir lexcuter. Donc soit on le
cone un ordinateur, soit on le cone au voisin et on regarde sil est capable
de suivre lalgorithme que moi jai fait. [...] Alors qu prsent, en maths, on
voit des lments de ce quest un algorithme mais cest juste comme une suite
de recettes pour les faire soi-mme. Donc cest l o cest un peu moins profond
(B18.42)
Le fait de manipuler des donnes nies et que la solution doit tre donne en un nombre
ni dtapes nest pas trs souvent signal et apparat assez rarement dans les dnitions
proposes. Cependant, on peut penser que certains chercheurs lenglobent dans le terme
eectif, et cela est ncessairement contenu dans les notions de terminaison et de complexit
dont nous parlerons plus loin. Cependant, certains points de vue prsentent lalgorithme
comme quelque chose de non-ncessairement ni. En analyse numrique, par exemple :
Il y a des dmonstrations que lon construit de faon, on va dire, algorithmique.
Cest--dire quon construit des suites qui vont tendre vers des objets mathma-
tiques et on va dmontrer que ces objets mathmatiques sont au bon endroit.
Mais dabord il faut faire lalgorithme, cest--dire la suite qui va te permettre
davoir une ide de lobjet. (B14.39)
Aspect problme
Laspect problme est voqu par tous les chercheurs. Lui aussi est trs souvent voqu
dans les dnitions proposes. On le retrouve aussi beaucoup dans les rponses sur le
rle des algorithmes. Cet aspect est voqu avec plus ou moins de prcisions. Certains
chercheurs voquant, dans la dnition, une tche cone lalgorithme :
Pour moi un algorithme, cest une procdure automatise qui accomplit une
tche quon souhaite lui voir accomplir. (B1.2)
Cest un procd systmatique pour obtenir une certaine classe de rsultats.
Les algorithmes pour quelque chose... (B6.2)
7. Rappelons nouveau que les questions des entretiens sur lenseignement nont pas pour vocation de
donner des pistes pour lenseignement. Elles sont voir comme un moyen de faire apparatre les conceptions
des chercheurs.
81
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Majoritairement, la notion de problme est voque de manire directe (18 ch.). Un algo-
rithme rsout un problme :
Algorithme a me fait penser, moi, programmation. Manire dimplmenter,
manire de rsoudre un problme de manire automatique. (B7.4)
Lalgorithme est donc souvent reconnu comme outil de rsolution de problme, mais il est
dicile de savoir quelle est la notion de problme qui est derrire le terme. En particulier,
lutilisation dalgorithmes pour aider le chercheur rsoudre un problme correspond
une notion de problme trs dirente de celle que nous voulons valider. On retrouve ce
point de vue dans les positions de certains chercheurs, par exemple :
Je ferais peut-tre une distinction entre calcul numrique et algorithme. [...]
Cest que justement, un algorithme, il y a certes une forme mais il rpond
avant tout un problme. On pose une question et on veut une rponse
ce problme. Et de ce point de vue, le calcul numrique, souvent, nentre pas
exactement dans ce cadre parce que ce que rend le programme qui a t crit
nest pas forcment li de manire trs claire la question qui a t pose.
[...] Cest du domaine de ce que jappellerais plus largement de la simulation.
(B20.14)
Les notions dentre et sortie, assez prsentes (13 ch.) prcisent un peu plus la relation
algorithme-problme :
Et ensuite on eectue une suite doprations. En prenant cette entre et en
transformant, une suite bien prcise doprations, cest a lalgorithme. [...] Il
y a une sortie aussi. (B14.8)
Dautres chercheurs (7 ch.) sont encore plus prcis en voquant la notion dinstance, le fait
que lalgorithme rponde toutes les instances dun problme :
Premier rle, ils servent avoir la solution concrtement quand on prend des
instanciations de notre problme. (B8.20)
Cest--dire, quel que soit ce que tu me donnes, ce que jai cr [un algorithme]
va permettre de rsoudre le problme, cest pas quelque chose qui va dpendre
de... Enn a va dpendre mais a va pas... Quel que soit ce que tu mets a va
tre rsolu quoi. (B1.32)
Aspect preuve
Laspect preuve se retrouve dans une majorit dentretiens (16 ch.) . Il apparat souvent
concernant le rle des algorithmes (question d). Cet aspect apparat assez souvent aussi
lorsque les chercheurs abordent les algorithmes prsents dans leurs travaux (lorsquil y en
a). Enn, il semble que les questions de la deuxime partie sur lenseignement soient favo-
rables faire merger cet aspect.
La notion de preuve dalgorithme est trs prsente (12 ch.) et concerne essentiellement la
correction des algorithmes :
Faire un algorithme qui se tient et voir pourquoi est-ce quil fait eectivement
le bon travail et prouver que a marche, cest clairement une bonne faon
dapprocher la logique, ce genre de choses. (B3.26)
La terminaison est bien moins souvent aborde et est toujours prsente avec la correction :
82
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Alors en algorithmique on aime bien montrer quun algorithme est exact, quil
sarrte toujours. Il y a quand mme la mme rigueur, la mme notion de preuve
[quen mathmatiques]. (B11.36)
Lalgorithme est aussi prsent comme outil de preuve (9 ch.), il permet de dmontrer des
rsultats :
Quand je madresse aux tudiants, je mets toujours les algorithmes en avant.
Et je fais tomber la thorie, aprs les algorithmes. Donc je dmontre que lal-
gorithme est juste et aprs on en tire des proprits. (B5.16)
On retrouve aussi, plus prcisment, la notion de preuve constructive ou algorithmique (11
ch.) et lexemple spcique de la rcurrence (7 ch.) :
Contrairement certaines preuves qui sont compltement constructives et qui
peuvent tre ramenes des algorithmes en quelque sorte. (B3.18)
Dans les maths, il y a certaines preuves qui ne ressemblent pas du tout des
algorithmes... Cest pas du tout des preuves algorithmiques. Les preuves par
labsurde par exemple cest pas du tout des preuves algorithmiques. Par contre,
les preuves par induction, souvent il y a un algorithme cach derrire. (B4.20)
Comme cest le cas ci-dessus, la rfrence aux preuves constructives est souvent apporte
par la question de donner des exemples de choses non-algorithmiques. La valeur des preuves
algorithmiques est aussi discute par certains chercheurs :
Pour moi, lorsquon dispose dun algorithme, on a une meilleure preuve dun
rsultat, le rsultat est devenu eectif. Non seulement on a dmontr le rsul-
tat, mais on a des procdures calculables qui permettent ventuellement de le
quantier, davoir des rsultats quantitatifs plus prcis. (B10.14)
Enn, on retrouve aussi la notion de preuve formelle qui lie algorithme et preuve dune
autre faon encore, avec, par exemple, des rfrences Hales
8
(B20.18, B21.12).
Aspect complexit
La complexit est prsente dans de nombreux entretiens (12 ch.). Elle est trs majori-
tairement voque par la question de la complexit en temps (ou en nombre dtapes) :
Parce que chercher un maximum, ordonner, comme a cest relativement facile
au niveau concept mais l apparaissent, eectivement, des notions nouvelles
qui sont les notions de complexit. Et donc a cest important. Je veux dire
que dans la notion dalgorithme, [...] maintenant on doit faire face des notions
decacit, de complexit dalgorithmes. (B19.10)
La notion de complexit est lie au comportement de lalgorithme. Ainsi, la complexit na
de sens que si le comportement de lalgorithme varie selon les instances. Ce point, sans tre
une caractrisation de lalgorithme, est questionn par plusieurs interviews (en particulier
en lien avec la question du discriminant) :
[Le discriminant] cest un peu limite parce que cest vraiment dcomposer une
formule en trois quoi. Alors quon peut lappliquer directement sans problme.
Un algorithme cest quand mme, pour moi, quelque chose qui demande plu-
sieurs tapes quon ne peut pas rsumer en une formule. (B12.12)
8. Avec la preuve formelle de la conjecture de Kepler.
83
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Pour moi dans lide dalgorithme il y a un peu le ct taille variable [...] Il y a
une thorie de la complexit derrire, sur le fait que si cest des problmes en
taille xe tout peut tre rsolu par du... Ouais donc cest pas trs clair. Pour
moi un algorithme, cest un truc qui permet de rsoudre des problmes dont
la taille est pas ncessairement xe mais... Bon l le fait que le problme de
dpart ait une taille xe. L cest juste une porte logique, je sais pas, jirais pas
jusqu dire que cest un algorithme. (B1.28-30)
Apparaissent aussi, les notions de classes de complexit, et dapproximations de solutions
dans les cas de problmes trop complexes (7 ch.) :
Donc le but cest darriver [...] percevoir la complexit dun algorithme et
dtre capable de les classer. Alors, il y a le classement, le gros classement P-
NP. Mais par rapport a, il y a toute une srie de classes dalgorithmes, avec
ensuite leur complexit explicite. On va dire tel algorithme est en O(n), tel
algorithme est en O(n
2
), etc. O n est la taille des entres. (B9.64)
Alors soit on est confronts des problmes faciles, auxquels cas il faut arriver
encore trouver un algorithme polynomial. Et puis si on est dans les problmes
plutt diciles, ce moment-l, genre NP, NP-compltude ou NP-dicile,
ce moment-l, est-ce quon est quand mme capable de trouver des solutions
approches mais avec des garanties performance par exemple. (B16.48)
Les questions de comparaison dalgorithmes et de recherche dun algorithme optimal pour
un problme sont aussi reprsentes dans les entretiens (7 ch.) :
Il faut des algorithmes qui soient capables de traiter ces donnes et de dire : ben
on fait mieux que les autres, heu... Et dans un temps qui est meilleur ou moins
bon. Enn bon, on fait mieux ou moins bien et on se positionne. (B22.36)
Ce problme on sait bien y rpondre avec un ordinateur, on peut le faire de
faon ecace. Et on peut dire si la connaissance actuelle permet dy rpondre
de la manire la plus ecace possible, a sera un algorithme optimal. (B20.38)
Aspect modles thoriques
Laspect modles thoriques est prsent dans les entretiens mais cest celui qui est le
moins souvent voqu (7 chercheurs en tout). On retrouve, cependant tous les aspects que
nous avions souligns. Cet aspect est le plus souvent voqu suite aux questions a et b.
Certains lvoquent concernant leur travail de recherche.
On retrouve en particulier le modle de machine de Turing, mais aussi la notion gnrale
de modle de calculabilit :
La dnition formelle, a doit tre avec des machines de Turing. (B14.2)
Des gens lont fait plusieurs fois dans lhistoire, de thoriser sur papier quelle
serait la mcanisation du calcul et de sarrter l. (B18.22)
On retrouve aussi, comme nous lavons vu concernant laspect complexit, les notions de
problmes P, NP ou encore NP-diciles. Ces notions sont en eet trs lies aux questions
de complexit dun point de vue thorique. Les notions de preuves formelles relvent aussi,
en quelque sorte, des modles thoriques.
84
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Bilan
Validation du modle Ltude documentaire nous avait permis de relever cinq aspects
fondamentaux. Nous les avons tous retrouvs dans les entretiens avec les chercheurs.
Cette confrontation nous permet donc de valider le modle.
Des conceptions incompltes Tous les aspects ne sont (videmment) pas voqus par
tous les chercheurs et dirents points de vue pourraient tre relevs. Nous reviendrons sur
ces questions dans le chapitre suivant, en essayant de voir quelles conceptions sous-tendent
ces variations de points de vue. Nous essaierons de voir en quoi les dirents domaines de
recherche peuvent tre relis ces conceptions.
2.3 -conceptions dans les entretiens
Reprer les -conceptions dans les entretiens est plus dicile que pour les aspects. En
particulier, certaines structures de contrle sont dicilement visibles dans de tels entretiens.
Nous allons nous concentrer essentiellement sur ce qui permet de dlimiter les conceptions
que nous avons dcrites :
les notions de problme et dinstance (en particulier P
a
et P qui dterminent la
dualit outil-objet),
les systmes de reprsentation qui dterminent fortement les paradigmes,
les oprateurs et structures de contrle lorsque cela est possible.
Le modle de -conceptions reprend et prcise plusieurs des lments du modle par as-
pects. Une partie des points tudis plus haut apporte dj des rponses la validation
du modle des -conceptions. Nous passerons plus rapidement sur ces points.
Problmes, instances, P
a
, P
Nous avons dj vu que laspect problme tait prsent dans les discours de nombreux
chercheurs. La notion dinstance est voque et souligne la ncessit quun algorithme
rsolve un problme pour tout un ensemble de cas. La notion dentre-sortie va aussi dans
ce sens.
Ce point voque lalgorithme en tant quoutil. Un outil identique pour rsoudre plusieurs
instances du problme. Comme soulign ici :
Un algorithme simple dans la vie pour monter un escalier cest : tant quil y a
une marche, monter la marche. Quand il ny a plus de marche, cest termin.
Cest un algo simple mais a permet de monter nimporte quel escalier de
nimporte quelle taille. (B1.18)
Les exemples proposs par les chercheurs sont trs majoritairement
9
des problmes de P
a
ou des algorithmes les rsolvant. Les plus cits sont :
Les tris
Lalgorithme dEuclide
La mthode du pivot de Gauss
Les oprations poses (addition, division, etc.)
Les tests de primalit
9. lexception, peut-tre, des mthodes et schmas numriques, qui ne sont pas toujours des algo-
rithmes au sens de notre dnition.
85
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Des algorithmes sur les graphes (parcours, coloration, etc.)
Des mthodes numriques (Newton, Cauchy-Lipschitz...)
Les exemples choisis par les chercheurs ( lexception de ceux tirs de la vie courante)
mettent tous en jeu des problmes avec une innit dinstances. Mme si leurs dnitions
sont larges, il semble que les chercheurs conoivent cet aspect comme reprsentatif. Ces
exemples illustrent parfaitement bien des problmes de P
a
.
Lalgorithme en tant quobjet est aussi reprsent. Tous les chercheurs ne lvoquent pas et
tous nabordent pas les mmes aspects, mais les problmes de P se dgagent tout de mme
assez nettement. Cela passe, par exemple, par la reconnaissance de ltude des algorithmes
comme un champ dtude :
Cest un objet dtude, la fois pour les gens qui font des schmas numriques
et qui montrent [...] quutiliser lalgorithme quils proposent va donner une
approximation de la vritable solution mathmatique. Et puis cest un objet
dtude en informatique thorique aussi de comprendre la complexit des algo-
rithmes, etc. Cest la fois un outil, un objet dtude et quelque chose quon
aime avoir dans ses rsultats. (B8.20)
Nous avons vu aussi que de nombreux chercheurs voquent laspect complexit qui corres-
pond lune des problmatiques majeures de lalgorithme en tant quobjet. Les modles
thoriques font aussi rfrence P.
Enn, la notion de preuve dalgorithme, voque dans de nombreux entretiens (12 ch.),
fait rfrence au problme p
0
. Il sagit de montrer que lalgorithme rsout bien le problme
tudi. Comme nous lavons prcis dans notre modle, ce problme est la charnire
entre P
a
et P. Il se rfre la fois la structure de contrle dans les conceptions-outil
et doprateur dans les conceptions-objet. Cette validation de lalgorithme est clairement
reconnue comme tant dordre mathmatique :
On est beaucoup dans la discipline informatique thorique, considrer quon
fait un travail semblable celui des mathmaticiens. Probablement, lobjet nest
pas toujours exactement le mme mais les mthodes sont les mmes. (B20.82)
Systmes de reprsentation et oprateurs de AI
Nous navons pas voqu du tout la question des systmes de reprsentation. On trouve
des points de vue trs divers sur ces systmes de reprsentation des algorithmes. Comme
il sagit des reprsentations des oprateurs, il est parfois dicile de les distinguer dans les
discours et lon remarque souvent que les chercheurs ont des dicults dtacher le fond
de la forme.
On trouve bien videmment de trs nombreuses rfrences aux langages de programmation
et aux oprations dites lmentaires de ces langages (aectations, boucles...) :
Donc ce serait essayer de traduire le thorme dans le langage de lordinateur.
Que ce soit du Fortran, du machin, du Pascal, du Mathlab. (B15.18)
Enn, pour moi un programme informatique cest un algorithme. Aprs cest
pas une dnition prcise de lalgorithme. Donc pour moi un algorithme cest
quivalent un programme informatique (B3.16)
Certains considrent lalgorithme comme quelque chose qui se situe au dessus des langages
de programmation mais qui leur est fortement li :
86
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Au bout du compte lobjectif cest de faire excuter de faon automatique par
une machine un certain type, je dirais, dactions. Donc cest une couche, avant,
qui se veut indpendante des langages, mais qui est quand mme essentiellement
base sur les principes ditrations, de boucles... Mais cest aussi profondment
li la structure des machines, je pense. (B19.2)
On reconnat clairement ici, le paradigme algorithme informatique (AI) ainsi quune
rfrence un pseudo-code qui serait plus abstrait mais qui serait trs proche des langages
de programmation. On a ici une vision du langage de lalgorithme comme une abstraction
du langage de programmation. On glisse vers le paradigme AM.
Systmes de reprsentation et oprateurs de AM
Dautres soulignent aussi que les algorithmes peuvent tre exprims dans un langage moins
rigoureux :
La dicult de lalgorithmique cest : quel niveau on place les descriptions ?
Si on est plus proche de la machine, cest un langage formel o il ny a pas
dambiguts. Cest vrai que nous on fait de lalgorithmique un plus haut
niveau o cest plus des tapes et il reste une part dinterprtation. (B11.2)
Il sagit du langage du paradigme de lalgorithme mathmatique (AM). On retrouve
aussi ce paradigme dans le fait de pouvoir exprimer un algorithme dans un langage trs
peu formalis :
Une squence dinstructions bien dnies, pas ncessairement en pseudo-code.
[...] En franais. Par exemple pour faire laddition de deux nombres. (B4.6-8)
On retrouve donc dirents niveaux de formalisme dans lexpression des algorithmes. On
retrouve aussi la ncessit de xer des oprations de base pour traiter un problme :
Un algorithme, cest une suite dinstructions, qui peut tre crite en langage
naturel. Donc on entend par instruction une commande de base, la granularit
tant dnir par avance. (B13.2)
Le paradigme AM nest pas uniquement considrer comme une tape prcdent la pro-
grammation. Plusieurs chercheurs prcisent que leur activit se limite AM :
Mais par contre, dans mon travail plus classique, je ne fais que des algorithmes.
[...] Je les fais, pas forcment au sens o je les programme aprs. Justement, on
en revient l la description... une description... Littrale du travail, o on
se convainc en lisant quon pourrait le faire. [...] Souvent, je me satisfais dun
article qui va dcrire et qui va convaincre le lecteur que a peut tre ralis.
(B20.44-46)
Certains insistent sur les dirences de langages et doprateurs en fonction de qui excute
lalgorithme (humain, machine) ou du modle de calcul dans lequel on se place :
Ce nest pas pareil davoir un algorithme qui doit tre implment sur une
carte puce quun algorithme qui doit tre implment sur un supercalculateur.
(B9.111)
Cet aspect squencement cest important [...]. Alors moi, qui travaille dans le
monde du paralllisme, parfois je men fous quune tape soit avant lautre. [...]
Mais cest vrai que cest li au modle dordinateur. Donc par exemple si on
rchit au modle quantique dordinateur, cest encore autre chose. (B16.116)
Cela peut voquer aussi la reprsentation ou lencodage des objets manipuls :
87
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Le fait de dire quun objet a une forme. Est-ce que a veut dire quon va le
reprsenter par un maillage avec des polygones ? Est-ce que a veut dire quon
va prendre une fonction de densit dans lespace ? [...] Il se peut que selon le
problme rgler, lune soit plus riche que lautre. (B18.34)
On peut avoir des codages des entiers qui sont redondants et qui permettent
dliminer les problmes de retenues, mais en ayant dautres dfauts. On perd
sur autre chose, par exemple sils sont redondants cest que ensuite il faut tre
sr de retraduire le rsultat en langage courant. (B14.12)
Ce point pourrait aussi faire rfrence AI. Il est dicile dans ces entretiens de percevoir
la nuance que nous avons faite entre structure de donnes et types de donnes abstraits.
Systmes de reprsentation et oprateurs de PA
Comme nous lavons dj voqu concernant laspect preuve, la preuve algorithmique
(PA) est prsente dans les entretiens (11 ch.). Ce type de preuve est reconnu comme
contenant ou reprsentant des algorithmes :
Il y a les choses qui vont tre prsentes sous forme dalgorithmes, soit dans
un langage de programmation, soit dans un simili-langage... et l cest assez
explicite. Soit il y a des rsultats qui sont constructifs et que lon peut rendre al-
gorithmiques ou qui sont dj prsents, dans la dmonstration, algorithmiques.
(B8.6)
En particulier les preuves par rcurrence sont classes dans cette catgorie :
Dans certaines des thmatiques cest souvent des incidences de mthodes de
preuve, dune preuve constructive de quelque chose, ou une rcurrence pour
donner un rsultat. [...] Parce que rsoudre un problme de manire rcursive,
tu peux en pratique faire un algo partir de a. (B1.44)
Nous ne revenons pas plus sur ce point qui a dj t dvelopp pour laspect preuve. On
peut simplement conclure que le paradigme PA est bien prsent et que cest lopposition
aux preuves non-constructives qui donne du sens la preuve algorithmique.
Structures de contrle de P
a
et oprateurs de P
Nous avons dj abord certains lments dans la partie concernant laspect preuve. Nous
ne reviendrons pas sur les points dj discuts. En particulier nous avions relev que la
validation des algorithmes et des programmes tait bien considre comme relevant de la
validation mathmatique. Les entretiens mens ne permettent pas de valider beaucoup plus
en dtail les spcicits de ces structures de contrle des oprateurs relatifs aux problmes
de P. On peut tout de mme relever quelques remarques faites par des chercheurs.
En particulier, les nuances que nous avions prsentes concernant les structures de contrle
de AI-outil se retrouvent dans certains entretiens :
Il y a aussi laspect vrication du programme. [...] On peut avoir un algorithme
correct et un programme qui ne lest pas. (B9.101)
On retrouve aussi des rfrences des oprateurs prcis pour traiter certains problmes de
P, ici dans le cas de AM :
En gros, mes travaux de recherche il y a deux techniques, [...] cest des preuves
de dicult, NP-compltude, et des algorithmes. Donc soit des algorithmes
88
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
polynomiaux, soit exponentiels et on essaie den faire quand mme quelque
chose. (B4.50)
Enn, on peut noter que mme si la validation exprimentale existe dans ltude des algo-
rithmes, la validation mathmatique apporte une valeur ajoute :
La plupart des gens faisait des heuristiques qui ntaient absolument pas fon-
des. Et l, le travail cest de dvelopper des algorithmes, qui soient ecaces,
mais surtout qui soient garantis. [...] Donc de ne pas juste avoir des heuristiques,
mais vraiment, en plus, dassocier lalgorithme des proprits mathmatiques
sur la sortie. (B2.32)
Bilan
Validation On retrouve bien les lments du modle de -conceptions dans les entre-
tiens des chercheurs. En particulier, les classes de problmes qui permettent de dcrire les
conceptions outil et objet (P
a
et P) sont clairement identies. Les systmes de reprsen-
tation qui caractrisent les dirents paradigmes sont aussi en jeu. Bien entendu, notre
dcoupage en trois paradigmes ne peut pas rellement tre valid, mais on peut tout de
mme remarquer quil sagit dune granularit qui semble adapte lanalyse.
Diversit On peut remarquer que tous les chercheurs ne considrent pas tous les para-
digmes. La possibilit de coexistence des paradigmes permet danalyser cela en termes de
conceptions des chercheurs, nous reviendrons sur cela dans le chapitre suivant.
Limites Nous avons pu voir certaines limites des entretiens pour reprer les structures
de contrle des conceptions-outil et les oprateurs des conceptions-objet. Cela peut tre li
aux choix des questions ou encore aux limites de la modalit dentretien elle-mme. Nous
reviendrons sur cette question dans la conclusion.
Conclusion
Validation des modles
Les entretiens mens nous ont permis de valider les deux modles proposs. Bien que tous
les chercheurs ne fassent pas rfrence tous les lments des modles, on peut consid-
rer que ces lments sont susamment prsents pour conrmer nos choix et nos analyses
pistmologiques.
Les variations que nous avons pu constater dans le rapport des chercheurs lalgorithme,
nous poussent questionner un peu plus ces rapports de manire individuelle. Comprendre
les spcicits de chaque conception de chercheur est un bon moyen dprouver nos modles
pour en driver un outil danalyse. Cest ce que nous ferons dans le chapitre suivant.
Mthodologie - Retour
Nous avons pu constater que les entretiens raliss ntaient pas parfaitement adapts
la validation du modle de -conceptions. Dune part, les entretiens ont eu lieu avant le
dveloppement de ce modle. Dautre part, le modle de -conceptions sintresse plutt
lactivit algorithmique. Valider un tel modle par des entretiens est dicile car les struc-
tures de contrle ne sont pas aisment reprables.
89
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Une possibilit pour accder aux structures de contrle est dobserver lactivit du cher-
cheur ou de sintresser des traces de son activit. Cela nest pas vident avec des cher-
cheurs, mais reprsente une piste envisageable pour poursuivre la validation exprimentale
du modle pistmologique.
travers ces entretiens, nous avons montr quune validation exprimentale dun modle
pistmologique est possible. La confrontation dun modle bas sur la littrature du sa-
voir savant aux conceptions de membres des institutions productrices du savoir montre
une certaine distance. Il est important que cette distance ne soit pas trop grande et que la
conception globale de lensemble des chercheurs soit en adquation avec le modle thorique
propos. De manire gnrale, lanalyse des conceptions des chercheurs enrichit lpistmo-
logie contemporaine dun concept. En ne se basant que sur le texte du savoir savant, le
risque est daccder un objet uniformis qui ne tient pas compte des spcicits des
champs quil couvre.
90
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 5
Conceptions des chercheurs -
Construction dun outil
Sommaire
1 Motivations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
2 Mthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
2.1 lments pour lanalyse des conceptions . . . . . . . . . . . . . . 92
2.2 aspects et paradigmes en jeu . . . . . . . . . . . . . . . . . . . 92
3 Les conceptions des chercheurs . . . . . . . . . . . . . . . . . . . 93
3.1 Tableau rcapitulatif . . . . . . . . . . . . . . . . . . . . . . . . . 93
3.2 Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Conclusion - Vers une grille danalyse . . . . . . . . . . . . . . . . . . 95
1 Motivations
partir du travail pistmologique dvelopp dans la premire partie et valid dans le
chapitre prcdent, nous souhaitons tudier les transpositions didactiques de lalgorithme
au travers de sa conception dans diverses institutions. Une telle tude sera mene dans
la partie suivante. Avant cela, et dans ce but, il nous faut construire un outil danalyse
partir de ces modles.
Une premire tape dans la construction dun tel outil est de voir quelles nuances notre
modle pistmologique permet de distinguer. Dvelopper une grille danalyse en tudiant,
tout dabord, les conceptions des chercheurs interrogs peut tre un premier pas dans cette
direction. Les variations que nous avons repres prcdemment dans les entretiens doivent
pouvoir tre interprtes en termes de conception.
Les nuances que les conceptions doivent mettre en avant devront tre mises en lien avec
les dirences entre les chercheurs, en particulier leur domaine de recherche. Cela peut
apporter des informations pour comprendre les direntes transpositions qui peuvent tre
mises en uvre dans direntes institutions enseignantes (par exemple, entre lobjet algo-
rithme dans un enseignement dinformatique ou dans un enseignement de mathmatiques).
Pour nir, lanalyse des conceptions des chercheurs travers les entretiens peut aussi
nous apporter des lments concernant le rapport des enseignants au concept algorithme.
91
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Dabord parce que lon peut sattendre retrouver certaines conceptions de chercheurs
chez les enseignants du secondaire. Ensuite parce que la grille dentretien pourrait tre
r-utilise et adapte pour tudier les conceptions des enseignants.
2 Mthodologie
2.1 lments pour lanalyse des conceptions
La distinction des direntes conceptions de lalgorithme doit sappuyer sur les points
suivants :
dnition de lalgorithme,
forme de lalgorithme,
rle de lalgorithme,
position sur lexemple du discriminant,
Aspects prsents,
prsence des paradigmes AI, AM et PA, et des problmes P
a
et P.
Dans le cas des entretiens, nous avons pos directement ces questions aux chercheurs mais
des lments de rponse peuvent se retrouver tout au long de la discussion. Nous choisissons
de ne pas traiter diremment les rponses ces questions directes et le reste du discours.
Cela naurait pas de sens tant donn notre choix de faire des entretiens semi-ouverts.
Prcisons que ce que nous allons dcrire nest quun ensemble de tendances. Il ne sagit
pas de caractriser les conceptions des chercheurs selon leur domaine mais de reprer des
indicateurs susceptibles de guider la suite du travail, de proposer des lments pour inter-
prter certaines conceptions et de donner des pistes pour poursuivre ces recherches.
Nous allons prsenter ici les rsultats, chercheur par chercheur, de lanalyse prcdente de
validation des modles. Prcisons dabord la mthode dtude des conceptions.
2.2 aspects et paradigmes en jeu
Nous avons repr chaque aspect selon les points mis en avant au chapitre 1. Pour cha-
cun, nous prcisons quels sont les points que nous considrons pour dire que laspect est
fortement prsent (), prsent () ou absent. Nous soulignerons lorsquun aspect nest pas
directement voqu mais apparat en ligrane dans un discours ().
effectivit Les points qui nous paraissent les plus importants sont la transmissibilit
un oprateur quelconque, la nitude et la non-ambigut. Ces points correspondent une
notion deectivit plus thorise que, par exemple, la notion de programme informatique.
problme Nous avons considr que laspect est plus fortement prsent lorsque la notion
dinstance ou la notion dentre-sortie sont voques. La notion de rsolution de problme
(qui na pas ncessairement le sens que nous lui donnons ici) ou celle de tche cone un
algorithme sont trop oues pour tre considres comme susantes.
complexit Nous considrons que la complexit est fortement prsente si elle nest
pas simplement mentionne dans le discours mais discute un peu plus longuement. Par
exemple, la prsence de notions plus prcises ou dtailles telles que la recherche dalgo-
rithmes optimaux ou des critres dtude de la complexit correspondent cela.
92
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
preuve Nous avons considr que la preuve tait plus fortement implique quand lal-
gorithme est voqu en tant quoutil de preuve ou quand les preuves algorithmiques sont
voques (en particulier la rcurrence). Dautres points lis la preuve comme la correction
dalgorithmes nous ont paru moins forts.
modles thoriques Concernant les modles thoriques, nous considrons quils sont
fortement prsents sils ne sont pas simplement voqus mais sils sont discuts ou si un
rle important leur est attribu (par exemple sils sont voqus en rponse la demande
de dnition de lalgorithme).
Paradigmes Nous utiliserons un codage plus simple pour la prsence des paradigmes :
soit le paradigme est voqu (), soit il est sous-entendu ou ce qui est voqu est la limite
du paradigme (), soit il est absent.
3 Les conceptions des chercheurs
3.1 Tableau rcapitulatif
Le tableau suivant rsume les aspects et paradigmes voqus par les chercheurs ainsi que
leur domaine de recherche
1
. Nous considrerons que les conceptions-objet sont prsentes
si les aspects-objet sont prsents.
C
h
e
r
c
h
e
u
r
D
i
s
c
i
p
l
i
n
e
S
e
c
t
i
o
n
e
f
f
e
c
t
i
v
i
t

p
r
o
b
l

m
e
c
o
m
p
l
e
x
i
t

p
r
e
u
v
e
m
o
d
.
t
h

o
.
A
I
A
M
P
A
1 MF, IA 27
2 MF, IF 27
3 MF 25
4 IF 27
5 IF 27
6 MF 26
7 MA, MF 26
8 MF 25
9 MF, IA 25
10 MF 25
11 MA 27
12 MA 26
13 MA 26
14 MF 25
15 MA 26
16 IA 27
17 MA 25
18 IF, MA 27
19 IA 26
1. M : Mathmatiques, I : Informatique, F : Fondamentale(s), A : Applique(s). Nous utiliserons ces
abrviations dans toute la suite de la section.
93
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
C
h
.
D
i
s
c
.
S
e
c
.
e
f
f
.
p
r
o
b
.
c
o
m
p
.
p
r
.
m
.
t
.
A
I
A
M
P
A
20 MF, IF 27
21 MF 25
22 IA 27
3.2 Rsultats
Preuve
Il semble quil y ait un lien entre la prsence de laspect preuve et le domaine de recherche.
Sur les 11 chercheurs se dclarant en M.F., 10 abordent la preuve dont 8 de manire forte.
Chez les chercheurs dclars en I.F., tous abordent la preuve et 4 sur 5 de manire forte.
Chez les chercheurs en M.A., seulement 4 sur 7 abordent la preuve dont seulement 3 de
manire forte. Chez les chercheurs en I.A., 4 sur 5 abordent la preuve, mais parmi eux 3
nabordent que la correction dalgorithme.
La preuve a tendance tre plus aborde (surtout de manire forte) par les chercheurs qui
dclarent une partie de leur recherche comme thorique. Cela nest pas tonnant mais se
voit assez nettement dans nos rsultats.
complexit
Deux phnomnes sont remarquer concernant la complexit.
Le premier est que la complexit est aborde par tous les chercheurs dclarant mener des
recherches en informatique. Ce constat na rien de surprenant mais conrme notre modle
dans lequel les questions de complexit sont plus faciles exprimer dans les paradigmes
AM et AI (en particulier avec les structures de donnes et les types de donnes abstraites).
Lautre phnomne est quun seul chercheur en M.A. voque la complexit (cest aussi un
chercheur en I.F.). Pourtant, les chercheurs en M.F. citent tout de mme souvent la com-
plexit. Une interprtation possible est que les chercheurs en M.A. se focalisent plus sur
la capacit dapproximation des algorithmes quils utilisent que sur leur complexit. Une
autre possibilit est que les mthodes en jeu ne sont pas tout fait des algorithmes au sens
o nous lentendons, par exemple en ne rsolvant pas une famille dinstances. Cela peut
tre soutenu par le fait que 2 de ces chercheurs en M.A. nvoquent ni la notion dinstance,
ni celle dentre-sortie.
Enn, il est possible que la manipulation dobjets continus discrtiss, ne soit pas adapte
ltude de la complexit.
Toutes ces hypothses demandent vrication et doivent tre prises avec prcautions.
Il faut noter que parmi les 6 chercheurs en M.F. qui citent la complexit, un seul nest pas
chercheur en informatique (et il dclare tout de mme une activit de recherche de loisir
en algorithmique). On peut donc armer que la complexit est trs lie linformatique et
bien moins aux mathmatiques. Cela rejoint le point de vue de Knuth (1985) concernant
limportance de la complexit dans lalgorithmic thinking et son absence dans le mathematic
thinking.
94
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Modles thoriques
Les modles thoriques sont abords par des chercheurs de tous les domaines. Cependant,
si lon regarde quelles sont les disciplines de ces chercheurs, on trouve, entre autres :
Recherche oprationnelle et optimisation combinatoire (3 ch.)
Thorie des nombres et cryptographie (1 ch.)
Topologie algorithmique (1ch.)
Ces disciplines sont cheval entre informatique et mathmatiques et les modles thoriques
y jouent un rle important. Les 2 chercheurs en M.F. qui voquent ces modles, avouent
que cela ne fait pas partie de la culture des mathmaticiens. Il semblerait que ces modles
thoriques soient peu connus en dehors des disciplines qui les utilisent.
Paradigmes
Tous les chercheurs voquent le paradigme AI dune manire trs nette. Une grande ma-
jorit citent aussi AM ou y font rfrence. Il est dicile den dire plus concernant ces
paradigmes, le questionnaire ne permettant pas facilement daborder les spcicits de AM.
Par contre, PA peut tre facilement identi, le questionnaire ayant tait conu en tenant
compte de laspect preuve. Cet aspect concide avec les critres que nous avons donns
pour dire que la preuve est fortement prsente.
PA est donc principalement voqu par les chercheurs qui ont une recherche considre
comme thorique.
Concernant laspect effectivit, les points que nous avons considrs comme moins forts
relvent plutt de AI (programmation, algorithmes destination des ordinateurs, mthodes
automatiques, etc.). On peut considrer que les chercheurs qui nvoquent que ces points
pour laspect effectivit se placent essentiellement dans le paradigme AI. Ce sont les
mmes chercheurs qui ne citent pas ou peu les aspects-objet. Ils sont dans la conception
AI-outil.
Ces chercheurs sont essentiellement des chercheurs en M.A.
Lien aux sections
On peut aussi mettre en lien les rponses des chercheurs et leur section CNU. Il ne faut pas
pousser trop loin les conclusions sur de tels eectifs, mais les liens prcdents apparaissent
encore plus clairement :
complexit preuve mod. tho
25
e
4/7 7/7 3/7
26
e
1/6 3/6 0/6
27
e
8/9 8/9 5/9
Conclusion
Rsultats et pistes
Mme si lon ne peut pas les dcrire en dtail, on peut reprer globalement une grande
htrognit dans les conceptions des chercheurs. Il est fort probable que cette htrog-
nit soit aussi forte chez les enseignants.
95
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Le domaine de recherche du chercheur semble jouer un rle dans sa conception de lal-
gorithme. Ces premiers rsultats tendent valider direntes hypothses que nous avions
faites dans le modle de -conceptions et dont nous avions discut dans le chapitre 2. No-
tamment, la relation dirente des mathmatiques et de linformatique lalgorithme se
retrouve ici.
Notons, enn, que beaucoup de chercheurs chez qui lon retrouve une conception large de
lalgorithme (au sens o au plus un aspect est oubli), sont pour beaucoup des cher-
cheurs du domaine de linformatique mathmatique et de domaines o les mathmatiques
discrtes sont trs prsentes.
Nous avions abord au chapitre 2, la question de la relation privilgie du discret lal-
gorithme. Les rsultats voqus ici vont dans le sens dun tel rapport : les mathmatiques
discrtes constituent un milieu favorable lalgorithme.
Grille danalyse
Lanalyse des conceptions des chercheurs a montr la pertinence des modles thoriques
daspects et de -conceptions pour distinguer des nuances. Le choix des questions pour les
entretiens jou un rle important pour reprer ces conceptions.
Les questions poses aux chercheurs peuvent donc servir de guide pour construire une grille
danalyse de conceptions. En particulier les questions sur la dnition de lalgorithme, sur
son rle, les exemples choisis et leurs champs doivent tre poses lors dune telle analyse.
Les outils danalyse que nous avons utiliss pour reprer les conceptions doivent aussi
tre intgrs dans une telle grille danalyse. Notamment, les aspects doivent tre reprs,
mme si lobjectif est de dcrire les conceptions : ils permettent de connatre les types de
problmes abords et de reprer lalgorithme-outil et lalgorithme-objet.
Nous avons vu que les paradigmes peuvent tre assez facilement reprs sur des critres
de systmes de reprsentation (la question de la reconnaissance des algorithmes apporte
souvent des lments). Il parat utile de sappuyer sur ces systmes de reprsentation pour
rechercher des conceptions.
Enn, selon les ressources analyses ou les personnes interroges, il faudra se poser la ques-
tion des problmes en jeu (P
a
? P?), des oprateurs et des structures de contrle.
Cela nous amne proposer la grille danalyse des conceptions suivante, quil faudra adap-
ter la situation et au sujet dtude.
96
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Grille gnrale danalyse des conceptions
Discours gnral sur lalgorithme et lalgorithmique :
Comment sont dnis algorithme et algorithmique ?
Quel rle est attribu lalgorithme dans les mathmatiques ?
Quelles tches sont attendues de llve ?
Algorithmes en jeu :
Quels problmes sont proposs ?
Sont-ils des problmes au sens de notre dnition? (instancis ?)
Quels sont les algorithmes prsents ?
Dans quels domaines sont ces algorithmes ?
Quels rles jouent ces algorithmes dans lactivit ?
Questionnement de lalgorithme :
Quelles questions sont tudier concernant les algorithmes ?
Quelles discussions ont lieu autour de lalgorithmique ?
Aspects :
Quels aspects sont voqus ?
Relvent-ils de loutil ou de lobjet ?
Conceptions
Dans quel paradigme se trouve-t-on?
Quelles conceptions de lalgorithme sont prsentes ? Et plus particulirement : quels
types de problmes ? quels types doprateurs ? quels systmes de reprsentation?
et quels types de structures de contrle (si elles sont prsentes) ?
Concernant les structures de contrle, qui revient la responsabilit de ces struc-
tures ?
Ces conceptions relvent-elles de loutil ou de lobjet ?
Des entretiens directifs
Les rsultats obtenus sur les conceptions des chercheurs peuvent aider mieux comprendre
le rapport lalgorithme selon les disciplines. Pour approfondir cette question, une tude
plus systmatique pourrait tre mene. La validation des modles tant ralise, on pourrait
maintenant proposer des entretiens directifs pour ltude des conceptions de chercheurs,
ou des questionnaires.
Lanalyse mene ici, peut servir de pr-exprimentation, permettant de dire que la grille
de questions est adapte ltude des conceptions. Les questions directes sur lalgorithme
du point de vue scientique apportent des rponses riches pour ltude des conceptions.
Cependant, il ne faut pas ngliger les questions bases sur lenseignement, qui bien que
soulevant rgulirement des changes totalement en dehors du cadre de ltude, ont permis
de faire apparatre chez certains chercheurs des conceptions et des aspects qui navaient
pas t voqus.
Une mthodologie dentretiens directifs peut permettre dviter lcueil de discussions hors
sujet propos de lenseignement. Un de nos objectifs est aussi de mieux connatre les
conceptions des enseignants vis--vis de lalgorithmique. Une entre par lenseignement
peut tre un moyen adapt. Les questions sur lalgorithme du point de vue scientique
pouvant savrer trop directes pour interroger les enseignants.
97
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
98
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conclusion, retour sur les questions
de recherche
Les entretiens mens nous ont permis de valider exprimentalement les modles de la pre-
mire partie. Cela constitue une rponse aux questions Q4
aspects
et Q4
conceptions
.
Les entretiens ont aussi permis de proposer une analyse des conceptions des chercheurs en
fonction de leur discipline de recherche. Cette tude nous a donn loccasion de tester nos
modles comme outils pour lanalyse de conceptions. Les variations dans les conceptions
des chercheurs conrment aussi nos analyses sur les rapports dirents lalgorithme en
mathmatiques et en informatique.
La connaissance partielle de lalgorithme chez les chercheurs interrogs soulve des ques-
tions concernant le rapport quentretiennent les enseignants du secondaire lalgorithme.
Finalement, ce travail nous a amen proposer une grille danalyse adaptable direntes
situations, pour lanalyse des conceptions et celle de la transposition didactique. Nous
mettrons cette grille lpreuve dans la partie suivante, en lutilisant pour analyser les
instructions ocielles pour le lyce, des ressources proposes en ligne et des collections de
manuels.
99
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
100
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Troisime partie
Lalgorithmique au lyce en France
101
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Questions et problmatiques pour
cette partie
Nous nous intressons ici la transposition de lalgorithmique dans linstitution Ensei-
gnement secondaire en France. Nous tudierons cette question travers trois types de
documents :
les programmes et documents-ressources,
des manuels,
des ressources en ligne.
Les programmes nationaux donnent des indications sur la transposition du savoir savant
vers le savoir enseigner (par la noosphre dcrite par Chevallard). Les consignes des
programmes sont voir comme une contrainte sur le savoir enseign. Les documents-
ressources (ou documents daccompagnements) constituent une prcision des attentes des
programmes. En ce sens, ces documents sont conus pour guider les enseignants dans la
mise en place des instructions ocielles. tudier ces programmes et documents-ressources
est indispensable la comprhension de la transposition en jeu dans la classe
2
.
La traduction de ces consignes dans les manuels constitue une deuxime tape importante
de transposition, qui inuence le savoir enseign en classe. Les manuels constituent des res-
sources courantes dans lusage des enseignants mais ce sont aussi des ressources au contact
des lves. Nous proposerons dtudier plusieurs collections de manuels.
La question des ressources et de leurs usages est une problmatique trs vive en didactique
des mathmatiques (Gueudet & Trouche, 2010). Il nous semble pertinent de nous intresser
dautres types de ressources que les manuels, en particulier celles disponibles en ligne.
Celles-ci se librent parfois des contraintes des programmes. Nous proposerons un corpus
de telles ressources dont nous tudierons le rapport au concept dalgorithme
3
.
Rappelons les questions sur la transposition au lyce que nous avions formules dans la
premire partie :
Question Q
lyce
. Quelles conceptions sont reprsentes ? Les conceptions prsentes sont-
elles compltes ? Sont-elles modies par rapport celles du savoir savant ? Relvent-elles
de loutil ou de lobjet ? Quelle place est donne aux structures de contrle ?
2. Il nous semble bon de prciser cela car les instructions ocielles pourraient ne pas tre pertinentes
pour tudier le savoir enseign dans dautres contextes : autres pays, autres institutions denseignement,
etc.
3. Nous ne nous intresserons pas ici la question (cruciale) de savoir comment de telles ressources sont
utilises et adaptes par les enseignants. Cependant, lusage des ressources ne peut pas tre tudi sans
comprendre la transposition qui est en jeu.
103
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Nous nous poserons ces questions dans les cas des questions de recherche que nous avions
nommes :
Q5
conceptions
concernant les programmes de mathmatiques du lyce, documents daccom-
pagnement et programmes de la spcialit ISN.
Q6
conceptions
concernant les manuels de mathmatiques du lyce.
Q7
conceptions
concernant les ressources en ligne pour la formation et celles pour la classe.
Une autre question, transversale cette partie, sera de valider les outils proposs et den
faire des outils plus systmatiques et facilement transfrables. Cest cette question qui
oriente lorganisation de cette partie.
Nous commencerons par ltude des instructions ocielles (chapitre 6).
Ensuite nous tudierons un corpus de ressources en lignes (chapitre 7) en essayant de
systmatiser les outils.
Pour terminer, nous dvelopperons une analyse des manuels (chapitre 8) dune manire
plus systmatique, permettant une approche quantitative.
104
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 6
Programmes et documents-ressources
Sommaire
1 Organisation des programmes . . . . . . . . . . . . . . . . . . . . 105
1.1 Le lyce en France . . . . . . . . . . . . . . . . . . . . . . . . . . 105
1.2 En mathmatiques : des objectifs communs pour le lyce . . . . . 106
1.3 Document ressource . . . . . . . . . . . . . . . . . . . . . . . . . 107
2 Grille danalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
3 Analyse des programmes . . . . . . . . . . . . . . . . . . . . . . . 108
3.1 Algorithmique dans len-tte des programmes . . . . . . . . . . . 108
3.2 Objectifs pour le lyce . . . . . . . . . . . . . . . . . . . . . . . . 109
3.3 Les algorithmes prsents dans les programmes . . . . . . . . . . . 112
3.4 Conclusion pour les programmes de mathmatiques . . . . . . . 118
4 Algorithmique de la spcialit ISN . . . . . . . . . . . . . . . . . 120
4.1 Discours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.2 Contenus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
5 Documents-ressources pour la seconde . . . . . . . . . . . . . . . 124
5.1 Discussion sur lalgorithmique . . . . . . . . . . . . . . . . . . . . 125
programme-papier . . . . . . . . . . . . . . . . . . . . . . 129
5.2 Activits proposes pour la classe . . . . . . . . . . . . . . . . . . 135
algorithme-instanci . . . . . . . . . . . . . . . . . . . . . 139
programme de modlisation-simulation . . . . . . . . . . 142
5.3 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
1 Organisation des programmes
1.1 Le lyce en France
Au sein des lyces, en France, ont lieu deux types denseignements. Lenseignement gn-
ral et lenseignement technologique. Nous ne nous intresserons ici quaux mathmatiques
dans lenseignement gnral.
La scolarit au lyce se dcompose en trois annes : la seconde (commune aux voies gnrale
et technologique), les deux annes suivantes (premire et terminale) composent le cycle
terminal pour lequel plusieurs lires denseignement gnral sont proposes :
la srie conomique et sociale (ES),
105
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
la srie littraire (L),
la srie scientique (S).
En seconde, les mathmatiques font partie des enseignements obligatoires (dits communs).
En premire et terminale ES, les mathmatiques constituent un enseignement obligatoire
(dit spcique en terminale). En terminale ES un enseignement de spcialit en mathma-
tique peut tre choisi en supplment de lenseignement spcique.
En premire L, les mathmatiques sont un enseignement obligatoire dont le programme
est le mme que celui de la premire ES. En terminale L, les mathmatiques nexistent que
dans un enseignement de spcialit (optionnel) dont le programme est le mme que celui
de lenseignement spcique de terminale ES.
En premire et terminale S, les mathmatiques constituent un enseignement obligatoire
(dit spcique en terminale). En terminale S, les lves doivent choisir un enseignement
dit de spcialit parmi plusieurs choix dont un enseignement de mathmatiques. Depuis la
rentre 2012, certains tablissements proposent aussi un enseignement de spcialit inti-
tul Informatique et Sciences du Numrique (ISN) qui contient une partie dalgorithmique.
Nous allons tudier les six documents ociels ci-dessous qui dterminent ces programmes :
Programme de mathmatiques de seconde (B.O. spcial n30 du 23 juillet 2009)
Programme de mathmatiques de premire ES et L (B.O. spcial n 9 du 30 septembre
2010)
Programme de mathmatiques de premire S (B.O. spcial n 9 du 30 septembre
2010)
Programme de mathmatiques de terminale ES (spcique et de spcialit) et L
(spcialit) (B.O. spcial n8 du 13 octobre 2011)
Programme de mathmatiques de terminale S (spcique et de spcialit) (B.O.
spcial n8 du 13 octobre 2011)
Programme de lenseignement de spcialit Informatique et Sciences du Numrique
(B.O. spcial n8 du 13 octobre 2011)
1.2 En mathmatiques : des objectifs communs pour le lyce
Il faut noter que les programmes de mathmatiques du lyce ont une spcicit concer-
nant lalgorithmique. Les objectifs des programmes de mathmatiques sont donns pour
lensemble du lyce et sont donc les mmes dans tous les programmes. Chaque programme
prcise ensuite quels algorithmes sont attendus en fonction des contenus. Nous reproduisons
ici ce paragraphe commun que nous tudierons en dtail par la suite. Seule lintroduction
change entre la seconde et lensemble des sries du cycle terminal.
Le paragraphe Algorithmique dans les programmes de mathmatiques du lyce :
Introduction dans le programme de seconde :
Introduction dans les programmes du cycle terminal :
106
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Contenu commun lensemble du lyce :
1.3 Document ressource
Lors de lentre dans les programmes de seconde, en 2009, de lalgorithmique, un docu-
ment daccompagnement intitul Ressources pour la classe de seconde spcique lal-
gorithmique en seconde a t mis disposition des enseignants. Ce document complte
les nouveaux programmes de seconde et dveloppe de nombreux exemples plus explicite-
ment. Il est disponible ladresse eduscol.education.fr/D0015. Nous tudierons aussi
son contenu.
2 Grille danalyse
Nous analyserons les dirents programmes selon la grille suivante
1
, qui se base sur les
rsultats de la premire partie :
Discours gnral sur lalgorithme et lalgorithmique :
Comment sont dnis algorithme et algorithmique ?
Quel rle est attribu lalgorithme dans les mathmatiques ?
Quelles tches sont attendues de llve ?
Algorithmes en jeu :
Quels problmes sont proposs ?
Sont-ils des problmes au sens de notre dnition ? (instancis ?)
Quels sont les algorithmes prsents ?
Dans quels domaines sont ces algorithmes ?
Quels rles jouent ces algorithmes dans lactivit ?
Questionnement de lalgorithme :
1. Plusieurs des questions de cette grille se recoupent ou sont directement lies. Cela ne gne en aucun cas
son utilisation. Au contraire cela permet une certaine souplesse pour raliser lanalyse. Nous ne dtaillerons
pas les liens qui existent entre ces questions qui dcoulent directement de nos discussions de la partie 1.
107
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Quelles questions sont tudier concernant les algorithmes ?
Quelles discussions ont lieu autour de lalgorithmique ?
Aspects :
Quels aspects sont voqus ?
Relvent-ils de loutil ou de lobjet ?
Conceptions
Dans quel paradigme se trouve-t-on?
Quelles conceptions de lalgorithme sont prsentes ? Et plus particulirement :
quels types de problmes ? quels types doprateurs ? quels systmes de repr-
sentation ? et quels types de structures de contrle (si elles sont prsentes) ?
Concernant les structures de contrle, qui revient la responsabilit de ces
structures ?
Ces conceptions relvent-elles de loutil ou de lobjet ?
3 Analyse des programmes
Pour plus de lisibilit, dans cette section, nous utiliserons litalique pour les citations ex-
traites du programme (et uniquement pour cela).
3.1 Algorithmique dans len-tte des programmes
En seconde, lobjectif gnral du programme est de former les lves la dmarche scien-
tique sous toutes ses formes. Cela pour les rendre capables de plusieurs types dactivits
dont lun est de pratiquer une activit exprimentale ou algorithmique. Le choix dassocier
algorithmique et exprimental montre que lalgorithme est vu plutt comme un lment
li la dmarche exprimentale. On se place clairement du ct outil de lalgorithmique.
Quant la diversit des activits de llve, elle comprend une activit appliquer des tech-
niques et mettre en uvre des algorithmes. Cette mise au mme niveau de lapplication de
techniques et de la mise en uvre dalgorithmes donne un sens particulier au terme mise
en uvre. Il prend le sens dappliquer un algorithme dans un cas particulier, de rsoudre
une instance particulire dun problme. Cest la conception outil.
Dans lensemble des programmes de cycle terminal, la mise en uvre dalgorithmes nest
plus associe lapplication de techniques mais le sens de mise en uvre doit surement
tre compris de la mme faon.
Les programmes de toutes les sections indiquent que les capacits attendues dans le do-
maine de lalgorithmique sont prsentes dans un paragraphe en n de programme (cest
ce paragraphe que nous tudions aprs) mais doivent tre exerces lintrieur de chaque
champ du programme. Le programme de seconde spcie mme quelles sont transversales.
Les introductions des programmes prsentent donc lalgorithmique, non comme un champ
des mathmatiques, mais comme un type dactivits ou une dmarche qui doit tre mise
en uvre dans tous les chapitres. Les algorithmes, eux, ont pour rle de permettre leur
application sur des instances spciques. On a pour linstant une vision restreinte de lal-
gorithmique qui est axe sur laspect outil : outil pour la dmarche exprimentale, outil
pour lapplication pratique sur des cas particuliers.
108
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
3.2 Objectifs pour le lyce
Concernant les objectifs communs lensemble des programmes de mathmatiques du lyce
gnral, nous suivrons une analyse linaire du contenu. Nous relverons au fur et mesure
les lments concernant la grille danalyse.
Activit de llve
Les lves doivent tre entrains
2
dcrire certains algorithmes en langage naturel ou
symbolique. Ce que sont ces deux langages nest pas trs clair. On comprend que le lan-
gage naturel se rfre une description moins formalise dun algorithme, mais on peut
linterprter comme tant la langue franaise ou, si lon considre que lon est en classe
de mathmatique, le langage mathmatique (ou un mlange des deux). Le langage sym-
bolique fait rfrence un langage plus spcique, plus formalis qui peut tre compris
comme le langage mathmatique, un pseudo-code ou encore un langage de programmation
mais dont la nature reste ambige. Cette phrase fait nanmoins rfrence une activit
de lordre de la gestion de plusieurs niveaux de langage, qui correspondraient aux systmes
de reprsentation des conceptions de AM-outil et AI-outil.
Les lves doivent aussi tre entrans raliser quelques algorithmes laide dun tableur
ou dun programme. Le choix du terme raliser nous parat lui aussi ambigu, ce nest ni
un terme usuel de lalgorithmique ni de la programmation. Cependant le contexte nous
laisse penser quil sagit de traduire un algorithme dans un langage de programmation, ou
dans un tableur, dans le but de son excution. Cela fait rfrence un travail de lordre
du passage dun langage un autre. Cest une activit dimplmentation (et dexcution)
qui se rfre laspect outil.
Enn, les lves sont entrans interprter des algorithmes plus complexes. Le terme in-
terprter fait rfrence une activit qui porte sur le langage. Il sagit apparemment de
donner du sens un algorithme crit dans un certain langage. Cependant, le programme
nexplicite pas lactivit prcise que cela reprsente. Sagit-il de comprendre et dtre ca-
pable dappliquer chaque tape de lalgorithme (en particulier sur une instance donne) ?
Dans ce cas on se place compltement du ct outil : il sagit de savoir utiliser un algo-
rithme quon nous donne. Cest un point de laspect eectif. Sagit-il de pouvoir dire quel
est le problme ou la question auquel rpond lalgorithme ? Et dans ce cas, quelle validation
est attendue de cette interprtation ? Aucun oprateur ni structure de contrle ne sont
voqus pour ce type de questions portant sur les algorithmes. Nous considrons donc quil
ne sagit pas vraiment dun problme o lalgorithme est objet.
Nous ne commenterons pas le fait quaucun langage ni logiciel ne soit impos. Bien que
certains logiciels et langages soient surement plus adapts que dautres lapprentissage
de lalgorithmique (au sens que nous lui avons donn en partie 1). Cela dpasse le cadre
de notre analyse.
Place dans les mathmatiques
Le choix de placer lalgorithmique comme une section du programme part
3
et transver-
sale aux autres parties est expliqu ici. Lalgorithmique a une place naturelle dans tous
2. Le choix du terme est tonnant
3. Tout comme le raisonnement.
109
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
les champs des mathmatiques et les problmes poss doivent tre en relation avec les
autres parties du programme. Le fait que lalgorithme soit une mthode de rsolution de
problmes qui sapplique dans divers champs des mathmatiques est importante mais laf-
rmation faite ici demanderait un peu plus de prcisions et en particulier sur ce que signie
naturel. Les parties 1 et 2 ont montr que la place de lalgorithme varie selon les domaines
des mathmatiques et laisse penser que certains sont plus propices une activit algorith-
mique que dautres (en particulier pour lalgorithme-objet). Il nous faudra voir si tous les
chapitres font lobjet dactivits algorithmiques aussi naturellement les uns que les autres
dans les programmes spciques chaque classe.
Les problmes poss doivent tre en relation aussi avec les autres disciplines ou le traite-
ment de problmes concrets. On voit ici que laspect problme est mis au centre des activits
autour de lalgorithmique. Cependant linteraction entre lalgorithmique et les autres dis-
ciplines ou lalgorithmique et les problmes concrets nest pas plus dtaille. Il nous faudra
regarder comment ces demandes sont interprtes dans les documents daccompagnement
et les manuels.
Rle de lalgorithmique pour lapprentissage
Un des objectifs achs de lactivit algorithmique dans les programmes est lapprentissage
de la rigueur : Au cours de lcriture dalgorithmes et de programmes, il convient de donner
aux lves de bonnes habitudes de rigueur et aux pratiques systmatiques de vrication et
de contrle.
Tout dabord notons que la rfrence lalgorithmique est encore une fois faite par le biais
de lcriture, cest un travail sur le langage qui est voqu. Ce travail doit mener une
certaine rigueur, ce que lon peut interprter comme un eort de produire des algorithmes
non-ambigus (cest laspect eectif) et des programmes qui soient compris par la machine.
Associ aux pratiques systmatiques de vrication et de contrle, le sens devient plus ou.
Le terme vrication et contrle fait-il rfrence la preuve, la justication de lalgorithme
ou au respect des contraintes dun langage donn (plus ou moins proche dun langage de
programmation) ? tant donn le contexte du dbut de la phrase, il semble que ce soit
une rigueur vis--vis du respect du langage. Les pratiques systmatiques de vrication et
de contrle feraient alors rfrence une bonne organisation dans ce travail dcriture ou
encore une vrication que lalgorithme ou le programme soit conforme aux exigences du
problme trait.
Quoi quil en soit, on se situe dans les conceptions AM-outil et AI-outil et principalement
sur les questions de systme de reprsentation et de passage de lun lautre. Des structures
de contrle sont voques mais il est impossible ici den dire la nature. Notre hypothse
est quil ne sagit pas de preuve mais plus de respect de contraintes des langages.
Capacits attendues
La suite est prsente sous forme dun tableau qui prsente les notions aborder et les ca-
pacits attendues des lves. On peut penser que ce seront ces capacits qui seront values
et qui seront principalement travailles. Dans les autres parties du programme, les notions
enseigner et les comptences exigibles sont celles qui sont dcrites dans les tableaux.
Ces capacits se dcoupent en deux : Les instructions lmentaires (aectation, calcul,
entre, sortie) et les boucles, itrateurs et instructions conditionnelles. Dans les deux cas,
cela fait rfrence des notions lies aux outils de programmation. Cest lapprentissage
110
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
des principales structures de programmation qui est en jeu. Ces structures ne sont pas uni-
quement prsentes dans les langages de programmation mais sont des outils utiliss pour
formuler des algorithmes de manire trs proche des langages de programmation (souvent
dans le but de parler de programmation sans entrer dans un langage trop spcique). On
peut considrer que lon se situe surtout du ct de lAlgorithme Informatique de notre
modle.
Dans les deux parties du tableau, les capacits attendues de llve se situent dans le cadre
dune rsolution de problmes. Laspect problme est encore mis en avant ici.
Les deux capacits attendues concernant les instructions lmentaires sont : - crire une
formule permettant un calcul. Il sagit encore dune activit dcriture dont lobjectif est
le passage dune formule un programme (sur machine ou sur papier). On peut penser
quil sagit de passer de la formule son dcoupage en instructions lmentaires issues de
la programmation.
- crire un programme calculant et donnant la valeur dune fonction, ainsi que les instruc-
tions dentre et sortie ncessaires au traitement. Il sagit encore plus clairement ici dune
activit dimplmentation dans un certain langage de programmation. Le but semble aussi
de faire entrer une fonction dans le cadre des instructions lmentaires en spciant entre,
sortie et traitement (qui fait rfrence lensemble des instructions menant de lentre au
calcul de la sortie).
Les deux capacits attendues concernant boucle, itrateur et instruction conditionnelle
sont : - Programmer un calcul itratif, le nombre dtapes tant donn.
Il sagit ici de programmer (donc dutiliser un langage de programmation, on est dans AI)
la boucle FOR.
- Programmer une instruction conditionnelle, un calcul itratif avec une n de boucle condi-
tionnelle.
Toujours dans AI, il sagit de programmer avec les instructions IF THEN ELSE et WHI-
LE.
Toutes ces capacits attendues font rfrence des tches de programmation. On se situe
compltement dans AI et les attentes sont de lordre de la capacit exprimer formules,
fonctions et rsolutions de problmes, dans les contraintes des langages de programmation.
Cest laspect eectif qui est mis en avant.
En rsum
Pour rsumer les points prcdents concernant le programme dalgorithmique au lyce :
Il nous semble important, tout dabord, de mettre en avant lambigut des termes
utiliss (qui ne sont ni dnis, ni ne font rfrence des termes canoniques ou usuels
de lalgorithmique). Il ne nous semble pas que ce soit le cas dans les autres parties
des programmes. En particulier, les termes algorithme et programme ne sont pas
clairement distingus et semblent mme utiliss comme des quivalents.
Les capacits attendues et les activits proposes sont axes sur le langage et sont
centres autour de la programmation et de limplmentation de mthode de rsolu-
tion.
Les aspects prsents sont seulement la rsolution de problme et leectivit. On se
situe uniquement du ct outil. Les questions de preuve ou de complexit ne sont
jamais voques.
111
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
La conception globale des programmes semble donc axe sur AM et surtout sur AI.
Limportance est mise sur les systmes de reprsentation et la reformulation dans AI.
La conception PM nest jamais voque. Aucune structure de contrle nest dcrite,
mise part le respect des contraintes des langages utiliss.
Regardons maintenant les spcicits (et notamment les algorithmes) prsents dans les
programmes de chaque classe.
3.3 Les algorithmes prsents dans les programmes
Dans les chapitres du programme de chaque classe, les contenus sont organiss selon un
tableau trois colonnes : contenus, capacits attendues et commentaires. Nous reprenons
ces termes dans nos analyses sans les commenter. De plus, nous prciserons chaque fois
dans quelle colonne on se trouve. En eet, une capacit attendue autour de lalgorithme
na pas le mme statut quun commentaire voquant une activit algorithmique possible.
Nous suivrons le dcoupage des chapitres de chaque programme. Nous commenterons et
analyserons chaque rfrence faite lalgorithme.
Seconde
Lanalyse des algorithmes et activits algorithmiques prsents dans les dirents chapitres
de seconde est prsente dans le tableau suivant :
Extrait du programme Analyse et commentaires
Fonctions
tude qualitative des fonctions
Commentaire : Mme si les lo-
giciels traceurs de courbes per-
mettent dobtenir rapidement la
reprsentation graphique dune
fonction dnie par une for-
mule algbrique, il est intres-
sant, notamment pour les fonc-
tions dnies par morceaux, de
faire crire aux lves un algo-
rithme de trac de courbe.
Il est clair quici lobjectif de lalgorithme est de
pouvoir tracer la courbe, il sagit donc dcrire lal-
gorithme dans un environnement de programma-
tion. On ne sait pas vraiment sil sagit de tra-
vailler sur le calcul des valeurs point par point de
la fonction pour en faire tracer la courbe avec une
bonne rsolution ou si cest simplement la disjonc-
tion de cas lie la fonction dnie par morceaux
(et qui implique lutilisation dinstructions condi-
tionnelles) qui doit tre souleve. Faire tracer une
courbe tant donne sa formule nest pas un al-
gorithme trs riche pour en faire un objet dtude
tant donn quil rpond une problmatique pra-
tique (faire tracer une courbe sur un cran) plu-
tt qu un problme mathmatique. Cest las-
pect outil qui est en jeu.
quations, rsolution graphique
et algbrique
112
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Capacits attendues : Encadrer
une racine dune quation grce
un algorithme de dichotomie
On ne sait pas bien si la capacit concerne la
conception de lalgorithme ou la rsolution de
lquation. Cependant, un problme prcis et une
mthode algorithmique sont voqus. Aucune ca-
pacit ou question nest en jeu concernant cet al-
gorithme lui-mme alors que la dichotomie a un
potentiel pour tre objet de questions (ecacit,
optimalit, etc).
Gomtrie
Congurations du plan
Commentaire : Le cadre de
la gomtrie repre ore la
possibilit de traduire numri-
quement des proprits gom-
triques et permet de rsoudre
certains problmes par la mise
en uvre dalgorithmes simples.
Il va surement sagir dalgorithmes pour tester cer-
taines proprits tant donnes les coordonnes de
points, ou dterminer les coordonnes de points
spciques (milieu, intersection de deux droites),
etc. Tous ces lments se rapportent la capa-
cit de traduction de formules en algorithmes ou
en programmes. Comme nous lavons dit prc-
demment, cela sapparente laspect outil et la
conception AI.
Statistiques et probabilits
Ralisation dune simulation
Commentaire : loccasion de
la mise en place dune simula-
tion on peut [...] mettre en place
des instructions conditionnelles
dans un algorithme.
La simulation est prsente comme une activit
permettant daborder un certain type dinstruc-
tion. On se situe dans AI, du ct outil. Il sagit
de faire apprendre la programmation.
Parmi les objectifs viss en sta-
tistiques et probabilits, dans
le cadre de rsolutions de pro-
blmes : La rptition dexp-
riences alatoires peut donner
lieu lcriture dalgorithmes
(marches alatoires).
Il sagit dune activit dcriture dalgorithmes qui
est motive par la rptition un grand nombre de
fois dune mme exprience. Cest laspect eectif,
la possibilit de raliser ce grand nombre dexp-
riences, qui motive lalgorithme ici (qui sera cer-
tainement exprim dans AI). On ne sait pas trop
quel rle joue lalgorithme dans la dmarche.
Premire ES-L
Lanalyse des algorithmes et activits algorithmiques prsents dans les dirents chapitres
de premire ES et L est prsente dans le tableau suivant :
Extrait du programme Analyse et commentaires
Algbre et analyse
Second degr (polynmes)
113
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Commentaires : Des activi-
ts algorithmiques sont ralises
dans ce cadre.
Lalgorithmique doit tre aborde dans ce cadre
mais aucune prcision nest donne. Vue les at-
tentes concernant la manipulation de polynmes
du second degr, il va surement sagir dimplmen-
ter, de rendre eectives certaines formules et op-
rations formelles. On peut penser que lobjectif
ici est de rendre plus accessibles les objets en les
programmant, peu importe lalgorithme ou le pro-
blme trait.
Suites
Capacit attendue : Mettre en
uvre un algorithme permettant
de calculer un terme de rang
donn.
Selon le mode de gnration de la suite tudie il
va sagir de programmer une formule ou de rpter
(avec une boucle FOR) la relation de rcurrence
dnissant la suite. Il sagit donc essentiellement
dun travail de traduction en langage de program-
mation. La motivation semble tre le calcul eectif
de termes de la suite ou la comprhension des dif-
frents modes de gnration de suites (comme le
commentaire suivant le laisse penser).
Suites
Commentaire : Lutilisation du
tableur et la mise en uvre dal-
gorithmes sont loccasion dtu-
dier en particulier des suites g-
nres par une relation de rcur-
rence.
Lalgorithme est ici prsent comme un outil (au
mme titre que le tableur) pour tudier le compor-
tement des suites, un outil dtude mais aussi un
outil pour la comprhension de ce type de suites.
Il sagit encore clairement dune activit de pro-
grammation, donc de AI-outil.
Suites
Commentaire : On peut utili-
ser un algorithme ou un ta-
bleur pour traiter des problmes
de comparaison dvolutions, de
seuils et de taux moyen.
Il sagit dutiliser lalgorithme (sous forme de pro-
gramme) ou le tableur comme outil pour une d-
marche exprimentale avec les suites, en impl-
mentant certaines formules. On est du ct outil
et laspect eectif laisse penser que lon se place
dans AI.
Statistiques et probabilits
Probabilits
Commentaire : On peut simu-
ler la loi binomiale avec un al-
gorithme.
Il sagit dimplmenter (AI) une rptition dexp-
riences alatoires identiques. Lalgorithme est ici
outil.
chantillonnage
Commentaire : Lintervalle de
uctuation peut tre dtermin
laide dun tableur ou dun al-
gorithme.
Il sagit simplement de mettre en application la
formule de lintervalle de uctuation, puisque le
tableur fait aussi bien laaire que lalgorithme.
Terminale ES-L
Lanalyse des algorithmes et activits algorithmiques prsents dans les dirents chapitres
de terminale ES et L est prsente dans le tableau suivant :
114
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Extrait du programme Analyse et commentaires
Analyse
Suites (gomtriques)
Capacit attendue : tant
donn une suite (q
n
) avec
0 < q < 1, mettre en uvre
un algorithme permettant de
dterminer un seuil partir
duquel q
n
est infrieur un rel
a positif donn.
Une capacit prcise est attendue. Malgr lambi-
gut du terme mettre en uvre, un problme est
voqu clairement avec ses instances et sa ques-
tion. Cependant, on peut penser quil sagira es-
sentiellement de programmer une boucle WHI-
LE en implmentant le calcul eectif des termes
de la suite. Des questions sur lalgorithme lui-
mme (et ses variantes) auraient pu tre poses :
Combien dtapes sont ncessaires (en fonction de
q) ? Peut-on trouver un algorithme plus ecace
que dautres ?
Enseignement de spcialit,
srie ES
Les thmes abords sont par-
ticulirement propices lutili-
sation des outils informatiques
(logiciels de calcul, tableur) et
la mise en uvre dalgorithmes.
Le programme nest pas trs explicite sur les algo-
rithmes pouvant tre en jeu alors que les graphes
et les matrices sont des objets privilgis pour lal-
gorithmique et notamment lalgorithme en tant
quobjet.
Premire S
Lanalyse des algorithmes et activits algorithmiques prsents dans les dirents chapitres
de premire S est prsente dans le tableau suivant :
Extrait du programme Analyse et commentaires
Analyse
Second degr (polynmes)
Commentaire : Des activits al-
gorithmiques doivent tre rali-
ses dans ce cadre.
Cf premire ES-L.
Suites
Capacit attendue : Mettre en
uvre des algorithmes permet-
tant : - dobtenir une liste de
termes dune suite ; - de calcu-
ler un terme de rang donn.
Cf premire ES-L.
Suites
Commentaire : Lutilisation du
tableur et la mise en uvre dal-
gorithmes sont loccasion dtu-
dier en particulier des suites g-
nres par une relation de rcur-
rence.
Cf premire ES-L.
Suites
115
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Commentaire : On peut utili-
ser un algorithme ou un tableur
pour traiter des problmes de
comparaison, dvolution et de
seuils.
Cf premire ES-L.
Statistiques et probabilits
Probabilits
Commentaire : On peut simuler
la loi gomtrique tronque avec
un algorithme.
Il sagit de rpter une exprience alatoire un
grand nombre de fois. On se place dans le cadre
de lalgorithme outil pour une dmarche expri-
mentale ou pour rendre eectif un objet. Il sagit
donc de programmer, on est dans AI.
Probabilits
Commentaire : On peut simu-
ler la loi binomiale avec un al-
gorithme.
Cf premire ES-L.
chantillonnage
Commentaire : Lintervalle de
uctuation peut tre dtermin
laide dun tableur ou dun al-
gorithme.
Cf premire ES-L.
Terminale S
Lanalyse des algorithmes et activits algorithmiques prsents dans les dirents chapitres
de terminale S est prsente dans le tableau suivant :
Extrait du programme Analyse et commentaires
Analyse
Suites
Capacit attendue : Dans le cas
dune limite innie, tant don-
ns une suite croissante (u
n
) et
un nombre rel A, dterminer
laide dun algorithme un rang
partir duquel u
n
est suprieur
A.
On est dans le mme cas quen terminale ES-L
pour les suites (q
n
). Le problme est clairement
dni mais lalgorithme nest quoutil alors quil
pourrait tre objet.
Suites
Commentaire : Des activits al-
gorithmiques sont menes dans
ce cadre.
Ces activits ne sont pas dtailles mais sont de
lordre de toutes les activits sur les suites des
autres programmes.
Continuit sur un intervalle,
thorme des valeurs interm-
diaires
116
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Commentaire : Des activits al-
gorithmiques sont ralises dans
le cadre de la recherche de solu-
tions de lquation f(x) = k.
Le programme ne dit pas quelles activits. On
peut penser aux approches balayage et dichoto-
mie qui peuvent permettre de traiter lalgorithme
comme objet mais ni la preuve ni la complexit ne
sont voques. On restera trs certainement dans
loutil et du ct AI.
Intgration
Capacit attendue : Pour une
fonction monotone positive,
mettre en uvre un algo-
rithme pour dterminer un
encadrement dune intgrale.
Le programme ne prcise pas quelles sont ces ac-
tivits algorithmiques mais un problme prcis
est prsent. La capacit attendue est encore de
mettre en uvre, lactivit sera centre sur la des-
cription et limplmentation de la mthode. On
reste sur laspect eectif et outil de lalgorithme
alors que des questions sur lalgorithme pourraient
tre proposes : complexit, erreur, comparaison
dalgorithmes, validit, etc.
Probabilits et statistique
Conditionnement, indpen-
dance
Commentaire : Des activits al-
gorithmiques sont menes dans
ce cadre, notamment pour simu-
ler une marche alatoire.
On peut sattendre des activits de simulation
et dutilisation de programme pour une dmarche
exprimentale comme cest le cas en probabilits
et statistique dans les autres programmes.
Enseignement de spcialit
Les thmes abords sont par-
ticulirement propices lutili-
sation des outils informatiques
(logiciels de calcul, tableur) et
la mise en uvre dalgorithmes.
Tout comme pour la spcialit de terminale ES, on
peut regretter le peu de prcisions donnes. Dau-
tant plus que les domaines au programme (arith-
mtique et matrices) sont riches pour lalgorith-
mique et notamment lalgorithme-objet.
Bilan
Rsumons nos constats pour les contenus spciques chaque classe :
Seulement 6 capacits attendues concernent lalgorithmique sur lensemble des pro-
grammes. Pour ces capacits seulement le type de problme savoir rsoudre avec
un algorithme est prcis.
Les algorithmes ne semblent pas trouver une place si naturelle dans tous les champs
comme lannonait le paragraphe commun lensemble du lyce. Ce sont toujours les
mmes types de problmatiques qui sont prsents (simulation en probabilits et sta-
tistiques, rsolution dquations en analyse, etc.) et plusieurs parties du programme
nont aucune remarque concernant lalgorithmique (gomtrie dans lespace, fonc-
tions en premire ES-L, probabilits et statistiques ainsi quune grande partie de
lanalyse en terminale ES-L, gomtrie en premire S, gomtrie ainsi quune grande
partie des probabilits et statistique de terminale S). Pour beaucoup dautres parties
du programme il sagit souvent de prciser quune notion est propice une activit
algorithmique sans plus de prcisions.
On recense seulement trois algorithmes riches (au sens o ils ne sont pas des for-
mules implmenter ou des traductions directes du problme et pourraient tre
117
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
objets dtude) : lalgorithme de dichotomie pour trouver la racine dune quation
(en seconde), la recherche de solution une quation f(x) = k et lencadrement
dintgrales (tous les deux en Terminale S). Ces algorithmes appartiennent tous au
domaine de lapproximation en analyse.
La mise en uvre eective semble tre une des priorits, via limplmentation de
tous les algorithmes en jeu dont trs peu sont plus quune traduction en langage
de programmation de formules (polynmes, suites, fonctions) ou une rptition dun
calcul (suites, simulations).
Les algorithmes en jeu sont majoritairement des algorithmes dapproximation ou de
simulation (si lon exclut les implmentations de formules).
Le paradigme AI est trs majoritairement prsent.
Lalgorithme nest lobjet daucune question ou tude et semble ne pas tre un objet
mathmatique mais un moyen, par le biais de la programmation de :
rendre eectif les mathmatiques par lobtention de rsultats concrets,
aider comprendre les objets par leur implmentation,
comprendre ce que fait la calculatrice ou certains logiciels ,
permettre une activit exprimentale.
Certains domaines sont points comme permettant de faire dcouvrir lalgorithmique
par la possibilit de rencontrer les structures de programmation usuelles (congura-
tions du plan, simulation, polynmes de degr 2, etc.)
3.4 Conclusion pour les programmes de mathmatiques
Nous prsentons nos conclusions en suivant les grands points de la grille danalyse.
Prsentation gnrale de lalgorithme et de lalgorithmique
Tout dabord il faut noter que lalgorithme nest pas dni mais seulement illustr et expli-
qu au travers dexemples. Cela ne contribue pas donner lalgorithme le statut dobjet
mathmatique. Cela peut aussi contribuer un amalgame entre programme et algorithme
car la dirence entre les deux nest pas explicite et lutilisation des deux termes ne semble
pas non plus lie une direntiation.
Lalgorithmique est prsente comme un type dactivit apparent la dmarche expri-
mentale. Cette activit est souvent mise sur le mme plan que lutilisation de logiciels. Elle
est souvent voque comme relevant dune activit au niveau du langage.
Dans lactivit, les algorithmes ont pour rle de permettre la mise en uvre pratique des
rsultats mathmatiques et limplmentation de certains objets dune part, et dautre part
de contribuer lexprimental en permettant notamment la simulation de processus.
Pour lapprentissage des mathmatiques, il semble que ce soit la possibilit dimplmenter
les objets mathmatiques qui soit au centre.
Les comptences attendues de llve sont de lordre de la programmation (implmentation)
et de la matrise dun langage de programmation ( travers la matrise des structures de
programmation usuelles) et dun langage dit naturel sur lequel on na pas beaucoup de
prcisions.
118
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Algorithmes en jeu
Sur lensemble du cursus, peu dalgorithmes sont prsents au nal. Nous pouvons rsumer
les types dalgorithmes ou les thmes dactivits algorithmiques proposs ici :
application de formules gomtriques,
simulation et rptition dexpriences alatoires,
calcul de termes de suites, recherche dun terme vriant une proprit et tude
exprimentale de suites,
calcul de valeurs particulires dune srie statistique,
rsolution dquations et approximation en analyse,
oprations sur les polynmes du second degr.
Parmi ces algorithmes, peu sont assez riches pour permettre den faire des objets de ques-
tionnement (et cela nest jamais voqu). Les algorithmes concerns sont des algorithmes
dapproximation en analyse (lun en seconde et les deux autres en terminale S).
Les algorithmes sont tout dabord annoncs comme ayant une place naturelle dans tous
les champs puis on constate que peu dexemples sont nalement donns dans les contenus
(et lon parle plus souvent de thmatiques propices des activits algorithmiques). Cer-
tains chapitres ne contiennent aucun algorithme et lon retrouve dans les autres toujours
le mme type dalgorithmes.
Notre hypothse est que les algorithmes ne jouent pas le mme rle partout, dans certains
champs ils sont plus fondamentaux ou prsentent une plus grande richesse pour leur tude
alors que dans dautres ils sont plus souvent des outils.
Les algorithmes en jeu sont pour beaucoup des reformulations ou des traductions de pro-
cessus eectifs sous forme dalgorithmes ou de programmes. Par exemple : les formules
explicites et les fonctions dnies par une formule algbrique, les suites (les deux modes de
gnration) ou encore les modles de lois par des rptitions dexpriences alatoires.
Questionnement de lalgorithme
Concernant les algorithmes, aucune problmatique nest prcisment pose. Seules les
tches de programmer, dcrire, de comprendre, de lire un algorithme sont en jeu. Cepen-
dant, malgr la pauvret des algorithmes en jeu, des questions pourraient tre souleves
sur certains des algorithmes du programme : les questions dapproximation et derreurs,
les questions de complexit, decacit, les questions de comparaison dalgorithmes et
doptimalit.
Aspects
Le seul aspect prsent est laspect eectif qui semble motiver la grande majorit de lalgo-
rithmique, notamment au travers de la programmation et de lexcution dalgorithmes.
Laspect rsolution de problmes est aussi prsent mais le fait quun mme algorithme
rsolve toute une famille dinstances dun problme nest pas explicit.
La question de la preuve nest jamais aborde ni mme sous une forme attnue de valida-
tion dun algorithme. On ne trouve aucune rfrence la complexit dun algorithme ou
son ecacit.
Laspect modles thoriques ne nous semble pas ncessairement devoir apparatre dans les
119
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
programmes (contrairement la preuve et la complexit qui nous semblent contribuer
ce qui donne du sens au concept) mais la dnition dun algorithme constitue en quelque
sorte un modle trs simple que lon ne retrouve mme pas dans ces programmes.
On peut donc armer que seul laspect outil est en jeu dans ces programmes.
Conceptions
Le discours sur les formes dalgorithmes voque AI et AM. Cependant les activits algo-
rithmiques proposes relvent fortement de AI et mme simplement dune activit dim-
plmentation comme traduction dans un langage de programmation et dans un objectif
dexcuter les algorithmes.
Les problmes en jeu sont parfois des problmes au sens de notre dnition mais plus sou-
vent des problmes de simulation ou dapplication dune technique. Il ne sagit donc pas
de rsoudre un problme mathmatique mais de raliser une tche de calcul eectif non
ralisable la main.
Les oprateurs sont des algorithmes et plus particulirement des programmes. Ils sont pr-
ciss comme constitus des structures de contrle, qui sont les boucles, tests et manipulation
des mmoires issus des langages de programmation classiques.
Les systmes de reprsentation sont les langages symboliques et naturels. En fait la plupart
du temps ce sont les langages de programmation qui sont voqus.
Les structures de contrle sont trs peu prsentes. On peut seulement citer les pratiques de
vrication et de contrle et la rigueur. On peut donc supposer que la structure de contrle
est lensemble des rgles du langage, et que cela peut ensuite tre test via limplmentation
et la compilation/excution des programmes.
La conception dominante nous semble donc AI-outil avec une absence de structure de
contrle forte. La conception AM est voque mais il semble quelle ne soit prsente que
trs faiblement (notamment cause de la confusion programme-algorithme qui peut tre
faite).
Laspect preuve tant totalement absent, le paradigme PM ne peut tre prsent.
4 Algorithmique de la spcialit ISN
Le programme de la spcialit ISN se dcoupe en quatre branches, considres parfois
comme les quatre piliers de la science informatique : reprsentation de linformation, algo-
rithmique, langages et programmation et architectures matrielles. Notons que ce dcoupage
met directement en avant une distinction entre algorithmique et programmation.
tant donne notre problmatique et tant donns les outils que nous avons dvelopps,
nous ntudierons que la partie algorithmique de ce programme. Tout comme dans la
section prcdente, nous utiliserons litalique pour citer les programmes sans alourdir la
lecture. De mme aussi nous tudierons dabord le discours sur lalgorithmique et ensuite
les contenus spciques. Voici lextrait du programme concern :
120
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
4.1 Discours
Dnition
Ce programme dalgorithmique commence par une dnition. Celle-ci est trs proche de
celle que nous avons propose : Un algorithme se dnit comme une mthode opration-
nelle permettant de rsoudre, en un nombre ni dtapes clairement spcies, toutes les
instances dun problme donn. Cette mthode peut tre excute par une machine ou par
une personne.
On retrouve dans cette dnition laspect effectif : aspect systmatique de lalgorithme
(mthode oprationnelle), nitude (nombre ni dtapes), non-ambigut (clairement sp-
cies), possibilit dexcution par un oprateur (peut tre excute par une machine ou
une personne).
On retrouve aussi laspect problme (permettant de rsoudre toutes les instances dun
problme donn). Le fait quun algorithme doivent traiter une famille dinstances et pas
une seule est ici mis en avant ds la dnition. On peut comprendre que la notion de
problme est trs proche de celle que nous avons utilise dans la partie 1. Cette notion
dinstance voque aussi lentre de lalgorithme, le terme rsoudre fait, dans ce contexte,
implicitement rfrence une sortie adapte chaque instance traite.
Le commentaire concernant lexcuteur, une machine ou une personne montre que la
121
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
notion dalgorithme nexiste pas uniquement dans un but technologique ou de programma-
tion, mais est une faon de rpondre de manire eective des problmes dans dirents
contextes.
Positionnement dans le cursus scolaire
Le programme rappelle que les lves ne dcouvrent pas lalgorithmique et les algorithmes
ici. Ils ont t en contact trs tt avec des algorithmes. Lexemple (classique et pertinent)
des quatre oprations qui tait donn dans les programmes de mathmatiques se retrouve
nouveau ici.
Les autres exemples de situations de nature algorithmique sont moins clairs. Les construc-
tions gomtriques peuvent snoncer clairement comme des algorithmes, mme si les
constructions ayant un nombre constant dtapes prsentent peu dintrt en tant qualgorithmes-
objets
4
.
Les trois autres exemples issus de la chimie, les SVT et la technologie ne sont pas des
rfrences des algorithmes au sens de notre dnition. Il sagit plutt de situations o
une certaine action systmatique est en jeu (des situations voquant des algorithmes). Il
nous semble quil sagit surtout du ct systmatique, automatique, guid par certaines
rgles ou tapes lmentaires. Cest donc laspect eectif qui est mis en avant.
Lalgorithmique vue en mathmatiques en seconde et premire est aussi reconnue comme
exprience sur laquelle doit se baser lenseignement et aucune rfrence nest faite une
possible dirence avec lapproche du cours de mathmatiques.
Facults en jeu
Deux facults sont attendues des lves dans cette option : celle de lire et comprendre un
algorithme conu par dautres qui se situe du ct outil de lactivit et celle den concevoir
de nouveaux. Cest laspect eectif (notamment en ce qui concerne la transmissibilit des
algorithmes (lire et comprendre ceux des autres). Le type de situations o des algorithmes
doivent tre conus nest pas prcis. Il ny a aucune rfrence la validation dun algo-
rithme que lon a conu.
Deux formes dalgorithmes sont voques. Ils peuvent tre exprims dans un langage de
programmation puis excut sur une machine ou bien dnis de manire informelle. Les
premiers font rfrence AI et laspect outil (eectivit et rsolution de problmes),
puisque lexcution est mise en avant. La deuxime fait rfrence AM, lexpression
dalgorithmes indpendamment des langages de programmation.
Ces facults doivent tre dveloppes par ltude de quelques algorithmes, dont on imagine
quil sagit de ceux spcis dans les contenus.
4.2 Contenus
Les contenus se dcoupent suivant deux points : Les algorithmes simples pour lesquels
certaines capacits sont attendues et les algorithmes plus avancs pour lesquels les capaci-
ts attendues sont moindres et pour lesquels lobjectif se limite une comprhension des
principes fondamentaux sans exiger leur programmation.
4. Tout comme la rsolution des quations de degr 2 voques prcdemment.
122
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Tout dabord relevons lobservation suivante : On prsente simultanment les notions dal-
gorithme et de programme, puis on les distingue. Ici, pas damalgame entre les deux, la dif-
frence doit tre explicitement faite par lenseignant (suivant la dnition du programme).
Trois algorithmes simples sont au programme : la recherche dichotomique dans un tableau,
le tri dun tableau par slection et la somme dentiers en binaire. Ces trois exemples sont
issus du traitement des donnes et de la gestion des nombres en machine. Ce sont des
algorithmes de base qui rpondent des besoins de gestion des donnes et des entiers
dans les machines courantes.
Concernant ces algorithmes les capacits attendues sont de comprendre et expliquer les
algorithmes, de les modier pour obtenir dautres rsultats, de concevoir des algorithmes
et de les programmer. Toutes ces attentes concernent lalgorithme-outil. Mme comprendre
un algorithme et expliquer ce quil fait, car lobjectif ach est seulement une comprhen-
sion de ces algorithmes et la capacit les mettre en uvre : aucune ncessit de preuve ou
de validation nest avance. On ne sait mme pas sil sagit de dterminer quel problme
est rsolu ou dexpliquer en quoi lalgorithme rsout tel problme ou sil sagit simplement
de comprendre les direntes tapes et instructions de lalgorithme.
Toujours concernant ces algorithmes simples, lenseignant doit mettre en vidence les situa-
tions produisant une erreur (division par zro, dpassement de capacit). Ces points font
bien sr principalement rfrence la programmation et aux limites lies au matriel. Ce
sont donc ici des lments lis la capacit de programmation des algorithmes qui sont en
jeu. Cest le paradigme AI qui semble dominer.
La seule apparition de problmes o lalgorithme est objet est la capacit Sinterroger sur
lecacit dun algorithme qui est prsent pour tous les contenus (algorithmes simples
et plus avancs). Cependant, cette unique capacit pour lalgorithme-objet fait partie de
points optionnels et [qui] seront traits en fonction des quipements disponibles ainsi que
des orientations pdagogiques choisies par les enseignants. Lalgorithme en tant quobjet
risque de ne pas beaucoup apparatre.
Concernant les algorithmes plus avancs, les algorithmes aborder sont le tri par fusion,
le parcours de graphe en profondeur et le parcours en largeur (pour un plus court chemin).
Ces algorithmes sont aussi issus du traitement des donnes et abordent des structures de
donnes ou des types de donnes abstraits classiques.
Ces algorithmes plus avancs ne doivent pas tre programms et on peut armer sans risque
que cela est li aux dicults dimplmentation de ces algorithmes mais aussi des structures
en jeu (graphes, arbres...) alors que certaines oprations non-lmentaires peuvent rester
telles quelles dans un algorithme dcrit de manire informelle. Le point o nous voulons
venir est quil sagit trs clairement ici du paradigme AM. Contrairement ce que nous
avons pu voir dans les programmes, les algorithmes prsents ici ne sont pas simplement
une criture des programmes associs sur papier mais bien lexpression dune mthode g-
nrique, indpendante de contraintes de programmation et utilisant certaines oprations
de bases qui demanderaient un travail de programmation complexe.
Tous les problmes du programme ncessitent rellement le concept dalgorithme pour
tre rsolus. Cest--dire quil ne sagit pas ici de mettre sous forme dalgorithmes (ou de
programmes sur papier) des procdures que lon peut exprimer autrement (constructions,
fonctions, suites, formules...) mais bien de problmes pour lesquels lalgorithme rpond
un besoin concernant leur rsolution.
123
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Bilan
Nous rsumons les points important en suivants la grille danalyse :
Lalgorithme est clairement dni. En particulier il est nettement distingu de la
notion de programme. Son rle dans la rsolution de problme est bien prcis en
appuyant sur la notion dinstance notamment.
Les algorithmes en jeu rpondent des problmes de traitement informatiques des
donnes, mais sont bien des lments de P
a
. Les problmes choisis mettent bien en
vidence le statut de la rsolution algorithmique.
Certains algorithmes sont lobjet dun questionnement, en particulier leur complexit
est discuter en classe.
On retrouve les aspects effectivit et problmes, mais aussi laspect complexit.
Lalgorithme nest pas quoutil, laspect objet apparat.
On retrouve deux paradigmes : AI et AM, clairement dlimits. Lecacit des algo-
rithmes est questionne dans ces deux cadres, on peut donc armer que les concep-
tions AI-outil, AM-outil, AI-objet et AM-objet sont prsentes.
La transposition en place dire fortement de celle repre dans les programmes de ma-
thmatiques. Ltude du document ressource pour la seconde devrait permettre de prciser
cela.
5 Documents daccompagnement Ressources pour la classe
de seconde
Tout comme dans les sections prcdentes nous rserverons litalique pour les termes et
formules extraits du document. Les citations plus longues ne sont pas en italique mais se
distinguent du corps du texte par un retrait gauche.
Le document Ressources pour la classe de seconde - Algorithmique que nous analysons se
dcompose suivant six sections et une prsentation des logiciels utiliss. Les deux premires
sections intitules Prsentation gnrale et Une initiation lalgorithmique relvent dun
discours gnral sur lalgorithmique et ce quelle doit tre dans les programmes. Lanalyse
de ces sections peut se faire de manire similaire lanalyse mene prcdemment pour les
programmes. Pour viter une lecture fastidieuse dune nouvelle analyse de ce type, nous
supposerons que le lecteur comprend maintenant lutilisation concrte de la grille et nous
nous focaliserons sur les rsultats, tout en illustrant au maximum nos propos par des ex-
traits du document.
Les parties suivantes intitules Exemples de dispositifs en classe, Algorithmes et gomtrie,
Algorithmes et fonctions et Algorithmes et probabilits sont des propositions dactivits
pour la classe. Nous prciserons la grille que nous utilisons pour analyser ce type de res-
sources, qui dire lgrement de celle utilise prcdemment. Nous entrerons donc ici plus
dans le dtail de lanalyse.
Enn, il ne nous semble pas utile pour lanalyse de sattarder sur la section Prsentation
rapide des logiciels. Nous relevons simplement cela comme une indication dun fort ancrage
des activits algorithmiques dans lutilisation doutils informatiques et de limportance de
la programmation que nous avons dj repre dans les programmes.
124
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
5.1 Discussion sur lalgorithmique
Comme dit plus haut, nous prsentons ici lanalyse du discours des sections Prsentation
gnrale et Une initiation lalgorithmique. Ces sections conrment la conception que nous
avons releve dans les programmes de mathmatiques, en particulier une forte prsence de
lalgorithme en tant quoutil ainsi que du paradigme AI.
Lactivit algorithme et le rle des algorithmes
Le document prsente lalgorithmique comme un type dactivit qui trouve son sens dans
lapprentissage de la dmarche scientique. Tout au long du document, lalgorithmique est
donc associe une dmarche exprimentale ou une dmarche de rsolution de problme.
On peut percevoir travers cela quil sagit dj de prsenter lalgorithme comme un outil
pour les mathmatiques.
Deux grands points justient lintroduction de cette activit dans lenseignement des ma-
thmatiques :
La prsence universelle des algorithmes, lie aux progrs de la science informatique :
les algorithmes et lactivit algorithmique sont prsents partout et les mathmatiques
ne peuvent y chapper. On peut percevoir une motivation sociale (de dmystication
des machines) derrire cela, en montrant les algorithmes qui se cachent derrire les
machines :
Leur prsence cependant, ne se traduit pas par un contact direct avec lutili-
sateur qui assimile volontiers la machine son mode de fonctionnement.
(p.3)
Aborder diremment les objets mathmatiques. Les enjeux prsents semblent im-
menses :
Le dveloppement du calcul automatis a permis (au niveau de la re-
cherche) de dvelopper de nouveaux objets (fractales...), de nouvelles m-
thodes de dmonstrations et a profondment modi la pratique des cher-
cheurs. (p.3)
Mais cependant, au niveau de la classe de seconde, il sagit simplement dtudier
certaines notions sous un angle dirent, cest--dire, comme nous le verrons plus
loin, de rendre ces notions eectives en les programmant.
Le document insiste fortement sur ce qui est demand dans le programme : lactivit
algorithmique ne doit pas faire lobjet de cours spciques, doit tre mise en place tout au
long de lanne et de manire transversale tous les chapitres et lors de la rsolution de
problmes. Il est intressant de noter quelles motivations doivent mener lintroduction
dlments dalgorithmique :
Lintroduction de chaque nouvel lment (variable, boucle, itration, etc.) de-
vrait apparatre lors de la rsolution de problmes pour lesquels les dmarches
habituelles sont malcommodes ou peu performantes : par exemple dans le cas
de rptition dune tche, ou dans le cas dun traitement trop long pour tre
envisag la main . Ces situations peuvent tre rencontres lors de lexten-
sion des cas plus gnraux de situations dj rencontres : recherche du pgcd
de nombres trs grands, tri dun trs grand nombre de valeurs numriques,
simulations sur des chantillons de grande taille...(p.4)
125
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
On voit ici une motivation pour lalgorithmique qui est de lordre de la capacit dun
ordinateur ou dune calculatrice traiter des grandes quantits doprations de manire
rptitive. Il sagit, selon nous, plus dune motivation de la programmation, qui implique
de dcrire un procd systmatique, alors que lon pourrait aussi attendre, en mathma-
tiques, une motivation de lalgorithmique relative la rsolution gnrale dun problme
(cest--dire de toutes ses instances).
Dailleurs, la prpondrance de la programmation dans le document montre bien cet appui
trs fort sur la machine. Il est pourtant prcis :
La pratique de lalgorithmique ne se rsume pas lcriture de programmes ; il
serait mme judicieux de ne pas commencer par l. Il convient donc de proposer
aux lves des situations, activits et organisations pdagogiques varies. (p.4)
Mais, cependant, il semble que ces situations sans programmation aient pour rle de prpa-
rer lintroduction des outils pour la programmation, un travail prparatoire introduisant
un formalisme pour faciliter limplmentation. Nous reviendrons sur ce point dans les pa-
ragraphes suivants.
Dnition de lalgorithme et formalisme pour lcriture
Contrairement au programme, le document ressource propose une clarication, voire une
dnition de la notion dalgorithme. On trouve aussi une description de la structure dun
algorithme et du formalisme ncessaire son expression.
Tout dabord, est voqu, comme dans les programmes, le fait que les lves ont dj
rencontr lalgorithme dans leur cursus. La prsentation de la notion dalgorithme dans la
classe semble devoir se baser sur cette exprience :
Dans le cours de Mathmatiques, les algorithmes apparaissent trs tt dans
la scolarit. Oprations poses, rduction au mme dnominateur, rsolution
dune quation du second degr, factorisation dune expression polynomiale,
identication dune situation de proportionnalit, tous ces algorithmes sup-
plantent parfois chez les lves les objets quils manipulent.
En travaillant dans un univers plus restreint, dans lequel les rgles en vigueur
et la symbolique utilises sont en nombre limit, on essaiera de prciser et de
formaliser partiellement la notion dalgorithme. (p.3)
On sent ici limportance de prsenter lalgorithme comme lexpression dune mthode dans
un langage symbolique limit. Il sagit presque ici de dnir lalgorithme comme le langage
permettant son expression.
Plus loin, on trouve une explicitation de la notion dalgorithme et une dnition (issue
de lEnciclopaedia Universalis) qui ne semble pas devoir tre ncessairement choisie ou
prsente aux lves :
Plus gnralement le mot algorithme dsigne tout procd de calcul syst-
matique voire automatique. Sajoute cela la notion de nitude .
On dnit parfois les algorithmes de la manire suivante : un algorithme est
une suite nie de rgles appliquer dans un ordre dtermin un nombre ni
de donnes pour arriver, en un nombre ni dtapes, un certain rsultat et
cela indpendamment des donnes. Le rsultat doit donc sobtenir en un
temps ni.
propos des rgles appliquer , il faut entendre un traitement fait sur des
126
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
donnes impos par une suite dinstructions visant transformer ces don-
nes pour arriver au rsultat vis.
Ces instructions sont de natures diverses selon le type de donnes au dpart.
Cest ce que nous allons prciser.(p.6)
Il semble que les points importants ici soient laspect systmatique de lalgorithme et sa
nitude. Cependant le document prsente ensuite une structuration de lalgorithme qui
montre clairement que dans la classe de seconde, cest la forme et le langage qui caract-
risent un algorithme.
La suite prsente de manire extrmement prcise, les lments constitutifs dun algorithme
et le langage pour les exprimer. Tout dabord, lalgorithme est dcoup en trois parties :
la prparation du traitement, le traitement, et la sortie des rsultats. Il sagit dune trs
forte structuration de lexpression de lalgorithme qui nous semble tre inspire de certains
langages de programmation. La ressemblance avec la description thorique de la syntaxe
dun langage informatique
5
est frappante.
La prparation du traitement est dcrite comme le reprage des donnes ncessaires la
rsolution et leur structuration.
Le traitement consiste en la description des instructions donner pour une excution auto-
matique. Ces instructions sont ensuite prsentes autour dun exemple. Elles sont formules
dans ce qui est appel un pseudo langage en franais et doubles dillustrations dans
le cadre de logiciels prcis. Elles sont rparties en trois groupes :
Les instructions pour traiter les donnes : la lecture de donnes, laectation de
variable et lcriture de donnes. il sagit des manipulations de base, qui sont ensuite
organises et contrles par les autres instructions.
Les squences dinstructions, cest--dire la mise en squence, les unes la suite des
autres de plusieurs instructions
Les instructions (ou structures) de contrle : la structure alternative et les structures
rptitives.
Chacune tant dcrite en donnant la formulation utiliser pour lcrire.
Cela conduit des algorithmes devant respecter une structuration trs pousse, comme les
exemples suivants le montrent :
Enn, comme on peut le voir ci-dessus, la sortie des rsultats consiste faire apparatre
le rsultat de lalgorithme dune faon ou dune autre. En fait il sagit de faire produire
le rsultat via une interface informatique. On constate ici que lalgorithme, tel quil est
dcrit, fait explicitement rfrence aux machines sur lesquelles il peut tre implment.
Cela est caractristique dun amalgame entre algorithme et programme que nous avions
entrevu dans les programmes et sur lequel il faut sattarder.
5. Un langage de programmation est dni laide dune grammaire formelle qui se dcrit dune manire
trs proche de ce qui est fait dans ce document ressource.
127
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Amalgame programme-algorithme
Nous venons de voir que lalgorithme dans les documents-ressources est dcrit suivant une
structure extrmement proche de certains langages de programmation. Le mlange entre
ce qui relve de limplmentation sur machine et ce qui relve dune mthode gnrique
(lalgorithme, au sens o nous lavons dni) va encore plus loin.
Les objets manipuls par les algorithmes mlangent objets mathmatiques, codage de ces
objets et structures de donnes. Par exemple :
Ces donnes peuvent tre numriques, ou sous forme de textes (on dit souvent
des chanes de caractres), ou de type logique ( deux valeurs possibles, vrai
ou faux), ou enn de type graphique (des points).
Souvent les donnes pertinentes doivent tre agences sous une forme plus vaste,
comme par exemple des tableaux ou listes o on peut par exemple ranger
commodment les valeurs prises par une fonction sur un grand nombre de
points. (p.6)
La question des entres et sorties montre elle-aussi un tel amalgame. Lentre de lalgo-
rithme, au sens o nous lentendons, reprsente une instance (ou son codage) et la sortie
reprsente la rponse au problme (ou son codage) pour linstance donne. Ces notions den-
tre et de sortie font rfrence lentre et la sortie de lalgorithme lui-mme. Or ici cela
est confondu avec les entres et sorties dans un programme via une interface quelconque.
Or, lorsque lon sintresse lalgorithme comme mthode de rsolution dun problme, il
nest daucune utilit de savoir si linformation est saisie au clavier, ache lcran ou
signale par un bip.
On parlera damalgame entre saisie et entre (respectivement entre sortie et achage) pour
dsigner cette confusion entre les composantes dun algorithme (son entre, sa sortie) et
des moyens techniques qui peuvent tre utiliss pour mettre en uvre ces lments dans un
programme. Cette confusion nous semble problmatique. Dune part cet amalgame entre
entre-sortie dun algorithme et saisie-achage de donnes induit une confusion entre la
machine et la mthode que lon implmente, lalgorithme. Dautre part, cela empche la
prsentation des programmes comme des fonctions, ce qui ne permet plus de faire appel
un programme comme fonction intermdiaire, ni de programmer des algorithmes rcursifs.
Par exemple :
Dans cette phase peut aussi gurer ce quon appelle lentre des donnes, qui
peut se manifester par la saisie de caractres ou de nombres sur le clavier, ou
la lecture de la position du pointeur de la souris, ou encore par la lecture dun
chier contenant ces nombres ou caractres. (p.6)
Ou encore :
Les rsultats obtenus peuvent tre achs sur lcran, ou imprims sur papier,
ou bien encore conservs dans un chier. Si on nen fait rien, ils restent en
mmoire jusqu la prochaine excution ou sont perdus. loccasion, la sortie
pourrait tre graphique (acher ou dplacer le pointeur de la souris ou des
objets sur lcran) ou sonore ... voire sur Internet. (p.6)
Ce point nous amne parler aussi du statut des variables. Tout dabord, notons que mme
dans sa version pseudo-langage, lalgorithme tel que le propose le document ncessite une
128
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
dclaration des variables en jeu (comme dans les langages Pascal ou C) dans la prparation
du traitement. Que ce soient les variables en entres autant que les variables intermdiaires :
Il sagit aussi de reprer les rsultats intermdiaires quil est bon de mmoriser
pour la suite car indispensables au traitement. Il est parfois utile dutiliser des
variables auxiliaires pour ne pas perturber les donnes initiales. (p.6)
Dautre part le statut de la variable informatique dans la description dalgorithme et dans
les programmes est le mme. Nous avons dcrit la notion de variable informatique dans
lalgorithme mathmatique (AM) comme un modle de la gestion de la mmoire et de la
variable dans les programmes informatiques.
Cette action ncessite de crer une mmoire ou variable destine cet
usage, zone de mmoire laquelle il est commode de donner un nom ou iden-
ticateur. [...] Les identicateurs sont des suites de lettres et chires (sans
espaces) qui doivent tre choisies judicieusement pour que lalgorithme soit
immdiatement lisible et interprtable [...]. (p.7)
Et une note de bas de page prcise :
Il ne faut surtout pas confondre la variable et son identicateur ; en eet, la
variable, outre son identicateur qui est juste un nom, possde une valeur qui
est son contenu et une adresse qui est lendroit dans la mmoire o on va
ranger la valeur. (p.7)
Il sagit bien ici de la dnition informatique dune variable. Les questions dadresse en
mmoire ne jouant aucun rle lorsque lon dveloppe un algorithme. Cest lors de son im-
plmentation, pour des questions de programmation que cela peut avoir du sens.
Enn lensemble des instructions constitutives dun algorithme dans ce document (Si alors,
Pour, Tant que, Rpte jusqu) sont directement les instructions disponibles dans les
langages de programmation les plus utiliss, traduites en franais. Elles sont les seules
prsentes comme description dun algorithme et toute autre reprsentation est rejete,
linstar des organigrammes :
Nous nutiliserons pas les organigrammes qui eurent leurs heures de gloire
dans lenseignement de linformatique mais se sont avrs inadquats face aux
progrs de cette science (en particulier,dans le cadre des programmations fonc-
tionnelle ou oriente objets). (p.7)
Un concept pour lanalyse : le programme-papier
Le fait que le document dcrive lalgorithme comme lexpression dune mthode dans un
langage trs proche dun langage de programmation et le fait que les lments de la pro-
grammation et ceux de lalgorithme soient toujours mls, dans un amalgame entre algo-
rithme et programme, nous amne introduire la notion de programme-papier.
Nous appellerons programme-papier, le fait de prsenter les algorithmes comme des pro-
grammes (au niveau de la forme) et dans lesquels, bien que lon ne soit pas sur une machine,
on se soucie de points lis limplmentation et la machine. Ces programmes-papier sont
en quelque sorte des programmes gnriques que lon peut crire en dehors dun contexte
de programmation mais qui relvent bien de celui-ci.
Nous considrons quils sont caractristiques dun ancrage dans AI et dans une activit
centre sur la programmation. Bien quils ressemblent des algorithmes dans AM, les
129
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
programmes-papier ont pour objectif central lexcution en machine et ils ne se focalisent
pas sur la mthode de rsolution. La prsence dun langage trs formalis, mais surtout
dinstructions relatives la machine (calculatrice, ordinateur, etc...) est un critre ecace
pour les reprer. La suite du document ressource en donne des exemples trs nets.
Par exemple :
L criture des donnes permet dacher pour lutilisateur les valeurs des
variables aprs traitement (ou en cours de traitement dans le cas o lon veut
contrler lexcution). On a choisi de la traduire par linstruction : Acher
identicateur. On pourra peauner la prsentation des rsultats pour avoir un
achage lisible et comprhensible. Une variante consiste sortir directement
des informations non contenues dans une variable, nous le traduirons par :
Acher message . (p.7)
On reconnat ici le programme-papier au fait que lon a un algorithme qui nest pas impl-
ment mais qui est exprim dans un langage trs prcis et qui, sur papier, dialogue avec
lutilisateur au travers dachage lcran (et dans dautres cas de saisie au clavier).
Algorithmes en jeu
Les algorithmes, ou les problmes qui font appel lalgorithme, prsents dans cette partie
du document sont :
Les algorithmes anciens que les lves ont dj rencontr : algorithmes opratoires,
algorithme des dirences, algorithme dEuclide, algorithmes de construction en go-
mtrie.
Les exemples de problmes mettant en jeu des objets mathmatiques sous un jour
nouveau : organisation de la recherche du maximum dune fonction, reprsentation
dune droite avec des pixels, tri des donnes ncessaire au calcul de la mdiane.
Les exemples souvent repris pour illustrer la notion dalgorithme : rendu de monnaie,
recettes de cuisine, shabiller, conduite dun train, consultation dun catalogue de
bibliothque.
Les exemples pour prsenter les lments de base dun algorithme simple : simulation
dun lanc de deux ds avec calcul dun gain, rptition 10 fois de cette exprience,
rptition de cette exprience jusqu obtenir un certain gain.
Ces algorithmes sont prsents ple-mle. Pourtant, selon nos critres, certains ne relvent
pas compltement du concept dalgorithme :
Les algorithmes de tous les jours : rendu de monnaie, recettes, shabiller, conduire
un train et chercher dans un catalogue. La description de ces activits peut relever
dune dnition de lalgorithme qui nest pas celle des mathmatiques et la notion de
mthode ou de suite de rgles nous parat susante pour les qualier. Ces activits
font rfrence essentiellement leectivit et lon peut reprocher certaines de ne
pas rsoudre une famille dinstances dun problme.
Simulation dexprience : les trois variantes de simulation ne nous semblent pas re-
lever rellement de lalgorithmique : il sagit de mettre sous forme dun programme
ou dun programme-papier, de traduire, une exprience avec des outils numriques
(gnrateur de nombres alatoires). On ne traite pas un problme au sens o nous
lavons dni.
130
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Algorithmes de construction en gomtrie : la notion de construction peut tre ex-
prime sous forme dun algorithme mais lalgorithmique napporte rien de plus dans
la rsolution du problme. Cest, nous semble-t-il, la programmation qui motive ici le
choix de ces algorithmes ainsi que laspect eectif et systmatique qui est dj dans
la notion de construction. De plus, nous avons pu voir dans les programmes quil
sagit essentiellement de faire des traductions des formules sur les coordonnes des
points.
Les autres algorithmes et problmes gnraux correspondent notre dnition. Parmi eux,
seuls six algorithmes sont riches et pourraient tre objets dtude : la recherche dextre-
mum dune fonction sur un intervalle (par balayage et par tirage alatoire), le test de la
monotonie dune fonction (par balayage), la recherche par dichotomie (nombre deviner
et recherche du zro dune fonction) et la recherche du maximum dune fonction croissante
puis dcroissante. Ce sont tous des algorithmes dapproximation en analyse ( lexception
de lalgorithme du nombre deviner, mais son rle est dintroduire la dichotomie pour
rechercher des zros de fonctions).
Pour terminer, notons que pour illustrer lintroduction des diverses instructions (aecta-
tions, boucles, etc.), le document sappuie sur les simulations de rptition dexpriences
alatoires que nous venons dvoquer. On voit bien ici, par le choix de ces exemples non
reprsentatifs de la notion dalgorithme, que ce nest pas la rsolution dune famille dins-
tances dun problme qui est lenjeu mais bien la mise en uvre concrte, via les outils de
programmation, de constructions issues des mathmatiques.
Questions sur les algorithmes et tches de llve
Le document met bien en vidence le travail attendu de llve concernant cet enseigne-
ment dalgorithmique, travers les comptences qui doivent tre identies et travailles,
les pratiques de llve ou les lments de lvaluation par comptence.
On peut distinguer tout dabord que les tches proposes sont pour beaucoup relatives
la programmation. Certaines le sont directement comme les comptences : adapter lalgo-
rithme aux contraintes du langage de programmation, valider un programme simple ou les
support dactivit : transpositions dalgorithmes dans dirents types de langages, progres-
sivit dans le choix et lutilisation des outils de programmation.
Dautres y font rfrence moins directement mais on peut comprendre que le cadre est celui
de la programmation :
certaines parce que la tche propose se fait plus couramment dans un langage de
programmation : modier un algorithme pour obtenir un rsultat particulier ou com-
plexication progressive,
dautres parce que lon retrouve les caractristiques du programme-papier comme
mettre au point une solution algorithmique : comment crire un algorithme en lan-
gage courant en respectant un code, identier les boucles, les tests, des oprations
dcriture, dachage... ou valider la solution algorithmique par des traces dexcution
et des jeux dessais simples.
Les autres tches sont relies la comprhension et lcriture dalgorithmes : comprendre et
analyser un algorithme existant, relecture dalgorithmes ou crer un algorithme en rponse
131
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
un problme donn.
Deux fois seulement sont voques des tches qui pourraient relever de lalgorithme comme
objet
6
:
valider la solution algorithmique par des traces dexcution et des jeux dessai simples
qui rfre une validation qui nest pas de lordre de la preuve mais plutt exp-
rimentale. Il sagit plus de trouver des bugs que de valider la mthode pour toute
entre.
valider un programme simple. La validation dun programme peut passer par la preuve
de lalgorithme sous-jacent mais aucune rfrence prcise cela nest faite et nulle
part on ne parle de preuves dalgorithmes.
Les pratiques valuer sont uniquement tournes vers la comprhension dun algorithme
(au sens de la comprhension de ses tapes et de lexplicitation de son but) sa modication
et la cration dun algorithme. Cest--dire uniquement des tches o lalgorithme est outil.
Aspects
Nous lavons dj dit, la grille danalyse soulve des questions qui se recoupent en partie.
Plus prcisment, elles sont dans un ordre o les premires questions jouent un rle impor-
tant pour rpondre aux suivantes. Ainsi, les questions auxquelles nous avons rpondu dans
les points prcdents nous permettent de rpondre prcisment la question des aspects
et le lecteur devrait dj avoir une ide des aspects qui sont prsents ou non.
Laspect effectif est extrmement prsent au sein de cette partie du document. En par-
ticulier on retrouve la notion de non-ambigut, de mthode systmatique, de transfert
un oprateur ou une machine et de nitude.
Le poids important qui est est mis sur la programmation et que nous avons soulev plus
haut contribue de manire trs forte cet aspect. En particulier le choix de proposer
dexprimer les algorithmes dans un langage trs strict et lobjectif de programmer et dex-
cuter ces algorithmes mettent souvent la non-ambigut et lautomatisation des mthodes
au centre des proccupations pour lalgorithmique.
On le retrouve aussi dans les caractristiques voques pour la notion dalgorithme. Par
exemple, la motivation de lalgorithme dans le cas de la rptition dune tche, ou dans le
cas dun traitement trop long pour tre envisag la main relve compltement de la
possibilit de rendre automatiques certaines tches si elles sont explicites clairement. La
rfrence Al-Khuwarizmi et ses procds de calcul suivre pas pas, la dnition choisie
de lEncyclopaedia Universalis, ou linsistance sur la notion de nitude sont aussi des
rfrences caractristiques laspect eectif.
La prsence universelle des algorithmes dans le quotidien et les autres disciplines, que sou-
lve plusieurs reprises le document, relve aussi de cet aspect.
Laspect problme se dgage nettement aussi. En particulier les notions dentre et de
sortie sont trs prsentes (malgr lamalgame avec les interfaces dentre et de sortie de la
machine). La volont de placer lutilisation des algorithmes pour la rsolution de problmes
peut faire rfrence cet aspect problme, cependant, nous avons vu prcdemment que
6. Nous reviendrons dans les paragraphes suivants sur la distinction outil et objet. Rappelons simple-
ment pour linstant, que pour tre objet, lalgorithme ne doit pas seulement tre questionn mais certains
oprateurs et une certaine structure de contrle doivent tre voqus.
132
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
lamalgame algorithme-programme peut laisser penser que cela fait seulement rfrence
lutilisation de logiciels de programmation dans une activit de rsolution de problmes. En
eet, il sagit de faire en sorte que les mathmatiques et lalgorithmique soient au service
dactivits de rsolution de problmes pour les sciences. Ces problmes pour les sciences
pouvant surement tre dun genre trs loign de notre dnition de problme.
Notons tout de mme quune premire dnition de lalgorithme met en avant clairement
cet aspect problme :
Dans un premier temps rdiger un algorithme consiste dcrire les direntes
tapes de calcul pour rsoudre un problme algbrique, numrique ou dcision-
nel. (p.6)
Laspect preuve est lgrement voqu et ne fait pas, nous lavons vu, lobjet de tches
particulires. Son vocation relve dun discours gnral sur la place de lalgorithmique et
de linformatique vis--vis des mathmatiques :
Le dveloppement du calcul automatis a permis (au niveau de la recherche)
de dvelopper de nouveaux objets (fractales...), de nouvelles mthodes de d-
monstrations et a profondment modi la pratique des chercheurs. (p.3)
Lautre rfrence la preuve lieu au moment de lintroduction de la boucle conditionnelle,
concernant les problmes de terminaison
7
:
Pour que lalgorithme soit correct, il est ncessaire que la condition cesse dtre
vrie au bout dun nombre ni de rptitions. Un raisonnement mathma-
tique permet parfois de sen assurer, mais il est parfois dicile davoir lassu-
rance du fait que le programme ne bouclera jamais indniment. (p.9)
Quelques lignes plus loin, la rptition dune instruction jusqu obtention dun gain x
soulve la note de bas de page suivante : Situation fort intressante tant au plan mathma-
tique qualgorithmique : lalgorithme se termine-t-il ? Rien ne lassure ! On peut considrer
que laspect preuve est reconnu mais sa prsence reste tout de mme extrmement lgre
et aucune attente ou exigence nest nonce concernant cet aspect. tant quasiment absent
des programmes, et trs peu voqu ici, on peut faire lhypothse que cet aspect nexistera
surement pas dans les classes.
Laspect complexit est moins prsent encore. On parle de temps de calcul une reprise,
mais il sagit seulement de dire que cela, avec dautres critres, dtermine de manire plus
ou moins ouverte le choix de linstrument, cest--dire que cela soulve des questions de
choix des supports de programmation.
Laspect modles thoriques nest pas attendu dans un tel document. Cependant, tout
comme la preuve est voque sans tre vraiment attendue en classe, on pourrait imaginer
trouver, destination des enseignants, une rfrence ces notions thoriques, tout comme
aux questions lies la complexit.
En rsum, seuls les aspects effectivit et problme sont mis en avant dans cette
partie du document, comme les programmes le laissaient attendre. Ajoutons que laspect
effectivit semble bien plus dominant que laspect problme, comme lexemple choisi
pour illustrer les direntes instructions, une exprience alatoire, le montre. Cest lutilit
de la notion dalgorithme pour exprimer une mthode ou une construction de manire
7. Notons dailleurs qu ce sujet lamalgame programme-algorithme apparat clairement : le document
ne parle pas de terminaison mais explique que linstruction sera excut[e] indniment, que lutilisateur
sera oblig darrter (brutalement) le programme et quil sagit dune erreur majeure de programmation.
133
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
non-ambige et implmentable et excutable par un ordinateur qui prime sur la question
de rsoudre un problme particulier, quelle que soit linstance choisie.
Cest donc trs largement laspect outil qui domine cette partie des documents-ressources.
Conceptions
Ce que nous avons dit pour ltude des aspects vaut aussi pour ltude des conceptions :
cest pour beaucoup les questions prcdentes de la grille qui donnent les moyens de reprer
la ou les conceptions en jeu. En particulier, nous avons dj abord la question des pro-
blmes proposs, de la forme dans laquelle sont exprims les algorithmes et des structures
de contrle qui sont en jeu (o plutt qui ne sont pas en jeu).
Tout comme nous lavions remarqu pour les programmes de mathmatiques, le discours
gnral sur lalgorithme voque les paradigmes AI et AM. Cependant, il ressort que les
algorithmes, lorsquils ne sont pas sous forme de programmes, nexistent que sous la forme
de programmes-papier. Dans ce cas on ne peut pas vraiment dire que le paradigme AM
soit en jeu.
Les problmes en jeu, nous lavons vu, sont soit des problmes de P
a
, pour lesquels on
cherche une solution commune toutes les instances, soit des questions ou des activits
qui ne sont pas des problmes au sens algorithmique. Par exemple, ce sont des questions
de simulation ou dcriture sous la forme dun algorithme ou dans un langage spcique de
mthodes ou constructions automatiques. Dautres problmes voqus sont des problmes
de la vie courante (conduire, shabiller, etc.).
Les oprateurs ne sont que des algorithmes ou des programmes. Cela est compltement li
au fait que seulement des problmes de P
a
sont poss et que nous sommes donc du ct
outil des conceptions. Certains oprateurs sont des programmes qui ne sont pas des algo-
rithmes (dans le cas des simulations). On peut dj dire que par rapport aux -conceptions,
la conception de lalgorithme, ici, stend tout ce qui est programmable, y compris les
mthodes que nous navons pas considres tre des algorithmes.
Il est important de sattarder sur les systmes de reprsentations qui sont proposs. En
eet, ce sont eux qui, en grande partie, permettent de distinguer le paradigme dans lequel
on se trouve.
Certaines remarques laissent penser que cohabitent deux paradigmes dans le document :
AM et AI. Notamment, il est dit :
La pratique de lalgorithmique ne se rsume pas lcriture de programmes ; il
serait mme judicieux de ne pas commencer par l. (p.4)
De mme, une partie des comptences consiste traduire ou adapter un algorithme un
langage de programmation. Et une partie des algorithmes de la vie courante (prenons
comme exemple la consultation dun catalogue de bibliothque) sadressant des humains,
les exprimer dans un langage de programmation ne semblerait pas pertinent. Ajoutons la
remarque suivante :
On pourrait trs bien commencer par excuter des algorithmes sans ordinateur
la main sur papier, avec les mains, avec les pieds ou avec des objets, etc. (p.4)
Ce qui peut laisser penser que les algorithmes prsents ne sont pas donns dans un langage
de programmation. Pourtant, deux langages dexpression des algorithmes sont prsents :
le programme et le programme-papier donn par le pseudo-code en franais dont nous
134
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
avons dj longuement parl. De ce point de vue on se situe dans AI seulement. Pour tre
dans AM, il faudrait une volont claire de sabstraire des contraintes de la machine et de
se concentrer sur la mthode de rsolution du problme elle-mme, ce qui napparat pas ici.
Les structures de contrle ne sont pas beaucoup mises en avant ici. Cest souvent le cas
dans les discussions gnrales sur lalgorithmique. Elles seront plus facilement reprables
dans des activits dtailles et seront surement plus explicites dans la suite du document
ressource. tant donn la quasi-absence de laspect preuve
8
, on peut dj noter que ces
structures de contrle ne sont pas de lordre de la preuve mathmatique.
Bien sr, des structures de contrle existent mais elles relvent du respect du langage (crire
un algorithme en langage courant en respectant un code) et de la validation par lexcution
(valider la solution algorithmique par des traces dexcutions et des jeux dessais simples).
Nous devons prciser pourquoi nous considrons que les problmes de P sont absents et
que les conceptions-outils napparaissent donc pas. Quelques questions souleves peuvent
tre vues comme sadressant lalgorithme en tant quobjet. Celle de la terminaison dalgo-
rithmes dont nous venons de parler ou celle de la prcision ou de la abilit dun algorithme
dtude de fonctions relles. Aucun oprateur nest donn pour rpondre ces questions et
encore moins de structure de contrle.
On retrouve aussi des questions quant au codage des objets ou au temps de calcul mais
il sagit uniquement de savoir adapter le choix du support de programmation selon ces
critres.
En rsum, la conception prsente ici est AI, avec une structure de contrle trs faible et
un amalgame fort entre algorithme et programme.
5.2 Activits proposes pour la classe
Suivant le dcoupage propos, nous tudions maintenant les sections Exemples de dispositifs
en classe, Algorithmes et gomtrie, Algorithmes et fonctions et Algorithmes et probabilits.
Pour tudier ces propositions dactivits nous re-prciserons la grille danalyse utilise et
nous montrerons comment les activits peuvent tre analyses individuellement laide de
la notion de conception et du modle pistmologique des -conceptions pour lalgorithme.
Une grille pour analyser les activits
Pour lanalyse de cette autre partie du document, qui concerne des propositions dactivits
en classe, nous utiliserons la mme grille que prcdemment mais nous allons prciser son
utilisation, en particulier en ce qui concerne ltude des conceptions. En eet, nous avons
pu voir que les discours gnraux sur lalgorithmique sont trs adapts la recherche des
aspects mais pas forcment celle de conceptions dtailles. Dans le cas dactivits prcises
proposes, cest linverse. Reprer les aspects nest pas forcment facile mais la description
de la conception dans chaque activit devient plus aise.
Cest cela que nous souhaitions prciser ici : pour chaque activit propose, on peut cher-
cher reprer la conception en jeu, cest--dire le quadruplet (P, R, L, ). Dans les cas
prcdents, nous ne pouvions que dcrire de manire gnrale, le type de problme, le type
doprateur, ou le type de structure de contrle en jeu. Par exemple, il sagissait unique-
ment de dire quelle famille de problmes tait en jeu : P
a
ou P? Quel genre de structure
8. La seule vocation de la preuve comme structure de contrle tant quelle peut parfois assurer la
terminaison. Nous lavons voqu au paragraphe prcdent.
135
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
de contrle : preuve mathmatique ? implmentation ? excution ?
Nous allons maintenant pouvoir prciser chaque fois quel problme est trait, avec quels
oprateurs, sous quelle forme et guid par quelles structures de contrle.
Dcrire ces conceptions pour chaque activit est long. Nous nallons pas dtailler lensemble
de ce travail, mais il nous semble ncessaire de montrer travers quelques exemples repr-
sentatifs, comment se met en uvre concrtement cet outil et jusqu quel niveau de dtail
il permet daller.
Dans un deuxime temps nous prsenterons un bilan des analyses. Nous ne suivrons pas
tout fait le plan de la grille danalyse pour allger la lecture. Nous prsenterons lanalyse
en terme de conceptions (et nous passerons plus vite sur les outils dj utiliss plus haut
ou les lments dj reprs et discuts dans les programmes et le dbut du document). Le
lecteur pourra retrouver, dans cette prsentation, les lments de rponse aux questions de
la grille danalyse, mme sils ne sont pas formuls comme tels.
Conceptions dtailles et exemples choisis
Le jeu du cartable (p.10) (voir tableau ci-dessous) : Il semble que lobjectif soit lexpres-
P
Prparer son sac pour le lendemain, tant donns les lments dj dans le sac et lemploi
du temps du lendemain. Nous pourrions exprimer ce problme sous la forme (Instances,
Question) si la forme des informations et les oprations lmentaires taient prcises.
R Ce sont les direntes stratgies possibles. Les oprations autorises ne sont pas prcises.
L
Les oprateurs sont exprims en franais, dans un cadre dj structur par le dcoupage
en prparation du traitement, traitement, dition des rsultats et rdigs sur une che :

Le test par un autre groupe permet la validation de la stratgie. Aucune autre structure
de contrle nest propose.
sion rigoureuse dune mthode systmatique pour rsoudre la tche. Ce problme, propos
pour introduire la notion dalgorithme, met surtout en avant laspect eectif et ne prsente
pas un problme trs riche algorithmiquement. Il sagit surtout dexprimer sans ambigut
une stratgie. On reconnat cependant la conception AM-outil.
Un peu dpargne (p.12) :
Cette activit est propose dans un cadre de lecture dalgorithme. On retrouve la conception
AI-outil dans une version trs faible (tableau ci-dessous). On retrouve ici un programme-
papier. De plus le problme est trait dans une version instancie, on ne peut pas considrer
que ce qui est dcrit soit un algorithme, mme si lon reconnat lalgorithme gnrique qui
se trouve derrire le calcul dcrit.
Pour cette mme raison, on ne peut pas considrer que les questions poses sur ce calcul
mettent lalgorithme en jeu en tant quobjet. Ces questions (crire les achages successifs
qui apparatront lcran et Donner un problme dont la solution est donne par cet al-
gorithme
9
) portent sur un algorithme ou une mthode dcrite pour un cas particulier, on
ne peut donc pas considrer que AI-objet est prsent. Dautant plus quaucun oprateur
nest propos pour rpondre ces questions. Il sagit donc ici simplement de comprendre
9. Dautant plus que lnonc prcise que S dsigne la somme dtenue par Paul la banque et N dsigne
le nombre de semestres de dpt.
136
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
P
Le problme est instanci. Il sagit de calculer le nombre de semestres ncessaires pour
obtenir 8000 euros en plaant 5000 euros 2% par semestre. Il peut tre vu comme une
instanciation du problme gnral suivant (ou dun sous-problme de celui-ci) :
Donnes : une somme de dpart S
d
, un taux semestriel t et une somme atteindre S
a
.
Question : Au bout de combien de semestres atteint-on S
a
?
R
Les oprateurs sont les instructions dnies dans le document (aectation, boucles, a-
chage, etc.). On reconnat des oprateurs lis la gestion de lachage.
L
Le langage est le pseudo-code voqu dans
la premire partie du document ressource :

Aucune structure nest voque. Surement, dune part, parce quil sagit de comprendre les
instructions et den dduire le problme (plutt une question instancie) quelles permettent
de rsoudre et dautre part, parce quil sagit ici de simuler le bnce eectu chaque anne.
des instructions donnes dans un certain langage.
La distance entre deux points (p.16-17) : Deux activits sont proposes autour de la
distance entre 2 points. La premire sintresse au problme du calcul de la distance, elle
met en jeu la conception AI-outil :
Conception
P
Instance : les coordonnes de A et B, deux points du plan
Question : Quelle est la distance AB?
Le but nest pas la rsolution du problme, il sagit dautomatiser le calcul de la distance.
R
Les oprateurs sont les instructions du pseudo-code ou les commandes des langages de
programmation proposs pour traduire ce pseudo-code. On trouve la fois des instructions
sur les objets manipuls et des instructions dachage et de saisie.
L
Lalgorithme est dcrit avec le pseudo-code du document puis exprim dans les langages
de programmation Casio et Python :

La structure de contrle est la formule, donne, de la distance :


d =

(x
B
x
A
)
2
+ (y
B
y
A
)
2
. On peut penser que, dans le cas de lutilisation
dun langage de programmation, la compilation et lexcution joueront un rle de contrle.
Le programme-papier se rfre au paradigme AI, on na donc que la conception AI-outil.
De plus, lalgorithme de la distance nest quune traduction dune formule de gomtrie,
lenjeu se concentre donc uniquement sur le travail de reformulation dans un autre langage.
Ce type dalgorithme ne permet pas une approche du point de vue objet.
137
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Lautre activit propose autour de la distance se place dans le logiciel Scratch dans lequel
la fonction distance est dj implmente. Lactivit propose un script pour jouer chercher
un objet cach sur lcran en dplaant la souris, en tant guid par un son dont le volume
augmente au fur et mesure que lon sapproche de lobjet :
Ce programme nest pas un algorithme au sens o nous lavons dcrit : il ne rsout pas un
problme et sa terminaison nest pas claire. Il sagit plutt dune activit de programma-
tion dun jeu ou de la simulation dun dtecteur de mtaux. On voit bien ici lamalgame
entre programme et algorithme.
Lactivit de llve concernant ce programme consiste le modier et le comprendre. Nous
considrons que lon est dans une activit de programmation qui est bien au-del du para-
digme AI, tant donn que la notion dalgorithme nest plus prsente.
La dichotomie (p.25) : La dichotomie est prsente dans le cadre de la recherche dun
zro dune fonction. Une premire activit, le jeu du nombre deviner est propose pour
introduire la dichotomie.
Dans ce jeu du nombre deviner, il sagit de trouver un nombre compris entre 10 et 100,
lordinateur rpondant cest plus ou cest moins aux propositions du joueur.
Un premier programme-papier est propos, il simule le joueur qui choisit le nombre. La
programmation du jeu est propose comme une premire activit algorithmique. Ensuite
llve doit jouer contre le programme et essayer de gagner tous les coups, cest--dire en
moins de 6 essais. ce niveau, lalgorithme en jeu est la stratgie de dichotomie qui doit
merger du ct du joueur qui devine.
P
Le problme peut tre reformul ainsi.
Instances : le choix dun nombre gagnant entre 10 et 100
Question : Trouver le nombre en moins de 6 essais.
R
La stratgie du joueur qui cherche le nombre (llve) : une rgle qui dit quel nombre tester
selon les rponses prcdentes du programme.
L
Cette stratgie est surement attendue en langage courant, tant donne quelle est formule
(et justie) de manire trs informelle :

La citation ci-dessus montre aussi la justication de la mthode. La russite systmatique


face lordinateur constitue un autre contrle de lalgorithme. Notons que la preuve de
loptimalit de la dichotomie nest pas faite, ni en gnral, ni dans ce cas particulier de
lintervalle de 10 100 car il faudrait aussi prouver que 5 coups ne susent pas toujours.
Notons aussi que largument de validit de lalgorithme est trs peu dtaill.
On trouve ici la conception AM-outil avec une structure de contrle de lordre de la preuve
mathmatique. Est-ce que la conception AM-objet est aussi prsente ? Peu de questions
sur lalgorithme lui-mme sont poses, il est seulement dit :
138
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Le choix des valeurs 10 et 100 qui encadrent le nombre trouver, ainsi que le
nombre dessais est mettre en dbat dans la classe. En eet, selon le choix de
ces valeurs, il sera ou non possible de dterminer coup sr la solution avec
une bonne stratgie, ou on pourra seulement optimiser les chances de gagner.
Nous dirons que le potentiel de lalgorithme de dichotomie pour vivre en tant quobjet est
soulev, mais aucun oprateur nest mis en avant pour tudier cet algorithme. On ne peut
pas vraiment dire que la conception AM-objet est prsente.
Relevons un autre point : le programme de jeu na pas dutilit relle dans cette activit,
tant donn que des lves pourraient jouer lun contre lautre. Programmer un adver-
saire virtuel est aussi considr ici comme une activit algorithmique (cela relve encore
de lamalgame algorithme-programme).
La deuxime activit sur la dichotomie est la recherche dun zro dune fonction par dicho-
tomie (voir tableau ci-dessous). On est toujours dans la conception AI-outil et la validation
P
Instance : une fonction f qui change de signe entre a et b
Question : rsoudre f(x) = 0
R Les oprateurs sont encore les instructions dnies par le pseudo-code.
L
On retrouve le pseudo-code :

La validit de la mthode nest pas questionne. Dailleurs il nest mme pas prcis que
la fonction sannule au moins une fois (parce quelle est continue ou quon a dautres
hypothses). La structure de contrle qui semble valider lecacit de la mthode pour
trouver le zro est lactivit prcdente, faisant merger la dichotomie : On transpose cette
mthode ici. Notons que cette mthode na t valide comme optimale que pour une
recherche parmi un intervalle de 91 entiers.
de lalgorithme est absente.
La conception objet, qui pourrait apparatre ici, tant donn la richesse de la situation,
nest touche quau travers dune remarque sur la prcision de la mthode en fonction du
nombre ditrations.
La concidence des dates danniversaire (p.30) :
Il sagit dtudier la probabilit que deux personnes aient leur anniversaire le mme jour
parmi un groupe de 30 personnes. Cette activit ne relve pas de lalgorithmique. On peut
considrer, au mieux, que la conception AI-outil est en jeu (voir tableau ci-dessous). Nous
reviendrons sur ce point un peu plus loin : les programmes de simulations ne relvent pas,
selon nous de lalgorithmique.
Un concept pour lanalyse : lalgorithme-instanci
Nous avons voqu plus haut, lexemple dun algorithme qui tait dcrit dans un cas par-
ticulier. Il nous semble utile pour la suite de donner un nom ce genre dobjet. Nous
139
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
P
Lenjeu est de simuler un grand nombre de fois une situation alatoire. Il ne sagit pas dun
problme de P
a
.
R
les oprateurs du programme-papier ou de langages de programmation : instructions d-
crites prcdemment mais aussi gnrateur alatoire de nombres.
L
Pseudo-langage du document et langage du logiciel Scilab :

Aucune structure de contrle nest prsente. Comme il sagit dune simulation, la seule
activit est en fait une activit de programmation et les structures de contrle ne peuvent
pas tre de celles que nous avons repres pour lalgorithmique.
proposons le terme dalgorithme-instanci.
Nous appellerons algorithme-instanci, lexpression dun algorithme dont les variables re-
prsentant lentre ont t remplaces par des valeurs prcises. Un algorithme-instanci est
mi-chemin entre un algorithme et son excution sur une instance. Le langage utilis pour
lexprimer na pas dimportance.
Un algorithme-instanci nest pas un algorithme, au sens o il ne rpond pas une question
pour une famille dinstances. Un expert, cest--dire une personne connaissant lalgorithme
en jeu, reconnatra facilement lalgorithme derrire le cas particulier trait. Cependant, un
novice ne verra pas la dirence avec un algorithme erron (au sens o il ne donne pas
toujours la bonne rponse la question), instanci sur une des instances o il est valide.
Par exemple, pour le problme dpargne (p.12) voqu juste au-dessus
10
:
Mettre 5000 dans S
Mettre 0 dans N
Tant que S est strictement infrieur 8000
Remplacer S par S1,02
Augmenter N de 1
Fin du Tant Que
Acher N
Mettre 5000 dans S
Mettre 0 dans N
Tant que S est strictement infrieur 8000
Remplacer S par S(1,04)
Augmenter N de 2
Fin du Tant Que
Acher N
10. Nous reprenons volontairement le pseudo-code de lexemple issu du document.
140
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Comment direncier lalgorithme-instanci valide de gauche de lalgorithme-instanci
erron
11
de droite ? Si lon cherche prouver quils rpondent au problme pos (qui na
quune instance), ils sont tous les deux corrects : ils donnent la solution de 24 semestres
12
.
Cest donc bien le fait de rpondre correctement toutes les instances du problme qui doit
tre au centre du concept dalgorithme. Dun point de vue didactique, il est donc important
de reprer ces algorithmes-instancis. Si lon rencontre des algorithmes-instancis dont
la gnralisation ne fait pas rfrence un algorithme correct, nous utiliserons le terme
dalgorithme-erron-instanci.
Problmes et algorithmes
Cette partie du document prsente une trentaine dactivits. Toutes ne mettent pas en jeu
des problmes de P ou de P
a
. Notamment, une grande partie repose sur la simulation
de jeux, de systmes automatiques ou dexpriences alatoires. Bien que ces simulations
puissent inclure de rels problmes algorithmiques, ils ne sont quvoqus dans les activits.
Globalement, les activits de simulation relvent de la programmation ou de lautomatisme
(modliser un digicode, simulation du dplacement dun curseur avec le clavier, simulation
dun grand nombre de parties dun jeu de hasard, etc.). Leur prsence sans distinction au
cur dautres problmes dordre algorithmique rvle encore un amalgame programme-
algorithme.
Par exemple, concernant lactivit de reproduire le fonctionnement dun distributeur de
billets ou du dbit dune carte de self (qui ne relve que de la simulation par la program-
mation), on retrouve ple-mle des questions dinterface (choix multiples ou ouvert de la
somme retirer, impression ou non de la facturette), des actions trs simples (vrication
de la date de validit, du solde du compte, du retrait maximal autoris) et des problmes
de P, au potentiel algorithmique et mathmatique non exploits : comment fournir cette
somme en fonction du nombre de billets encore disponibles dans le distributeur
13
.
Plusieurs autres activits ne mettent pas en jeu lalgorithme mais uniquement la notion
de programme (en particulier celles utilisant le logiciel Scratch, comme celle dtaille plus
haut sur la notion de distance).
Mme les problmes de P
a
et les algorithmes associs sont motivs par une question de
modlisation. Par exemple, la recherche du maximum dune fonction sur un intervalle ou
du point le plus haut dans un plan, sont introduits travers la question de trouver un
fentrage adapt une reprsentation graphique. Cela cache le problme. Il devient di-
cile de savoir quel est le problme trait (cela change aussi la question de la structure de
contrle et de la validit de la solution).
Dautres problmes, bien quappartenant P, ne consistent quen la traduction dune m-
thode ou dune formule dans un langage de programmation pour rendre systmatique leur
utilisation. Cest surtout le cas des problmes poss en gomtrie (recherche du milieu
dun segment, du quatrime sommet dun paralllogramme, calcul de la distance entre
deux points, test pour dterminer si un triangle est isocle).
11. Bas sur lerreur classique : deux semestres 2% correspondent une anne 4%.
12. Tout comme lalgorithme : Acher 24.
13. Le problme de former une somme en utilisant le moins de billets ou de savoir si une somme peut
tre forme avec un systme montaire donn est une question extrmement riche et encore vive.
141
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Une partie des activits est mise en avant pour dautres raisons que lalgorithme lui-mme.
Les algorithmes ou les programmes proposs visent souvent faire dcouvrir une notion
(le ppcm, ou la dcomposition en facteurs premiers, le cercle comme ensemble des points
distance constante du centre, la mdiatrice, etc.), permettre ltude exprimentale
dobjets mathmatiques (comportement asymptotique et sens de variation dune fonction,
probabilit dun vnement) ou encore de motiver lintroduction de nouvelles instructions
(les boucles par la ncessit de rpter un grand nombre de fois une tche, etc.).
Modlisation-simulation
ce point de la discussion, il nous semble utile dintroduire une nouvelle dnition, les
programmes de modlisation-simulation, tant donne leur grande prsence dans le
document.
Nous appellerons programme de modlisation-simulation, toute expression dune mthode
systmatique visant simuler un phnomne ou un modle donn de ce phnomne. Il peut
sagir de simuler un jeu, une machine, une exprience, un modle de comportement dun ap-
pareil, etc. Le problme des anniversaires tudi plus haut en donne une bonne illustration.
Les programmes de modlisation-simulation, ne sont pas des algorithmes selon notre d-
nition. Ils ne rsolvent pas un problme, ils nont parfois mme aucune entre. Leur rle
est souvent de pouvoir simuler avec des outils informatiques, dans le cadre dune dmarche
exprimentale. Nous les appelons programmes plutt que mthodes pour insister sur le
fait quils ont pour but une programmation eective, mais ils ne sont pas ncessairement
exprims dans un langage de programmation.
Questions et discussions
La grande majorit des questions poses dans cette partie du document relve de lcriture
dalgorithmes, de programmes-papiers ou de programmes (rdaction dune mthode, com-
ment programmer une machine pour que [...] ?, programmation eective de lalgorithme,
Modier le programme pour que [...], etc.) ou de leur interprtation et de la comprhension
des instructions (crire les achages successifs, quelle est la position initiale de lobjet ?,
analyser lalgorithme a priori et prvoir la gure qui sera obtenue, etc.). Assez souvent la
question est simplement celle laquelle rpond lalgorithme.
On est donc dans une conception de lalgorithme comme outil, lorsquil y a vraiment un
algorithme.
Dautres questions, plus rares, sont poses sur les algorithmes eux-mmes. Quelques ques-
tions et remarques concernent lexactitude des calculs eectus (par exemple lorsquon
utilise la fonction racine carre) mais dans ce cas ce nest pas lalgorithme lui-mme qui est
questionn mais le logiciel ou programme utilis. Les questions dapproximation dans les
algorithmes sur les fonctions (recherche de zro, recherche dun maximum, etc.) pourraient
relever dune conception objet de lalgorithme.
On trouve aussi une question de comparaison dalgorithmes entre la recherche dun maxi-
mum par balayage et la recherche alatoire :
La comparaison des rsultats des deux algorithmes avec un mme nombre dit-
rations pourra donner lieu des changes autour de la notion de hasard et de
son ecacit selon les cas. (p.23)
142
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Oprateurs et systme de reprsentation
On trouve dans les activits proposes trois types de systmes de reprsentation :
Le pseudo-code dcrit dans le document : la grande majorit des algorithmes et
programmes qui sont prsents sont dabord donns avec ce pseudo-code (tous sont
sous la forme de programmes-papiers).
Des traductions des mthodes dans un ou plusieurs langages de programmation (Ca-
sio, TI, Xcas, Linotte, Python, Scilab) sont ensuite donnes. Parfois, on a directement
le langage de programmation.
Un langage naturel (rare) qui sert exprimer les mthodes de manire informelle.
Ce langage naturel reste trs proche du langage de programmation puisquil prend
aussi en charge achage et saisie dinformation :
Les oprateurs sont essentiellement les instructions de ces langages, cest pourquoi nous
avons choisi dassocier oprateurs et systmes de reprsentation dans un mme paragraphe.
Lalgorithmique est considre ici comme une activit essentiellement langagire (ce qui
peut expliquer que programmes et algorithmes ne soient pas distingus). Dailleurs on
comprend clairement que le langage naturel nest quune tape qui doit laisser la place aux
pseudo-code et langages de programmation :
Dans ces premires activits, la formulation sera probablement lourde en com-
portant des structures de la forme : si tu es dans telle situation alors fais cela,
sinon ou tant que ceci se produit on continue faire, etc. . Cette lour-
deur pourra alors fournir une motivation pour la mise en place dune syntaxe
commune sur des lments dalgorithmique rcurrents : boucles, tests... Cette
syntaxe commune peut tre un premier pas vers de premires rencontres avec
des langages ddis. Au cours de ce processus on pourra mettre en vidence le
besoin de formalisation et de rigueur. (p.10)
Structures de contrle
La validation par la preuve dalgorithme est quasiment absente de cette partie du docu-
ment. Comme annonc :
Toutes ces activits ont pour objectif la production ou linterprtation dalgo-
rithmes et leur vrication obtenue par laction immdiate et pas ncessaire-
ment issue directement du champ mathmatique. (p.10)
Pourtant, dans les critres dvaluation :
Se limiter un simple critre de fonctionnement nest pas satisfaisant :
certains algorithmes de pitre qualit fonctionnent tandis que dautres ne
fonctionnent pas mais pour des causes tout fait mineures. (p.13)
En ralit, le contrle de laction seectue majoritairement par lexcution des algorithmes
ou des programmes et par le respect des rgles du langage.
Dautres fois, cest la validit de la mthode prsente sous forme dalgorithme qui valide
lalgorithme lui-mme (cest le cas pour lcriture de formules ou de constructions gom-
triques sous forme dalgorithmes). Nous avions not, dans le cas de la dichotomie, quelque
143
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
chose dun peu quivalent. On valide une mthode dans un cas particulier (chercher un
nombre entre 10 et 100 en moins de 6 coups) et on peut ensuite utiliser cette mthode dans
un cas plus gnral.
On peut noter cependant quelques structures de contrle dordre mathmatique. Par exemple,
un invariant est donn en indication pour surveiller la bonne excution dun programme
ou une discussion est dveloppe sur le fait que le test de monotonie (par balayage) permet
de prouver quune fonction nest pas monotone mais pas quelle lest.
La comparaison des mthodes de recherche du maximum dune fonction, question de P
a
,
met en jeu une structure de contrle par des exemples :
Amalgame programmation-algorithmique
Lamalgame entre programmation et algorithmique est toujours trs prononc dans cette
partie du document. Nous avons relev quelques exemples plus-haut. Cependant nous sou-
haitons ajouter quelques indicateurs forts de cela.
Dans le jeu des multiples :
Lactivit consiste proposer un algorithme qui peut rpondre la place du joueur (ce
qui soulve des questions dalgorithmique pour larithmtique). Puis, se pose la question
de larrt du jeu, comme sil sagissait dune question de terminaison. Il semble que se
mlangent ici la simulation dune partie et lalgorithme qui permet de rpondre.
Enn, les critres dvaluation (grille ci-dessous) des algorithmes sont uniquement des
144
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
indicateurs concernant la programmation. Cela inclut mme une valuation des bonnes
pratiques dcriture de programmes.
5.3 Bilan
Rsumons les points importants relevs dans le document Ressources pour la classe de
seconde :
Lactivit algorithmique est centre autour du langage. Elle se concentre sur lex-
pression rigoureuse doprations, avec pour but lcriture de programmes. Le langage
joue alors la fois le rle de systme de reprsentation, doprateur, et parfois mme
de structure de contrle. Si le langage caractrise lalgorithmique, alors on ne peut
pas distinguer lalgorithme des programmes-papiers, algorithmes-instancis et pro-
grammes de modlisation-simulation.
Une consquence de cela est un amalgame trs marqu entre algorithme et pro-
gramme.
Lalgorithme est uniquement outil et la conception dominante est AI-Outil. La concep-
tion AM-Outil ne peut pas vraiment tre considre comme prsente (en particulier,
par la prsence permanente des programmes papiers).
Lalgorithme nest jamais considr comme un objet, la majorit des questions poses
sur les algorithmes relvent du langage.
Cette section nous a aussi amen dnir trois objets :
les programmes-papiers (caractristique de AI),
les algorithmes-instancis (qui ne sont pas des algorithmes),
les programmes de modlisation-simulation (qui relvent de loutil de programma-
tion).
La prsence rptes de ces objets nous a pouss les identier et il sera ncessaire de
savoir si on les retrouve dans les autres ressources tudies.
Conclusion
Deux transpositions direntes
Ce chapitre montre la transposition luvre dans deux institutions direntes : linstitu-
tion des instructions pour lenseignement mathmatique au lyce et celle de linformatique
et sciences du numrique. Nous avons mis en lumire deux transpositions trs direntes
du concept dalgorithme.
On peut souligner trois dirences fondamentales entre ces deux transpositions :
Mathmatiques ISN
Relation
algorithme-
programme
Amalgame entre algorithme et pro-
gramme.
Algorithme et programme sont dis-
tingus et dnis.
Relation
algorithme-
langage
Lalgorithmique est une activit cen-
tre sur le langage
Lalgorithme est une mthode qui n-
cessite un langage pour tre expri-
me.
Statut de lalgo-
rithme
Lalgorithme est un outil. Il nest pas
clairement dni.
Lalgorithme est la fois un outil et
un objet : il est clairement dni est
il peut tre lobjet de questions.
145
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Transposition dans les mathmatiques
La transposition en jeu dans les programmes de mathmatiques et les documents-ressources
montre une grande distance avec le savoir savant que nous avions modlis avec les -
conceptions. Les conclusions de lanalyse du document ressource conrment celles des
programmes et les renforcent. Les hypothses que nous avions faites sur certains points
des programmes se trouvent aussi valides. En particulier en ce qui concerne lamalgame
algorithme-programme et ce que nous avons appel les programmes-papiers.
Les documents-ressources ne concernent que la seconde et lon pourrait se demander si nos
conclusions vont aussi concerner les classes de premires et de terminales (en particulier
scientiques). Une rponse cette question peut tre donne par lanalyse des algorithmes
prsents dans les sujets du baccalaurat 2012, srie S. En annexe C, nous avons regroup
les algorithmes prsents dans les dirents sujets. On y retrouve des programmes papiers,
des programmes de modlisation-simulation et un algorithme-instanci.
Retour sur les questions de recherche
Ce chapitre nous a permis de rpondre la question Q5
conceptions
:
Quelles conceptions sont reprsentes dans les programmes de mathmatiques et docu-
ments daccompagnement du lyce ? Les conceptions prsentes sont-elles compltes ? Sont-
elles modies par rapport celles du savoir savant ? Relvent-elles de loutil ou de lobjet ?
Quelle place est donne aux structures de contrle ? Quen est-il dans les programmes de
la spcialit ISN?
Les outils que nous avons mis en uvre nous ont permis de rpondre cette question de
manire relativement prcise. Nous avons montr leur utilisation dans ltude de dirents
niveaux de discours (discours gnraux sur lalgorithmique, sur les activits mener en
classe ou encore prsentation dtaille dactivits spciques). Nous avons aussi pu mettre
en vidence des dirences de transposition grce notre outil. Cela tait un de nos ob-
jectifs et lanalyse des conceptions des chercheurs avait montr ce potentiel. Cependant, la
possibilit de le faire dans le cadre dune transposition didactique constitue une validation
de loutil.
Nous poursuivrons ltude de la transposition en tentant dautomatiser lanalyse, avec pour
but la production dune grille et dun outil plus systmatiques.
146
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 7
Ressources du site des IREM en
algorithmique
Sommaire
1 Quelles ressources ? Quels outils ? . . . . . . . . . . . . . . . . . . 147
1.1 Les ressources en ligne des IREM . . . . . . . . . . . . . . . . . . 148
1.2 Outils danalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
2 Analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
2.1 Illustration : dirents traitements de la dichotomie . . . . . . . 150
2.2 Quels Aspects dans les ressources ? . . . . . . . . . . . . . . . . . 164
2.3 Quelles conceptions dans les ressources . . . . . . . . . . . . . . . 168
2.4 Quels algorithmes dans les ressources ? . . . . . . . . . . . . . . . 173
2.5 Classication des documents . . . . . . . . . . . . . . . . . . . . 174
Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.6 Rsum des rsultats . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.7 Interprtations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
1 Quelles ressources ? Quels outils ?
Les motivations analyser dautres ressources que les manuels et les programmes et docu-
ments daccompagnement sont nombreuses.
Tout dabord, les pratiques enseignantes intgrent largement les ressources en ligne en
complment des manuels.
Suite lintroduction rapide de lalgorithmique, les manuels nont pas pu proposer tout
de suite de contenu dalgorithmique. Les enseignants ont donc d les chercher ailleurs. Au
sein des IREM, de nombreux groupes algorithmique se sont crs ds la rentre 2009 et ont
produit des ressources pour les enseignants.
Ensuite, on peut supposer que lalgorithmique ne fait gnralement pas partie de la for-
mation des enseignants de mathmatiques. Tout du moins, les rsultats du chapitre 5
concernant les conceptions de chercheurs nous laissent penser que lon retrouve aussi une
connaissance partielle de lalgorithme chez les enseignants. Il est donc important de sin-
tresser aussi aux ressources permettant de se former lalgorithmique. La formation des
enseignants lalgorithmique est dailleurs, dans beaucoup de cas, lun des objectifs des
groupes algorithmique des IREM.
147
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Enn, lalgorithmique nexistait quasiment pas dans lenseignement avant cette introduc-
tion. On peut dire quaucune ressource ne pr-existait cette introduction. Par consquent,
une forte part des ressources reste, pour linstant, des ressources en ligne.
Notre choix sest donc port sur ltude des ressources en ligne proposes par le site des
IREM pour plusieurs raisons :
Ce sont des ressources en ligne accessibles tous les enseignants.
Le rseau des IREM reprsente une institution universitaire connue des enseignants
et disposant, en tant que telle, dune lgitimit et dun crdit auprs des enseignants
(nous faisons en tout cas cette hypothse).
Le site propose notamment deux types de documentation : des activits pour la classe
et des documents de formation destination des enseignants.
Lensemble des ressources disponibles sur un site donn constitue un corpus bien
dlimit. Construire un corpus de ressources en ligne de diverses origines demanderait
une analyse trs pousse des pratiques des enseignants et de leurs sources privilgies.
Ces ressources sont conues pour la grande majorit par des enseignants en collabora-
tion avec des universitaires (mathmaticiens et/ou informaticiens). On peut supposer
que ce quon retrouvera dans ces ressources, du point de vue des conceptions de lal-
gorithmique et des aspects en jeu, se retrouvera dans une majorit dautres ressources
produites par des enseignants.
Ces ressources sont valides par le rseau des IREM : il y a une forme de relecture
des contenus proposs. Comme le stipule la rubrique algorithmique du site des
IREM : Les documents cits de cette rubrique ont fait lobjet dune lecture par
lun des membres du comit ddition suivant : [...] . Quant la rubrique volution
au lyce, elle est gre par un groupe de travail inter-IREM qui slectionne les
documents proposs.
Une dernire raison est que les travaux des IREM sont directement cits et recom-
mands dans le document daccompagnement Ressources pour la classe de seconde -
Algorithmique :
La sensibilisation de llve la dmarche algorithmique pourra se faire
en vitant toute technicit ou expos systmatique. On pourra sur ce thme
consulter les publications ralises dans le cadre des IREM. (p. 3)
1.1 Les ressources en ligne des IREM
Les ressources en algorithmique des IREM se dcomposent suivant plusieurs rubriques et
sous-rubriques. Les rubriques qui concernent lalgorithmique sont les suivantes :
La rubrique algorithmique et toutes ses sous-rubriques,
La rubrique volution au lyce qui traite des nouveauts des programmes concernant
lalgorithmique et la logique.
Lannexe A montre larborescence des documents prsents sur le site des IREM, on peut y
voir que certains documents sont prsents dans plusieurs rubriques. Dautres documents ont
t retirs : les liens vers dautres sites de ressources et les documents ociels (programmes,
documents ressources Eduscol, ractions de lADIREM, etc.). un certain niveau dana-
lyse nous nous autoriserons mettre de ct dautres documents : les ressources trop peu
dtailles (informations trop partielles) ou les ressources hors-propos (savoir que ce genre
de ressource est classi avec lalgorithmique est une information intressante mais cela
148
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
na pas de sens de ltudier avec nos outils).
Notre corpus est nalement constitu dune trentaine de documents. Ces documents sont de
natures et de formats varis : en particulier on y trouve des activits prcises proposes pour
la classe, des discussions gnrales sur lalgorithmique au lyce ou encore des documents
de formation pouvant contenir la fois des discours gnraux, des exercices et des activits
utiliss en formation denseignants et des activits pour la classe. Il faudra tenir compte
de cette diversit de contenus et de longueur des documents dans lanalyse.
1.2 Outils danalyse
Nous proposons une analyse de ces documents selon les outils danalyse dvelopps dans
la partie prcdente. Il sagit donc dtudier quels aspects sont en jeu dans ces documents
et sils rfrent loutil ou lobjet algorithme. Nous souhaitons aussi tudier quels sont
les paradigmes dans lesquels se placent les ressources : Preuve Algorithme, Algorithme
Mathmatique, Algorithme Informatique ? Et quelles conceptions de lalgorithme sont en
jeu dans ces ressources.
Il faut bien entendu mettre cela en relation avec le type de ressources tudi, les objectifs
et le public vis. Bien sr, il est important de se pencher sur les algorithmes tudis et les
domaines dans lesquels ces algorithmes sont choisis.
Pour chaque ressource, nous avons donc suivi la grille danalyse suivante :
Type de ressource :
Quelle forme de ressource ?
qui se destine-t-elle ?
Quels objectifs sont achs ?
Algorithmes en jeu :
Quels problmes mathmatiques sont proposs ?
Sont-ils des problmes au sens de notre dnition ? (instancis ?)
Quels sont les algorithmes prsents ou attendus ?
Dans quel domaine se situe-t-on ?
Quels rles jouent les algorithmes dans lactivit ?
Questions :
Quelles questions sont poses concernant ces algorithmes ?
Quelles problmatiques sont souleves ?
Aspects :
Quels aspects sont mis en avant ?
Relvent-ils de loutil ou de lobjet ?
Conceptions :
Dans quel(s) paradigme(s) se trouve-t-on ? (en lien avec le systme de reprsen-
tation)
Quelles conceptions de lalgorithme sont prsentes ? Et plus particulirement :
quels types de problmes ? quels types doprateurs ? quels systmes de repr-
sentation ? et quels types de structures de contrle (si elles sont prsentes) ?
149
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Concernant les structures de contrle, qui a la responsabilit de ces structures ?
(notamment dans les activits pour la classe)
Cette grille est trs proche de celle utilise pour les instructions ocielles. Nous avons vu
quelle tait adapte la fois au discours sur lalgorithmique, aux descriptions des contenus
et aux activits proposes par le document-ressource. Chaque point de la grille sest avr
plus ou moins adapt et plus ou moins rvlateur selon le type de contenus. Cela contribue
la souplesse de loutil, qui devrait donc sadapter facilement la diversit des ressources
du site des IREM.
2 Analyse
2.1 Illustration : dirents traitements de la dichotomie
Avant de prsenter lanalyse complte du corpus, nous prsentons ici en dtail lanalyse de
quelques documents ou extraits de documents. Cela permet de dtailler la mise en uvre
des outils danalyse. Nous avons choisi, pour cette illustration, un mme thme que lon
retrouve dans plusieurs documents : la dichotomie. La dichotomie est clairement lie
lalgorithmique et lon peut voir que son traitement peut tre divers dans les ressources.
Le choix de sintresser au traitement de la dichotomie nest pas anodin. La dichotomie est
un type dalgorithme qui permet de rsoudre des problmes dans divers domaines et qui
peut tre un objet dtude riche :
Problme La dichotomie rsout des problmes qui peuvent tre exprims selon notre mo-
dle (Instances, Question). En particulier, pouvoir rsoudre lensemble des instances
du problme est clairement un enjeu de la dichotomie.
Preuve Un algorithme de dichotomie est souvent facile dcrire, par contre sa validit
nest pas toujours vidente.
Complexit La dichotomie nest pas simplement un algorithme rsolvant certains pro-
blmes, il sagit en gnral dun algorithme rapide et ltude de sa complexit loga-
rithmique est caractristique de lide de diviser pour rgner.
Optimalit Non seulement la dichotomie fournit une solution trs ecace un problme,
mais dans la majorit des cas elle est la solution optimale en termes de complexit.
Cest la comparaison de cet algorithme dautres (une recherche par balayage par
exemple) qui lui donne son sens. Plus prcisment, cest le fait quil sagit du meilleur
algorithme en termes de complexit. La dichotomie peut permettre daborder ce genre
de problmatiques qui lui sont intrinsques.
AM-AI-PA La dichotomie peut exister dans divers paradigmes : dans AI lorsque lon fait
du traitement de donnes, dans AM, par exemple lorsque lon cherche des stratgies
optimales pour un joueur, ou encore dans PA, par exemple lorsque lon se pose la
question dun nombre dtapes minimum pour trouver une solution un problme
(sans chercher ncessairement une stratgie).
La dichotomie constitue donc un sujet riche pour lalgorithmique (en tant quoutil et quob-
jet). Cela devrait nous permettre de voir comment sont transposs des concepts vraiment
issus de lalgorithmique et comment nos outils permettent de le faire (deux choses que nous
navions pas beaucoup pu faire dans ltude des instructions ocielles).
Les documents concerns sont les suivants :
150
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
A1 : Mthode pour laborer des algorithmes itratifs (IREM dAix-Marseille), section
1.4 : La recherche dichotomique (pp.7-13)
A3 : Diviser pour rgner (IREM de Lyon), section 2 : Recherche dans une liste
(pp.2-3)
A8 : Ouvrage de formation lalgorithmique et la logique (IREM de Marseille),
section 1.4 : Un principe fondamental : la dichotomie (pp.14-17, 33-34)
A9 : Introduction lalgorithmique en classe de seconde (IREM de Montpellier),
section 5.4 : Itrer tant que : Le juste prix et section 5.5 : Itrer tant que : zros par
dichotomie (pp.46-54)
A13 : Jeu : Cest plus, cest moins (IREM de Brest)
A21 : Document daccompagnement des stages de formation lalgorithmique (IREM
de Grenoble), section 7 : Recherche dichotomique (pp.33-36)
Document A1
Ce document est destination des enseignants ou formateurs la recherche dapprofondis-
sements en algorithmique. Il prsente une mthode pour concevoir des algorithmes itratifs
valides (cest--dire corrects et qui terminent) en liant conception dun algorithme itratif
et construction dun invariant.
Concernant la dichotomie, le document propose plusieurs algorithmes qui dirent notam-
ment en fonction du choix de linvariant.
Le document met en jeu les conceptions Outil et Objet du paradigme AM, prsentes et
illustres dans les deux tableaux suivants :
Conception AM-outil dans A1 (extrait dichotomie)
Conception Extraits du document (illustration)
P
Instance : un tableau T tri et un
lment x
Question : x est-il dans T ?
Le problme appartient P
a
Soit T[0..n1] un tableau de n lments classs par ordre
croissant. Le problme consiste tablir un algorithme
qui permette de dire si un lment x appartient ou pas
au tableau T. Lalgorithme recherch ne doit pas eectuer
une recherche squentielle, mais doit utiliser le principe de
la dichotomie : [...]
R
Oprateurs de manipulation de
types de donnes abstraites (le
tableau), Oprations mathma-
tiques, aectations, boucles et
conditionnelles
L
Pour R : Langage mathmatique
mlang un langage proche des
langages de programmation. Les
objets manipuls sont des types
de donnes abstraites et objets
mathmatiques munis de certaines
oprations de base
Pour : schma dcrivant linva-
riant et lgende du schma en lan-
gage naturel
Voir ci-dessus et ci-dessous

Les invariants et la mthode de


construction dalgorithmes itra-
tifs proposs au dbut du docu-
ment sont les structures de contrle
qui valident lalgorithme
151
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conception AM-objet dans A1 (extrait dichotomie)
Conception Extraits du document (illustration)
P
Instance : un problme p de P
a
(instanci pour p : recherche dun
lment dans une liste trie)
Question : Construire un algo-
rithme valide (correct et qui ter-
mine) pour p ?
Le problme appartient P
R
La mthode de construction de
lalgorithme ([1],[2],[3],[4])et linva-
riant permettent de construire et
valider lalgorithme.
L
Pour R : schma dcrivant linva-
riant et lgende du schma en lan-
gage naturel
Pour : langage courant et lan-
gage mathmatique
Voir ci-dessus et ci-dessous

Raisonnements et outils de lo-


gique mathmatiques valident lac-
tion des oprateurs sur lalgo-
rithme. Par exemple, on remarque
des numrations de tous les cas
envisager pour valider lalgo-
rithme.

Aspects de lalgorithme dans A1 (extrait dichotomie)


OUTIL
Eectivit
- programmation : implicite, travers le choix dun langage trs proche dun langage de
programmation et la structure de tableau
- ordinateur/machine : idem
- nitude : volont de prouver la terminaison
- non-ambigut : implicite, par le choix dun langage proche dun langage de programmation
- agit sur des donnes nies : implicite par la manipulation de la liste de taille n
Problme
- entre/sortie : implicite dans les algorithmes dcrits. Exemple : alors trouv en g 1
sinon pas trouv
- Rsout un problme pour toute instance : implicite un algorithme qui permette de dire
si un lment x appartient ou pas au tableau T
OBJET
Preuve
- Preuve de terminaison : cest une des proccupations centrales du document.
- Preuve de correction : cest une des proccupations centrales du document.
- Invariant : cest loutil cl du document pour valider les algorithmes
Complexit
La complexit est, dans cet extrait, peine voque : Pour rechercher un lment dans
un tableau ayant un million dlments, au plus vingt comparaisons suront . Cette re-
marque fait rfrence la comparaison avec la recherche squentielle mais la comparaison
des algorithmes nest pas du tout mise en avant.
Modles
thoriques

152
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Le document se place globalement dans le paradigme AM mais il y a une forte proximit
de AI avec des algorithmes exprims dans un langage trs proche dun langage de program-
mation et des termes relatifs la programmation ou aux machines comme dans ce cas,
accder T[d] dclencherait une erreur. .
Les aspects prsents dans le document sont rsums dans le troisime tableau. On note la
prsence daspects autant du ct outil que du ct objet.
On retrouve bien laspect outil et laspect objet de lalgorithme. Les aspects dinvariants, de
preuve de correction et de terminaison sont mis au centre du document. Cependant laspect
complexit est peu prsent alors quil est lun des points importants de la dichotomie
(lalgorithme de recherche par dichotomie peut tre abord par la recherche de lalgorithme
le plus ecace pour le problme propos). La complexit de la recherche dichotomique
nest pas tudie, la mthode nest pas compare dautres (notamment la recherche
squentielle) et la question de loptimalit de la mthode pour le problme de la recherche
dans une liste trie nest pas du tout pose.
Document A3
Ce document est destination des enseignants ou formateurs la recherche dapprofondis-
sements en algorithmique. Il introduit le principe algorithmique diviser pour rgner au
travers de plusieurs exemples.
Concernant la dichotomie, il propose la comparaison de deux algorithmes donns pour le
problme de recherche dun lment dans une liste strictement croissante.
Le document met en jeu les conceptions Outil et Objet du paradigme AI, prsentes et
illustres dans les deux tableaux suivants.
Conception AI-outil dans A3 (extrait dichotomie)
Conception Extraits du document (illustration)
P
Instance : une liste trie par ordre
strictement croissant et un lment
x
Question : Quel est le rang de x
dans la liste ?
Le problme appartient P
a
On se propose de comparer les deux algorithmes suivants
(langage Xcas) qui ont pour objectif de chercher le rang
dun lment dans une liste dont les lments sont suppo-
ss tris dans lordre strictement croissant.
Remarque 1 : les listes sont numrotes en Xcas de 0
dim(liste)-1.
Remarque 2 : pour allger le code, on suppose que la valeur
cherche est eectivement dans la liste.
R Oprateurs du langage Xcas.
L Langage Xcas

Un autre problme est prsent : tant donn un programme itratif, le rcrire en un pro-
gramme rcursif (instanci pour les deux algorithmes en Xcas donns au dpart). Cela
pourrait entrer dans la conception AI-objet mais on ne peut pas dtailler la conception car
le document comprend trop peu de dtails (on ne sait pas quels oprateurs sont utiliss ni
153
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conception AI-objet dans A3 (extrait dichotomie)
Conception Extraits du document (illustration)
P
Instance : un algorithme (sous
forme dun programme) A
(instanci pour deux algorithmes :
les recherches squentielle et di-
chotomique dun lment dans une
liste trie en Xcas)
Question : Combien au plus dit-
rations de la boucle ont lieu pour
une liste de taille 2
p
?
Le problme appartient P
R
Oprateurs dordre mathmatique
(recherche du pire cas, tude de
suites...)
L
Pour R : langage mathmatique et
langage naturel

Raisonnements et outils de logique


mathmatiques valident laction
des oprateurs sur lalgorithme.
On a donc [...] On en dduit [...] Pour n quelconque [...]
On a donc
quelle structures de contrle interviennent) mais on peut la classier dans le paradigme AI.
La question de la complexit de la recherche dichotomique pourrait tout aussi bien tre
souleve dans AM. La conception AI nest pas lie ici au type de questions traites mais
peut-tre plutt une prdominance de cette conception sur AM.
Les aspects prsents dans le document sont rsums dans le tableau suivant. On note la
prsence daspects autant du ct outil que du ct objet.
Aspects de lalgorithme dans A3 (extrait dichotomie)
OUTIL
Eectivit
- programmation : algorithmes exprims dans le langage de programmation Xcas.
- ordinateur/machine : idem
- non-ambigut : implicite, par le choix dexprimer les algorithmes dans un langage de
programmation
- agit sur des donnes nies : implicite par la manipulation du tableau de taille n
Problme
- entre/sortie : implicite dans les algorithmes dcrits par lcriture sous forme de fonctions
des programmes en Xcas : squentiel(liste,valeur) := dichotomique(liste,valeur) := ,
retourne rang , retourne k
- instance : implicite par ltude de la complexit dun problme.
OBJET
Preuve
Laspect preuve nest prsent que pour le calcul de la complexit des algorithmes.
Complexit
- Au pire : la complexit au pire en nombre de boucles est value dans les cas o le calcul
est simple et des quivalents en temps sont calculs.
- Comparaison : les deux algorithmes sont uniquement compars par le calcul de leurs
complexits individuellement.
Modles
thoriques

Les aspects outils et objets sont prsents. Cependant, dans cet extrait, cest surtout au-
tour de la complexit que lalgorithme existe en tant quobjet. Tout comme nous lavions
fait remarquer pour lextrait du document A1, laspect doptimalit de lalgorithme de
recherche dichotomique nest pas du tout voqu ici alors que les questions se centrent sur
la complexit.
154
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Document A8
Ce document se prsente comme destin des enseignants qui nont aucune base algorith-
mique et sappuyant sur des exemples tirs du programme de seconde.
Il propose, dans une section intitule Un principe fondamental : la dichotomie , une
mthode de recherche de zro dune fonction.
Le document met en jeu la conception Outil du paradigme AM.
Conception AM-outil dans A8 (extrait dichotomie)
Conception Extraits du document (illustration)
P
Instance : Un intervalle [a, b], une
fonction f continue sur [a, b] et
telle que f(a)f(b) < 0 et un rel

Question : Donner une racine ap-


proche de f sur [a, b] prs.
Le problme appartient P
a
Soit f une fonction continue sur un intervalle [a, b], qui
change de signe entre a et b. Le principe de dichotomie
permet en divisant chaque tape lintervalle de moiti,
en considrant le milieu c, de trouver une valeur approche
dune racine de f prs.
R
Aectations, instructions condi-
tionnelles, boucles et tests dun
langage proche dun langage de
programmation et oprations ma-
thmatiques.
L
Pour R : langage mathmatique et
pseudo-code trs proche dun lan-
gage de programmation
Pour : langage mathmatique et
langue naturelle

Description informelle de lalgo-


rithme mettre en uvre
Discussions sur la condition darrt
et sur lensemble des cas envisa-
ger
Invariant donn dans le prambule
de lalgorithme

Aspects de lalgorithme dans A8 (extrait dichotomie)


OUTIL
Eectivit
- programmation : algorithmes exprims dans le langage de programmation VBA en n de
brochure.
- ordinateur/machine : idem
- nitude : implicite, travers la discussion sur le nombre dtapes ncessaire pour obtenir
la prcision voulue.
- non-ambigut : implicite, par le choix dexprimer les algorithmes dans un langage proche
dun langage de programmation.
Problme
- entre/sortie : explicitement prcis pour chaque algorithme Entres et Sortie
OBJET
Preuve
- Preuve de correction : Trs lgrement prsent, implicite travers la justication math-
matique de la mthode.
- Invariant : explicit dans le prambule de chaque algorithme mais non questionn.
Complexit
Modles
thoriques

On trouve aussi dans le document, en annexe, les algorithmes prsents avec Excel et VBA.
155
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
La recherche dune racine par dichotomie est donne avec lutilisation dun tableur (dont
il faut faire glisser la formule jusqu constater que lon a atteint la prcision voulue) et
lalgorithme est aussi propos en langage VBA. Cela illustre un passage du paradigme AM
vers AI mais aucun dtail nest donn concernant ce passage.
Les aspects prsents dans lextrait choisi du document sont rsums dans le second tableau.
Ltude des conceptions et celle des aspects prsents montrent toutes les deux labsence de
traitement de lalgorithme comme objet dans cet extrait. Cela peut tre li lobjectif de
la brochure de sadresser des enseignants nayant aucune connaissance en algorithmique.
Document A9
Ce document se prsente comme destin des enseignants qui nont aucune base algorith-
mique et ne fait volontairement aucune rfrence une pratique en classe de lyce.
Il aborde, dans une section intitule Itration non borne , le principe de dichotomie
travers deux exemples : le jeu du Juste prix et la recherche de zros dune fonction par
dichotomie. Trois problmes sont en jeu pour cela : la recherche sans information Cest
plus ou cest moins du juste prix, la recherche avec cette information et la recherche dun
zro dune fonction.
Le document met en jeu la conception Outil du paradigme AI, prsente dans le tableau
ci-contre, pour les trois problmes voqus plus-haut.
On trouve aussi un autre problme dans le document qui est une variante du problme
de recherche de zros approchs dune fonction : la question 5 demande damliorer lal-
gorithme an quil prenne aussi en entre une marge dapproximation. Aucune prcision
supplmentaire nest donne mais on peut imaginer que ce problme sera aussi trait avec
la conception AI-outil.
Il faut aussi noter le traitement qui est propos du jeu du Juste Prix pour la version
dichotomique. Le document propose ceci :
Ce programme tire alatoirement un nombre entre 1 et 1000 et produit un programme qui
rpond comme le joueur qui fait deviner ce nombre. On est ici plus dans une problmatique
de simulation dun joueur que dans une problmatique dalgorithmique.
Lalgorithme de recherche dichotomique est propos sous la forme suivante :
156
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
C
o
n
c
e
p
t
i
o
n
A
M
-
o
u
t
i
l
d
a
n
s
A
8
(
e
x
t
r
a
i
t
d
i
c
h
o
t
o
m
i
e
)
C
o
n
c
e
p
t
i
o
n
E
x
t
r
a
i
t
s
d
u
d
o
c
u
m
e
n
t
(
J
u
s
t
e
P
r
i
x

o
u
i
/
n
o
n

)
E
x
t
r
a
i
t
s
d
u
d
o
c
u
m
e
n
t
(
J
u
s
t
e
P
r
i
x

p
l
u
s
/
m
o
i
n
s
/
g
a
g
n

)
E
x
t
r
a
i
t
s
d
u
d
o
c
u
m
e
n
t
(
R
e
c
h
e
r
c
h
e
d
e
z

r
o
s
)
P
L
e
s
t
r
o
i
s
p
r
o
b
l

m
e
s
a
p
p
a
r
t
i
e
n
n
e
n
t

P
a
N
o
u
s
n
e
l
e
s
d

t
a
i
l
l
o
n
s
p
a
s
i
c
i
(
I
n
s
-
t
a
n
c
e
,
Q
u
e
s
t
i
o
n
)
m
a
i
s
c
e
l
a
p
e
u
t

t
r
e
f
a
i
t
c
o
m
m
e
d
a
n
s
l
e
s
t
a
b
l
e
a
u
x
p
r

d
e
n
t
s
.
D
a
n
s
n
o
t
r
e
v
e
r
s
i
o
n
a
l
g
o
r
i
t
h
m
i
q
u
e
,
l
e
p
r
i
x

r
e
-
c
h
e
r
c
h
e
r
e
s
t
u
n
n
o
m
b
r
e
e
n
t
i
e
r
c
o
m
p
r
i
s
e
n
t
r
e
1
e
t
1
0
0
0
.
[
.
.
.
]
N
o
u
s
v
o
u
s
p
r
o
p
o
s
o
n
s
d
e
u
x
a
l
g
o
-
r
i
t
h
m
e
s
s
o
l
u
t
i
o
n
s
d
i

r
e
n
t
s
,
d
o
n
t
l
e
r

s
u
l
t
a
t
e
s
t
l
e
n
o
m
b
r
e
d

e
s
s
a
i
s
a
v
a
n
t
d
e
t
r
o
u
v
e
r
l
e

J
u
s
t
e
N
o
m
b
r
e

.
L
a
p
r
e
m
i

r
e
v
e
r
s
i
o
n
n

u
t
i
l
i
s
e
a
u
c
u
n
r
e
n
s
e
i
g
n
e
m
e
n
t
c
o
n
c
e
r
n
a
n
t
l
a
p
o
s
i
t
i
o
n
r
e
l
a
t
i
v
e
d
u
n
o
m
b
r
e
p
r
o
p
o
s

e
t
d
u

J
u
s
t
e
N
o
m
b
r
e

.
U
n
e
d
e
u
x
i

m
e
v
e
r
s
i
o
n
u
t
i
l
i
s
e
u
n
r
e
n
s
e
i
g
n
e
m
e
n
t
s
u
p
p
l

m
e
n
t
a
i
r
e
,
f
o
u
r
n
i
d
a
n
s
l
e
j
e
u
r

e
l
.
C
e
r
e
n
-
s
e
i
g
n
e
m
e
n
t
e
s
t

3
v
a
l
e
u
r
s
:
-

g
a
l

i
n
d
i
q
u
a
n
t
q
u
e
l
e
N
o
m
b
r
e
p
r
o
p
o
s

e
s
t

g
a
l
a
u

J
u
s
t
e
N
o
m
b
r
e

P
l
u
s
p
e
t
i
t

i
n
d
i
q
u
a
n
t
q
u
e
l
e
N
o
m
b
r
e
p
r
o
p
o
s

e
s
t
s
t
r
i
c
t
e
m
e
n
t
i
n
f

r
i
e
u
r
a
u

J
u
s
t
e
N
o
m
b
r
e

P
l
u
s
g
r
a
n
d

d
a
n
s
l
e
d
e
r
n
i
e
r
c
a
s
.
f
e
s
t
u
n
e
f
o
n
c
t
i
o
n
d

n
i
e
s
u
r
u
n
i
n
t
e
r
v
a
l
l
e
[
a
;
b
]
.
E
l
l
e
a
l
a
b
o
n
n
e
p
r
o
p
r
i

t
r
e
c
o
n
t
i
-
n
u
e
d

u
n
e
p
a
r
t
,
e
t
d

a
v
o
i
r
s
e
s
v
a
l
e
u
r
s
d
e
s
i
g
n
e
c
o
n
t
r
a
i
r
e
a
u
x
b
o
r
n
e
s
d
e
l

i
n
t
e
r
v
a
l
l
e
(
f
(
a
)

f
(
b
)
<
0
)
.
O
n
s
a
i
t
d
o
n
c
q
u

e
l
l
e
a
u
n

r
o

,
c

e
s
t

d
i
r
e
u
n
e
v
a
l
e
u
r
c
d
a
n
s
l

i
n
t
e
r
v
a
l
l
e
]
a
;
b
[
t
e
l
l
e
q
u
e
f
(
c
)
=
0
.
O
n
n
e
s
o
u
h
a
i
t
e
p
a
s
v
r
a
i
-
m
e
n
t
d

c
o
u
v
r
i
r
l
a
v
a
l
e
u
r
e
x
a
c
t
e
d
e
c
,
m
a
i
s
s
e
u
l
e
m
e
n
t
u
n
e
v
a
l
e
u
r
a
p
p
r
o
c
h

e
,
p
a
r
e
x
e
m
p
l
e

0
.
0
1
p
r

s
.
R
A

e
c
t
a
t
i
o
n
s
,
i
n
s
t
r
u
c
t
i
o
n
s
c
o
n
d
i
-
t
i
o
n
n
e
l
l
e
s
,
b
o
u
c
l
e
s
e
t
t
e
s
t
s
d

u
n
l
a
n
g
a
g
e
p
r
o
c
h
e
d

u
n
l
a
n
g
a
g
e
d
e
p
r
o
g
r
a
m
m
a
t
i
o
n
e
t
a
l
g
o
r
i
t
h
m
e
s
d
a
n
s
d
i
v
e
r
s
l
a
n
g
a
g
e
s
L
P
o
u
r
R
:
l
a
n
g
a
g
e
m
a
t
h

m
a
t
i
q
u
e
e
t
p
s
e
u
d
o
-
c
o
d
e
t
r

s
p
r
o
c
h
e
d

u
n
l
a
n
-
g
a
g
e
d
e
p
r
o
g
r
a
m
m
a
t
i
o
n
P
o
u
r

:
l
a
n
g
a
g
e
m
a
t
h

m
a
t
i
q
u
e
e
t
l
a
n
g
u
e
n
a
t
u
r
e
l
l
e

D
e
s
c
r
i
p
t
i
o
n
i
n
f
o
r
m
e
l
l
e
d
e
l

a
l
g
o
-
r
i
t
h
m
e

m
e
t
t
r
e
e
n

u
v
r
e
E
x
p

r
i
e
n
c
e
d
e
l
a
m

t
h
o
d
e
s
u
r
q
u
e
l
q
u
e
s
e
x
e
m
p
l
e
s
L
e
s
a
l
g
o
r
i
t
h
m
e
s
s
o
n
t
t
o
u
j
o
u
r
s
d
e
s
a
l
g
o
r
i
t
h
m
e
s

c
o
m
p
l

t
e
r
V
a
l
i
d
a
t
i
o
n
p
a
r
l
a
p
r
o
g
r
a
m
m
a
t
i
o
n
157
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Il sagit donc de faire jouer ce programme contre le programme renseigne crit prc-
demment, avec la stratgie de dichotomie, et de renvoyer le nombre de coups utiliss.
JusteNombreV2 ne prend donc pas dentre mais utilise le programme renseigne. Tout cela
cache le problme de recherche dichotomique et notamment le type dinstance quil permet
de traiter : le problme pourrait tre formul ainsi :
Instance : Un choix de nombre entre 1 et 1000.
Question : Quel est le nombre choisi ? Sachant
que lon peut interroger un seul nombre la fois et
quinterroger un nombre conduit linformation :
le nombre est celui-ci, le nombre cherch est plus
petit ou le nombre cherch est plus grand
Dans le document, linstance (un choix de nombre) est reprsente par le programme ren-
seigne.
On voit bien ici les dicults de simulation et dexpression du problme de la recherche
dichotomique poses par le problme Juste Prix vis--vis de la conception AI. Au regard
de la conception AI, la recherche dichotomique semble plus adapte sous la forme de la
recherche dun lment dans une liste trie, comme nous lavons vue dans les documents
prcdents.
Notons que le problme du Juste Prix ne poserait pas ces dicults dans la concep-
tion PA, en recherchant par exemple une stratgie optimale pour deviner le nombre. En
se dtachant dune modlisation informatique du problme, on peut alors se centrer sur
la rsolution algorithmique du problme (o lalgorithme ici serait une stratgie pour un
joueur et o les oprations de base sont donnes par les rgles du jeu).
Concernant la recherche du zro dune fonction, on retrouve la mme question concernant
linstance du problme :
158
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Si lon sintresse au problme pos et lalgorithme dcrit, la fonction f fait partie de
linstance du problme et donc de lentre de lalgorithme. Il y a un amalgame entre le pro-
gramme qui na pas dentre et lalgorithme sous-jacent qui sapplique bien une fonction.
Un programme implmentant cet algorithme peut ne pas prendre de donnes en entre si
ses entres font partie de lenvironnement.
On constate donc ici que le paradigme AI est trs fortement marqu, au point que cer-
tains problmes qui seraient plus clairement ancrs dans un autre paradigme sont tout
de mme traits dans AI, soulevant des dicults supplmentaires de simulation et de
modlisation qui peuvent tre un obstacle ltude des algorithmes en jeu. Lamalgame
algorithme-programme est aussi caractristique dun fort ancrage dans AI. Enn, la struc-
ture du document qui rpartit et hirarchise les problmes selon le type de structure de
programmation (instructions conditionnelles, puis itrations bornes et nalement itra-
tions non-bornes) va aussi dans ce sens : lobjectif de lalgorithmique est ramen la
matrise de ces structures, fortement lies la programmation.
Les aspects prsents dans lextrait choisi du document sont rsums dans le tableau suivant :
Aspects de lalgorithme dans A9 (extrait dichotomie)
OUTIL
Eectivit
- programmation : prsence des algorithmes sous forme de programmes et lamalgame
algorithme-programme
- ordinateur/machine : idem
Problme
- entre/sortie : explicitement prcises pour chaque algorithme Donnes et Rsultat
mais un amalgame est fait entre saisie dans un programme et entre dun algorithme
OBJET
Preuve
Complexit
Modles
thoriques

Ltude des conceptions et celle des aspects prsents montrent toutes les deux labsence de
traitement de lalgorithme comme objet dans cet extrait. On note aussi trs nettement un
placement dans le paradigme AI avec une place trs marque de la programmation.
159
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Document A13
Le document propose une activit pour la classe ludique et progressive , autour du jeu
de recherche dun nombre Cest plus, cest moins. Il se prsente sous la forme dune che
dactivit distribuer aux lves. Des codes de programmes sont donns pour les ensei-
gnants.
Dans la premire partie, lactivit consiste dcouvrir la fonction de gnration dun
nombre alatoire de la calculatrice et jouer deux au jeu cest plus, cest moins avec
un nombre choisi alatoirement entre 0 et 100.
Ensuite, lactivit propose de dcrire un algorithme pour jouer seul . Il sagit de simuler
le joueur qui fait deviner avec sa calculatrice. Le document parle dalgorithme en langage
naturel puis en langage TI. Il sagit plutt dun programme. On demande ensuite de lui
ajouter un compteur pour donner le nombre de coups jous.
La troisime partie consiste faire deviner le nombre par la calculatrice. Cest ici quinter-
vient la dichotomie.
Dans cette dernire partie, le document met en jeu la conception Outil du paradigme AI :
Conception AI-outil dans A13
Conception Extraits du document (illustration)
P
Instance : le choix dun nombre
entre 1 et 100
Question : quel est le nombre ?
Le problme appartient P
a
Lobjectif de cette activit est de penser un entier de 0
100 et de le faire deviner par la calculatrice.
Pour cela il faut mettre en place une stratgie rigoureuse
qui permet tous les coups daboutir.
R
Aectations, instructions condi-
tionnelles, boucles et tests dun
langage proche dun langage de
programmation et oprations ma-
thmatiques.
L
Langage trs proche dun langage
de programmation, langage de pro-
grammation, langue naturelle.

Essai de mthodes sur des ins-


tances particulires pour deviner
lalgorithme et sa condition dar-
rt.
1) Prenons un premier exemple o lentier deviner est
20.
Sachant que cest un entier entre 0 et 100, complter les
direntes tapes suivantes pour rduire au fur et mesure
lintervalle de recherche [A; B]
[...]
2) Prenons un deuxime exemple o lentier deviner est
43.
[...]
3) En observant les deux exemples prcdents, pouvez-
vous donner le test qui permet darrter le processus ?
4) En utilisant les direntes tapes prcdentes, crire
en langage naturel un algorithme correspondant.
On peut noter le signe dun amalgame entre lachage lcran que peut faire un pro-
gramme et la sortie dun algorithme, savoir la rponse la question du problme auquel
rpond lalgorithme. Par exemple, la sortie de lalgorithme demand est :
160
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Les aspects prsents dans lextrait choisi du document sont rsums dans le tableau suivant :
Aspects de lalgorithme dans A8 (extrait dichotomie)
OUTIL
Eectivit
- programmation : algorithmes demands dans un langage proche dun langage de program-
mation puis dans un langage de programmation.
- ordinateur/machine : idem
- non-ambigut : implicite, par le choix dexprimer les algorithmes dans un langage proche
dun langage de programmation.
Problme
- entre/sortie : explicitement prcis pour chaque algorithme Entres et Sortie
OBJET
Preuve
Complexit
Modles
thoriques

Ltude des conceptions et celle des aspects prsents montrent toutes les deux labsence
de traitement de lalgorithme comme objet dans ce document. La validit de lalgorithme
nest pas du tout questionne, ni la complexit. Cest pourtant la question doptimiser le
nombre dtapes qui justie la dichotomie.
On peut noter aussi que lamalgame entre programme et algorithme est prsent lors de la
simulation du joueur qui fait deviner ou encore avec lamalgame entre sortie et achage
lcran. Cela peut tre li une inuence du paradigme AI.
Document A21
Cest un document daccompagnement de stage dinitiation lalgorithmique pour les ensei-
gnants du secondaire. Il est fait dans ce document de nombreuses rfrences une pratique
en classe de lyce.
Il aborde, dans la section intitule Recherche dichotomique , le principe de dichotomie
travers deux exemples : le jeu Je cherche un nombre entre 1 et 1000 et la recherche de
solutions de f(x) = 0 par dichotomie.
Le document met en jeu les conceptions Outil et Objet des paradigmes AM et AI dans les
deux problmes. Nous rsumons dans les tableaux de la page suivante toutes les concep-
tions prsentes dans lextrait.
Les aspects prsents dans lextrait du document sont rsums dans le troisime tableau.
On trouve dans cet extrait lalgorithme la fois comme outil et comme objet. Cependant,
le document propose que les questions concernant lobjet ne soient pas conserves pour
une proposition de lactivit en classe :
Question 6 Quels sont les nombres choisir pour que lordinateur trouve la
solution en au moins 9 coups ?
Question 7 Montrer que lalgorithme optimum permet de toujours trou-
ver lentier en au plus 10 essais. [...]
Remarque Dans une situation pour la classe, on utilisera les mmes exercices
sans les questions 6 et 7. On essayera de faire merger chez les lves la mthode
de recherche par dichotomie.
Le document ne montre pas la dirence entre entre-sortie et saisie-achage
1
. De mme,
la simulation du joueur qui fait deviner semble avoir le mme statut que lalgorithme de
1. Telle que nous lavons dnie p. 128.
161
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
C
o
n
c
e
p
t
i
o
n
s
d
a
n
s
A
2
1
(
J
e
c
h
e
r
c
h
e
u
n
n
o
m
b
r
e
e
n
t
r
e
1
e
t
1
0
0
0
)
C
o
n
c
e
p
t
i
o
n
o
u
t
i
l
C
o
n
c
e
p
t
i
o
n
o
b
j
e
t
P
I
n
s
t
a
n
c
e
:
l
e
c
h
o
i
x
d

u
n
n
o
m
b
r
e
e
n
t
r
e
1
e
t
1
0
0
0
Q
u
e
s
t
i
o
n
:
q
u
e
l
e
s
t
l
e
n
o
m
b
r
e
?
L
e
p
r
o
b
l

m
e
a
p
p
a
r
t
i
e
n
t

P
a
I
n
s
t
a
n
c
e
:
u
n
a
l
g
o
r
i
t
h
m
e
A
e
t
u
n
e
n
t
i
e
r
n
Q
u
e
s
t
i
o
n
:
p
o
u
r
q
u
e
l
l
e
s
i
n
s
t
a
n
c
e
s
l

a
l
g
o
r
i
t
h
m
e
A
n

c
e
s
s
i
t
e
-
t
-
i
l
p
l
u
s
d
e
n

t
a
p
e
s
?
L
e
p
r
o
b
l

m
e
a
p
p
a
r
t
i
e
n
t

P
,
i
l
e
s
t
i
n
s
t
a
n
c
i

p
o
u
r
l

a
l
g
o
-
r
i
t
h
m
e
d
o
n
n

e
t
n
=
9
I
n
s
t
a
n
c
e
:
u
n
a
l
g
o
r
i
t
h
m
e
A
e
t
u
n
e
n
t
i
e
r
n
Q
u
e
s
t
i
o
n
:
L

a
l
g
o
r
i
t
h
m
e
A
a
-
t
-
i
l
u
n
e
c
o
m
p
l
e
x
i
t

a
u
p
i
r
e
e
n
n

t
a
p
e
s
?
L
e
p
r
o
b
l

m
e
a
p
p
a
r
t
i
e
n
t

P
,
i
l
e
s
t
i
n
s
t
a
n
c
i

p
o
u
r
l

a
l
g
o
-
r
i
t
h
m
e
d
o
n
n

e
t
n
=
1
0
R
O
p

r
a
t
i
o
n
s
a
u
t
o
r
i
s

e
s
p
o
u
r
l
e
j
o
u
e
u
r
A

e
c
t
a
t
i
o
n
s
,
i
n
s
t
r
u
c
t
i
o
n
s
c
o
n
d
i
t
i
o
n
n
e
l
l
e
s
,
b
o
u
c
l
e
s
e
t
t
e
s
t
s
d

u
n
l
a
n
g
a
g
e
p
r
o
c
h
e
d

u
n
l
a
n
g
a
g
e
d
e
p
r
o
g
r
a
m
m
a
t
i
o
n
i
n
s
t
r
u
c
t
i
o
n
s
e
t
o
p

r
a
t
e
u
r
s
d
u
l
a
n
g
a
g
e
P
y
t
h
o
n
.
p
r
o
g
r
a
m
m
a
t
i
o
n
:
c
a
l
c
u
l
d
u
n
o
m
b
r
e
d
e
c
o
u
p
s
n

c
e
s
s
a
i
r
e
s
p
o
u
r
c
h
a
q
u
e
v
a
l
e
u
r
d
u
n
o
m
b
r
e

d
e
v
i
n
e
r
e
t
l
i
s
t
a
g
e
d
e
c
e
u
x
d
e
m
a
n
d
a
n
t
a
u
m
o
i
n
s
9
e
s
s
a
i
s
.
P
r
o
p
r
i

m
a
t
h

m
a
t
i
q
u
e
:

s
i
B

2
K
,
a
l
o
r
s
o
n
p
e
u
t
t
r
o
u
v
e
r
l
e
n
o
m
b
r
e
c
o
m
p
r
i
s
s
t
r
i
c
t
e
m
e
n
t
e
n
t
r
e
A
e
t
B
e
n
a
u
p
l
u
s
K
e
s
s
a
i
s
.
L
L
a
n
g
a
g
e
p
s
e
u
d
o
-
c
o
d
e
,
l
a
n
g
a
g
e
d
e
p
r
o
g
r
a
m
m
a
t
i
o
n
,
l
a
n
g
u
e
n
a
t
u
r
e
l
l
e
.
l
a
n
g
a
g
e
d
e
p
r
o
g
r
a
m
m
a
t
i
o
n
l
a
n
g
a
g
e
m
a
t
h

m
a
t
i
q
u
e

n
o
n
e
x
p
l
i
c
i
t

s
p
r
o
g
r
a
m
m
a
t
i
o
n
e
t
t
e
s
t
d
u
p
r
o
g
r
a
m
m
e
E
x

c
u
t
i
o
n
?
L
o
g
i
q
u
e
e
t
r
a
i
s
o
n
n
e
m
e
n
t
m
a
t
h

m
a
t
i
q
u
e
s
(
p
r
e
u
v
e
p
a
r
r

-
c
u
r
r
e
n
c
e
)
C
o
n
c
e
p
t
i
o
n
s
d
a
n
s
A
2
1
(
S
o
l
u
t
i
o
n
d
e
f
(
x
)
=
0
)
C
o
n
c
e
p
t
i
o
n
o
u
t
i
l
C
o
n
c
e
p
t
i
o
n
o
b
j
e
t
C
o
n
c
e
p
t
i
o
n
o
b
j
e
t
P
I
n
s
t
a
n
c
e
:
d
e
u
x
r

e
l
s
a
e
t
b
,
u
n
e
f
o
n
c
t
i
o
n
f
c
r
o
i
s
s
a
n
t
e
e
t
s

a
n
n
u
l
a
n
t
s
u
r
[
a
,
b
]
,
u
n
e
p
r

c
i
s
i
o
n
p
Q
u
e
s
t
i
o
n
:
Q
u
e
l
l
e
e
s
t
,
a
v
e
c
u
n
e
p
r

c
i
s
i
o
n
p
,
u
n
e
s
o
l
u
t
i
o
n

f
(
x
)
=
0
?
L
e
p
r
o
b
l

m
e
a
p
p
a
r
t
i
e
n
t

P
a
I
n
s
t
a
n
c
e
:
u
n
a
l
g
o
r
i
t
h
m
e
A
e
t
u
n
p
r
o
b
l

m
e
P
d
e
P
a
(
i
n
s
t
a
n
c
i

p
o
u
r
l
e
p
r
o
b
l

m
e

f
(
x
)
=
0

e
t
l

a
l
g
o
r
i
t
h
m
e
d
e
d
i
c
h
o
t
o
m
i
e
)
Q
u
e
s
t
i
o
n
:
A
r

s
o
u
t
-
i
l
P
(
a
p
r

s
u
n
n
o
m
b
r
e

n
i
d

t
a
p
e
s
)
?
L
e
p
r
o
b
l

m
e
a
p
p
a
r
t
i
e
n
t

P
I
n
s
t
a
n
c
e
:
u
n
a
l
g
o
r
i
t
h
m
e
A
q
u
i
r

s
o
u
t
u
n
p
r
o
b
l

m
e
P
e
n
c
a
l
c
u
l
e
x
a
c
t
s
u
r
l
e
s
r

e
l
s
(
i
n
s
t
a
n
c
i

p
o
u
r
l
a
r
e
c
h
e
r
c
h
e
d
e
z

r
o
s
d

u
n
e
f
o
n
c
t
i
o
n
p
a
r
d
i
c
h
o
t
o
m
i
e
)
Q
u
e
s
t
i
o
n
:
A
r

s
o
u
t
-
i
l
P
e
n
c
a
l
c
u
l
a
p
p
r
o
c
h

(
a
r
i
t
h
m

t
i
q
u
e

o
t
t
a
n
t
e
)
L
e
p
r
o
b
l

m
e
a
p
p
a
r
t
i
e
n
t

P
R
I
n
s
t
r
u
c
t
i
o
n
s
e
t
o
p

r
a
t
e
u
r
s
d

u
n
p
s
e
u
d
o
-
c
o
d
e
P
r
o
p
r
i

s
d
e
s
o
b
j
e
t
s
m
a
t
h

m
a
t
i
q
u
e
s
e
n
j
e
u

t
u
d
e
d
e
s
d
i

r
e
n
t
s
c
a
s
p
o
s
s
i
b
l
e
s
I
n
v
a
r
i
a
n
t

t
u
d
e
d
e
s
d
i
v
e
r
s
e
s
f
o
r
m
e
s
d

e
r
r
e
u
r
s
d

a
p
p
r
o
x
i
m
a
t
i
o
n
p
o
s
-
s
i
b
l
e
s

t
u
d
e
d
u
c
o
m
p
o
r
t
e
m
e
n
t
d
e
l

a
l
g
o
r
i
t
h
m
e
p
o
u
r
c
e
s
e
r
r
e
u
r
s
L
L
a
n
g
a
g
e
p
s
e
u
d
o
-
c
o
d
e
,
l
a
n
g
a
g
e
m
a
t
h

m
a
t
i
q
u
e
,
l
a
n
g
u
e
n
a
-
t
u
r
e
l
l
e
.
L
a
n
g
a
g
e
m
a
t
h

m
a
t
i
q
u
e
L
a
n
g
a
g
e
m
a
t
h

m
a
t
i
q
u
e

P
r
o
p
r
i

s
d
e
l
a
f
o
n
c
t
i
o
n

t
u
d
e
d
e
s
d
i

r
e
n
t
s
c
a
s
p
o
u
v
a
n
t
s
e
p
r

s
e
n
t
e
r
i
n
v
a
r
i
a
n
t
d
e
b
o
u
c
l
e
L
o
g
i
q
u
e
m
a
t
h

m
a
t
i
q
u
e
e
t
r
a
i
s
o
n
n
e
m
e
n
t
H
y
p
o
t
h

s
e
s
s
u
r
l
e
s
e
r
r
e
u
r
s
p
o
s
s
i
b
l
e
s
L
o
g
i
q
u
e
e
t
r
a
i
s
o
n
n
e
m
e
n
t
m
a
t
h

m
a
t
i
q
u
e
162
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Aspects de lalgorithme dans A21 (extrait dichotomie)
OUTIL
Eectivit
- programmation : prsence des algorithmes sous forme trs proche dun langage de pro-
grammation et de programmes Python
- ordinateur/machine : idem, questions derreurs darrondis
- oprateur : recherche de la stratgie optimum pour la recherche du nombre
- nitude : Justication de la terminaison.
Problme
- entre/sortie : explicitement prcises pour chaque algorithme Donnes et Rsultat
mais un amalgame est fait entre donnes dun programme et entres dun algorithme
- instance : recherches des instances les plus coteuses pour la recherche dichotomique
- Rsout un problme pour toute instance : prsence de la preuve de correction de lalgo-
rithme
OBJET
Preuve
- Preuve de terminaison : propose pour la recherche de zro dune fonction
- Preuve de correction : propose pour la recherche de zro dune fonction
- Invariant : invariant de la recherche de zro dune fonction
Complexit
- Au pire : tude de la complexit de la recherche dichotomique
Modles
thoriques

dichotomie. Ce sont des signes dun amalgame entre programmation et algorithmique.
Comme dans les autres documents, loptimalit de la recherche dichotomique nest pas
justie, la stratgie est simplement qualie doptimum.
Bilan
On peut constater, dans ces six exemples, une forte prsence de laspect outil. Trois docu-
ments mettent en jeu laspect objet travers la preuve de lalgorithme.
Les conceptions se placent dans AM et AI, avec une forte prsence de la programmation
(qui occulte parfois lalgorithme).
Ces constats sont assez caractristiques de lensemble du corpus, si lon se concentre sur
les problmes issus de P
a
ayant un potentiel pour traiter lalgorithme comme objet. Nous
verrons plus bas que de tels problmes ne sont pas si courants dans les ressources.
Labsence de ltude de loptimalit de la dichotomie soulve une question. Quel est lob-
jectif des activits tudies ? Il semble que ce soit plus de prsenter et de faire implmenter
une mthode classique que de trouver la meilleure mthode pour rsoudre le problme
pos. On le voit bien dans lactivit 3 de la ressource A13 (extrait page suivante).
Lobjectif nest pas de trouver la stratgie optimale mais simplement une stratgie rigou-
reuse. Aprs deux exemples, le document prsente la dichotomie. A priori, toute recherche
tenant compte de la rponse plus ou moins est rigoureuse et permet de trouver lentier
cach. De plus on voit bien que la stratgie doit tre indique par lenseignant avant de
faire les exemples et est induite par le tableau (colonne B A). Sinon, pourquoi ne pas
tester le nombre 20 ds la premire question (ou 43 dans le deuxime exemple) ?
La dnition propose de la dichotomie ne souligne pas le fait que lon dcoupe en deux
lintervalle de manire quilibre, alors que tout test dun nombre conduit bien dcouper
lintervalle. On peut donc penser que dans cette activit la stratgie est donne ou sug-
gre par lenseignant et que lobjectif est limplmentation (les questions suivantes sont
dailleurs de donner le test darrt, dcrire la stratgie en langage naturel puis en langage
calculatrice).
163
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Ressource A13 - activit 3
Il faut aussi noter que la dichotomie est prsente dans plusieurs problmes, issus de di-
rents domaines (recherche dans une liste, jeu cest plus, cest moins, recherche dun zro
de fonction). Selon ces domaines, le paradigme adopt nest pas ncessairement le mme.
Ainsi la recherche dans une liste et la recherche dun zro sont des problmes directement
poss dans AI. Par contre, le jeu cest plus, cest moins se pose hors dun contexte infor-
matique. Son traitement dans AI demande une simulation des joueurs et de leur stratgie
qui peut crer un ou autour de la notion dalgorithme et un amalgame entre la program-
mation de ces simulations et les algorithmes ou stratgies en jeu.
Concernant nos outils danalyse, on peut voir ici leur potentiel pour tudier les conceptions-
objet (ce que lon navait pas eu loccasion dtudier jusqualors). On peut aussi noter que
lon a pu reprer des nuances entre les dirents traitements dun mme algorithme grce
la notion de conception.
2.2 Quels Aspects dans les ressources ?
Dans cette section, litalique dans le texte sera rserv aux citations. Lorsque le contexte
ne permet pas de savoir de quel document lon parle, nous ferons rfrence aux documents
sous la forme (Ai) ou (Ai.j), o i est le numro du document et j la page (si ncessaire).
164
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Effectivit
Laspect effectivit est omniprsent dans les ressources. On le retrouve dans tous les
documents. Sa prsence peut tre implicite travers, notamment, les activits de program-
mation et dexcution, la description des algorithmes en instructions, etc. Souvent, elle est
prsente explicitement dans les discours sur lalgorithmique, les dnitions dalgorithme ou
encore dans ltude de la terminaison. Par exemple :
Algorithme : Un algorithme est une suite dinstructions qui, une fois excute
correctement, conduit un rsultat donn. Un algorithme doit contenir unique-
ment des instructions comprhensibles par celui qui devra lexcuter. (A6.1)
Cest un concept pratique, qui traduit la notion intuitive de procd syst-
matique, applicable mcaniquement, sans rchir, en suivant simplement un
mode demploi prcis. (A8.9)
Examinons plus particulirement des algorithmes plus anciens : les recettes de
cuisine. Une recette de cuisine comporte 3 parties :
1. Runir les ingrdients 2. Prparer 3. Dguster
La prparation consiste excuter une suite dinstructions : par exemple, plon-
ger les tomates dans une casserole deau bouillante pendant quelques instants
avant de les peler. On ne sait pas pourquoi il faut procder de la sorte et
dailleurs, a na aucune importance. La recette a t crite par quelquun qui
sait. Elle marche. (A20.1)
Problme
Laspect problme se retrouve trs souvent dans les ressources. Cependant, il faut di-
rencier lutilisation dalgorithmes dans une dmarche de rsolution de problme et le fait
quun algorithme soit la rsolution dun problme. Cest, bien entendu ce deuxime cas qui
nous intresse et que nous cherchons reprer.
En ralit, une certaine quantit de ressources ne met pas en jeu cette deuxime relation aux
problmes. Cest en particulier le cas de documents qui mettent en jeu des programmes
de modlisation-simulation, des algorithmes-instancis ou qui visent lappren-
tissage dun langage. Seule une quinzaine de documents
2
met en jeu laspect problme.
Cela peut tre exprim par la prsence claire dune entre et dune sortie lalgorithme ou
la vision des algorithmes comme des fonctions (qui associent chaque entre une sortie),
la rfrence la (bonne) notion de problme ou celle dinstances. Par exemple :
Tentative de dnition : Suite dordres prcis, comprhensibles et excu-
tables de manire non ambige par un automate, devant tre excuts suivant
un ordre parfaitement dtermin en vue de rsoudre une classe de problmes.
(A8.9)
Nous privilgions une approche fonctionnelle, o un algorithme a une spcica-
tion : ses donnes (les valeurs quil reoit en arguments, les variables associes
ces valeurs) et ce quil calcule ou renvoie, et un corps qui dcrit prcisment
le calcul ralis. (A9.1)
Enn, notons que cette notion est parfois indispensable la description rcursive dalgo-
rithme, qui demande que toute instance du problme puisse tre dcoupe en des instances
plus petites du mme problme. Cest le cas pour les algorithmes diviser pour rgner :
2. Dont quasiment tous ceux destination des enseignants.
165
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Les trois phases du paradigme
3
"diviser pour rgner" :
Diviser : division du problme en un certain nombre de sous-problmes
(semblables au problme initial mais de taille moindre, par exemple de
taille moiti).
Conqurir et Rgner : rsolution des sous-problmes
par des appels rcursifs,
directement lorsque le sous-problme est de taille "petite".
Combiner : combinaison des solutions des sous-problmes pour constituer
la solution globale. (A3.1)
Les activits choisies jouent un rle important dans la prsence ou non de laspect pro-
blme. Labsence de problme de P
a
implique limpossibilit dtudier des problmes de
P, et donc que lalgorithme soit objet.
Preuve
Laspect preuve est rare dans les documents. On le retrouve dans 7 ressources : A1, A2,
A3, A4, A8, A20 et A21. Lengagement dans cet aspect peut tre plus ou moins fort, de la
simple vocation dun lien (A20) jusqu en faire une question centrale du document (A1,
A8) :
La dmarche prsente tente, sans introduire un formalisme excessif, dapporter
des lments de rponse aux questions fondamentales qui se posent en algorith-
mique :
Comment laborer un algorithme ?
Lalgorithme sarrte-t-il toujours ?
Comment prouver quun algorithme rsout eectivement le problme pos ?
(A1.1)
Dans les autres ressources (A2, A3, A4, A8, A21) la question de valider par la preuve
(correction et terminaison) un algorithme revient trs souvent :
Justier que lalgorithme [pour les fractions gyptiennes] se termine et quil
donne une suite nie (n
1
, ..., n
r
) satisfaisant aux contraintes imposes. (A4.2)
Ou encore concernant loptimalit de la solution produite par un algorithme :
Glouton 1 On trie les preuves par dure croissante, on choisit la plus courte,
puis la plus courte parmi celles qui lui sont compatibles, puis... Ce choix mne-
t-il au droulement dun nombre dpreuves maximal ? (A2.3)
Lintgralit des ressources mettant en jeu laspect preuve est destination des ensei-
gnants. Lexemple de la dichotomie dans A1 montre bien que les questions de preuve,
mme reconnues comme importantes, ne se retrouvent pas du ct des ressources pour la
classe.
Complexit
Laspect complexit napparat que dans 5 documents (A1, A2, A3, A19, A21). Quatre
dentre eux sont destins aux enseignants. Dans certains, la complexit est voque concer-
nant certains algorithmes. Dans dautres, la complexit est aborde par lvaluation directe
de la complexit (comme pour la dichotomie dans A21) ou bien par la comparaison dal-
gorithmes :
3. Le document A3 utilise le terme de paradigme diviser pour rgner. Ce terme na aucun lien avec
notre notion de paradigme. Il est courant en informatique mais nous avons choisi de lui substituer dautres
termes dans nos propos pour viter toute confusion.
166
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
1. Combien, au plus, ditrations de la boucle auront lieu lors dune recherche
pour chacun des deux programmes [recherche par balayage et par dichotomie] ?
Pour simplier on se placera dans le cas o le nombre dlments dans la liste
est de la forme n = 2p.
2. On suppose que n = 2100. Admettons que la machine fasse un million de
boucles en 1 seconde, quel temps (dans le pire des cas) sera utilis pour chacun
des deux programmes lors dune recherche ? (A3.2)
Dans le cas de questions dvaluation de complexit, on peut penser quil sagit vraiment
de traiter un problme de P, on trouve des oprateurs (et des structures de contrle) pour
tudier cette complexit.
Attardons-nous sur lunique ressource pour la classe mettant en jeu laspect complexit :
A19. Il sagit ici de discuter de la complexit du tri bulle :
On trouve donc la preuve de la complexit de lalgorithme, avec oprateurs de preuve et
structures de contrle de la logique et du raisonnement. On se situe bien dans P. Cependant
la tche demande llve est bien moindre, il sagit de compter le nombre dtapes
ncessaires sur un exemple, an de justier que la complexit au pire calcule est atteinte.
Malgr cela, cette question se place dans une vritable problmatique de complexit (plus
loin on trouve dailleurs une exprience de comparaison avec le tri rapide).
Modles Thoriques
Laspect modles thoriques nest prsent dans aucun des documents.
Outil-Objet
Les aspects nous permettent dj de reprer 3 types de documents :
167
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
des documents o lalgorithme est uniquement outil, une majorit,
des documents o lalgorithme est outil et objet et qui, lexception dun seul, sont
destins aux enseignants,
des documents o lalgorithme ( notre sens) nest pas vraiment en jeu. Dans ces der-
niers, lalgorithmique est assimile la programmation ou lcriture de programmes-
papiers.
Cela nous donne dj une ide des conceptions que lon va retrouver dans les ressources.
Nous allons maintenant nous intresser ces conceptions et aux paradigmes dans lesquels
se placent les documents.
2.3 Quelles conceptions dans les ressources
En sintressant aux conceptions prsentes, en particulier aux quadruplets (P,R,L,) et en
sappuyant sur le modle des -conceptions, on peut prciser nos analyses.
Problmes, P
a
, P
Le rsultat du paragraphe outil-objet prcdent peut tre reformul et ran en terme de
problmes en jeu.
Les documents o lalgorithme est outil correspondent la prsence de problmes de P
a
.
Rappelons que nous considrons que lalgorithme est prsent si les problmes de P
a
sont
non-instancis. Si les problmes de P
a
sont instancis, on considre que la notion dal-
gorithme nest plus totalement en jeu. Enn, si les problmes ne sont pas dans P
a
(en
particulier si lon ne reconnat pas un problme sous la forme instances-question) alors on
considre que lalgorithme nest pas en jeu.
Lorsque les ressources mettent aussi en jeu lobjet, on peut reconnatre des problmes de
P. Ces problmes seront souvent instancis, ce qui nempche pas dtre du ct objet
dune conception. En gnral, lorsque lon veut traiter de tels problmes de manire non-
instancie, il est ncessaire de sappuyer sur des modles thoriques (qui sont absents de
toutes les ressources ici).
On peut donc rsumer la place de lalgorithme en tant quoutil et objet comme suit
4
:
o
o-O
Pour enseignants
o-O
o
prog.
Pour la classe
o : algorithme outil
o-O : algorithme outil et objet
prog. : programmation
4. tant donn le nombre de documents tudis, un pourcentage exact ne serait pas signicatif. Ce
diagramme se veut seulement le reet dune tendance.
168
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
La Preuve Algorithmique PA absente
La prsence trs restreinte de laspect preuve ne laisse pas beaucoup de chance de ren-
contrer PA. En fait, cette conception ne se retrouve dans aucune ressource.
Une ressource propose une conception de lalgorithme approchant de PA : A1. Dans ce do-
cument, la mthode propose pour construire des algorithmes itratifs tout en les validant,
propose de chercher dabord un invariant dont lalgorithme dcoule ensuite. On reconnat
certains aspects de PA, en particulier le fait que lalgorithme dcoule de la preuve (ici via
linvariant). Cependant, il ne sagit pas tout fait de PA car la preuve dont lalgorithme
dcoule nest pas tout fait celle de la solution du problme :
On sait que ce qui caractrise une itration est son invariant. Trouver linvariant
dune boucle nest pas toujours chose aise. Lide matresse de la mthode est
de construire cet invariant paralllement llaboration de lalgorithme et non
pas de concevoir lalgorithme itratif pour ensuite en rechercher linvariant.[...]
Cette faon de procder montre comment on prouve la validit de lalgorithme
au fur et mesure de son laboration. En eet la situation gnrale choisie en
[1] est en fait linvariant qui caractrise la boucle tantque. Cette situation est
satisfaite au dpart cause de ltape [4], elle reste vraie chaque itration
(tape [3]). Ainsi lorsque la condition darrt est atteinte cette situation nous
permet darmer que le problme est rsolu. Cest galement en analysant
ltape [3] quon peut prouver la terminaison de lalgorithme. (A1.2)
Algorithme Mathmatique AM
On rencontre ce paradigme de manire franche dans 7 documents (A1, A2, A4, A8, A9,
A19, A20) avec divers degrs dans lexpression des algorithmes. Cela peut aller dun langage
avec trs peu de contraintes (A2, A19) jusqu des langages trs contraints, dcrits par un
pseudo-code (A1, A4, A8, A9). Par exemple (voir aussi lextrait de A19, plus haut) :
1. Un voleur dvalisant un magasin trouve n objets. Lobjet numro i vaut v
i
euros et pse w
i
kg. Le voleur veut que son butin ait la plus grande valeur (en
euros) possible mais ne peut pas emporter plus de W kg dans son sac dos.
Glouton 1 Le rsultat est-il optimal en choisissant lobjet le plus cher parmi
ceux qui peuvent tenir dans le sac, puis le plus cher parmi ceux qui peuvent
encore tenir...
Glouton 2 Le rsultat est-il optimal en choisissant dabord les objets de
plus grand prix au kg ? (A2.11)
(A8.17, un algorithme de multiplication)
Ou encore cet exemple du document A20 :
Le crible dratosthne fournit la liste des nombres premiers de 1 n, pour
tout entier n 3, en excutant le programme suivant :
169
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
1. Lire n.
2. crire la liste des nombres entiers de 1 n.
3. Encercler 1 et 2, supprimer les autres multiples de 2 gurant dans la liste.
4. Entourer dun cercle le plus petit des nombres non encercls restants, sil
y en a, et supprimer les autres multiples de ce nombre.
5. Rpter ltape 4 jusqu ce quil ny ait plus dans la liste restante de
nombres non encercls.
6. Acher la liste restante. (A20.3)
Les ressources en question sont toutes, lexception de A19, destination des enseignants.
Il semble que ce soit le paradigme AI que lon va retrouver majoritairement dans les res-
sources pour la classe.
chaque fois, ce paradigme cohabite avec AI. Rappelons cependant que la prsence dl-
ments relatifs lordinateur ou aux spcicits dun langage de programmation prcis,
mme dans un pseudo-code, relve uniquement de AI. Nous verrons des exemples dans le
paragraphe suivant.
Algorithme Informatique AI et programmation
Les langages de programmation sont prsents dans quasiment tous les documents. On peut
mme se demander si, comme dans les instructions ocielles, lalgorithmique nest pas par-
fois identie la programmation. On trouve dans les documents proposs une trs grande
diversit doutils et de langages de programmation (Scratch, Algobox, VBA, TI, Casio,
Xcas,...) ainsi que plusieurs expressions du type programme-papier. Tout cela relve du
systme de reprsentation de AI.
Cependant, on nest en prsence de conception de AI que si lalgorithme est en jeu, cest-
-dire que des problmes de P
a
ou P sont tudis. Ainsi, il faut mettre de ct tous les
documents qui ne relvent pas de lalgorithmique directement (voir paragraphes problme
et problmes, P
a
, P, plus haut).
Au total, nous relevons que moins de la moiti des documents mettent en jeu des concep-
tions de AI. Par exemple :
(A15.1)
170
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
(A3.2, recherche squentielle)
(A8.38, algorithme de multiplication)
Dans pratiquement tous les cas, on retrouve beaucoup de tches de rdaction dalgorithmes,
mais surtout dimplmentation et dexcution. Que le concept en jeu soit le programme ou
lalgorithme, cest avant tout en tant quoutil quon le rencontre.
Les documents qui mettent en jeu les langages de programmation (ou des programmes-
papier) sans mettre en jeu lalgorithme se rpartissent en trois catgories :
Les documents pour lapprentissage dun langage ou dun logiciel, par exemple A5,
A6 ou A7, qui proposent dcrire des programmes pour apprendre les commandes du
langage.
Les documents qui proposent des activits qui permettent dintroduire une nouvelle
instruction (instruction conditionnelle, boucles, etc.) voire qui proposent une pro-
gression dans lintroduction des direntes instructions (comme A29).
Les documents qui utilisent la programmation comme un outil pour rsoudre des
problmes mathmatiques, souvent en lien avec une dmarche exprimentale. Cest
souvent le cas avec les probabilits et statistiques comme dans les documents A23 ou
A24. On le retrouve aussi concernant lvaluation de termes de suites pour conjecturer
leur comportement (stationnaire par exemple) comme dans A10 ou A12.
Dans tous ces cas les programmes en jeu sont rarement des algorithmes, on retrouve des
algorithmes-instancis et des programmes de modlisation-simulation ou des
traductions de processus systmatiques :
Activit : crer, avec Algobox, un programme nomm IMCFH qui demande le
sexe de la personne et qui, suivant la rponse, donnera ce que serait le poids
idal. (A6.5, une traduction dune fonction avec conditionnelle)
Points aligns : A, B et C tant trois points du plan, dnis par leurs coor-
donnes, on veut tester sils sont aligns. crire lalgorithme qui partir des
coordonnes des trois points rpond par Oui ou Non la question : A,
B et C sont-ils aligns ? (A7.6, traduction dune formule)
171
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
(A23.2, un programme de modlisation-simulation)
Phase n 2 : [rsolution dans N de lquation y
2
x
2
= 24]
On propose de raliser cette recherche par balayage.
Ainsi, on prend dabord y = 0,
on fait ensuite varier x de 0 24,
on teste chaque fois si y
2
x
2
= 24
si on a une solution, le logiciel le signale
on passe au y suivant, et on reprend le mme processus.
(A26.2, une automatisation de vrication dun grand nombre de cas)
(A29.7, un algorithme-instanci)
(A18.1, un exemple damalgame programme-algorithme)
Enn, relevons cette remarque concernant la stratgie gagnante au jeu de NIM dans une
activit pour la classe du document A21 :
Remarque Peut-tre quil faut donner la stratgie gagnante aux lves pour
leur permettre de ne pas tre bloqus. Ou alors on peut laisser plusieurs jours
(semaines ?) aux lves pour trouver la stratgie gagnante. (A21.43)
On voit bien que la recherche de la stratgie gagnante nest pas reconnue comme relevant
de lalgorithmique, elle est donne ou laisse en travail personnel, pour se focaliser sur sa
programmation. Ici encore, la distinction algorithme-programme nest pas claire.
172
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Enn, un autre critre permettant de reprer les programmes qui ne mettent pas en jeu
lalgorithme peut tre lquivalence dutilisation des tableurs et des langages de program-
mation (on trouve cela dans A23 et A26 par exemple). Lenjeu de ces documents relve
alors plus souvent de lutilisation des TICE que de lalgorithmique :
(A23.3, une exprience qui peut tre programme ou simule avec un tableur)
2.4 Quels algorithmes dans les ressources ?
Comme nous avons dj pu le voir, beaucoup dalgorithmes en jeu sont assez pauvres et
ne peuvent pas tre objet dtude. On retrouve aussi beaucoup de mthodes eectives
qui ressemblent plus des formules ou des fonctions (parfois avec conditionnelle). Une
grande majorit de ces algorithmes et mthodes se trouve dans les ressources pour la classe.
On rencontre tout de mme de nombreux algorithmes qui ont un potentiel pour mettre en
jeu lalgorithme en tant quobjet. Mme si on les rencontre rgulirement dans un cadre
o ils ne sont quoutils, il nous semble important de relever que de tels algorithmes sont
proposs. En grande majorit ces algorithmes sont dans les ressources pour les enseignants
mais on en retrouve aussi quelques uns dans les ressources pour la classe.
Les algorithmes riches les plus courants dans les ressources pour les enseignants sont lal-
gorithme dEuclide, les recherches dichotomiques, les tris, les tests de primalit et le crible
dratosthne. On retrouve aussi beaucoup dautres algorithmes propres une tude al-
gorithmique riche que nous ne listerons pas tous ici. Ce sont entre autres des algorithmes
de traitement des donnes (minimum/maximum, mdiane, k
e
plus petit lment, partition
autour dun pivot, etc.), des algorithmes darithmtique (fractions gyptiennes, change-
ment de base, ...), des algorithmes de calcul formel (Karatsuba, Horner, etc.) ou encore des
algorithmes doptimisation combinatoire (algorithmes gloutons exacts et dapproximation,
etc.).
Dans les ressources pour la classe, parmi les algorithmes riches, on retrouve plusieurs
reprises la dichotomie, lalgorithme dEuclide et la division euclidienne. Les autres nappa-
raissent que dans une ressource mais sont susamment peu nombreux pour que nous les
citions tous : minimum dune liste, mdiane, tri bulle, simplication de fraction, liste des
diviseurs dun entiers et jeu de NIM. On ne retrouve ici quasiment que les domaines du
traitement de donnes et de larithmtique.
173
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Dun point de vue quantitatif, les algorithmes ayant un potentiel pour lactivit algorith-
mique sont trs peu prsents dans les ressources pour la classe et leur potentiel nest jamais
exploit.
2.5 Classication des documents
Nous proposons une classication des ressources tudies, en direntes familles, an de
donner une ide de la rpartition des documents
5
. Les ressources destination des ensei-
gnants sont repres en caractres gras. Nous avons mis de ct A25 (car hors propos) et
A16 et A22 (car trop peu dinformations taient accessibles). A21 est dcoup en A21a
pour ce qui concerne les enseignants et A21b pour ce qui concerne les activits en classe.
Les familles sont les suivantes :
T
1
= {A1} : document mettant en jeu AM-objet avec des oprateurs clairement prciss
pour tudier certains problmes de P, forte prsence de la preuve.
T
2
= {A2, A3, A4} : tude de problmes de P, avec une forte prsence de la preuve et
des algorithmes dans AI-objet et AM-objet.
T
3
= {A5, A6, A7} : ressources pour apprendre un logiciel avec amalgame algorithme-
programme.
T
4
= {A8, A21a} : ressources pour apprendre lalgorithmique avec introduction pas pas
des diverses instructions dun pseudo-code, prsence de la preuve et de problmes de
P.
T
5
= {A9, A10, A11, A12, A13, A20, A21b, A29} : ressources pour lapprentissage des
instructions dun pseudo-code. Certaines ressources proposent une sorte de progres-
sion pour introduire leur pseudo-code (A21b, A9, A29). A20 se rapproche aussi
de ces documents sans proposer spciquement dactivits. Les autres documents
proposent des activits permettant dintroduire certaines instructions en particulier
(A10, A11, A12, A13).
T
6
= {A14, A15, A18, A19} : les ressources pour la classe qui mettent en jeu AI-outil
(problmes dans P). A19 met en plus en jeu la complexit donc AI-objet.
T
7
= {A17, A23, A24, A26, A30} : les documents o lalgorithme nest pas rellement
prsent, utilisant la programmation comme outil exprimental.
Conclusions
2.6 Rsum des rsultats
Cette analyse met en lumire les points suivants :
Lalgorithme est uniquement outil dans une majorit de ressources, y compris des
ressources destines la formation des enseignants.
Lalgorithme en tant quobjet nest prsent que dans les ressources pour la formation
des enseignants. En gnral, cet aspect apparat via la preuve dalgorithmes.
Les conceptions sont majoritairement situes dans AI et dans une bien moindre
mesure dans AM. PA est absent bien que quelques ressources en soient proches.
Les algorithmes riches mis en jeu sont principalement dans les ressources pour les
enseignants. Dans les ressources pour la classe on retrouve trs peu de ces algorithmes
et ceux prsents ne sont pas exploits.
5. Ces familles pourraient constituer un point de dpart pour des recherches futures sur les activits
proposes en classe par les enseignants.
174
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
De trs nombreuses ressources se focalisent sur les aspects de programmation, quitte,
souvent, se concentrer sur des problmes de trs faible intrt pour lalgorith-
mique. Cette focalisation sur la programmation explique la prdominance de AI et
de laspect outil ainsi que labsence de PA. Les programmes-papier sont de bons
indicateurs dun amalgame avec la programmation.
Une motivation rcurrente est la simulation. Cela mne parfois des activits dont
lalgorithme est absent. Dans dautres cas, il semble que les algorithmes en jeu aient
besoin dtre motivs par une question technologique (Comment la calculatrice fait
ceci ? Comment avoir un programme qui fait cela pour la suite de lanne ?). Cela est
aussi li un objectif de programmation.
On rencontre assez souvent des programmes ou mthodes considrs comme des
algorithmes, qui nen sont pas notre sens : programmes de modlisation-
simulation et algorithmes instancis.
2.7 Interprtations
Conception
Cet ensemble de ressources nous permet de dcrire la conception de linstitution site des
IREM. Ce point de vue est soutenu par le fait que les ressources sont soumises un sys-
tme de relecture par un membre du comit. On pourrait aller plus loin, en interprtant nos
constats comme un reet des conceptions des enseignants et chercheurs ayant produit les
ressources. Cette conception est perue au travers de la transposition quils proposent de
lalgorithmique et ne dcrit que leur rapport lalgorithme en tant que membre de linsti-
tution. Cependant, les rsultats concernant les conceptions des chercheurs interviews nous
permettent dappuyer ce point de vue.
La cohabitation de conceptions trs diverses de lalgorithme (et parfois presque contra-
dictoires) dans cette institution est tout de mme souligner. De plus, dautres facteurs
entrent en compte dans la production de ces ressources, que lon peut formuler en termes
de conditions et contraintes.
Contraintes
Le besoin urgent de ressources, pour les enseignants, peut tre vu comme un poids qui a
acclr la production et la diusion de ressources du site des IREM.
Cependant, on peut penser que la contrainte principale pour la production des ressources
a t le respect des instructions ocielles. Les rsultats du chapitre prcdent montrent
que lattente se situe autour de la programmation de mthodes et limplmentation dal-
gorithmes, insrer le plus souvent dans une dmarche dinvestigation. Cette approche est
trs courante dans les ressources IREM. On retrouve aussi, par exemple, lamalgame entre
entres-sorties et interfaces homme-machine, fortement prsent dans les programmes.
Ces contraintes des programmes nexpliquent pas tout. Certains documents sen sont librs
lorsque celles-ci sont trop en contradiction avec leur conception (on peut comprendre que
ce soit plutt les ressources pour la formation des enseignants) alors que dautres semblent
simplement les accepter.
Par exemple, certaines ressources soulignent lintrt de voir les algorithmes comme des
fonctions et de ne pas confondre saisie et entre. Alors que lamalgame entre-saisie
6
est
6. Tel que nous lavons dni p. 128.
175
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
repris dans dautres documents, pour lesquels on peut conclure, au moins, que leur concep-
tion de lalgorithme nentre pas en contradiction avec cet amalgame.
Conditions
Lautre contrainte des instructions ocielles est celle de traiter lalgorithmique au travers
de lensemble des thmatiques des programmes. En eet, on peut constater que la plupart
des documents qui mettent en jeu lalgorithme en tant quobjet se place dans des champs
mathmatiques qui sont peu ou pas du tout prsents dans les programmes du lyce comme
le traitement des donnes, larithmtique, la thorie des graphes
7
, la combinatoire, les heu-
ristiques pour lalgorithmique, le calcul formel ou encore la thorie des jeux.
Paralllement, la plupart des autres documents se place dans le cadre des programmes.
Cette contrainte soulve la question des conditions propices la prsence de lalgorithme-
objet dans les mathmatiques. Ltude de ces conditions pourrait apporter des pistes per-
mettant de comprendre pourquoi lalgorithme ne peut que dicilement vivre (en tant
quobjet en particulier) dans certains champs des programmes.
Pour rpondre cette problmatique, il nous semble quune tude cologique du concept
serait adapte. Nous reviendrons sur cette question en conclusion de la thse, dans les
perspectives de travail.
Retour sur les outils
Les rsultats obtenus montrent une bonne adaptabilit des outils aux dirents types de
ressources. Les outils nous ont aussi permis de classier les ressources dune manire gn-
rale et danalyser plus spciquement certaines activits proposes de manire ne. Cela
devrait nous permettre, par la suite, de proposer un outil systmatique danalyse, adapt
ltude des conceptions dans des documents, chez des personnes ou des institutions, voire
mme ltude de corpus htrognes.
Ainsi, nous devrions pouvoir tudier dans les manuels, la fois les exercices, les activits
et les cours sur lalgorithmique.
7. On retrouve arithmtique et thorie des graphes uniquement dans des enseignements de spcialit
de terminale.
176
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 8
Manuels du lyce
Sommaire
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
1 Mthodologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
1.1 Collections de manuels tudies . . . . . . . . . . . . . . . . . . . 178
1.2 Hypothses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
1.3 Grille danalyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
2 Rsultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.1 Collection Indice . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
2.2 Collection Transmath . . . . . . . . . . . . . . . . . . . . . . . . 187
2.3 Enseignements de spcialit . . . . . . . . . . . . . . . . . . . . . 192
Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Introduction
Aprs avoir tudi des ressources en ligne pour lalgorithmique, nous proposons dtudier
un autre type de ressources : les manuels de mathmatiques pour le lyce. Cela doit per-
mettre de poursuivre ltude de la transposition didactique en jeu au lyce. Par rapport
aux programmes, ils constituent une tape intermdiaire de la transposition et leur tude
devrait apporter des prcisions quant au savoir enseigner et nous permettre de formuler
des hypothses sur le savoir enseign. Ces hypothses seront mettre lpreuve avec
une analyse des pratiques enseignantes
1
, et peuvent constituer une analyse pralable pour
concevoir un outil dtude de ces pratiques.
la suite du dveloppement de nos modles pistmologiques, nous avions reformul deux
questions de recherche pour les manuels :
Question Q6
aspects
. Quels aspects de lalgorithme sont prsents dans les manuels de
mathmatiques ? Les aspects outils et objets sont-ils reprsents ?
Question Q6
conceptions
. Quelles conceptions sont reprsentes dans les manuels de ma-
thmatiques du lyce ? Les conceptions prsentes sont-elles compltes ? Sont-elles modies
par rapport celles du savoir savant ? Relvent-elles de loutil ou de lobjet ? Quelle place
est donne aux structures de contrle ?
1. Nous ne raliserons pas de telle tude ici mais il sagit dune poursuite du travail indispensable pour
lanalyse de la transposition.
177
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Nous allons donc nous attacher rpondre ces questions en essayant de dvelopper une
tude quantitative sur les manuels tudis.
1 Mthodologie
1.1 Collections de manuels tudies
Nous avons slectionn deux collections de manuels de mathmatiques pour cette tude.
Nous avons choisi des collections de deux diteurs dirents. Ces deux collections proposent
des manuels pour toutes les lires et tous les niveaux. Il sagit des collections Indice, dite
par Bordas, et Transmath, dite par Nathan.
Pour ces deux collections nous tudierons tous les manuels, sans les spcialits, cest--dire,
seconde 1
e
ES-L, T
e
ES-L, 1
e
S et T
e
S. Nous tudierons ces manuels suivant une mme
mthodologie.
ces manuels nous ajoutons ceux des spcialits mathmatiques en T
e
S et ES dans la col-
lection Indice. tant donn les dirences entre les programmes du lyce et les programmes
de ces deux spcialits, nous choisirons de les tudier part.
Pour cet ensemble de manuels, notre objectif est non seulement dtudier la transposition
en jeu dans les manuels mais aussi de montrer comment la grille danalyse que nous avons
utilise jusqu maintenant peut tre utilise de manire systmatique.
1.2 Hypothses
Avant de proposer une grille pour ltude quantitative, nous devons prciser les critres
qui nous guideront. Nous faisons lhypothse que les manuels vont trs peu sortir du cadre
donn par les instructions ocielles. Nous proposerons donc des critres danalyse en fonc-
tion des rsultats du chapitre 6, dont les conclusions nous poussent faire les hypothses
de recherche suivantes
2
:
Hypothse 1 Nous nous attendons rencontrer des nombreux algorithmes mettant en
jeu des formules, implmentant des fonctions, simulant des expriences alatoires, calculant
des termes de suites, etc. Ces algorithmes ne permettent pas de mettre en jeu les aspects
objet. Nous tudierons spciquement les algorithmes qui relvent de notre dnition, que
nous supposons plus rares, et qui peuvent mettre en jeu lalgorithme-objet.
Nous avons pu constater que, dans les programmes, ces algorithmes plus riches relevaient
principalement des mthodes numriques. Nous quantierons la prsence de ces mthodes
numriques.
Hypothse 2 Nous supposons que les questions majoritairement poses sur les algo-
rithmes seront de lordre de lcriture et de la mise en uvre (en particulier : criture dal-
gorithmes, de programmes, excution, implmentation dautres notions mathmatiques et
2. Ces hypothses seront confrontes aux rsultats de lanalyse, ce qui permettra de comparer la trans-
position dans les manuels celle propose par les programmes. Ces hypothses nous permettent aussi de
proposer une grille ayant une granularit correspondant aux attentes, quitte la modier si besoin.
178
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
de simulations, ...). Nous pensons que les manuels vont centrer lalgorithmique sur une acti-
vit dcriture, comme cela est le cas dans les programmes. Nous quantierons les questions
relatives au langage (sa matrise, sa comprhension, sa manipulation).
Hypothse 3 Le paradigme AI sera trs majoritaire dans les manuels. Nous serons
attentifs la part dalgorithmes prsents ou demands en langages de programmation et
la prsence de programmes-papier.
Hypothse 4 La validation des algorithmes sera peu prsente. Elle sera de lordre du
langage (via la programmation), du test (via lexcution sur des exemples), ou dcoulera de
la validit des mthodes mathmatiques traduites (lorsque par exemple on implmentera
une mthode dapproximation). Les structures de contrle spciques lalgorithme seront
absentes.
Hypothse 5 On devrait constater de grandes variations entre les dirents domaines
mathmatiques abords concernant la prsence dalgorithmes et leur rle.
Pour les manuels de spcialit, nous ne faisons pas dhypothse tant donn le contenu de
leurs programmes concernant lalgorithmique. Nous nous attendons simplement rencon-
trer des algorithmes plus riches, au vu des thmatiques abordes.
1.3 Grille danalyse
Ces hypothses, bases sur lanalyse des instructions ocielles, jouent aussi le rle dana-
lyse pralable. Elles nous donnent une ide de ce que lon peut attendre des manuels et
nous permettent de proposer une grille danalyse adapte. Par exemple, nous ne propo-
serons pas une granularit trop ne concernant les aspects objet que nous attendons peu
nombreux.
Nous tudierons deux points dans les manuels : les algorithmes proposs et les questions
poses dans les exercices proposs llve. Tous les algorithmes reconnus par le manuel
seront pris en compte. Pour les questions, nous tudierons celles qui sont poses llve
dans toutes les activits qui sont sa charge, cest--dire dans les exercices, exercices
rsolus, les points mthode, les TP et les activits.
Analyse quantitative
Cest surtout cette partie qui va nous intresser, an de quantier les types dactivits pro-
poss llve. En particulier, nous tudierons le nombre dalgorithmes de dirents types,
les questions les plus souvent poses sur les algorithmes, les systmes de reprsentation
majoritaires et les structures de contrle les plus rpandues.
Cela concerne donc les questions suivantes :
179
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Algorithmes en jeu :
Quels types dalgorithmes sont proposs ?
En quelles proportions ?
Sont-ils des algorithmes selon notre dnition ?
Questions :
Quelles sont les principales questions poses llve concernant ces al-
gorithmes ?
Cela varie-t-il selon les chapitres ?
Aspects :
Quels aspects les questions mettent-elles en avant ?
Relvent-ils de loutil ou de lobjet ?
Conceptions :
Dans quel(s) paradigme(s) se trouve-t-on? (en lien avec le systme de
reprsentation)
Quelles conceptions de lalgorithme sont majoritaires ?
Concernant algorithmes et questions, il nous faut prciser selon quels critres nous les
classions avant de nous lancer dans lanalyse quantitative.
Types dalgorithmes Nous proposons la classication suivante. Elle inclue de nom-
breuses procdures que nous ne considrons pas comme des algorithmes mais qui sont
prsentes comme telles dans les programmes. On retrouve aussi beaucoup de catgories
dalgorithmes que nous avons considres comme nayant pas dintrt pour pouvoir faire
vivre laspect objet. Notre hypothse tant que ces algorithmes seront nombreux, nous
avons choisi de tout de mme laisser apparatre les nuances quils recouvrent.
Formules
Formules conditionnelles
Formule pour : somme ou produit de
termes, rptition dun nombre x dinstruc-
tions
Programmes de calcul et manipulations de
variables
Constructions gomtriques et autres
constructions en nombre dtapes xe
Calcul des termes dune suite, ou quivalent
Recherche du premier terme dune suite v-
riant une proprit (seuils, balayages...), ou
quivalent
Simulation dune exprience alatoire ou
dune srie dexpriences
Mthodes numriques (mthodes dapproxi-
mation de zros, daires...)
Autres algorithmes (nous les tudierons
part)
Prcisons que pour chaque manuel, nous dnombrons lensemble des algorithmes prsents
dans le cours, ainsi que ceux dans les exercices dalgorithmique (dans toutes les collec-
tions, les exercices et activits mettant en jeu des algorithmes sont marqus par un logo
spcique). Nous ntudierons pas les exercices non reprs comme tels : lobjectif tant
dtudier le rapport lalgorithme, il ne nous semble pas pertinent ici de chercher les
algorithmes non rpertoris
3
.
Type de questions Nous nous appuierons sur le dcoupage suivant, inspir par nos
hypothses. Nous avons modi certaines catgories a posteriori pour que la granularit
3. Ce pourrait tre lobjet dun travail futur, consistant tudier les champs o lalgorithme nest pas
reconnu malgr sa prsence. Nous naborderons pas cette question ici mais lon peut armer que certains
algorithmes ne sont pas reconnus comme tels dans certains manuels. Citons, par exemple, le raisonnement
par rcurrence qui nest jamais associe lalgorithmique, la recherche de cycles eulriens dans certains
manuels de T
e
ES, ou encore certaines mthodes numriques lorsquelles ne sont pas implmentes.
180
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
soit adapte la prsentation.
crire un algorithme qui fait...
crire un programme qui fait...
Implmenter un algorithme donn ou crit
prcdemment
Complter ou modier un algorithme ou un
programme
Questions de comprhension des instructions
de lalgorithme ou du programme (dcrire ce
quil fait, quoi sert telle variable, telle ins-
truction,...)
Excuter un algorithme la main (parfois en
dcrivant chaque pas)
Faire excuter un programme (sur une entre
donne ou au choix)
crire lalgorithme daprs un programme
Comparer deux algorithmes
tudier la complexit dun algorithme
Justier ou valider un algorithme
Autres (dans ce cas, prciser)
Nous reprerons ces questions dans les exercices des manuels et dans les autres activits
o llve est questionn (TP, Pour aller plus loin, activit, etc). Lorsquune question
est rpte plusieurs fois dans un mme exercice, nous ne la compterons quune fois (par
exemple une consigne du genre tester votre programme pour 1, 4, 13 et 19 sera compta-
bilise comme une seule question du type excuter un programme).
Ces types de questions peuvent tre reprs comme relevant de loutil ou de lobjet, des
oprateurs, du langage ou des structures de contrle.
Cours et discours
Pour tenir compte de lintgralit de lalgorithmique propose par les manuels, nous uti-
liserons la grille des deux chapitres prcdents pour tudier les conceptions prsentes. En
particulier, cela nous permettra de prendre en compte les parties de cours et les discours sur
lalgorithmique. Nous avons vu que dans les discours les aspects sont souvent plus faciles
reprer, mais les exemples et illustrations devraient permettre de dcrire des conceptions.
Nous confronterons les rsultats avec les statistiques des exercices.
2 Rsultats
2.1 Collection Indice (Bordas)
Algorithmes
Les algorithmes prsents dans les manuels se rpartissent selon le tableau ci-aprs
4
.
On retrouve toutes les attentes spciques des programmes en algorithmique. En particu-
lier les capacits attendues des programmes sont prsentes (zro par dichotomie en seconde,
calcul dun terme dune suite en 1
e
ES-L, seuil pour (q
n
), 0 < q < 1 en T
e
ES-L, terme
dune suite et liste des termes en 1
e
S, seuil pour une suite croissante et encadrement din-
tgrales en T
e
S). Quasiment aucun algorithme ne sort des propositions des programmes
5
.
Dans chaque classe, on peut dailleurs remarquer des pourcentages plus levs dans les
catgories dalgorithmes correspondant aux capacits attendues de la classe ( lexception
le la dichotomie).
4. Nous indiquons des eectifs et des pourcentages dans chacun des tableaux de ce chapitre, an que
le lecteur puisse percevoir facilement, la fois le nombre dlments reprsents par la catgorie, et la
proportion que cela reprsente. Il ne faut pas voir plus que des tendances dans lensemble de ces statistiques.
5. Le manuel de T
e
S propose dailleurs une liste des algorithmes exigibles la n de ses complments
dalgorithmique correspondant aux algorithmes des capacits attendues des programmes.
181
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Indice F
o
r
m
u
l
e
s
F
o
r
m
u
l
e
s
c
o
n
d
.
F
o
r
m
u
l
e

P
r
o
g
.
d
e
c
a
l
c
.
C
o
n
s
t
.
g

o
m
.
S
u
i
t
e
S
u
i
t
e

t
a
n
t
q
u
e

S
i
m
u
l
.
a
l

a
.
M

t
h
o
d
e
n
u
m
.
A
u
t
r
e
s
Seconde
7 12 8 3 5 7 6 9 1 -
12% 21% 14% 5% 9% 12% 10% 16% 2% -
1
e
ES-L
8 4 1 - - 9 3 3 - -
29% 14% 4% - - 32% 11% 11% - -
T
e
ES-L
7 2 1 - - 3 7 2 3 -
28% 8% 4% - - 12% 28% 8% 12% -
1
e
S
7 10 1 - - 13 3 6 4 -
16% 23% 2% - - 30% 7% 14% 9% -
T
e
S
18 7 2 - - 3 9 4 11 -
33% 13% 4% - - 6% 17% 7% 20% -
On retrouve une trs grande majorit dalgorithmes pauvres pour laspect objet. Seules
les mthodes numriques, ici, peuvent mettre en jeu laspect objet. Cependant, beaucoup
de ces algorithmes reprsentent en fait des suites dont on veut calculer le premier terme qui
est plus petit quun donn. Pour ce genre de suites comme pour les mthodes numriques
rencontres, les manuels proposent beaucoup dalgorithmes instancis (notamment
en T
e
ES-L,). Il sagit alors souvent de modier lalgorithme ds que lon veut changer la
fonction tudie, lintervalle dtude, le pas ou la prcision. Nous pensons que cela peut
tre li au besoin de proposer plusieurs exercices pour une mme technique : si lalgorithme
est considr comme une technique, il devient ncessaire davoir plusieurs algorithmes de
recherche de seuil dune suite par exemple. Cest le cas de lexemple suivant :
Indice 1
e
L-ES : Quatre exercices mettant en jeu le calcul dun terme dune suite xe.
Cela peut aussi tre li au fait de ne pas pouvoir dnir de sous-fonction avec la notion
dentre-sortie des programmes (dans notre exemple, pour calculer u
N
, connaissant u
0
,
N et f telle que u
n+1
= f(u
n
) : lalgorithme peut prendre en entre u
0
et N mais il ne
peut pas prendre une fonction f gnrique car une telle fonction ne peut pas tre dcrite
sparment et appele dans lalgorithme).
182
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Les types dalgorithmes en jeu montrent bien que laspect dominant est leffectivit. Il
sagit dalgorithmes pour mettre en uvre une mthode. Lautre aspect prsent est laspect
problme. Cependant, la prsence dalgorithmes instancis, de programmes de
modlisation-simulation et de beaucoup de mises en uvre de formules montre que
cet aspect nest pas fondamental ici.
Forme des algorithmes
Les algorithmes vivent quasi-exclusivement sous deux formes :
les programmes proposs dans dirents langages (Casio, TI, Algobox, etc.)
les algorithmes, qui suivent certains critres formels bien prcis : une structure globale
(initialisation, traitement, sortie), une liste de commandes et doprateurs autoriss
(boucle, aectation), une gestion des entres-sorties par saisie-achage et une dcla-
ration des variables dans lentte.
On reconnat ce que nous avons introduit sous le nom de programme-papier. On constate
dans ces manuels que le terme algorithme signie programme-papier si rien nest prcis.
Nous reviendrons sur ce point dans ltude des chapitres algorithmique.
Indice seconde : Test de lalignement de trois points, version programme-papier et programmes informatiques.
En seconde, quelques algorithmes sont prsents en langage naturel. Cest alors toujours
dans un cas o lon doit dcrire une procdure de la vie quotidienne, ou une activit ma-
trielle en mathmatiques (comme les constructions gomtriques). Ces algorithmes en
langage naturel se situent au dbut du chapitre qui introduit lalgorithmique, avant que ne
soit introduit le formalisme.
Cela tmoigne dune domination des conceptions de AI. Nous considrons que AM nest
pas vraiment prsent tant donne la forme impose des algorithmes et ses liens avec les
langages de programmation.
Questions pose llve
Les questions poses sur les algorithmes se rpartissent selon le tableau ci-aprs.
On peut tout dabord noter que les questions prsentes ne concernent que lalgorithme en
tant quoutil : ni validit, ni complexit, ni comparaison dalgorithmes ne sont question-
nes
6
. Nous navons pas considr que lquivalence entre programmes de calcul
7
, dans
6. Cela ne signie pas ncessairement quelles sont absentes, mais quelles ne relvent pas de lactivit
attendue de llve. Nous reviendrons sur cette question plus loin.
7. Un programme de calcul est une suite doprations de calcul appliquer successivement un nombre
quelconque, comme : prendre un nombre, ajouter 2, lever au carr, diviser par 3.
183
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Indice
c
r
i
r
e
a
l
g
o
.

c
r
i
r
e
p
r
o
g
.
A
l
g
o
.

p
r
o
g
.
M
o
d
i
f
.
C
o
m
p
r
.
E
x

c
.
a
l
g
o
.
E
x

c
.
p
r
o
g
.
P
r
o
g
.

a
l
g
o
.
Seconde
38 3 11 2 12 8 10 2
44% 3% 13% 2% 14% 9% 12% 2%
1
e
ES-L
11 - 13 6 4 6 6 -
24% - 28% 13% 9% 13% 13% -
T
e
ES-L
6 - 11 8 16 2 10 -
11% - 21% 15% 30% 4% 19% -
1
e
S
22 2 23 13 18 5 19 3
21% 2% 22% 12% 17% 5% 18% 3%
T
e
S
25 4 17 13 12 5 19 -
26% 4% 18% 14% 13% 5% 20% -
le cadre du calcul algbrique, relve de la comparaison dalgorithmes. Les questions du
type Que fait lalgorithme ? prsentes dans ces manuels mettent en jeu uniquement la
comprhension des instructions du langage
8
.
De mme, concernant les conceptions, on constate que les lments mis en jeu dans les
questions sont principalement les oprateurs et les systmes de reprsentation. On est es-
sentiellement dans une activit du type : problme criture dalgorithme criture
de programme excution. Prcisons dailleurs que la relation algorithme-problme est
souvent trs simple : il sagit bien souvent dadapter la question pose aux contraintes
du langage du programme-papier. Lcriture du programme devient souvent une tra-
duction. Comme dans les programmes et le document ressource, on est dans une activit
centre sur le langage.
Les questions de comprhension sont aussi trs prsentes. Elles relvent presque toujours
du langage ou de la comprhension des instructions du langages (valeurs des variables,
choix des critres darrt, etc.). Modications ou extensions dalgorithmes sont souvent
utilises pour faire modier les sorties, rpter lexcution dun algorithme dj crit ou
changer un paramtre (qui aurait simplement pu tre en entre). Encore une fois, ces ques-
tions de modication ont un rle qui est li limpossibilit de produire des algorithmes
comme fonction : on ne cre donc pas un nouvel algorithme faisant appel lancien ou le
gnralisant, on apporte des modications lancien.
Enn, on retrouve aussi beaucoup dalgorithmes trous dans lesquels il faut complter une
aectation ou une condition. Ces types de questions mettent en avant la comprhension
du langage et des instructions associes lalgorithmique.
Voici un exemple mettant en jeu des questions de comprhension et de modication sur
un programme de modlisation-simulation :
8. De plus, nous avons souvent pu constater que beaucoup deets de contrat permettent de rpondre
ces questions. Par exemple, la phrase qui doit sacher avec la sortie indique ce que fait lalgorithme.
184
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Indice 1
e
S : Simulation de records (extrait).
Algorithmique
Les manuels de la collection Indice contiennent tous un chapitre ou une section consacrs
lalgorithmique. En seconde, il sagit dune introduction sous la forme cours-exercices.
Dans les autres manuels, il sagit simplement dun complment qui rappelle les notions.
Dans tous les cas, lorganisation suit le mme plan :
Quelques exemples dalgorithmes (uniquement en seconde),
Laectation,
Programmation dun calcul itratif avec un nombre ditrations born,
Programmation dune instruction conditionnelle,
Programmation dun calcul itratif avec une n de boucle conditionnelle,
Rcapitulatif des instructions utilises en programmation.
Chacun de ces chapitres introduit donc une nouvelle instruction. Lalgorithmique est or-
ganise autour de lcriture de procdures laide de ces instructions.
La dnition propose est toujours la suivante :
Cette dnition, trs brve, met en vidence les aspects effectivit et problme mais
sans les dtailler (pas de prcisions concernant nitude, instances, ...). Elle insiste surtout
sur le dcoupage : initialisation, traitement, sortie. On retrouve ce dcoupage dans tous
les algorithmes proposs, quitte avoir parfois des sorties du type ach en cours de
traitement comme dans lexemple de la partie forme des algorithmes ci-dessus.
Aspects et conceptions
Nous avons vu que les seuls aspects prsents sont les aspects outils : effectivit et pro-
blme. Et le rapport au problme est vu dans un sens trs vague : il est seulement prsent
derrire lide que lon crit un algorithme dans un but prcis, pour obtenir un rsultat
demand.
Les autres aspects sont absents.
185
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Concernant les conceptions en jeu, nous avons dj vu que le systme de reprsentation
dominant est celui de AI. Revenons sur les problmes, oprateurs et structures de contrle.
Les problmes en jeu sont ceux qui apparaissent au travers des algorithmes prsents. Nous
avons dj abord cela plus haut : beaucoup sont pauvres pour lalgorithmique et les autres
sont peu exploits.
Les questions poses sur les algorithmes montrent que lalgorithme nest pas objet dans
lactivit de llve. En fait, il ne lest pas non plus dans le discours des manuels. Pour la
dichotomie par exemple, prsente dans le manuel de seconde, celui de T
e
ES-L et celui de
T
e
S, le choix de la dichotomie par rapport une autre mthode nest jamais motiv et la
complexit ou lecacit nest pas voque.
Les oprateurs utiliss sont les oprateurs des langages de programmation et les fonc-
tions mathmatiques autorises dans certains langages, ainsi que leurs quivalents dans
les programmes-papiers. Cela donne lieu des algorithmes pauvres qui utilisent des
fonctions complexes pr-implmentes. Par exemple :
Indice T
e
S : Calcul dintgrale en utilisant les primitives.
Des structures de contrle sont prsentes. Elles peuvent tre considres comme de lordre
des mathmatiques, mais ce ne sont pas des contrles relatifs lalgorithmique. Cest--dire
que la mthode implmente (formule, suite, fonction, ...) est valide comme rpondant au
problme, soit dans lexercice, soit dans le cours. Lalgorithme ntant quune traduction de
cette mthode, il ne ncessite pas de validation spciale. Les seules structures de contrle
ncessaires sont alors celles du bon fonctionnement des programmes.
Bilan
Seul les aspects outil sont prsents et les algorithmes proposs ne permettent pas
de considrer lalgorithme comme un objet. Les quelques algorithmes qui pourraient
mettre en jeu lalgorithme-objet ne le questionnent pas.
Laspect problme est lui-mme peu reconnu : on retrouve des algorithmes
instancis et les exercices consistent souvent reproduire un algorithme connu
pour une instance xe. On trouve aussi des programmes de modlisation-
simulation.
La majorit des questions souleves concerne le langage dexpression des algorithmes
et lalgorithmique est introduite instruction par instruction.
On rencontre dailleurs uniquement des programmes et des programmes-papier.
Cest donc le paradigme AI qui domine largement et uniquement par la conception
AI-outil.
186
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
2.2 Collection Transmath (Nathan)
Beaucoup de points sont communs avec lanalyse des manuels de la collection Indice. Nous
passerons plus rapidement et montrerons les quelques dirences repres.
Algorithmes
Les algorithmes prsents dans les manuels se rpartissent ainsi :
Transmath F
o
r
m
u
l
e
s
F
o
r
m
u
l
e
s
c
o
n
d
.
F
o
r
m
u
l
e

P
r
o
g
.
d
e
c
a
l
c
.
C
o
n
s
t
.
g

o
m
.
S
u
i
t
e
S
u
i
t
e

t
a
n
t
q
u
e

S
i
m
u
l
.
a
l

a
.
M

t
h
o
d
e
n
u
m
.
A
u
t
r
e
s
Seconde
7 19 7 22 2 - 4 5 - -
11% 29% 11% 33% 3% - 6% 8% - -
1
e
ES-L
4 4 - 1 - 11 8 9 1 -
11% 11% - 3% - 29% 21% 24% 3% -
T
e
ES-L
6 4 - - - 13 7 7 3 -
15% 10% - - - 33% 18% 18% 8% -
1
e
S
8 11 3 8 1 16 7 5 2 2
13% 17% 5% 13% 2% 25% 11% 8% 3% 3%
T
e
S
8 5 - 2 2 3 3 11 8 3
18% 11% - 4% 4% 7% 7% 24% 18% 7%
Le constat que lon peut faire est le mme que pour les manuels de la collection Indice :
On retrouve tous les algorithmes des programmes, en particulier ceux des capacits
attendues
9
.
Les classes principales sont celles que nous considrons pauvres pour lalgorithme-
objet.
Laspect dominant est leffectivit.
On retrouve des algorithmes-instancis, notamment dans les exercices sur les
suites (surement pour les mmes raisons que celles que nous avons dj voques).
Ces algorithmes instancis, le nombre dexercices de mise en uvre de formules
et la prsence de programmes de modlisation-simulation, montrent que las-
pect problme nest pas primordial ici non plus.
Nous avons not que lon trouve tout de mme quelques algorithmes plus riches. Ces
algorithmes sont dans la catgorie mthodes numriques mais aussi hors du classement.
On trouve notamment :
1
e
ES-L : recherche de zro par dichotomie,
T
e
ES-L : recherche de zro par dichotomie et par balayage,
1
e
S : division euclidienne par soustraction, dichotomie pour rechercher un nombre
entre 1 et 100,
T
e
S : recherche de zro par dichotomie, algorithme dEuclide, algorithme pour la
liste des diviseurs dun entier.
Dans ces algorithmes, pourtant, ce sont uniquement les aspects Outil qui sont mis en avant.
Par exemple, comme prcdemment, la dichotomie nest pas justie par son ecacit. Un
autre exemple est lalgorithme de division euclidienne suivant :
9. lexception de la recherche de zro par dichotomie en seconde.
187
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Transmath 1
e
S et T
e
S : Division euclidienne et numration des diviseurs outils
Forme des algorithmes
Les constats que nous avons faits pour la collection Indice sont les mmes ici. On a deux
formes dalgorithmes :
les programmes (TI, Casio, Algobox, etc.),
des programmes-papiers suivant la forme entre-saisie, traitement, sortie-achage
avec dclaration pralable des variables. cela sajoute une mise en forme des rsul-
tats propre lachage.
On est dans le paradigme AI.
Transmath 1
e
S : Programme-papier pour lachage dune table de multiplication.
Questions poses llve
Les questions poses dans les exercices et activits sont les suivantes :
188
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Transmath
c
r
i
r
e
a
l
g
o
.

c
r
i
r
e
p
r
o
g
.
A
l
g
o
.

p
r
o
g
.
M
o
d
i
f
.
C
o
m
p
r
.
E
x

c
.
a
l
g
o
.
E
x

c
.
p
r
o
g
.
P
r
o
g
.

a
l
g
o
.
Seconde
17 - 2 14 30 17 8 1
19% - 2% 16% 34% 19% 9% 1%
1
e
ES-L
7 15 9 30 13 19 -
8% - 16% 10% 32% 14% 20% -
T
e
ES-L
11 - 15 7 35 9 19 -
11% - 16% 7% 36% 9% 20% -
1
e
S
21 - 5 7 35 9 9 1
24% - 6% 8% 40% 10% 10% 1%
T
e
S
6 1 14 21 25 - 21 -
7% 1% 16% 24% 28% - 24% -
Ce sont les mmes types de questions que dans la collection Indice que lon retrouve et
lanalyse est essentiellement la mme :
Les questions ne mettent pas en jeu lalgorithme quen tant quoutil : validit et
complexit ne sont pas questionnes.
Les questions relvent principalement des oprateurs et des systmes de reprsenta-
tion.
La relation du problme lalgorithme est souvent trs simple et lalgorithme (programme-
papier) joue souvent le rle dtape intermdiaire entre le problme et le programme.
Les questions lies la comprhension du langage et de ses instructions sont trs
prsentes.
Exemples de questions de comprhension du langage :
Transmath 1
e
ES-L et seconde : Des questions de comprhension et une justication mathmatique de formules.
189
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Algorithmique
Tout comme dans la collection Indice, un chapitre dalgorithmique est propos dans chaque
manuel. Ce chapitre est lui aussi dcoup suivant chaque type dinstruction. Les exercices
sont ensuite repartis selon le type dinstruction quils mettent en jeu. Lalgorithmique est,
ici aussi, organise autour des instructions issues de la programmation.
Des exercices sont aussi proposs, parmi lesquels on retrouve les quelques algorithmes
riches mais dont le potentiel nest pas exploit, qui ne font pas partie des instructions
ocielles et que nous avons points plus haut.
Aspects et conceptions
Les aspects prsents sont ceux du ct outil. Laspect effectivit domine. Laspect pro-
blme est prsent mais la relation algorithme-problme est vague : on rencontre des al-
gorithmes instancis et des programmes de modlisation-simulation. En par-
ticulier, les algorithmes instancis soulvent la mme question qui se posait dans la
collection Indice : pourquoi modier les paramtres dans un algorithme alors que lon peut
intgrer ces paramtres dans lentre ?
Lexemple ci-dessous illustre bien ce paradoxe : le cours propose un algorithme gnral et
les exercices demandent lalgorithme avec certains paramtres xs.
Transmath T
e
ES-L : Un algorithme gnrique et appliqu pour des algorithmes instancis.
On peut aussi voir cette question du rapport algorithme-problme sur lexemple, ci-aprs,
de dichotomie en 1
e
S : on ne sait pas quel est lalgorithme en jeu, la simulation dun
adversaire ou la stratgie du joueur.
Laspect objet est totalement absent des manuels Transmath. On peroit quelques re-
marques concernant le comportement des algorithmes ou leur comparaison, comme ces
remarques comparant la recherche de zro par balayage et par dichotomie et qui ne posent
que la question de la prcision de lencadrement (voir extrait du Transmaths T
e
ES-L
ci-aprs).
Cela montre bien que les problmatiques sur lalgorithme objet sont absentes. Les pro-
blmes en jeu sont donc soit des problmes de P
a
(majoritairement pauvres), soit des
problmes consistant rendre eectives certaines procdures en les programmant.
190
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Transmath 1
e
S : Simulation dun jeu ou dichotomie ?
Transmath T
e
ES-L : Question sur la dichotomie et remarque sur le balayage.
Les oprateurs sont, comme pour la collection Indice, les instructions du langage de pro-
grammation et du langage des programmes-papier.
Les seules structures de contrle prsentes sont les vrications par des tests sur des don-
nes. Deux exemples en sont donns page suivante.
Bilan
Les aspects outil dominent, notamment leffectivit. La majorit des algorithmes
proposs ne permettraient pas de mettre en jeu dautres aspects.
Laspect problme nest que trs partiellement mis en jeu et les algorithmes proposs
sont des algorithmes instancis, des algorithmes du cours dont on xe une partie
des paramtres ou encore des programmes de modlisation-simulation.
Le langage dexpression des algorithmes est trs contraint par celui de la program-
mation. Cela produit des programmes-papier qui sont caractristiques dune foca-
lisation sur les structures de reprsentation de AI. Lorganisation du chapitre dalgo-
rithmique autour des instructions usuelles des langages de programmation conrme
cet ancrage.
Les structures de contrle relvent de la validit mathmatique des formules impl-
mentes ou du test des programmes sur des exemples. On est bien dans une conception
AI-outil.
191
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Transmath seconde et 1
e
S : Validation par tests ou comparaison avec les programmes intgrs de la calculatrice.
2.3 Enseignements de spcialit (Indice)
Spcialit de T
e
ES
Les algorithmes prsents en terminale ES sont peu nombreux malgr les thmes abords.
Comme les questions sont peu diverses, nous rsumons lensemble en un seul tableau :
Chapitre Algorithmes Questions
1. Problmes sur les
matrices
- Oprations usuelles sur les ma-
trices
- crire un algorithme qui... (3)
2. Problmes de
graphes
- Recherche dune chane eulrienne - Appliquer lalgorithme (3)
3. Graphes pondrs
et probabilistes
- Recherche dun plus court chemin
(Dijkstra)
-Appliquer lalgorithme (14)
- Interprter sa solution (3)
Les questions du chapitre 1 correspondent aux trois exercices suivants :
Indice T
e
ES (sp.) : Algorithmes opratoires sur les matrices.
Il sagit simplement ici de faire formaliser les oprations demandes. Notons que la de-
mande de saisie et dachage fait partie du problme. On est dans AI, dans la continuit
des manuels tudis plus haut.
Concernant les chapitres 2 et 3, les algorithmes prennent une forme moins formelle. En
eet, il sagit de faire appliquer par llve les algorithmes du cours. Ils sont donc formuls
en langage courant :
192
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Indice T
e
ES (sp.) : Algorithmes en langage courant sur les graphes.
Ces deux algorithmes sont ensuite spcis pour une excution la main en remplissant
un tableau :
Indice T
e
ES (sp.) : Algorithme de Dijkstra, version pour excution la main.
Les exercices qui suivent sont tous des applications de ces deux algorithmes
10
. Parfois, on
demande dinterprter la solution obtenue :
Indice T
e
ES (sp.) : Exercices dapplication des algorithmes du cours.
10. La situation tant modlise lavance par le graphe concern. Voir (Cartier, 2008) pour une tude
de lenseignement de la thorie des graphes, notamment en spcialit de T
e
ES.
193
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Notons que dans lexercice de recherche de plus courts chemins, cest lalgorithme qui jus-
tie loptimalit du chemin obtenu. La plupart des exercices dutilisation de lalgorithme
de Dijkstra spcie que lon veillera justier la rponse par un algorithme. Dans ce cas le
rle de lalgorithme est de fournir une solution et dtre une garantie (sans assurance que
lalgorithme a bien t appliqu).
Aucun des algorithmes prsents nest prouv ou valid. Leur justication sappuie sur des
exemples introduisant lide de lalgorithme sur un cas particulier.
On retrouve donc uniquement les aspects outils de lalgorithme.
Les conceptions AI et AM cohabitent, mais on peut supposer que AM est prsent car
la programmation dalgorithmes sur les graphes demande des structures de donnes com-
plexes.
Spcialit de T
e
S - Indice
Nous prsentons lensemble des algorithmes en jeu dans les quatre chapitres du manuel :
Ch. 1 : Divisibilit et nombres premiers.
Liste des diviseurs dun entiers
Test de primalit
Dcomposition en facteurs premiers
Nombre de diviseurs
Reprsentant de A modulo n (+4 fois avec n x)
Test de divisibilit
Nombre de zros la n dun entier (2 versions)
criture en base b
Puissance de p dans la dcomposition en facteurs premiers de N (+ 2 fois avec p x)
Reste de A
N
dans la division par M
Formules (5), formules conditionnelles (2) et autres (2)
Ch. 2 : Problmes de chirement
Algorithme des dirences
Algorithme dEuclide (3)
Algorithme dEuclide tendu
Recherche des triplets pythagoriciens
Rsolution de ax 1[b].
Ch. 3 : Problmes sur les matrices
Calculer les termes dun systme de deux suites rcurrentes (3)
Calculer les termes dune suite rcurrente dordre 2 (3)
Test dinversibilit dune matrice 2 2
Ch. 4 : Problmes dvolution
Simulation
Calculer les termes dune suite rcurrente dordre 2 (2)
Formule
On trouve ici un ensemble dalgorithmes de P
a
, qui semble avoir un intrt pour que
lalgorithme soit objet. Il sagit des algorithmes des chapitres 1 et 2 : ceux mettant en jeu
larithmtique. Cela va dans le sens de nos hypothses sur les disciplines privilgies pour
lalgorithme-objet.
Les questions proposes sont prsentes dans le tableau ci-aprs. La majorit des questions
traite de loutil, mais lalgorithme est aussi questionn en tant quobjet. On constate que
cela se situe, l aussi, dans le champ de larithmtique.
194
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3

c
r
i
r
e
u
n
a
l
g
o
.

c
r
i
r
e
u
n
p
r
o
g
.
a
l
g
o

p
r
o
g
.
E
x

c
.
a
l
g
o
.
E
x

c
.
p
r
o
g
.
C
o
m
p
l

t
e
r
M
o
d
i

e
r
C
o
m
p
r

h
e
n
s
i
o
n
J
u
s
t
i

e
r
u
n
a
l
g
o
.
J
u
s
t
i
f
.
u
n
e
p
r
o
p
.
d
e
l

a
l
g
o
.
T
e
r
m
i
n
a
i
s
o
n
Ch. 1 : Divisibilit et
nombre premiers
2 5 2 8 9 2 6 6 4 5 2
Ch. 2 : Problmes de
chirement
1 - 5 6 - - 0 1 3 - -
Ch. 3 : Problmes sur
les matrices
1 3 2 - 1 1 0 1 - - -
Ch. 4 : Problmes
dvolution
2 - 2 - 1 2 1 0 - - -
Total
4 8 11 14 11 5 7 8 7 5 2
5% 10% 13% 17% 13% 6% 9% 10% 9% 6% 2%
Plus prcisment, on retrouve trois types de questions :
les questions relatives la correction de lalgorithme, o un travail mathmatique,
souvent guid, amne valider la rponse fournie pour toute entre,
les questions qui concernent les proprits de lalgorithme, parfois pour permettre de
rpondre aux prcdentes,
les questions relatives la terminaison des algorithmes (qui sappuient sur la re-
cherche dun invariant simple).
Les aspects mis en avant par ces questions sont effectivit et problme mais aussi
laspect preuve.
Indice T
e
S (sp.) : Questions de correction et de terminaison.
Indice T
e
S (sp.) : tude de proprits dune sortie ( propos de la recherche dun diviseur premier).
195
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Laspect complexit est absent. Des questions pourraient surement apparatre lorsque
lon propose deux algorithmes pour un mme problme. La seule rfrence la complexit
est celle-ci :
Indice T
e
S (sp.) : Recherche dun algorithme ecace.
La forme des algorithmes suit celle des manuels Indice que nous avons dcrite, programmes
et algorithmes. Mais le langage pour les algorithmes est plus souple, il ny a pas de dclara-
tion de variable. Quelques algorithmes sont aussi exprims en langage courant (lalgorithme
dEuclide par exemple, ou celui dEuclide tendu). On peut penser que cela est li au fait
que ces algorithmes peuvent tre excuts la main (il est dailleurs propos de prsenter
leur excution dans un tableau).
Avec Xcas (dans le TP1 sur le nombre de zros terminant n!, par exemple), les algorithmes
sont programms sous forme de fonctions. On sort du cadre qui impose saisie pour lentre
et achage pour la sortie (mme si cela est trs prsent dans lensemble des algorithmes).
On peut considrer que les deux paradigmes AI et AM sont prsents dans la conception de
lalgorithme en spcialit de T
e
S. Les oprateurs ne sont pas uniquement ceux du langage
de programmation et leur adaptation sur papier : on retrouve des algorithmes manipuler
la main qui sont exprims de manires direntes.
Les structures de contrle de lalgorithme sont de lordre de la preuve (de correction et
quelquefois de terminaison). La conception-outil a donc une structure de contrle forte.
Lalgorithme-objet est en jeu et fait mme lobjet de questions.
Conclusion
Enseignement obligatoire
Lanalyse des deux collections de manuels (hors enseignements de spcialit) fait ressortir
plusieurs points :
Lalgorithme a un rle doutil de rsolution, mais surtout de mise en uvre de m-
thodes (domination de leffectivit). Un grand nombre de questions concerne
lcriture dalgorithmes, leur implmentation puis leur excution. Cela va dans le
sens des hypothses 1 et 2.
La relation algorithme-problme est vague et lon rencontre rgulirement des algorithmes-
instancis ou des algorithmes dont une partie des entres a t instancie. Cela
correspond lhypothse 1.
196
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Les aspects preuve et complexit sont totalement absents comme attendu dans
lhypothse 1.
Le paradigme dominant est AI. Les algorithmes sont soit des programmes, soit ex-
prims dans un langage extrmement proche et adapt la traduction immdiate en
programmes. Cest lhypothse 3.
Lalgorithmique est majoritairement restreinte une activit langagire. Beaucoup
de questions portent sur linterprtation dun langage, son criture et sa traduction.
On retrouve nouveau lhypothse 2.
Les seules structures de contrle sont dordre mathmatique lorsquil sagit dcrire,
sous la structure formelle dun algorithme, une technique ou une mthode du cours ou
bien des tests dexcution lorsque lon crit un programme. Cela conrme lhypothse
4.
En ajoutant au bilan des manuels de lenseignement obligatoire celui des spcialits ma-
thmatiques, on peut ajouter :
linstar des programmes, les manuels proposent des algorithmes spciques
chaque domaine : calcul de termes de suites dans les chapitres sur les suites, pro-
grammes de modlisation-simulation dans les chapitres de probabilit et statis-
tique, mthodes numriques en analyse, etc. Certains chapitres ne proposent aucun
algorithme. Dautre part les algorithmes plus riches se trouvent dans certains do-
maines bien prcis : larithmtique, la thorie des graphes, les mthodes numriques
et quelques fois dans les chapitres dalgorithmique qui permettent de sortir des do-
maines mathmatiques du programme. Cela conrme notre hypothse 5.
Ces rsultats valident nos hypothses et renforcent les conclusions des chapitres prcdents
concernant la transposition au lyce.
Enseignements de spcialit
T
e
ES Le manuel de spcialit de T
e
ES tudi met en avant le paradigme AM.
Les algorithmes prsents sont donns dans le cours pour tre appliqus la main dans les
exercices. On ne rencontre donc quasiment aucun exercice de production dalgorithme, il
sagit principalement dappliquer ces algorithmes. Par rapport aux manuels de lenseigne-
ment obligatoire, il semble que ce nest pas lcriture dalgorithmes et de programmes qui
est outil mais seulement les algorithmes donns par le cours.
Nous faisons lhypothse que le paradigme AM est seulement prsent car le paradigme
AI nest pas adapt la manipulation des graphes.
T
e
S La spcialit de terminale S prsente une conception trs dirente de lalgorithme.
Lalgorithme est outil, de la mme faon que dans les manuels de lenseignement obliga-
toire, mais il est aussi objet : on rencontre des questions de preuve dalgorithmes (validit
des solutions produites et terminaison) qui sappuient sur des raisonnements mathma-
tiques (souvent guids).
Nous pensons que la prsence de larithmtique est un facteur important dans la prsence
de lalgorithme comme objet.
Beaucoup dalgorithmes proposs (en arithmtique) sont des algorithmes riches. Cepen-
dant, coexistent des traductions de formules, et des programmes de modlisation-
simulation considrs aussi comme des algorithmes.
Bien que le paradigme AI domine fortement, on rencontre parfois le paradigme AM (mais
peut-tre pour les mmes raisons quen spcialit de T
e
ES).
197
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Analyse systmatique
Les modles de conceptions et daspects que nous avons proposs sadaptent bien une
analyse quantitative des algorithmes en jeu et des types de questions poses.
Ils nous ont permis danalyser les types dactivits proposs dans les manuels et den d-
duire la conception de lalgorithmique prsente.
Le modle par conception rend possible une tude du rapport lalgorithme de manire
globale, sans entrer dans le dtail des techniques de rsolution attendues.
Une systmatisation plus pousse de la mthodologie danalyse utilise est envisageable,
en produisant par exemple un instrument danalyse facilement transmissible. Un tel outil
comprendrait la fois une grille de questions et les rponses possibles avec leur interprta-
tion. Dvelopper une tel instrument demande des analyses de ressources supplmentaires,
notamment de documents mettant plus en jeu laspect objet, an de fournir un outil com-
plet.
198
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conclusions sur la transposition au
lyce
travers ltude des instructions ocielles, de ressources en ligne et de manuels, nous avons
pu porter un regard sur les phnomnes de transposition didactique en jeu concernant
lalgorithmique au lyce. Notre analyse sest appuye sur les modles pistmologiques
dvelopps dans les chapitres prcdents.
Nous allons revenir maintenant sur les rsultats de cette tude, et sur les outils que nous
avons utiliss.
Transposition
Instructions ocielles de mathmatiques
Ltude des programmes et du document daccompagnement de seconde rvle une grande
distance entre le concept algorithme du savoir savant et celui propos.
En particulier, la notion dalgorithme propose dans les instructions ocielles est un moyen
de dcrire toute procdure eective des mathmatiques. Cela englobe alors beaucoup dl-
ments qui ne nous paraissent pas permettre lalgorithme de vivre en tant quobjet. En par-
ticulier, les notions centrales dinstance et de problme napparaissent plus ici comme nces-
saires. Nous avons introduit les notions de programme de modlisation-simulation
et dalgorithme instanci pour dcrire certains de ces phnomnes.
Dautre part, lanalyse pistmologique montre que les algorithmes vivent sous direntes
formes parmi lesquelles lcriture dans un langage de programmation ne reprsente quune
de leurs expressions. Ici, lalgorithme sappuie essentiellement sur la notion de programme,
au point que les algorithmes exprims hors de ces langages doivent en conserver les carac-
tristiques. Nous avons propos le terme de programme-papier pour dcrire ces algo-
rithmes trs inuencs par les programmes et leurs interfaces utilisateurs.
En rsum, une seule conception domine les programmes : AI-objet.
Manuels de mathmatiques
Les manuels de mathmatiques tudis se situent dans la suite des instructions ocielles.
Ltude quantitative des algorithmes en jeu et des exercices proposs va dans le sens de
ltude des programmes.
Lalgorithme est outil et principalement orient vers AI. Les algorithmes proposs sont des
mises en uvre, propres la programmation dobjets mathmatiques implmentables qui
199
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
ne permettent globalement pas de faire vivre le concept algorithme comme un objet des
mathmatiques
11
.
Ressources en lignes
Ltude des ressources en lignes des IREM, propose en complment de cette analyse,
montre des transpositions diverses.
Les ressources pour la classe proposent globalement les mmes types dalgorithmes que
les programmes et les manuels. La dirence peut tre que le paradigme AM apparat
dans certaines ressources. Dans tous les cas lalgorithme napparat pas comme objet mais
seulement comme outil. En particulier, on ne trouve aucune question de complexit ou de
preuve dalgorithmes.
Pour rencontrer lalgorithme objet, il faut se tourner vers certaines ressources pour la
formation des enseignants. Nous avons pu constater qualors, les domaines mathmatiques
abords dirent de ceux des programmes du lyce.
ISN
Les programmes de la spcialit Informatique et Sciences du Numrique ont t analyss
paralllement cela. Cela nous a permis de dvoiler une transposition toute autre, dans
laquelle lalgorithme est un objet de la discipline part entire.
En particulier lalgorithme est clairement distingu de la notion de programme est limpor-
tance de la notion dinstance est souligne. Laspect outil de lalgorithme est trs prsent
mais laspect objet nest pas laiss de ct, les questions de complexit devant tre abordes.
Outils utiliss
Les modles pistmologiques proposs, Aspects et -conceptions, se sont avrs ecaces
pour mener cette analyse de la transposition. Nous avons pu rpondre toutes nos ques-
tions (Q5
aspects
et Q5
conceptions
, Q6
aspects
et Q6
conceptions
, Q7
aspects
et Q7
conceptions
).
Les outils drivs de nos modles nous ont permis lanalyse de documents varis par leurs
formes et leurs contenus. Nous avons aussi pu les adapter lanalyse de la transposition
dans le cadre dun enseignement dinformatique. Lanalyse des manuels a montr la possi-
bilit de les utiliser dans un cadre plus quantitatif.
La thorie cK,c (en particulier la recherche des constituants des conceptions) contribue,
travers notre modle, la souplesse des outils danalyse proposs. Le modle daspects
complte assez bien cet outil lorsque lon na pas accs lactivit ou ses traces (dans les
discours gnraux sur lalgorithmique par exemple).
11. Soulignons lexception releve en spcialit de T
e
S qui montre aussi laspect objet de lalgorithme,
dans la partie arithmtique. Cela se produit autour de laspect preuve, avec des questions de correction
et de terminaison dalgorithmes.
200
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Perspectives
Nous donnons ici quelques perspectives de recherche que nos rsultats et les questions de
transpositions de lalgorithme soulvent :
La suite de ltude de la transposition peut se faire par lobservation en classe du
savoir enseign. Nos modles devraient pouvoir tre adapts une telle tude et cela
complte ltude de la chane de transposition. Lusage des ressources en algorith-
mique par les enseignants et lanalyse de leurs conceptions peuvent complter une
telle tude.
Ltude dautres transpositions du concept, en informatique, en mathmatiques (
ltranger par exemple) ou dans des enseignements mixtes mathmatiques-informatique
nous semble aussi tre une piste explorer.
Dans cet objectif et dans le but de produire un instrument danalyse transmissible,
il faut envisager la construction dun outil systmatique danalyse de ressources en
algorithmique. Un tel outil devra prendre en compte lensemble des transpositions
envisageables et dtailler les critres permettant de les reprer.
Lcologie de lalgorithme nous permettrait de mieux comprendre les conditions et
contraintes qui inuencent la transposition
12
.
Les constats concernant la transposition peuvent nous guider dans la construction
de situations, en orientant le travail sur les aspects et conceptions absents du savoir
enseign.
Cest cette dernire question que nous allons aborder dans la partie suivante.
12. Il nous semble que lcologie des savoirs peut permettre dexpliquer les dicults pour lalgorithme
de vivre en tant quobjet dans lenseignement. Le rle mathmatique qui lui est donn et quil peut prendre
est tudier mais son rle didactique est aussi prendre en compte. En eet, attribuer un rle de mdiation
dautres concepts lalgorithme peut tre un obstacle son existence en tant quobjet mathmatique
part entire.
201
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
202
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Quatrime partie
Problmes et situations pour
lalgorithme
203
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Introduction :
Un travail en cours
Cette dernire partie sattache aux questions de conception, de dveloppement et danalyse
de situations didactiques pour lalgorithme et lalgorithmique.
Il sagit dun chantier commenc en 2009. Les dicults lies la construction de telles
situations nous ont amen dvelopper lanalyse pistmologique et les modles qui consti-
tuent les premiers chapitres de cette thse. Il nous semble important de souligner que ce
travail thorique a pour origine le dveloppement de situations.
Dautre part, ce travail de production de situations est une contrepartie ncessaire lana-
lyse de la transposition de lalgorithmique au lyce. Il nous semble important que ltude
du curriculum et des ressources ne soit pas une n en soi, mais saccompagne du dvelop-
pement doutils et de moyens pour les enseignants (au moins long terme).
Le dveloppement de situations et leur exprimentation permet aussi de requestionner les
modles pistmologiques et de les faire voluer. Cest aussi un de nos objectifs avec le
dveloppement de situations didactiques pour lalgorithme.
Bien que cette partie prsente des travaux en cours, elle avance des pistes srieuses que
nous souhaitons dtailler. Elle montre aussi en quoi le travail thorique eectu apporte
des rponses la problmatique de dveloppement de situations. Cette partie se veut
donc le tmoin de notre ancrage dans une recherche didactique o la thorie est motive
par le dveloppement doutils denseignement. Elle permet aussi une ouverture sur nos
perspectives de travail actuelles.
205
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
206
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Chapitre 9
Problmes fondamentaux - Vers des
situations pour lalgorithme
Sommaire
Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
1 Problmes fondamentaux . . . . . . . . . . . . . . . . . . . . . . . 208
1.1 Problmes et dialectique outil-objet . . . . . . . . . . . . . . . . 208
1.2 La notion de problme fondamental . . . . . . . . . . . . . . . . 209
2 Quelques propositions de problmes . . . . . . . . . . . . . . . . 211
3 Quels types de situations pour lalgorithme ? . . . . . . . . . . . 215
3.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
3.2 SiRC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
3.3 Problmes doptimisation . . . . . . . . . . . . . . . . . . . . . . 216
4 Une proposition de situation . . . . . . . . . . . . . . . . . . . . . 217
4.1 Le problme des peses . . . . . . . . . . . . . . . . . . . . . . . 217
4.2 Analyse mathmatique du problme . . . . . . . . . . . . . . . . 218
4.3 Un problme fondamental . . . . . . . . . . . . . . . . . . . . . . 227
4.4 Analyse a priori de la situation . . . . . . . . . . . . . . . . . . . 228
Conclusion et perspectives . . . . . . . . . . . . . . . . . . . . . . . . . 232
Introduction
La partie prcdente sest intresse lanalyse de la transposition du concept algorithme
dans lenseignement de mathmatiques au lyce. Les principaux rsultats montrent une
forte distance entre le concept enseign et celui du savoir savant. En particulier, lalgo-
rithme est essentiellement outil et vit principalement dans le paradigme AI et dans des
activits de programmation.
Nous souhaitons proposer des situations didactiques
1
qui mettent en jeu lalgorithme,
la fois comme outil et comme objet. tant donns les liens privilgis entre algorithme et
problme et entre algorithme et preuve, nous pensons que les situations proposes doivent
mettre en jeu une activit de preuve ou de recherche dans un contexte de rsolution de
problme. Pour construire de telles situations, il nous semble important de considrer des
problmes de P
a
qui soient susamment riches au niveau pistmologique. Pour cela, les
1. Dans la suite du chapitre nous dirons simplement situation pour situation didactique
207
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
modles proposs dans la premire partie sont un guide indispensable
2
. Ce questionnement
a t prsent en deux temps :
Question Q8. Comment caractriser les problmes fort potentiel pour lalgorithmique
laide du modle pistmologique dvelopp ? Quels critres doivent-il vrier ? Quels
problmes rpondant ces critres peut-on proposer ?
Question Q9. Quels lments pistmologiques sont prendre en compte pour construire
des situations autour de lalgorithme ? Quelles situations peut-on proposer ?
La rponse ces questions est un travail en cours. Nous nous restreindrons ici faire
des propositions de problmes et nous nous concentrerons sur lapport de nos modles
pistmologiques pour la conception et lanalyse de situations pour la classe autour de
lalgorithme.
1 Problmes fondamentaux
1.1 Problmes et dialectique outil-objet
Les problmes : au cur de lactivit algorithmique
Dans lanalyse pistmologique par aspects, nous avons insist sur limportance de las-
pect problme pour le concept algorithme. Plus prcisment, le concept algorithme ne
prend son sens que sil permet de rsoudre une famille dinstances dun problme. Cet
aspect est fondamental, et le dveloppement de situations pour lalgorithme doit mettre la
notion de problme au centre de lactivit.
Lors du dveloppement du modle des -conceptions au chapitre 3, nous avons propos
une dnition dun problme, reprise de (Giroud, 2011), et inspire de la thorie de la
complexit algorithmique :
Un problme p est un couple (I, Q), o I est lensemble des instances du
problme et Q une question portant sur ces instances (et spciant les
proprits de la solution attendue).
Cette notion de problme, dans le cadre du modle cK,c, nous a permis de spcier dirents
ensembles de problmes en prcisant leurs rapports lalgorithme. En particulier, grce
aux familles P
a
et P, nous avons pu prciser la dualit outil-objet
3
.
Dialectique outil-objet
La dualit outil-objet peut tre un outil ecace pour slectionner des problmes adapts
la construction de situations. Les problmes de P
a
qui peuvent aussi tre lobjet de
problmes de P
4
sont de bons candidats pour mette en place une dialectique outil-objet.
Nous direncions la dualit outil-objet, qui dcrit deux statuts dirents de lalgorithme,
de la dialectique outil-objet, qui sintresse la relation quentretiennent ces deux statuts.
2. Comme nous lavons prcis en introduction, cest la construction de situations qui est lorigine des
questionnements pistmologiques.
3. Rappelons que P
a
reprsente lensemble des problmes algorithmiquement rsolubles et P lensemble
des problmes dalgorithmique, cest--dire qui portent sur des algorithmes ou des problmes de P
a
. Dans
la rsolution de P
a
, lalgorithme est outil, dans P lalgorithme est objet.
4. Ces problmes de P prendrons en instance le problme de P
a
ou un algorithme rsolvant ce dernier.
208
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Nous avons un peu abord les interactions entre algorithme-outil et algorithme-objet dans
la premire partie, mais la faon dont algorithmes outils et objets interagissent dans lac-
tivit et les allers-retours qui permettent la construction dun algorithme et sa validation
demanderaient dtre tudis plus en dtail
5
.
Il nous semble quun des objectifs dune situation pour lalgorithme peut tre de faire
entrer llve
6
dans cette dialectique, autrement dit de mettre en jeu la relation entre des
problmes de P
a
et des problmes de P.
1.2 La notion de problme fondamental pour lalgorithme
Une nouvelle famille de problmes
Cela nous amne dnir une nouvelle famille, celle des problmes adapts la construc-
tion de situations pour lalgorithme par la richesse de lactivit quils permettent. Nous
noterons cette sous-famille P
fa
, pour problmes fondamentaux pour lalgorithme.
Le terme fondamental fait volontairement rfrence la notion de situation fondamentale
de la thorie des situations didactiques :
Situation fondamentale (correspondant un savoir)
Cest un schma de situation capable dengendrer par le jeu des variables didac-
tiques qui la dterminent, lensemble des situations correspondant un savoir
dtermin. Une telle situation, lorsquon peut lidentier, ore des possibilits
denseignement mais surtout une reprsentation du savoir par les problmes o
il intervient permettant de restituer le sens du savoir enseigner. (Brousseau,
2010, p. 1)
Dans notre cas, il sagit prcisment didentier les problmes o intervient le concept al-
gorithme et permettant de restituer son sens .
Nous considrons que ces problmes doivent tre des problmes de P
a
, an que soit en jeu
la relation problme-algorithme. Cest en questionnant cette relation entre le problme et
un algorithme le rsolvant quentrent en jeu le problme p
0
et la famille P.
Le schma propos au chapitre 3, enrichi de la famille P
fa
, devient :
P
P
a
P
p
0
P
ca
P
cp
P
fa
5. De manire gnrale, il nous semble que le concept-problme, propos par Giroud (2011), en per-
mettant dexpliciter les relations entre les problmes, constitue un cadre favorable lexplicitation de la
dialectique outil-objet.
6. Nous utiliserons lve comme terme gnrique pour dsigner le sujet dans les situations.
209
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Caractristiques
Caractriser lensemble P dune conception donne est complexe :
La dicult est de caractriser une conception par les problmes dans lesquels
elle est implique, soit par des problmes gnrateurs, soit par les caractris-
tiques de sa sphre de pratique. [...] il sagit de trouver une solution qui permette
dviter de renvoyer un ensemble de situations trop large (comme ce pourrait
tre le cas chez Vergnaud), tout en vitant galement dassocier une concep-
tion un ensemble de problmes spciques mais dicilement constructible
(comme le suggre Brousseau partir du concept pistmologique de situation
fondamentale). (Balache & Margolinas, 2005, p. 7-8)
Caractriser P
fa
soulve les mmes dicults. Nous proposerons simplement quelques
critres importants que lon peut attendre dun problme fondamental pour lalgorithme :
Il est rsoluble algorithmiquement ( P
a
).
Le concept dalgorithme est indispensable sa rsolution.
Il soulve des problmes dans P (en particulier, autour de la complexit).
Nous ajoutons deux critres non-ncessaires mais pouvant contribuer la richesse dune
situation qui se baserait sur ce problme :
Il met en jeu ou peut tre trait dans plusieurs paradigmes :
Un problme peut tre riche algorithmiquement en ne mettant en jeu quun para-
digme mais les changements de paradigmes nous semblent enrichir lactivit et la
manipulation du concept algorithme
Il soulve de nouveaux problmes dans P
a
:
On peut imaginer quun algorithme fondamental ne soulve pas directement dautres
problmes de P mais le passage dun problme un autre et les direntes relations
que peuvent entretenir deux problmes algorithmiques apportent une dimension sup-
plmentaire au problme.
Reprenons quelques exemples rencontrs dans les ressources pour le lyce :
Le calcul de la somme des n premiers entiers nentre pas dans P
fa
: la notion dal-
gorithme nest pas indispensable sa rsolution.
De manire gnrale, formules, traductions de fonctions et programmation de suites
nentrent pas dans P
fa
: ce sont simplement des expressions dautres concepts dans
un cadre algorithmique.
Les problmes de recherche qui ne proposent quun parcours linaire de lensemble
(comme le problme de recherche du maximum dune liste) nentrent probablement
pas dans P
fa
, tant donn quils soulvent trs peu de questions dans P (en particulier
au niveau de la complexit).
Les programmes de modlisation-simulation et les algorithmes-instancis
nentrent pas dans P
fa
: il sagit simplement dautomatiser une tche fastidieuse ou
rptitive et la relation au problme est ambige.
La recherche du pgcd, les problmes de tri, les problmes menant la dichotomie
sont trs certainement dans P
fa
.
210
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Identication dun problme fondamental
Une description de tous les problmes de P
fa
ntant pas envisageable, la question diden-
tier un problme comme fondamental se pose. Il est souvent facile de justier quun
problme nest pas fondamental pour lalgorithme (en montrant quil invalide lun de nos
critres). Il est bien plus dicile de prouver quun problme est dans P
fa
. Cela demande
une analyse pistmologique et mathmatique pousse.
Nous prsenterons des problmes qui nous semblent pouvoir prtendre au titre de problme
fondamental pour lalgorithme. Ils forment un ensemble de pistes pour le dveloppement
de situations et nous nallons pas les analyser en dtail ici.
Nous dvelopperons lanalyse dun lment de P
fa
an dillustrer notre propos
7
. Nous
discuterons de la faon dont ce problme peut fournir une situation pour la classe.
2 Quelques propositions de problmes
Nous proposons maintenant un ensemble de problmes, qui appartiennent certainement
P
fa
. Nous prsenterons les problmes et les questions quils peuvent mettre en jeu. La
majorit de ces problmes se placent dans le champ des mathmatiques discrtes ou des
champs voisins. Les rsultats des chapitres prcdents laissent penser quil est plus dicile
de proposer des problmes fondamentaux ailleurs.
Certains problmes mettent en jeu des concepts mathmatiques avancs tandis que dautres
sappuient sur des notions relativement simples. Notre objectif nest pas uniquement de
produire des situations pour le lyce, cest pourquoi nous proposons des problmes trs
divers.
Pour faciliter la comprhension, nous ne dcrirons pas les problmes en donnant lensemble
des instances mais en donnant une instance gnrique. Il faut comprendre que le problme
porte sur toute instance de ce type
8
.
Gomtrie algorithmique
La gomtrie algorithmique sintresse la production et ltude dalgorithmes pour des
problmes de gomtrie, qui mettent gnralement en jeu un nombre arbitraire dobjets
(nuages de points, polygones avec un nombre quelconque de sommets, ensembles de droites,
etc.). Linstance est souvent une famille de taille arbitraire de ces objets. Souvent, lalgo-
rithme est ncessaire pour rsoudre le problme pour toute instance.
Les problmes de gomtrie peuvent tre traits dans AM ou dans AI et soulvent des
questions de reprsentation des objets. Certains problmes dexistence peuvent tre traits
dans PA.
Enveloppe convexe :
Instance : Un ensemble ni de points du plan
Question : Quels sont les points qui dcrivent lenveloppe convexe de lensemble ?
7. Et de prouver P
fa
= .
8. Instance : 2 entiers signie que lensemble des instances est N
2
ou Instance : une famille nie
de points du plan signie que lensemble des instances est lensemble des familles nies de points. La
description peut vite devenir pesante.
211
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Sandwich discret :
Instance : Deux ensembles de points (rouges et bleus) dans le plan de cardinaux pairs
Question : Existe-t-il une droite qui partage chacun des ensembles en deux parties de
mme taille ?
Variante avec une seule couleur.
Ghostbusters :
Instance : Un ensemble de points blancs et un ensemble de points noirs de mme
cardinal, dans le plan
Question : Peut-on associer chaque point blanc un point noir de manire ce que
les segments obtenus ne sintersectent pas ?
Coloration :
Instance : Un ensemble de droites du plan
Question : Combien de couleurs faut-il au minimum pour colorier les rgions dlimi-
tes sans avoir deux couleurs adjacentes ?
Droite discrte :
Instance : Les coordonnes de deux pixels du plan discret
Question : Quels sont les pixels qui appartiennent la droite passant par ces deux
points ?
Dcoupage de polygones :
Instance : Deux polygones
Question : Peut-on dcouper le premier polygone en un nombre ni de morceaux et
les assembler pour obtenir le second?
Mthodes de recherche
Dichotomie :
Instance : Une liste trie
Question : Comment savoir si un lment est prsent dans la liste ?
On veut obtenir la rponse en faisant le moins de requtes possible.
Mastermind
Le jeu du Mastermind consiste deviner un code compos de quatre couleurs choisies
parmi huit. chaque proposition, ladversaire rpond en donnant le nombre dlments
du code justes (bonne couleur en bonne position) et le nombre de couleurs prsentes mais
mal places.
Instance : Un code choisi par ladversaire
Question : Comment retrouver le code de ladversaire ?
On veut, bien sr, rpondre la question en utilisant le moins de demandes possible.
212
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Cherchez la frontire
Sur une grille, une frontire peut tre une ligne horizontale, verticale ou diagonale et spare
deux territoires (rouge et bleu ). Par exemple :
ou ou ou
La frontire nest pas connue et lon peut interroger les cases une par une pour connatre
leur couleur.
Le problme peut tre formul comme ceci :
Instance : Un choix inconnu de frontire
Question : Comment retrouver la frontire ?
On cherche la mthode qui demandera le moins dinterrogations de cases.
Optimisation Combinatoire
Problme de tlspectateur :
Instance : Un ensemble dmissions dcrites par leur heure de dbut et de n
Question : Quel est le nombre maximal dmissions que lon peut regarder ? (on ne
peut pas regarder deux missions en mme temps)
Problme de pavages
On se donne une grille et une forme de pav.
Par exemple la grille et la forme .
Le problme est le suivant :
Instance : Une grille et une forme
Question : Combien de pavs au maximum peut on placer dans la grille ?
Arithmtique
pgcd de plusieurs entiers :
Instance : Un nombre ni dentiers
Question : Quel est leur pgcd ?
Problme de Frobenius :
Instance : Un systme de pices de monnaie
Question : Quelles sommes peut-on payer dans ce systme montaire ?
Graphes
Coloration :
Instance : Un graphe
Question : Combien de couleurs faut-il au minimum pour colorier le graphe sans que
deux sommets voisins soient de la mme couleur ?
213
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Euler :
Instance : Un graphe
Question : Existe-t-il un cycle eulrien?
Thorie des jeux
Les stratgies en thorie des jeux peuvent tre vues comme des algorithmes. Les paradigmes
AM et PA peuvent tre en jeu. Nous avons vu que AI ntait pas toujours trs adapt la
thorie des jeux.
Ici, le problme est toujours :
Instance : Une situation du jeu
Question : Peut-on gagner coup sr ? Avec quelle stratgie ?
Variante : On peut chercher la stratgie permettant de gagner le plus rapidement.
Nim
Plusieurs tas dallumettes sont disposs devant les deux joueurs. tour de rle, chaque
joueur peut prendre autant dallumettes quil veut dans un seul tas. Le joueur qui ne peut
plus jouer perd.
Wytho
Deux tas dallumettes sont placs devant les joueurs. Les rgles sont les mmes quau jeu
de Nim mais lon peut aussi retirer un mme nombre dallumettes au deux tas.
Solitaires
Pour les solitaires, cest aussi la stratgie gagnante qui peut tre vue comme un algorithme.
Le problme est toujours :
Instance : Une situation
Question : Peut-on nir avec un seul pion ?
Solitaire classique
On joue sur une grille, avec des pions partout sauf sur une case. On peut manger un pion
en le sautant avec un autre : (dans les quatre directions)
Clobber
On joue sur une grille, avec des pions noirs et blancs. Si un pion blanc et un pion noir sont
voisins, le pion blanc peut manger le noir en prenant sa place ou le pion noir peut manger
le blanc en prenant sa place :
ou (dans les quatre directions)
Autres
Taquin
On se donne deux grilles colores et un ensemble de rgles qui sont des permutations
dlments. Par exemple, on se donne les grilles :
214
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
A B D
D A D
C B B
A A C
et
D B A
A B A
B C D
C D A
et les rgles 1 2 3 3 1 2 et
1
2
3

3
1
2
Le problme se pose ainsi :
Instance : Deux grilles colores et un ensemble de rgles
Question : Peut-on passer dune grille lautre avec les rgles proposes ?
3 Quels types de situations pour lalgorithme ?
3.1 Objectifs
Notre but est de dvelopper des situations pour lalgorithme. Nous lavons vu, le concept
algorithme est indissociable de la notion de problme. Toute situation pour lalgorithme se
doit de mettre le problme au centre des questions.
Cependant, lpistmologie de lalgorithme rvle dautres lments qui doivent guider la
conception de situations. En particulier le lien privilgi la preuve et la spcicit des
problmes de P doivent tre pris en compte. Nous avons dj abord ces questions concer-
nant le choix des problmes mettre en jeu dans les situations. Nous voulons voquer ici
les implications sur lorganisation des situations elles-mmes.
Preuve La preuve intervient de diverses manires autour du concept algorithme et nous
pensons quune situation pour lalgorithme doit porter un enjeu de preuve. Cela implique
que la situation mette llve en position de rechercher et de construire la validation de son
travail. En particulier, il nous semble cohrent que le problme p
0
puisse merger. De tels
enjeux ncessitent une activit sur un temps long et une gestion adapte.
Dialectique outil-objet Pour que lalgorithme soit en jeu dans une situation, il nous
semble indispensable quil ne soit pas uniquement prsent en tant quoutil. La question
de preuve dont nous venons de discuter contribue cela, ainsi que les problmes de P
(de complexit en particulier). Des situations mettant en jeu une dialectique outil-objet
demandent tre menes sur plusieurs sances et organises de manire favoriser cette
dialectique. Les allers-retours entre un mme algorithme tour tour outil et objet doivent
tre favoriss par le milieu.
Paradigmes AM et PA En nous concentrant sur les aspects de preuve et de dialectique
outil-objet, il nous semble que des situations pour lalgorithme doivent pouvoir se dtacher
de la programmation et du paradigme AI. Lutilisation de loutil informatique dans une telle
situation constitue un paramtre quil nous semble prfrable de dlaisser dans un premier
temps. Bien entendu, nous ne ngligeons pas son rle dans la construction du concept
algorithme et nous nexcluons pas de mettre en jeu linformatique dans des situations
futures.
215
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
3.2 Situations de Recherche en Classe (SiRC)
Les points que nous venons de soulever concernant les situations pour lalgorithme nous
amnent proposer des situations qui mettent les lves en situation de rsolution de pro-
blme en groupe, face un problme pour lequel ils peuvent adopter une dmarche proche
de celle du chercheur (essais-erreurs, conjectures, preuve, modication du problme, etc.).
Les Situations de Recherche en Classe (SiRC), se prtent particulirement bien ce type
dactivit.
Les travaux sur les SiRC proposent la caractrisation suivante (Grenier & Payan, 2003 ;
Godot & Grenier, 2004 ; Cartier, Godot, Knoll, & Ouvrier-Buet, 2006) :
(a) Le problme abord doit tre proche de questions de recherche vivantes.
(b) La question initiale doit tre facile daccs pour llve.
(c) Des stratgies dapproche simples doivent exister pour permettre dentrer dans une
dmarche de recherche.
(d) De nombreuses stratgies de recherche peuvent tre mises en place et les mthodes
de rsolution ne sont pas dsignes.
(e) Une question rsolue peut amener se poser dautres questions : il ny a que des
critres de n locaux.
Les SiRC correspondent aussi un type de situations particulier qui implique un travail
sur plusieurs sances et une gestion spcique.
Ces critres rpondent plusieurs de nos objectifs. Plus prcisment, la multiplicit des
stratgies possibles nous semble importante pour que la construction dalgorithmes, leur
validation, leur comparaison ou leur tude puissent vivre. Un autre lment, transversal
aux critres ci-dessus, nous semble important : laccessibilit du problme. Il nous semble
quune situation pour lalgorithme doit tre propose dans un cadre bien connu de llve
an de favoriser lmergence de questions concernant lalgorithme, sans que des notions
trop avances ne fassent obstacle celles vises.
3.3 Remarques sur les problmes doptimisation
Nous avons soulign lintrt dune dialectique outil-objet dans une situation pour lalgo-
rithme. Nous souhaitons voquer un certain type de problmes qui nous semble favorable
cette dialectique : les problmes de recherche dalgorithmes optimaux. De manire gnrale,
ils se prsentent ainsi :
Instance : Un problme p P
a
Question : Quel est lalgorithme le plus ecace pour rpondre p.
Selon p, il est ncessaire de prciser quel est le critre decacit que lon prend en compte.
Il nous semble que lenjeu doptimisation permet de mettre en uvre une dialectique outil-
objet, puisquil sagit la fois de construire un algorithme rpondant au problme, mais
aussi de garantir certaines proprits :
Lenjeu de validation de lalgorithme est renforc. Si lon propose un algorithme
meilleur quun prcdent, il faut tre sr quil rpond bien toutes les instances.
216
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
La complexit est au cur du problme sans que son calcul doive ncessairement tre
explicit.
Les algorithmes deviennent objets, lorsquon les comparent entre eux.
Prouver quun algorithme est optimal pour un problme donn demande souvent un
changement de point de vue (passage au problme dual, gnralisation, tude dun
algorithme gnrique qui rsout le problme, etc.) par rapport la preuve de sa
validit.
Le problme que nous allons prsenter est un problme doptimisation. Nous verrons dans
lanalyse mathmatique tous ces lments luvre.
4 Une proposition de situation pour lalgorithme
4.1 Le problme des peses
nonc
Voici le problme que nous allons tudier :
Dans un ensemble de pices indiscernables la vue et au toucher, se trouvent des fausses
pices. Les vraies pices psent toutes le mme poids, les fausses aussi mais leur poids
est dirent de celui des vraies. laide dune balance Roberval deux plateaux et sans
poids, peut-on retrouver les fausses pices ? Si oui, quelle est la mthode qui permet de les
retrouver en eectuant le moins de peses possible ?
Deux problmes sont noncs ici :
Le problme T
peses
de recherche des fausses pices qui est dans P
a
:
Instance : Un ensemble de pices contenant des fausses pices
Question : Peut-on retrouver les fausses pices ?
et celui de recherche de la meilleure mthode qui est dans P :
Instance : Un problme de P
a
Question : Quel est lalgorithme optimal pour le rsoudre ?
Ici, le problme doptimalit est instanci sur T
peses
.
On peut dnir plusieurs variantes de ce problme en jouant sur les variables suivantes :
Poids des fausses pices :
On sait au dpart que les fausses pices sont plus lourdes que les vraies (ou plus
lgres).
On ne sait rien.
Le nombre de fausses pices :
Fix lavance.
Compris dans un intervalle donn.
Non connu lavance.
Ce problme, tout comme la plupart de ses variantes, nest pas encore compltement rsolu
pour la recherche en mathmatiques (voir lanalyse mathmatique pour plus de dtails).
Nous limiterons notre tude quelques variantes de ce problme.
217
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Un problme adapt une SiRC?
Lnonc du problme ne fait appel aucune notion mathmatique avance mise part la
notion doptimalit, mais qui peut tre comprise dans un sens intuitif au dpart. Lappro-
priation de ce problme nous parat donc relativement facile.
De plus la construction dune mthode, mme grossire du point de vue de la complexit,
peut tre mise en place. Pour prouver quune mthode de recherche donne trouve toujours
les fausses pices, des raisonnements simples susent la plupart du temps (disjonction de
cas par exemple).
La question la plus dlicate semble donc tre celle de loptimalit. En eet elle soulve le
problme du choix dun critre doptimalit. Deux critres peuvent tre utiliss : la com-
plexit au pire et la complexit en moyenne.
La complexit au pire est le nombre de peses queectue un algorithme dans le pire des
cas. Autrement dit, la complexit au pire pour un algorithme donn est le nombre maxi-
mum dtapes (ici les peses) quil eectue, maximum calcul sur lensemble des instances
dune taille donne (ici pour un nombre x de pices).
La complexit au pire peut tre introduite sous forme dun jeu deux joueurs. Un joueur
cherche les fausses pices en proposant des peses et ladversaire dcide du rsultat de ces
peses (sans tre en contradiction avec les rsultats des peses prcdentes). Le joueur doit
trouver les fausses pices en utilisant le moins de peses possible, tandis que son adversaire
essaie de maximiser le nombre de peses.Nous ne nous intresserons pas ici au problme
de loptimalit pour la complexit en moyenne. Cela ne veut pas dire que cette question
nest pas intressante du point de vue mathmatique ou didactique.
Nous le verrons, la complexit au pire soulve dj des problmes riches. Elle demande
moins doutils mathmatiques (de probabilit notamment) pour tre manipule. Dans la
recherche actuelle, le problme est trait pour la complexit au pire.
On peut dj armer que le problme des peses rpond aux critres (a) et (b) des SiRC.
Nous avons aussi vu quil existe plusieurs variantes au problme, cela va dans le sens du
caractre (e). Enn, lanalyse mathmatique mettra en avant de nombreuses stratgies de
recherche envisageables. Cela montrera que ce problme rpond aux critres (c) et (d) et
conrmera le point (e).
Ce problme est donc adapt tre propos sous la forme dune SiRC.
4.2 Analyse mathmatique du problme
On sintresse maintenant aux direntes stratgies envisageables en fonction des variables
suivantes : le nombre de fausses pices et les informations sur leur poids :
Le nombre de fausses pices peut tre connu (1, 3, compris entre 0 et 2...) ou non.
Le poids de la fausse pice peut tre connu (plus lourd par exemple) ou non.
Dans notre tude on se limitera aux cas o le nombre de fausses pices nexcde pas un :
cest--dire lorsquil y a exactement une fausse pice ou au plus une fausse pice.
Pour des rsultats avec un plus grand nombre de fausses pices on pourra consulter par
exemple (Tosic, 1983) qui donne un encadrement du nombre maximum de peses pour
trouver 2 fausses pices plus lourdes parmi n, (Pyber, 1986) qui fait la mme chose pour
un nombre de pices m quelconque ou (Aigner & Li, 1997) qui anent les rsultats des
218
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
deux articles prcdents. Rappelons que de nombreuses variantes sont encore des problmes
ouverts.
Le problme des peses est un problme doptimisation. La rsolution dun tel problme
repose sur ltude de deux sous-problmes :
P
M
: Construire une mthode de recherche de la fausse pice pour un problme donn.
P
O
: Prouver loptimalit de la mthode. On distinguera parmi les stratgies de
rsolution de P
O
celles qui relvent dun argument doptimalit locale et celles qui
relvent dun argument doptimalit globale.
P
M
permet de travailler sur la condition susante et P
O
sur la condition ncessaire.
Parfois les deux sous-problmes sont traits simultanment : on construit une mthode et
sa construction prouve son optimalit. Ncessairement cela sappuiera sur un argument
doptimalit locale.
Pour le problme doptimalit P
O
on peut dnir le problme dual P

O
: si lon xe un
nombre de peses p, combien de pices peut-on traiter avec p peses ?
Parfois le passage P

O
pourra savrer fructueux pour rpondre P
O
.
On distingue les quatre problmes suivants :
P
1,+
: 1 fausse pice, plus lourde.
P
1,+/
: 1 fausse pice, plus lourde ou plus lgre.
P
0/1,+
: 0 ou 1 fausse pice, plus lourde.
P
0/1,+/
: 0 ou 1 fausse pice, plus lourde ou plus lgre.
Stratgies pour P
1,+
:
Dans une dmarche de recherche on est souvent amen tudier des petits cas an des-
sayer de mieux comprendre lenjeu du problme et de pouvoir, par exemple, mettre des
conjectures. Cela donne lieu la stratgie suivante :
Stratgie exprimentale S
exp
: on traite les petits nombres de pices (par exemple par
numration de cas). Cela peut aboutir des gnralisations formules comme conjectures.
Dautre part, pour un nombre de pices x, si lon a dj trait tous les cas plus petits, on
peut numrer toutes les peses possibles (de manire plus ou moins organise) et dduire
la mthode optimale pour ce cas. Cette mthode sappuie sur un argument doptimalit
locale. Elle devient trs vite fastidieuse mais permet davoir un grand nombre dexemples
sur lesquels sappuyer pour faire des conjectures ou les invalider.
Pour rpondre ces conjectures il convient de formaliser ce quest une pese. Un premier
point de vue est queectuer une pese cest prendre deux ensembles de pices de mme
taille et de les comparer pour savoir lequel des deux est le plus lourd. Cette vision peut
donner lieu la stratgie :
Stratgie de dichotomie S
1
dicho
: pour traiter n pices, on compare
n
2
| pices sur
chaque plateau. Le dsquilibre permet de garder
n
2
| pices tester, on ritre ensuite le
processus. Si n est impair, un quilibre de la balance est possible et indique que la fausse
pice est celle laisse de ct. Cela donne un algorithme en log
2
(n)| peses au pire.
219
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Cette stratgie ne conduit pas un algorithme optimal, il sut pour sen convaincre de
regarder le problme pour 9 pices. Avec S
1
dicho
il faudra 3 peses alors que S
exp
donne une
mthode en 2 peses. Loptimalit de cet algorithme peut reposer sur la conception errone :
plus on pse de pices la fois plus on est ecace (argument doptimalit locale). En fait
cette mthode ne tient pas assez compte du fait quune pese donne aussi de linformation
sur lensemble des pices non peses.
En eet, eectuer une pese cest faire 3 tas : 2 de mme taille A et B que lon compare
et 1 tas C que lon laisse de ct. Alors 3 rsultats sont possibles :
A est plus lger que B et alors B contient la fausse pice.
A est plus lourd que B et alors A contient la fausse pice.
A et B sont de mme poids et cest le tas C qui contient la fausse pice.
En sappuyant sur cette observation, on peut mettre en uvre la stratgie suivante :
Stratgie de trichotomie S
tricho
: on divise le tas de pices restantes en trois paquets
de mme taille , i.e. tels que [A[ = [B[ et [[A[ [C[[ 1.
Appelons lalgorithme ainsi obtenu /
1,+
.
Pour n pices, avec 3
k1
< n 3
k
, cet algorithme demande k peses, autrement dit
,log
3
(n)| peses. Cette mthode permet donc de traiter avec k peses jusqu 3
k
pices.
Proposition 1. Lalgorithme /
1,+
est optimal pour la complexit au pire.
On propose 3 preuves de ce rsultat :
Preuve 1 : chaque tape, si lon dcoupe lensemble des k pices restantes en 3 suivant
un autre dcoupage, il y aura un des paquets de taille suprieure ,
k
3
|. Selon le rsultat
de la pese, on peut se retrouver chercher la fausse pice dans ce paquet. Il faudra alors
autant ou plus de peses pour la trouver.
On peut formaliser cela avec une formule de rcurrence. En notant (n) le nombre de
peses ncessaires pour retrouver la fausse pice parmi n, on a :
(n) = 1 + min
2i+j=n
(max((i), (j)))
o chaque couple (i, j) reprsente une dcomposition possible de n en 2 tas de i pices que
lon pse et un tas de j pices laiss de ct.
Preuve 2 : Soit / un algorithme de recherche de la fausse pice pour P
1,+
. Construisons
larbre de dcision de / sur la donne de n pices : chaque nud reprsente une pese,
chaque branche reprsente un rsultat possible de la pese et relie cette pese la pese
suivante eectuer selon le rsultat obtenu. chaque feuille correspond une position de
la fausse pice parmi les n. La gure 9.1 donne une reprsentation dun tel arbre. Comme
/ est un algorithme pour P
1,+
, chaque position de la fausse pice correspond au moins
une feuille, i.e. en posant f le nombre de feuilles, on a n f.
Le nombre de peses au pire pour cet algorithme sur n pices correspond la profondeur
p de larbre. Comme chaque nud a au plus 3 ls, on a la formule suivante : f 3
p
do
n 3
p
. Donc / ne peut traiter plus de 3
p
pices en p peses, autrement dit on ne peut
traiter n pices en moins de ,log
3
n| peses.
Donc lalgorithme construit par S
tricho
est optimal.
220
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
nombre de feuilles f n
n
o
m
b
r
e
d
e
p
e
s

e
s
a
u
p
i
r
e
p
P
P
.
.
.
s s s
.
.
.
s s s
.
.
.
s s s
P
.
.
.
s s s
.
.
.
s s s
.
.
.
s s s
P
.
.
.
s s s
.
.
.
s s s
.
.
.
s s s
Figure 9.1 Larbre de dcision de lalgorithme /. Les nuds nots P reprsentent des peses,
les nuds nots s les rsultats en sortie de lalgorithme.
Preuve 3 : On passe au problme dual : combien de pices peut-on traiter avec p peses ?
Notons (p) le nombre maximal de pices que lon peut traiter avec au plus n peses.
Montrons que (p) = 3
p
par rcurrence.
On peut vrier que (0) = 1 et (1) = 3.
Supposons (p) = 3
p
et intressons-nous (p+1) : lors de la premire pese on va partager
les pices en 3 tas A, B et C, la pice pouvant tre dans chacun deux, il faut pouvoir ly
retrouver en p peses. Donc il faut [A[, [B[, [C[ 3
n
par hypothse de rcurrence et donc
(p + 1) = 3 3
p
= 3
p+1
.
Notons que la premire preuve sappuie sur un argument doptimalit locale alors que les
deux autres sappuient sur un argument doptimalit globale.
Une autre faon de concevoir une pese, est de ninterprter le rsultat que comme un
quilibre ou un dsquilibre, sans tenir compte de quelles pices sont sur le plateau le plus
lourd. Cela peut conduire la stratgie :
Stratgie par talon S
etal
: on utilise un ensemble E de pices identies comme vraies
pour tester un ensemble A de pices inconnues par comparaison. Soit les pices de A sont
vraies et elles sajoutent lensemble E des pices talons, soit on sait que A contient
la fausse pice et il ne reste plus qu la retrouver. Pour ce faire on peut, par exemple,
identier des bonnes pices dans A grce E et les enlever jusqu nen avoir plus quune.
Stratgie de passage par un autre problme S
prob
: on se ramne des problmes
dj traits ou qui paraissent plus simples (voire on dduit de leur optimalit celle de la
mthode construite).
Stratgies pour P
1,+/
:
On retrouve les stratgies S
exp
et S
prob
.
On retrouve S
tricho
avec une lgre variante : on divise le nombre de pices par 3 chaque
pese et lon pse les deux premiers tas. Sil y a quilibre, la fausse pice est dans le
troisime tas et on recommence lopration. Ds le premier dsquilibre de la balance, on
221
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
eectue une pese supplmentaire dun des tas avec des vraies pices pour savoir si la fausse
pice est plus lgre ou plus lourde puis on poursuit comme pour P
1,+
. Pour un nombre
de pices de dpart de la forme n = 3k +2, si ce dsquilibre survient la premire pese,
une vraie pice supplmentaire peut tre ncessaire, ou bien alors on peut comparer des
paquets de k pices la premire pese.
Si lon dispose dune pice supplmentaire, on obtient un algorithme en ,log
3
(n)| + 1 pe-
ses.
Si lon sinterdit une pice supplmentaire, on a un algorithme en ,log
3
(n)| + 2 peses si
n = 3k + 2, et en ,log
3
(n)| + 1 sinon.
On peut appliquer S
1
dicho
avec le mme genre de variante : en 2 ou 3 peses on cherche
savoir si la fausse pice est plus lgre ou plus lourde. Puis on applique la stratgie de
dichotomie dcrite pour P
1,+
.
Il est ncessaire, ici aussi, de se demander quelle information apporte une pese. Les deux
stratgies prcdentes sappuient sur la conception errone quune pese donne plus din-
formation une fois que lon connait le poids de la fausse pice et quil faut dterminer cette
information le plus tt possible. Si au contraire on ne cherche pas dterminer le poids
de la fausse pice, une pese peut tre vue comme dlivrant uniquement linformation : la
fausse pice est sur lun des plateaux (dsquilibre) ou elle est parmi les pices non peses
(quilibre).Cela justie alors les deux stratgies suivantes :
La stratgie S
etal
dj prsente : on utilise un ensemble E de pices identies comme
vraies pour tester des ensembles de pices inconnues par comparaison. Cette stratgie est
plus lgitime pour P
1,+/
car on noublie pas linformation du poids de la pice comme
cest le cas pour P
1,+
.
Stratgie de dichotomie S
2
dicho
: on pse
1
4
des pices sur chaque plateau. Sil y a ds-
quilibre, la fausse pice est sur la balance, sil y a quilibre elle est dans la moiti non
pese. Sil ne reste que deux pices on utilise une pice identie comme vraie pour la
dernire tape. On a ainsi un algorithme qui se comporte en log
2
(n).
Un argument erron doptimalit locale pourrait tre utilis pour justier cette mthode
comme la meilleure : en une pese on ne peut pas faire mieux que de diviser les pices en
2 ensembles.
Toutes les stratgies prsentes jusque-l pour P
1,+/
nutilisent pas toutes les informations
dlivres par une pese : lorsque lon eectue une pese on partage les pices en 3 ensembles
A, B et C avec [A[ = [B[ et on pse A et B. En cas dquilibre cest C qui contient la fausse
pice et on ne sait rien de plus. Par contre, en cas de dsquilibre on sait bien sr que la
fausse pice est dans AB, mais on sait aussi lequel de A ou de B pse le plus lourd. Cette
information peut avoir son utilit car une pice qui a t parmi les plus lourdes lors dune
pese et parmi les plus lgres dans une autre est ncessairement une vraie pice. Conser-
ver toutes ces informations aprs chaque pese peut donner lieu la modlisation suivante :
Modlisation par marquage des pices : pour conserver linformation on utilise un
marquage des pices aprs une pese dsquilibre : - pour les pices du ct le plus lger
et + pour les pices du ct le plus lourd. En fait le marquage + (respectivement - )
signie que la pice est soit vraie, soit fausse et plus lourde (respectivement soit vraie soit
fausse et plus lgre). Aprs une premire pese dsquilibre, on peut enlever les pices
222
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
de C et marquer les pices de A B. Se pose alors un nouveau problme :
P
M
1,+/
: Comment retrouver en utilisant le moins de peses possible, une fausse pice
parmi un ensemble de pices marques ?
Si au contraire la premire pese est quilibre, alors la fausse pice est dans C, et on
se pose le mme problme quau dpart avec une lgre dirence : on a maintenant
disposition un ensemble de vraies pices. Cela conduit sintresser au problme :
P
B
1,+/
: Comment retrouver en utilisant le moins de peses possible, une fausse pice de
poids inconnu, en ayant une bonne pice disposition.
Pour apprhender ces nouveaux problmes on peut employer des stratgies du type S
exp
,
S
1
dicho
, S
2
dicho
, S
etal
ou S
prob
. Mais cest en combinant la stratgie de trichotomie S
tricho
et
la modlisation par marquage que lon peut obtenir lalgorithme optimal pour le problme
P
1,+/
:
Voyons dabord comment trouver la fausse pice parmi un ensemble de pices marques
+ ou - . Passons au problme dual : combien de pices au maximum peut-on traiter
coup sr avec p peses ? Posons f
M
1,+/
(p) ce nombre de pices.
Proposition 2. f
M
1,+/
(p) = 3
p
.
Autrement dit, on peut retrouver la fausse pice en ,log
3
(n)| peses.
Preuve 4 : Montrons f
M
1,+/
(p) 3
p
:
Il y a 3
p
rsultats dirents pour une suite de p peses. Donc si lon traitait m > 3
p
pices,
on aurait 2 entiers i et j tels que les cas o la fausse pice est la i
e
ou la j
e
donneront la
mme suite de peses avec les mmes rsultats. Ces deux cas ne seraient pas discernables.
Montrons f
M
1,+/
(p) 3
p
en construisant une mthode qui peut traiter jusqu 3
p
pices
en p peses.
Raisonnons par rcurrence sur p : avec une pese on peut traiter 2 et 3 pices donc f(1) = 3.
Supposons que f(p 1) = 3
p1
. Si lon a m 3
p
pices, alors on peut les partager en 3
ensembles A, B et C tels que lon ait, avec les notations [X[
-
et [X[
+
pour les nombres
de pices marques - et + dans lensemble X :
[A[ = [B[, [A[ 1 [C[ [A[ + 1 et [A[
-
= [B[
-
(et donc [A[
+
= [B[
+
).
On pse les ensembles A et B :
Sil y a quilibre, la fausse pice se trouve dans C et on peut la retrouver en p 1 peses
car [C[ 3
p1
.
Sil y a dsquilibre, par exemple si A est plus lger que B, la fausse pice se trouve parmi
les pices marques - de A ou parmi les pices marques + de B. Cela reprsente un
ensemble de [A[
-
+[B[
+
= [A[ 3
p1
pices que lon sait traiter en p 1 peses.
Donc on sait traiter nos m pices en p peses. Cela conclut la rcurrence et prouve la
proposition.
Remarque : Dans le cas prsent, lorsque lon trouve la fausse pice, on sait si elle est plus
lourde ou plus lgre.
Revenons au problme gnral o les pices ne sont pas marques au dpart et passons au
problme dual en posant :
223
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
f
1,+/
(p) : le nombre maximum de pices, non forcment marques, parmi lesquelles on
peut trouver la fausse pice en p peses.
f
B
1,+/
(p) : le nombre maximum de pices, non forcment marques, parmi lesquelles on
peut trouver la fausse pice en p peses en ayant disposition une bonne pice supplmen-
taire.
Proposition 3. f
B
1,+/
(p) =
3
p
+ 1
2
et f
1,+/
(p) =
3
p
1
2
.
Autrement dit, une mthode optimale pour P
1,+/
avec n pices, utilise ,log
3
(2n + 1)|
peses.
Preuve 5 : Pour faciliter la lecture de cette preuve, on pose f
1,+/
= g et f
B
1,+/
= h. On
a g(1) = 1 et h(1) = 2.
Soit un ensemble de m pices que lon sait traiter en k peses. Faire une premire pese,
cest partager les pices en 3 ensembles A, B et C tels que [A[ = [B[ et comparer A et B.
Sil y a quilibre, la fausse pice est dans C et on dispose de bonnes pices dans A B,
donc on sait traiter C en p 1 peses ssi [C[ h(p 1).
Sil y a dsquilibre, par exemple si A est plus lourd que B, on marque + les pices de A
et - les pices de B et la fausse pice se trouve dans A B. On peut alors traiter A B
en p 1 peses ssi [A[ +[B[ f(p 1) = 3
p1
.
Donc m = [A[ +[B[ +[C[ h(p 1) +f(p 1)
Mais f(p 1) est un nombre impair donc on ne peut jamais partager f(k 1) pices
en 2 ensembles A et B de mme taille. Donc sans bonne pice disposition on a :
m h(p 1) +f(p 1) 1 et donc g(p) = h(p 1) +f(p 1) 1.
Par contre, si lon dispose dune bonne pice supplmentaire, on peut la rajouter aux
f(p 1) autres pour galiser les tailles des ensembles sur la balance.
Alors on a m+ 1 h(p 1) +g(p 1) + 1 et donc h(p) = h(p 1) +f(p 1).
On obtient : h(p) = f(p1)+f(p2)+...+f(1)+h(1) = 3
p1
+3
p2
+...+1+1 =
1
2
(3
p
+1).
On en dduit g(p) = h(p 1) +f(p 1) 1 = h(p) 1 =
1
2
(3
p
1).
Cela donne lalgorithme suivant, pour n pices non marques :
On partage les pices en trois ensembles A, B, C tels que [A[ = [B[,
[A[ 1 [C[ [A[ + 1 et on pse A et B.
Sil y a dsquilibre on marque les pices - et + et on applique la
trichotomie sur A B.
Sinon on pose [C[ = m.
Si m = 3k + 2 on partage C en 3 ensembles A

, B

, C

avec
[A

[ = k, [B

[ = [C

[ = k +1. On pse alors B

et A

avec une
bonne pice.
Sinon on partage C en 3 ensembles A

, B

, C

avec [A

[ = [B

[,
[A

[ 1 [C

[ [A

[ + 1 et on pse A

et B

.
Sil y a dsquilibre on marque les pices - et + et on
applique la trichotomie sur A

.
Sinon on ritre sur C

le procd appliqu C.
/
1,+/
: algorithme optimal pour P
1,+/
Remarque : avec 3 peses on peut traiter jusqu 13 pices et, ds 5 pices, 3 peses sont
ncessaires. En observant larbre de dcision de cet algorithme sur 13 pices (voir gure
224
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
9.2) on constate que si lon a un quilibre la premire pese on se ramne chercher
une fausse pice parmi 5 pices non marques (sous-arbre encadr en pointills). Il faut
2 peses supplmentaires pour la trouver, alors que pour le problme 5 pices il faut 3
peses (car on ne dispose pas dune vraie pice supplmentaire).
1, 2, 3, 4 5, 6, 7, 8
1

, 2

, 5
+
3

, 4

, 6
+
1

<
2

>
6
+
=
<
3

<
4

>
5
+
=
>
7
+
1
=

<
7
+
>
8
+
=
=
<
1
+
, 2
+
, 5

3
+
, 4
+
, 6

3
+
4
+
4
+
<
3
+
>
5

=
<
1
+
2
+
2
+
<
1
+
>
6

=
>
7
+
1
=
7

<

>
8

=
=
>
9, 1
=
10, 11
10
+
11
+
10
+
<
11
+
>
9

=
<
10

11

11

<
10

>
9
+
=
>
1
=
12
12

<
12
+
>
13
=
=
=
1, 2 3, 4
1

<
2

>
3
+
4
+
4
+
<
3
+
>

=
=
<
5
=
1
+
2
+
2
+
<
1
+
>
3

<
4

>

=
=
>
x pice non marque.
x
+
pice marque + .
x

pice marque - .
x
=
pice identie comme bonne.
Figure 9.2 Larbre de dcision de lalgorithme optimal pour P
1,+/
, pour 13 pices et
pour 5 pices.
Sans passer par le problme dual, il est dicile de rsoudre le sous-problme doptimalit
P
O
. Cependant on peut tout de mme obtenir des rsultats partiels intressants :
Proposition 4. Soit p(n) le nombre de peses minimum pour traiter n pices. On a len-
cadrement suivant :
,log
3
(2n 1)| p(n) ,log
3
(n)| + 1
Preuve 6 : Soit / un algorithme pour le problme P
1,+/
. Lorsque / identie une pice
comme tant la fausse, il dtermine ncessairement si elle est plus lourde ou plus lgre,
lexception ventuellement de lune des pices dont le poids restera inconnu. Autrement
dit, il existe au plus une pice qui peut tre repre comme tant la fausse par / sans tre
passe sur la balance (on peut le voir sur la gure 9.2).
En eet, supposons le contraire et imaginons que cest le cas pour au moins 2 pices i et j.
Si lune de ces 2 pices est la fausse, toute pese eectue par / donnera un quilibre car
ni i ni j ne sera sur la balance. / ne pourra pas dterminer qui de i ou de j est la fausse,
ce qui est absurde.
Sur n pices, un algorithme pour P
1,+/
discerne donc au moins 2n1 possibilits. Nces-
sairement il doit utiliser au moins ,log
3
(2n1)| peses (voir la preuve 2 de la proposition
1), ce qui donne la premire ingalit.
225
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
La deuxime ingalit provient dune majoration de la complexit de lalgorithme dcrit
plus haut. Si lon note C(n) la complexit au pire de lalgorithme pour n pices on montre :
C(n) 1 + max

log
3

2
n
3

, C

n
3

Soit 3
p1
< n 3
p
, montrons par rcurrence sur p que C(n) ,log
3
(n)| + 1.
Si p = 1, n = 3 et la proprit est vraie.
Supposons-la vraie jusquau rang p et soit 3
p1
< n 3
p
. Daprs la formule ci-dessus on
a :
C(n) C(3
p
) 1 + max(,log
3
(2.3
p1
)|, C(3
p1
))
Donc C(n) 1 + max(p, p 1 + 1) = p + 1 = ,log
3
(n)| + 1. Do le rsultat.
Remarque : (,log
3
(n)| + 1) ,log
3
(2n 1)| 0, 1, ce qui est assez satisfaisant.
Stratgies pour P
0/1,+
:
On peut utiliser les stratgies S
exp
, S
etal
et S
prob
.
On peut aussi utiliser des variantes des stratgies S
tricho
et S
1
dicho
: si lon na eu que des
quilibres jusqu la n et quil restait 1 pice la dernire pese, une pese supplmentaire
est ncessaire pour dterminer si la pice non pese est fausse ou sil ny avait aucune fausse
pice.
Stratgies pour P
0/1,+/
:
On peut utiliser les stratgies S
exp
, S
etal
et S
prob
.
On peut adapter les stratgies S
tricho
, S
1
dicho
, S
2
dicho
et S
marq
: si lon na eu que des
quilibres jusqu la n et quil restait 1 pice la dernire pese, une pese supplmentaire
est ncessaire pour dterminer si la pice non pese est fausse ou sil ny avait aucune fausse
pice.
Stratgies pour P
O
:
Certaines stratgies pour la preuve de loptimalit ont dj t prsentes. On les reprend
ici avec dautres. Certaines peuvent se combiner. On distinguera si elles sont du type P
L
O
ou P
G
O
.
P
L
O
: Preuve de loptimalit par un argument local sur chaque tape de la mthode.
P
G
O
: Preuve de loptimalit par un argument global (borne inf, ...).
Parfois la construction de la mthode et la preuve de son optimalit peuvent tre simulta-
nes.
Stratgie dnumration de tous les cas : elle sapplique de petits nombres de pices.
Lnumration peut tre faite de manire plus ou moins ne. Selon les cas on peut tre de
type P
L
O
ou P
G
O
.
Stratgie optimum local optimum global : on prouve que chaque tape est op-
timale et on en dduit que lalgorithme est optimal. Elle est formellement incorrecte car
226
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
pour certains problmes faire le mieux une tape peut mener une conguration qui
ncessite plus doprations. Elle est du type P
L
O
.
Stratgie par rcurrence : on tablit une relation de rcurrence sur le nombre de pices
au dpart. Par exemple, on passe de P
0/1,+/
P
1,+/
en faisant le minimum de peses puis
on applique un algorithme optimal pour P
1,+/
. On conclut que cette nouvelle mthode
est optimale. Elle est incorrecte pour les mmes raisons que la prcdente. Largument est
de type P
L
O
.
Stratgie par borne infrieure atteinte : on montre que le nombre de peses nces-
saires dans notre mthode est un minorant du nombre de peses ncessaires (par exemple
en construisant un arbre de choix de lalgorithme) : elle est du type P
G
O
.
Stratgie du sous-problme optimal : on sest ramen un autre problme dont on
connat une solution optimale et on en dduit loptimalit. On peut tre du type P
L
O
ou P
G
O
.
Stratgie de passage au dual : on cherche le plus grand nombre de pices quon peut
traiter avec un nombre x de peses. On peut ensuite faire appel aux direntes stratgies
doptimalit ci-dessus, de type P
L
O
ou P
G
O
.
4.3 Un problme fondamental
Critres de P
fa
Le problme des peses rpond bien aux critres que nous avons proposs pour P
fa
:
Il est rsoluble algorithmiquement.
Le concept dalgorithme est indispensable sa rsolution.
Il soulve des questions dans P.
Ces points sont ncessairement vris du fait que lon est dans un problme doptimisation
dalgorithme.
De plus, le problme vrie les deux points supplmentaires :
Il met en jeu plusieurs paradigmes. Ici, AM et PA sont en jeu comme nous allons le
voir plus loin.
Il soulve de nouveaux problmes dans P
a
: de nombreuses variantes du problme
peuvent tre tudies, certaines savrent ncessaires la rsolution du problme (par
exemple la rsolution de P
1,+/
demande de rsoudre P
M
1,+/
).
-conceptions
Le modle de -conceptions permet, du point de vue du savoir savant, danalyser un pro-
blme et son lien lalgorithme. Cela constitue un outil ecace pour savoir si un problme
est fondamental.
Dans notre cas, lanalyse mathmatique du problme met en avant les conceptions AM-
outil, PA-outil, AM-objet et PA-objet. Nous dtaillons ici un ou deux exemples pour cha-
cune.
227
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
AM-outil
P P
1,+
P
1,+/
R
Algorithmes donns par les
stratgies S
1
dicho
, S
tricho
, S
etal
ou S
prob
.
Algorithme /
1,+/
.
L
Langage courant et langage mathmatique, exprimant les
manipulations sur les pices et leur organisation.

Justication que lon retrouve


la fausse pice tout les
coups : on limine un ensemble
de pices chaque pese qui
ne contient pas la fausse.
La preuve 5 garantit que lal-
gorithme trouve toujours la
fausse pice.
PA-outil
P P
1,+
P
M
1,+/
R
lments constructifs de la
preuve 3.
lments constructifs de la
preuve 4 (deuxime partie
).
L Langage mathmatique et oprations constructives.
Preuve 3.
Preuve 4 (deuxime partie
).
AM-objet
P
P
O
(P
1,+
, /
1,+
) : /
1,+
est-il
optimal pour P
1,+
?
C(/
1,+/
) : quelle es la com-
plexit de /
1,+/
?
R
Preuve 1 ou preuve 3 (oprant
sur P
1,+
et /
1,+
).
Preuve 6 (borne suprieure).
L Langage mathmatique.
Logique mathmatique.
AM-objet
P
C
min
(P
1,+
) : Donner un mino-
rant de la complexit de tout
algorithme pour P
1,+
.
R
Preuve 2, oprant sur un algo-
rithme gnrique pour P
1,+
.
L Langage mathmatique.
Logique mathmatique.
Ces conceptions mettent bien en vidence la prsence de lalgorithme-outil et de lalgorithme-
objet, des deux paradigmes AM et PA et de divers problmes de P
a
et de P. Cela soutient
lappartenance du problme des peses P
fa
.
4.4 Analyse a priori de la situation
Nous proposons une brve analyse a priori de la situation, en explicitant les direntes
variables en jeu et en exposant quelques hypothses sur le droulement de lactivit de
recherche des lves.
228
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Variables de la situation
On sintresse ici aux direntes variables de la situation, et notamment celles des deux
types suivants :
les variables de recherche,
les variables didactiques.
Les variables de recherche sont les variables de la situation qui sont disposition de llve
pour organiser son travail de recherche.
Llve se retrouve en eet en position de chercheur mais aussi en situation
de gestionnaire de sa propre recherche : cest lui qui choisit et modie les
valeurs des variables de recherche. (Cartier et al., 2006)
Elles dterminent la comprhension et lintrt de la question, son ouverture
de nouvelles questions, llargissement des stratgies de recherche, les possibi-
lits de transformation du problme (modlisation).(Grenier & Payan, 2003)
Les variables didactiques, parmi les variables de la situation, sont celles dont les modica-
tions peuvent provoquer un changement de stratgie chez llve. Daprs Brousseau :
Seules les modications qui aectent la hirarchie des stratgies sont consi-
drer (variables pertinentes) et parmi les variables pertinentes, celles que peut
manipuler un professeur sont particulirement intressantes : ce sont les va-
riables didactiques. (Brousseau, 1982, p. 23)
Dans la situation tudie, nous avons repr les variables didactiques suivantes.
Parmi les variables du problme :
Le nombre de fausses pices : le problme peut devenir relativement complexe. Si lon
sautorise plus dune fausse pice, par exemple, le problme avec 2 fausses pices nest ce
jour pas compltement rsolu.
Pour le problme o lon sait quil y a au maximum une fausse pice, pour nimporte quelles
valeurs des autres variables, on peut savoir si le nombre de fausses pices est 0 ou 1 en une
ou deux peses ce qui favorisera une stratgie du type S
prob
.
Au contraire, si lon sait quil y a exactement une fausse pice, la question de rechercher
une fausse pice qui nexiste peut-tre pas ninterfre plus et des stratgies comme S
dicho
ou S
tricho
pourront tre mises en place directement.
Le poids des fausses pices ou plutt les informations sur leur poids : si lon sait quelles
sont plus lourdes (ou plus lgres, cest le mme problme), ou si lon ne le sait pas, les
stratgies envisageables vont sensiblement direr.
Dans le problme P
1,+/
par exemple, ne pas connatre le poids de la fausse pice pousse
rechercher cette information avant de rechercher la fausse pice. Cela renforce la stratgie
S
prob
. Ou au contraire, on peut tre amen penser que le poids de la fausse pice ne peut
tre dtermin et se tourner vers une stratgie de type S
etal
, qui nutiliserait par exemple
que linformation que le poids de la fausse pice est dirent de celui dune vraie.
Si lon connat lavance le poids de la fausse pice (P
1,+
), la premire de ces stratgies
na pas de sens. La deuxime, bien que pouvant aboutir une mthode de recherche ac-
ceptable, sera eace par des stratgies moins complexes et utilisant toute linformation
sur le poids de la fausse pice (S
dicho
, S
tricho
, etc.).
229
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Le nombre de pices : lorsque lon veut rsoudre un cas particulier du problme avec
un nombre de pices x, ce nombre peut inuencer les stratgies.
Par exemple, un petit nombre de pices permet la stratgie S
exp
mais ds que lon sin-
terroge sur un grand nombre de pices, ce type de stratgie devient impossible mettre
en uvre (notamment une numration de tous les cas devient trs vite fastidieuse). Ou
encore pour les problmes P
1,+
ou P
0/1,+
, un nombre pair de pices poussera partager les
pices en 2 tas et toutes les peser ensemble et favorisera S
dicho
. De mme si lon cherche
sur un cas 3k +1 ou 3k +2 pices, S
tricho
peinera apparatre face dautres stratgies.
Ces trois variables, nombre de fausses pices, poids des fausses pices et nombre de pices
sont des variables de recherche de la situation. Ce sont ces variables, en particulier les
deux premires, qui permettent llve de manipuler les diverses variantes du problme
selon son choix o selon les problmes qui apparaissent dans la rsolution (notamment avec
la stratgie S
prob
). Le passage dun problme un autre et les relations entre dirents
problmes sont importants en algorithmique. Fixer ces variables pourrait dnaturer lacti-
vit de recherche et lenjeu algorithmique.
Parmi les autres variables de la situation :
Lnonc du problme : la prsentation du problme et lordre dans lequel sont pr-
sentes les direntes variantes peut avoir une inuence sur les mthodes de rsolution
choisies, de mme que le choix des exemples prliminaires qui peuvent tre proposs.
Par exemple si lon a cherch sur P
1,+/
et quensuite on regarde P
0/1,+/
, cela pourra
favoriser une stratgie de type S
prob
. Il en sera de mme si lon regarde le problme P
1,+/
aprs avoir trait P
1,+
.
Sil est propos de traiter des cas particuliers avant le cas gnral, et que pour ces cas par-
ticuliers plusieurs mthodes sont optimales, ou conduisent la mme succession de peses,
cela peut entraver la mise en uvre de certaines stratgies. Par exemple, la trichotomie et
le dcoupage qui laisse 2 ou 3 pices dans le troisime tas selon la parit du nombre total
de pices, donnent les mmes dcoupages pour 4, 5, 6, 7, 8 et 9 pices.
Le matriel disponible : la prsence dune balance Roberval et de pices peut avoir
une inuence sur la dvolution de lnonc du problme et sur la mthodologie de recherche.
Cela peut favoriser les stratgies de type S
exp
, mais cela peut aussi entraver le passage
des grands nombres de pices et crer des dicults numrer tous les cas possibles pour
un algorithme donn.
Stratgies attendues
Il nous semble que la stratgie la plus courante pour rpondre au problme P
1,+
sera S
dicho
.
Une bonne mthode pour la rejeter comme stratgie optimale peut tre la stratgie S
exp
qui
par exemple pour 9 pices permet de voir quune solution 2 peses existe. Alors dautres
stratgies, comme S
tricho
, pourront apparatre.
Nous faisons lhypothse que loptimalit de lalgorithme de trichotomie ne va pas appa-
ratre facilement et que si cest le cas ce sera par un argument doptimalit locale.
Concernant les autres variantes du problme, les stratgies principales seront, selon nous,
de se ramener au problme P
1,+
. La hirarchie des stratgies employes sera alors la mme
que pour P
1,+
. Les autres stratgies identies dans lanalyse mathmatique seront, pour
nous, minoritaires.
230
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Loptimalit des mthodes proposes risque de rester souvent sans preuve. Une preuve qui
pourra merger sera celle, errone, qui consiste dduire loptimalit de celle obtenue pour
P
1,+
. Cest encore un argument doptimalit locale.
Le calcul de la complexit des algorithmes proposs sera, daprs nous, souvent interrog
mais peut constituer un point dlicat.
Il nous semble quun temps de recherche long est ncessaire pour dpasser les obstacles ou
les dicults que nous venons de mentionner. Ces obstacles sont notamment lis au passage
de problmes de P
a
des problmes de P, caractristique de la dialectique outil-objet, et
au passage darguments doptimalit locale des arguments doptimalit globale.
En rsum nous mettons les hypothses suivantes :
H
1
: pour P
1,+
, la stratgie privilgie est S
dicho
; les stratgies S
exp
et S
tricho
viennent
plus tard.
H
2
: loptimalit de S
tricho
est dlicate et sera majoritairement aborde avec un argument
doptimalit locale.
H
3
: pour les autres variantes, la stratgie privilgie est S
prob
pour revenir P
1,+
.
H
4
: loptimalit dans les variantes aura du mal merger ; lorsquelle apparatra, elle
sera dduite de celle de P
1,+
.
H
5
: un temps long est ncessaire lapparition de problmes de P et lmergence
darguments doptimalit globale.
Pr-exprimentations
Des pr-exprimentations de cette situation ont dj t menes auprs de deux publics
dirents sur des temps courts (une heure une heure et demi).
Elles conrment cependant que lentre dans le problme est facile : tous les groupes ont
construit des algorithmes et ont prouv quils permettaient bien de retrouver la fausse pice.
De plus, les questions de P
a
et P sont souleves (complexit et optimalit) et lenjeu de
preuve est prsent. Cela nous permet dj darmer que ces problmatiques peuvent tre
dvolues au travers de cette situation.
Ces pr-exprimentations valident aussi les hypothses de lanalyse a priori. Les stratgies
privilgies sont celles attendues et loptimalit nest aborde que par largument local.
Il ressort aussi que le rapport de llve la preuve a une inuence sur la dvolution des
problmatiques de la situation et les stratgies adoptes.
Il est clair quun temps plus long sera ncessaire faire merger des stratgies plus avances.
Les rsultats des analyses des pr-exprimentations, dvelopps dans un travail prcdent
(mmoire de Master 2) sont prsents en annexe D. On y trouve des prcisions sur les stra-
tgies abordes qui montrent que le potentiel de la situation est rel pour lalgorithmique,
pour lactivit de recherche et pour la preuve.
Des outils pour permettre lanalyse de futures exprimentations en classe sont en dvelop-
pement. En particulier, tant donn le type dactivit attendu, il est ncessaire de proposer
des outils permettant dtudier nement lactivit de preuve et de rsolution de problmes.
231
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conclusion et perspectives
Bilan
Le travail pistmologique de la premire partie a permis de proposer des critres pour
caractriser les problmes propres fournir des situations didactiques. Nous les avons ap-
pels problmes fondamentaux pour lalgorithme.
Cela nous a permis de reprer un ensemble de problmes qui sont de bons candidats pour
cela. Nous avons tudi en dtail lun de ces problmes : le problme des peses.Nous avons
montr en quoi le modle de -conceptions permet danalyser un problme et dtudier son
potentiel. Lanalyse montre que le problme des peses peut tre un problme fondamental
pour lalgorithme.
Le problme des peses fournit une situation riche pour lalgorithme. Une SiRC est adapte
pour proposer ce problme et mettre en jeu lalgorithme dans une activit de recherche de
llve. Les rsultats dexprimentations courtes de ce problme nous poussent poursuivre
ltude, en exprimentant ce problme sur un temps plus long en classe.
Perspectives
Ce travail est encore en chantier et les poursuites et perspectives sont nombreuses.
Nous lavons dit, un de nos objectifs court terme est lexprimentation de la situation
des peses dans des classes. Nous souhaitons aussi poursuivre le dveloppement dautres
situations partir des problmes proposs.
Lobjectif long terme est de proposer une situation ou un ensemble de situations fon-
damentales pour lalgorithmique. La situation des peses tends faire partie de telles
situations, avec ses variantes ou dautres situations. La construction dune telle situation
sera soutenue par le cadre thorique construit dans les premiers chapitres.
Du ct thorique, lutilisation du modle de -conceptions pour ltude des problmes et
des situations pour lalgorithmique est poursuivre. Le concept-problme (Giroud, 2011)
nous semble tre une piste srieuse pour complter cette approche et permettre de mieux
apprhender la dialectique outil-objet dans lactivit algorithmique et dans dautres acti-
vits.
232
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Conclusions des recherches
Perspectives et nouvelles questions
La problmatique de lenseignement de lalgorithme, avec lintroduction de lalgorithmique
au lyce, mais avant tout pour son lien troit la preuve, nous a amen soulever plu-
sieurs questions lorigine de cette thse. Ces questions concernent lpistmologie de
lalgorithme, la transposition de lalgorithmique au lyce, et la construction de situations.
Nous allons revenir point par point sur ces questions et sur les rponses que nous leur
avons apportes. tudier ces questions nous a demand dintroduire des outils thoriques
ou den adapter dautres. Lutilisation de certains de ces outils peut aussi constituer un
rsultat sur lequel nous reviendrons.
Nous dtaillerons ensuite quelles nouvelles questions sont souleves et quelles perspectives
peuvent tre envisages.
1 Rsultats
1.1 pistmologie de lalgorithme
Un premier modle
Peu dtudes pistmologiques sur lalgorithme existent, en particulier dans une perspective
denseignement. En nous appuyant sur le texte du savoir savant, nous avons dabord tudi
la question :
Question Q1. Quels sont les lments constitutifs spciques du concept dalgorithme ? Quels sont
lobjet et les proccupations fondamentales de la discipline algorithmique ? Quel lien entretiennent
algorithme et preuve ?
En rponse, nous avons propos un premier modle qui permet de mettre en valeur les
aspects fondamentaux du concept. Cela nous a permis de dgager les cinq aspects suivants
que nous avons classis selon une dualit outil-objet :
Outil Objet
Problme Preuve Complexit
Effectivit Modles Thoriques
Grce cela, nous avons pu, en particulier, dtailler le lien entretenu par algorithme et
preuve.
233
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Pense algorithmique
Une autre question fondamentale pour lalgorithmique est son lien aux mathmatique et
linformatique. Nous nous sommes pos la question de savoir si une pense spcique tait
en jeu en algorithmique :
Question Q2. Peut-on parler dactivit ou de pense algorithmique dans les mathmatiques ? Et
dans linformatique ? Quelles perspectives cela peut-il ouvrir pour une approche didactique ?
En nous appuyant sur les recherches sur ladvanced mathematical thinking nous avons
propos une tude de la pense algorithmique. Nous avons prsent ses particularits et
montr limportance de ne pas la considrer uniquement comme une pense mathmatique.
Un modle de conception
Les limites du modle par aspects et les lments mis en avant dans lanalyse de la pense
algorithmique nous ont amen concevoir un nouveau modle pour rpondre la question :
Question Q3. Peut-on construire un modle de lactivit algorithmique permettant de questionner
la transposition didactique ?
Le modle obtenu se base sur le modle thorique cK,c et sur une dnition spcique de
la notion de problme comme couple (Instances, Question). Cela nous a permis de dcrire
des conceptions pour lalgorithme, du point de vue du savoir-savant : des -conceptions.
Ces -conceptions sarticulent selon dirents paradigmes dans lesquels lalgorithme peut
tre exprim (Preuve Algorithmique, Algorithme Mathmatique et Algorithme Informa-
tique) et deux familles de problmes (P
a
et P) permettant de mettre en jeu une dualit
outil-objet.
P
a
P
PA-Outil PA-Objet
AM-Outil AM-Objet
AI-Outil AI-Objet
Informatique
Mathmatiques
Outil Objet
Le choix de dcrire des conceptions dans ce modle permet de lutiliser en tant quoutil pour
tudier le rapport au concept algorithme. En particulier cela rpond lobjectif dtudier
les transpositions didactiques.
1.2 Conceptions de chercheurs
Nous avons confront nos rsultats pistmologiques avec les discours de chercheurs, an de
les prouver et de les lgitimer. Proposant des modles tendus, il nous a sembl bon de les
234
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
valider exprimentalement par des entretiens avec des chercheurs en mathmatiques mais
aussi en informatique. Cela nous a permis de rpondre la premire partie des questions
issues de Q4 :
Question Q4
aspects
- Q4
conceptions
. Nos modles d aspects et de -conceptions de lalgorithme
saccordent-ils avec la perception quont les chercheurs ? Le modle peut-il nous informer sur les
variations que lon pourrait entrevoir dans les discours de chercheurs ?
La deuxime partie de la question a t loccasion de tester la capacit du modle dcrire
des conceptions individuelles. Nous avons mis en vidence dirents rapports lalgorithme
chez les chercheurs. La discipline de recherche semble intervenir dans la conception de
lalgorithme. Cela peut avoir une inuence sur la faon dont le concept est transpos.
1.3 Transposition au lyce
Ce modle nous a ensuite permis de dvelopper plusieurs analyses de la transposition didac-
tique au lyce. En proposant un outil adaptable diverses ressources nous avons tudi la
transposition du savoir enseigner au travers des instructions ocielles et de manuels. De
manire complmentaire, nous avons ralis une tude de ressources en ligne, qui peuvent
inuencer le savoir enseign et qui peuvent tre rvlatrices de certaines conceptions.
Instructions ocielles
Il sagissait ici de rpondre aux questions drives de Q5 :
Question Q5
aspects
- Q5
conceptions
. Quels aspects de lalgorithme et quelles conceptions sont
prsents dans les programmes de mathmatiques et documents ressources du lyce ? Les aspects
et conceptions outil et objet sont-ils reprsents ?
Ltude des programmes de mathmatiques du lyce et du document ressource pour la
seconde rvlent une conception de lalgorithme assez loigne de celle du savoir-savant.
En particulier, nous avons montr que lalgorithme nest pas considr en tant quobjet
dans ces documents. Il est rduit un rle de mise en uvre des procdures rencon-
tres dans les dirents chapitres (effectivit). La notion de problme, avec direntes
instances rsoudre, nest pas toujours mise en jeu (algorithmes instancis) et les al-
gorithmes proposs ne sont pas toujours reprsentatifs du concept algorithme (programmes
de modlisation-simulation par exemple). De plus, lalgorithme se voit attribuer une cri-
ture extrmement formelle mettant en jeu des lment de programmation (programme-
papier). Cela rvle une conception de lalgorithme comme tant orient vers lcriture de
programmes (AI-outil).
An dtudier une autre transposition de lalgorithme, nous avons analys les programmes
de la spcialit Informatique et Sciences du Numrique de T
e
S qui comprend une forte
composante dalgorithmique. Ces programmes montrent une conception de lalgorithme en
tant quoutil mais aussi en tant quobjet, notamment en mettant en jeu les questions de
complexit. Bien que fortement tourn vers la programmation (paradigme AI) les algo-
rithmes, ici, sont trs nettement direncis des programmes (paradigme AM).
Manuels
Les mmes questions se posent concernant les manuels :
235
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Question Q6
aspects
- Q6
conceptions
. Quels aspects et quelles conceptions de lalgorithme sont
prsents dans les manuels de mathmatiques ? Les aspects et conceptions outil et objet sont-ils
reprsents ?
Les outils drivs de nos modles ont pu tre adapts une tude quantitative des exercices
et algorithmes prsents dans les manuels. On peut constater que les manuels se placent
dans une continuit totale des instructions ocielles et les conclusions que nous avons faites
pour les programmes sont les mmes ici
9
.
En particulier, les questions majoritaires dans les exercices de ces manuels font tat dune
activit algorithmique essentiellement langagire, centre sur linterprtation, lcriture et
la traduction.
Ressources en ligne
Le corpus que nous avons choisi dtudier est celui des ressources en algorithmique propo-
ses par le site des IREM. Les questions taient les suivantes :
Question Q7
aspects
-Q7
conceptions
. Quels aspects et quelles conceptions de lalgorithme sont
prsents dans les ressources en ligne ? Les aspects et conceptions outil et objet sont-ils reprsen-
ts ? Y-a-t-il une dirence entre les documents de formation et ceux pour la classe ?
La diversit de formes et de contenus des ressources proposes na pas constitu une di-
cult pour appliquer nos outils danalyse. Nous avons alors pu mettre en lumire de grandes
variations de conceptions dans les ressources.
Les ressources pour la classe ne mettent jamais en jeu lalgorithme en tant quobjet. En
ce sens on retrouve les mmes types dalgorithmes que dans le document ressource de se-
conde. Notamment le lien la programmation est trs prsent dans ces ressources (AI-outil
et programmes-papier).
Pour rencontrer lalgorithme en tant quobjet et dautres paradigmes, il faut se tourner
vers les ressources destination des enseignants. On peut alors trouver des algorithmes
plus riches, pouvant tre questionns en tant quobjets (validit, complexit, comparaison,
etc.). Les algorithmes prsents nont pas ncessairement pour objectif dtre programms
et leur expression est moins formalise, utilisant les lments du langage mathmatique et
du langage courant (paradigme AM).
Lanalyse de ces ressources nous a permis davancer des hypothses sur les contraintes qui
accompagnent lintroduction du concept algorithme au lyce et les conditions permettant
son dveloppement.
1.4 Situations pour la classe
Lanalyse pistmologique apporte aussi des lments pour la construction de situations
didactiques pour lalgorithme (la construction de situations est dailleurs lorigine du
dveloppement de ce modle). Nous avions formul les questions suivantes :
Question Q8. Comment caractriser les problmes fort potentiel pour lalgorithmique laide du
modle pistmologique dvelopp ? Quels critres doivent-il vrier ? Quels problmes rpondant
ces critres peut-on proposer ?
9. lexception de la spcialit mathmatique de T
e
S. Voir le chapitre concern.
236
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Question Q9. Quels lments pistmologiques sont prendre en compte pour construire des
situations didactiques autour de lalgorithme ? Quelles situations peut-on proposer ?
En nous appuyant sur les liens privilgis quentretient lalgorithme la notion de pro-
blme, nous avons dfendu la construction de situations pour lalgorithme bases sur la
rsolution de problme et lactivit de recherche. Pour cela nous avons introduit la notion
de problme fondamental pour lalgorithme et prcis des caractristiques de ces problmes.
Nous avons propos une liste de problmes qui devraient permettre de mettre en jeu lal-
gorithme dans une situation et de le questionner en tant quobjet.
Un problme, le problme des peses, a t tudi de manire dtaille et une situation pr-
cise en a t tire. Des pr-exprimentations de cette situation ont t menes et conrment
son potentiel. Cette partie de la recherche est encore en dveloppement, nous reviendrons
sur cette question dans la section perspectives.
Enn, le lien fort entre preuve et algorithme nous laisse penser quune situation didactique
pour lalgorithme doit mettre en jeu lactivit de preuve. Les Situations de Recherche en
Classe sont un moyen pertinent pour atteindre un tel objectif.
1.5 Rsultats thoriques
Quelques points thoriques ou mthodologiques dvelopps dans ce travail mritent dtre
souligns.
-conceptions
La description de conceptions du point de vue du savoir savant, telle que propose par Ba-
lache dans lide de -conception, a t ici mise en uvre. Le modle cK,c nous a permis
de dcrire plusieurs conceptions dans le savoir savant et leurs relations.
Cela permet de proposer une analyse descendante des conceptions individuelles ou ins-
titutionnelles, au sens o non avons utilis les -conceptions comme outil danalyse. Les
-conceptions (par dnition) permettent de porter un regard sur toute autre conception
de lalgorithme.
Problme
La notion de problme, reprise de Giroud, sest avre trs adapte ltude des concep-
tions de lalgorithme et en particulier celle des -conceptions, o la notion de problme
comme perturbation du systme sujet-milieu nest plus adapte. Il nous semble quune telle
dnition de problme peut tre rutilise pour dcrire les -conceptions dautres concepts.
Les classes P
a
et P issues de cette dnition de problme, couples la notion de concep-
tion, nous ont permis de dcrire la dualit outil-objet du concept. Cette dualit prend alors
sens par un dcalage o les oprateurs deviennent objet des problmes et les structures
de contrle deviennent oprateurs.
Transposition
Enn, lutilisation du modle cK,c pour ltude de la transposition didactique est su-
samment peu courante pour que nous soulignions son utilisation ici. En particulier, dans
237
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
lanalyse des ressources et des manuels, le modle de conception sest avr assez souple
dutilisation et a permis de tenir compte de lhtrognit des corpus.
2 Perspectives
2.1 Situations pour lalgorithme
La principale perspective de ce travail est le dveloppement de situations didactiques pour
lalgorithme.
Ltude de la situation des peses doit tre poursuivie par son exprimentation dans un
cadre scolaire. Les autres problmes proposs pourraient donner lieu des situations. Il
convient danalyser en dtail leur potentiel an de rechercher ceux qui pourrait mettre en
jeu des lments complmentaires ceux prsents dans le problme des peses.
Un objectif pourrait tre de proposer un ensemble de situations fondamentales pour lal-
gorithme.
Certaines situations dj dveloppes et tudies parmi les SiRC mettent en jeu lalgo-
rithme. Il nous semble pertinent dtudier ces situations sous cet angle nouveau et de voir
en quoi elles peuvent contribuer lapprentissage de lalgorithmique.
Enn, le lien entre algorithme et preuve est fort et nous pensons que lalgorithmique peut
tre un moyen de mettre en jeu la preuve dans la classe de mathmatiques. Il nous semble
que des situations dans ce but peuvent aussi tre dveloppes.
2.2 Contraintes et conditions
Lalgorithme ne vit pas en tant quobjet dans lenseignement du lyce en France. Nous
lavons montr au travers de ltude de sa transposition. Les analyses ralises donnent des
pistes sur les raisons de cette absence.
Certaines contraintes psent sur la transposition et sur lenseignement, et le fait que lal-
gorithme soit un objet mal connu (des enseignants mais aussi des mathmaticiens) a une
inuence. De mme, la demande de lusage des TICE joue un rle dans la domination du
paradigme AI. Cependant, il nous semble que deux pistes peuvent tre formules en termes
de conditions dexistence de lalgorithme objet.
La premire est que lalgorithme est un objet qui apparat beaucoup plus dans certains
champs des mathmatiques et pour rpondre certains types de questions. Pour que lalgo-
rithme vive pleinement, il faut que ces champs et ces questions soient prsents. Cela relve
de lcologie des savoirs. Comprendre quelles sont les niches et habitats de lalgorithme
permettrait de connatre les conditions favorables son enseignement. Notre travail est
dj en lien avec cette problmatique puisque nous avons soulev la question du rle de
lalgorithme et formul des hypothses concernant les champs privilgis
10
.
Lautre point de vue est de sintresser au rle donn lalgorithme, non pas au rle ma-
thmatique mais son rle pour lenseignement. Il nous semble que dans la transposition
10. Nous avons voqu ces champs lors de ltude des conceptions des chercheurs et de lanalyse de la
transposition, en particulier de lanalyse des ressources IREM.
238
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
didactique en jeu au lyce, lalgorithme a plus un rle didactique que mathmatique. Ce
rle didactique peut tre un obstacle lexistence de lalgorithme en tant quobjet math-
matique : lalgorithme est outil denseignement.
Comprendre ces phnomnes peut permettre de prciser lanalyse de la transposition en
jeu dans lenseignement du lyce.
2.3 Conceptions sur lalgorithme
Lanalyse de la transposition, via les conceptions des institutions, nous a amen a construire
des outils spciques. Nous souhaitons poursuivre lutilisation et le dveloppement de ces
outils an dtudier dautres transpositions. Les phnomnes de transpositions sont parfois
diciles observer mais il nous semble que lintroduction dun nouveau concept tel que
lalgorithme est loccasion de les tudier en dtail.
Nous navons tudi la transposition au lyce qu travers les instructions et des ressources
pour lenseignant. Ltape suivante pour ltude du savoir enseign est de faire des obser-
vations en classe. En particulier, il serait intressant de pouvoir observer des enseignants
ayant des conceptions direntes lors de sances sur lalgorithmique et de voir comment
elles inuencent leurs pratiques.
Ltude de la transposition du concept algorithme dans des enseignements dinformatique
(notamment dans la classe dISN) nous parat un bon moyen de comprendre les phno-
mnes de transposition dun mme concept dans deux disciplines direntes. Ltude des
choix de transposition en place dans dautres enseignements de mathmatiques (en France
ou ltranger) ou dans des enseignements de mathmatiques-informatique nous semble
tre une piste dintrt.
Enn, nous avons pu tudier les conceptions des chercheurs individuellement en nous ap-
puyant sur des entretiens. La mthodologie utilise est systmatiser si lon veut construire
des outils danalyse des conceptions plus ecaces. Cela permettrait de poursuivre lana-
lyse des conceptions des chercheurs plus grande chelle mais surtout dtudier celles des
enseignants, voire celles des lves (qui peuvent tre rvlatrices du savoir transpos).
2.4 Smiotique
Le modle de paradigmes et de -conceptions, au travers des systmes de reprsentation,
nous a permis de tenir compte des diverses formes que peuvent prendre les algorithmes.
La notion de conception du modle cK,c, grce aux systmes de reprsentation permet
de prendre en charge des aspects smiotiques avec une certaine souplesse et en interaction
avec les autres composantes de la conception (problmes, oprateur, contrles).
Au vu de lanalyse pistmologique, il nous semble important de dvelopper ltude des
questions smiotiques en lien avec nos modles. Le cadre des conceptions nous parat donc
adapt pour dvelopper des lments de smiotique. Balache et Margolinas (2005) propose
lutilisation des registres smiotiques de Duval, pour dcrire les systmes de reprsentation.
Cela nous semble tre une piste explorer.
239
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
2.5 Modles et pistmologie
Lanalyse pistmologique du concept peut tre encore ane. Il nous semble que ltude
et la recherche de problmes fondamentaux pour lalgorithme peut participer au dvelop-
pement du modle. Les exprimentations de situations en classe sont aussi un moyen de
questionner le modle et de le faire voluer.
La notion de problme introduite ici sinspire de la notion utilise par Giroud pour dcrire
le concept-problme. Cette dnition dun problme permet de dcrire la dualit outil-
objet de lalgorithme. Nous pensons quil est possible de modliser la dualit outil-objet
de cette manire pour dautres concepts. Cela pourrait aussi permettre de caractriser la
dialectique outil-objet dans lactivit.
Enn, lutilisation des -conceptions pour construire un modle pistmologique et dve-
lopper un outil danalyse de la transposition pour dautres concepts nous semble tre un
point questionner.
240
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Rfrences
Aho, A. V., Hopcroft, J. E., & Ullman, J. D. (1989). Structures de donnes et algorithmes.
Paris : Inter d, D.L. (Trad. de : Data structures and algorithms)
Aigner, M., & Li, A. (1997). Searching for counterfeit coins. Graphs and Combinatorics,
13(1), 9-20.
Artigue, M. (1990). pistmologie et Didactique. Recherches en Didactique des Mathma-
tiques, 10(2.3), 241-285.
Balache, N., & Margolinas, C. (2005). cK,c Modle de connaissances pour le calcul
de situations didactiques. In A. Mercier & C. Margolinas (Eds.), Balises pour la
didactique des mathmatiques (p. 1-32). Grenoble : La Pense Sauvage.
Beauquier, D., Berstel, J., & Chrtienne, P. (1992). lments dalgorithmique. Masson.
Bouvier, A., George, M., & Le Lionnais, F. (2005). Dictionnaire des mathmatiques. Puf.
Brousseau, G. (1982). Les Objets de la Didactique des Mathmatiques. In Contributions
la seconde cole dt de didactique des mathmatiques (p. 10-33). IREM dOrlans.
Brousseau, G. (1998). Thorie des Situations Didactiques. La Pense Sauvage.
Brousseau, G. (2010). Glossaire de quelques concepts de la thorie des situations didac-
tiques en mathmatiques. Disponible sur http://guy-brousseau.com/wp-content/
uploads/2010/09/Glossaire_V5.pdf
Burton, L. (2004). Mathematicians as inquirers. Learning about learning mathematics.
Kluwer Academic Publishers.
Cartier, L. (2008). Le graphe comme outil pour enseigner la preuve et la modlisation.
Thse de doctorat non publie, Universit Joseph Fourier, Grenoble. Disponible sur
http://tel.archives-ouvertes.fr/
Cartier, L., Godot, K., Knoll, E., & Ouvrier-Buet, C. (2006). Les Situations-Recherche :
Apprendre chercher en mathmatiques. In Colloque EMF et AMQ. Canada :
Universit de Sherbrooke.
Chabert, J.-L. (2010). Histoire dalgorithmes - du caillou la puce (2
e
d.). Belin.
Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Cazin, X. (1994). Introduction lalgo-
rithmique. Paris : Dunod. Disponible sur http://opac.inria.fr/record=b1077377
(Trad. de : Introduction to algorithms)
Douady, R. (1986). Jeux de cadres et dialectique outil-objet. Recherches en Didactique
des Mathmatiques, 7(2), 5-31.
Dreyfus, T. (1991). Advanced Mathematical Thinking Processes. In D. O. Tall (Ed.),
Advanced Mathematical Thinking (p. 25-41). Holland : Kluwer.
Fleischner, H. (1991). Eulerian Graphs and Related Topics (Vol. 1.2) (N
o
n 50). Elsevier
Science.
Garey, M. R., & Johnson, D. S. (1979). Computers and Intractability : A Guide to the
Theory of NP-Completeness. W. H. Freeman.
Giroud, N. (2011). tude de la dmarche exprimentale dans les situations de recherche
pour la classe. Thse de doctorat non publie, Universit de Grenoble. Disponible
241
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
sur http://tel.archives-ouvertes.fr
Godot, K., & Grenier, D. (2004). Research Situations for teaching : a modelization proposal
and examples. In Proceedings of ICME 10. Roskilde University : IMFUFA.
Grenier, D., & Payan, C. (2003). Situations de recherche en classe , essai de caractri-
sation et proposition de modlisation. Les cahiers du laboratoire Leibniz, 92.
Gueudet, G., & Trouche, L. (2010). Ressources vives. Le travail documentaire des profes-
seurs de mathmatiques (INRP, Ed.). Presses Universitaires de Rennes.
Harel, G., & Sowder, L. (2005). Advanced Mathematical-Thinking at Any Age : Its Nature
and Its Development. Mathematical Thinking and Learning, 7, 27-50.
Hart, E. W. (1998). Algorithmic Problem Solving in Discrete Mathematics. In L. J. Morrow
& M. J. Kenney (Eds.), The teaching and learning of Algorithm in school mathema-
tics, 1998 NCTM Yearbook (p. 251-267). Reston, VA : National Council of Teachers
of Mathematics.
Kahane, J.-P. (2002). Enseignement des sciences mathmatiques : Commission de r-
exion sur lenseignement des mathmatiques : Rapport au ministre de lducation
nationale (O. Jacob, Ed.). Paris : CNDP. Disponible sur http://smf.emath.fr/
Enseignement/CommissionKahane/
Knuth, D. E. (1973). The Art of Computer Programming, Volume I : Fundamental
Algorithms (2
e
d.). Addison-Wesley.
Knuth, D. E. (1974). Computer Science and its Relation to Mathematics. The American
Mathematical Monthly, 81(4), 323-343. (Rd. avec corrections (1996) In Selected
Papers on Computer Science, 5-29)
Knuth, D. E. (1985). Algorithmic thinking and mathematical thinking. The American
Mathematical Monthly, 92(1), 170-181. (Rd. avec corrections (1996) Algorithms
in Modern Mathematics and Computer Science. In Selected Papers on Computer
Science, 87-114)
Knuth, D. E. (1996). Selected Papers on Computer Science. Center for the Study of
Language and Inf.
Lovsz, L. (1988). Algorithmic mathematics : an old aspect with a new emphasis. In
A. Hirst & K. Hirst (Eds.), Proceedings of ICME 6 (p. 67-78). Budapest : J. Bolyai
Mathematical Society.
Lovsz, L. (2007). Trends in Mathematics : How they could Change Education ? In
Confrence europenne "The Future of Mathematics Education in Europe". Lisbonne.
Disponible sur http://www.cs.elte.hu/~lovasz/lisbon.pdf
Lovsz, L., & Plummer, D. (2009). Matching Theory. AMS Chelsea Pub.
Maurer, S. B. (1998). What is an algorithm? what is an answer. In L. J. Morrow &
M. J. Kenney (Eds.), The teaching and learning of Algorithm in school mathematics,
1998 NCTM Yearbook (p. 21-31). Reston, VA : National Council of Teachers of
Mathematics.
Mingus, T. T. Y., & Grassl, R. M. (1998). Algorithmic and Recursive Thinking - Current
Beliefs and Their Implications for the Future. In L. J. Morrow & M. J. Kenney
(Eds.), The teaching and learning of Algorithm in school mathematics, 1998 NCTM
Yearbook (p. 32-43). Reston, VA : National Council of Teachers of Mathematics.
Mithalal, J. (2010). Dconstruction instrumentale et dconstruction dimensionnelle dans le
contexte de la gomtrie dynamique tridimensionnelle. Thse de doctorat non publie,
Universit de Grenoble. Disponible sur http://tel.archives-ouvertes.fr
Morrow, L. J., & Kenney, M. J. (Eds.). (1998). The Teaching and Learning of Algorithms
in School Mathematics. NCTM. (Yearbook of the National Council of Teachers of
Mathematics)
242
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Ouvrier-Buet, C. (2009). Mathmatiques Discrtes : un champ dexprimentation mais
aussi un champ des mathmatiques. In ARDM (Ed.), Actes du sminaire national
de didactique des mathmatiques (p. 31-45). Universit Paris 7.
Pyber, L. (1986). How to nd many counterfeit coins ? Graphs and Combinatorics, 2(1),
173-177.
Plya, G. (1945). How to Solve It : A New Aspect of Mathematical Method. Princeton,
NJ : Princeton University Press.
Rasmussen, C., Zandieh, M., King, K., & Teppo, A. (2005). Advancing mathematical
activity : A view of advanced mathematical thinking. Mathematical Thinking and
Learning, 7, 51-73.
Robert, A. (1992). Problmes mthodologiques en didactique des mathmatiques. Re-
cherches en Didactique des Mathmatiques, 12(1), 33-58.
Schuster, A. (2004). About Traveling Salesmen and Telephone networks - Combinatorial
Optimization Problems at High School. ZDM, 36(2), 78-81.
Sedgewick, R. (1988). Algorithms. Addison Wesley.
Tall, D. O. (1991). The Psychology of Advanced Mathematical Thinking. In D. O. Tall
(Ed.), Advanced Mathematical Thinking (p. 3-21). Holland : Kluwer.
Tosic, R. (1983). Two counterfeit coins. Discrete Mathematics, 46(3), 295-298.
Vergnaud, G. (1990). La thorie des champs conceptuels. Recherches en Didactique des
Mathmatiques, 10(2-3), 133-170.
Wilf, H. S. (1982). What is an answer ? The American Mathematical Monthly, 89(5),
289-292.
Wilf, H. S. (2005). Mathematics : an experimental science. In W. T. Gowers (Ed.),
Princeton Companion to Mathematics. Princeton University Press. Disponible sur
http://www.math.upenn.edu/~wilf/reprints.html
Wolper, P. (2006). Introduction la calculabilit : cours et exercices corrigs. Paris :
Dunod.
243
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
244
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Glossaire
Ce glossaire reprend des dnitions gnrales lies lalgorithmique ou aux thories di-
dactiques utilises. Il contient aussi les termes dnis spciquement pour ce travail de
thse. Les pages cites correspondent des rfrences importantes aux concepts dans la
discussion.
A
algorithme Procdure de rsolution de problme, sappliquant une famille dinstances
du problme et produisant, en un nombre ni dtapes constructives, eectives,
non-ambiges et organises, la rponse au problme pour toute instance de cette
famille. 22, 25, 58
algorithme informatique (AI) Dans notre modle de -conceptions, cest lun de trois
paradigmes pour lalgorithme. Il correspond une activit de type Problme-
Programme-Vrication. Lalgorithme est ici exprim dans un langage de pro-
grammation et dcrit des manipulations formelles. 61, 63
algorithme mathmatique (AM) Dans notre modle de -conceptions, cest lun de
trois paradigmes pour lalgorithme. Il correspond une activit de type Problme-
Algorithme-Preuve. Lexpression de lalgorithme est dissocie de sa preuve et sa
forme sappuie sur un mlange de langage de langage mathmatique et dlment
spcique lalgorithme et parfois issus des langages de programmation. 61, 63
algorithme-instanci Un algorithme-instanci est une reprsentation dun algorithme,
non pas gnrique et pour toute instance, mais au contraire exprime sur une
instance prcise. Ce nest pas un algorithme, au-sens o il nexprime pas une
mthode gnrique de rsolution de problme. 141
algorithmique Discipline, lintersection entre mathmatique et informatique, dont lob-
jet dtude sont les algorithmes. Lalgorithmique sintresse notamment la cra-
tion, la description et lanalyse des algorithmes ainsi qu ltude des problmes
algorithmiquement rsolubles. 26, 29
aspect Les aspects, ou aspects fondamentaux de lalgorithme sont les lments descriptifs
du premier modle pistmologique de lalgorithme propos dans la thse. 40
C
Caml Caml est un langage de programmation dvelopp par lINRIA depuis 1985. Cest
un langage fortement typ qui permet dirents types de programmation (fonc-
tionnelle, imprative...). 31
cK,c Cadre didactique dvelopp par Nicolas Balache pour modliser les relations entre
les notions de conception (c), connaissance (K) et concept (,c) en didactique des
mathmatiques. 55, 59, 66, 69
245
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
complexit La complexit dun algorithme est ltude de son comportement en fonction de
linstance traite. Plus prcisment, la complexit sexprime comme une fonction
de la taille de linstance et dcrit le nombre dtapes ncessaires la rsolution
(complexit en temps) ou la quantit dinformation mmoriser (complexit en
espace). Cette fonction peut exprimer la complexit en moyenne (valeur moyenne
pour lensemble des instances dune taille donne) ou au pire (maximum des va-
leurs pour lensemble des instances dune taille donne). On utilise souvent les
outils mathmatiques de lanalyse pour dcrire son comportement. Ainsi on peut
parler de complexit exponentielle, logarithmique, en O(n
2
), etc. Dans le premier
modle pistmologique propos, la complexit est un des aspects fondamentaux
de lalgorithme. 27, 28, 34, 36, 39, 42, 50
conception Au sens du modle cK,cune conception dcrit la relation dun sujet ou dune
institution au concept. Elle se dcrit par un quadruplet (P, R, L, ) o P est un
ensemble de problmes sur lequel la conception est opratoire, R est un ensemble
doprateur agissant sur P, L est un systme de reprsentation qui permet de
dcrire R et P, et est une structure de contrle de laction de R sur P. 55, 56
-conception Cest une conception, au sens de cK,c, qui dcrit le concept tel quil existe
dans le savoir savant. 56, 57
correction La correction dun algorithme est le fait que cet algorithme fournit une rponse
correcte toute instance du problme que lon veut rsoudre. 23, 30, 36, 41
D
diviser pour rgner Un algorithme qui sappuie sur le principe de diviser pour rgner
est un algorithme qui, pour rsoudre une instance dun problme, la rduit la
rsolution dune ou plusieurs instances plus petites. En gnral, on repre plusieurs
phases dans un tel algorithme : On dcoupe linstance du problme en plusieurs
instances plus petites du mme problme, on rsout ces instances en faisant appel
rcursivement lalgorithme puis on combine les solutions de ces instances pour
produire la solution recherche. 26, 38
E
eectivit Cest un des aspects propos dans le premier modle thorique. Leffectivit
recouvre lide quun algorithme doit proposer une rsolution systmatique, qui
doit tre nie, non-ambige et transmissible un oprateur quelconque. 40
G
glouton Un algorithme glouton est un algorithme bas sur le principe de faire des choix
doptimisation locale pour trouver un optimum global. 27
I
instance Un problme p tant lexpression dune mme question Q pour tout lment
dun ensemble I donn, on appelle instances les lments de I. Linstanciation
dun problme est lexpression de la question Q pour une instance choisie. 40, 58,
59
246
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
L
langage mathmatique Langage utilis de manire usuelle dans les crits mathma-
tiques. 62
logique formelle Par opposition ce que nous avons appel la logique mathmatique, la
logique formelle fait rfrence la branche des mathmatiques et de linformatique
qui sintresse la validit formelle des noncs. 64
logique mathmatique Lensemble des rgles de logique et de raisonnement utilises
implicitement dans lactivit mathmatique. Ce terme est choisi ici par opposition
la logique formelle. 62
M
modles thoriques Ce sont des modles mathmatiques de ce qui est calculable de ma-
nire eective, autrement dit de ce qui rsoluble par algorithme. Les plus courants
sont les machines de Turing et les fonctions rcursives. Dans notre premier modle
pistmologique, les modles thoriques sont un des aspects fondamentaux de
lalgorithme. 25, 42
O
oprateur Dans une conception, lensemble des oprateurs (not R) dcrit les actions
applicables aux problmes. 56, 59
outil-objet La dualit outil-objet fait ici rfrence aux travaux de Douady. Laspect outil
se rfre lusage dun concept, laspect objet fait rfrence au concept comme ob-
jet dtude. En ce qui concerne lalgorithme, nous avons dnit lensemble P
a
des
problmes pour lesquels il est outil et lensemble P de problme dont il est lobjet.
Nous parlons de dialectique outil-objet concernant les relations entre algorithme-
outil et algorithme-objet (en particulier au cours de lactivit). 42, 56, 59
P
P et NP Ce sont des classes de problmes. P reprsente les problmes pour lesquels il
existe un algorithme de rsolution en temps polynomial en fonction de la taille
de linstance. NP reprsente lensemble des problmes pour lesquels tant donne
une instance et une solution au problme pour cette instance, on peut vrier en
temps polynomial que la solution est valide. On sait que P NP, mais P=NP
reste un des grands problmes mathmatique actuels. 25
paradigme Ce sont les grands cadres dans lesquels peut exister lalgorithme selon notre
modle. Ils reprsentent les modes de vie de lalgorithme. Nous avons distingu
trois paradigmes : la preuve algorithmique, lalgorithme mathmatique et lalgo-
rithme informatique. 60, 62
preuve La preuve est lun des aspects fondamentaux de notre premier modle. Cet
aspect recouvre autant les questions de preuve des algorithmes eux-mmes que
le rle des algorithmes dans les preuves. 40
preuve algorithmique Preuve qui contient dans son expression, de manire plus ou moins
explicite, un algorithme de rsolution du problme. On peut considrer quil sagit
247
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
dune preuve constructive nie. Dans notre modle de -conceptions, cest lun
de trois paradigmes pour lalgorithme, not PA. Il fait rfrence une activit
de type Problme-Thorme-Preuve, o la preuve est de type constructif et ni.
Lalgorithme et la preuve sont ici indissociables et la forme de lalgorithme est
celle dune preuve mathmatique. 24, 27, 31, 38, 58, 61, 62
problme Dans cette thse, nous appelons problme un couple (I, Q) o I est une fa-
mille dinstances et Q une question pouvant porter sur chacune de ces instances
(lensemble de tous ces problmes est not P). On dit quun algorithme rsout
un problme si pour chaque instance il apporte la rponse Q. Dans le premier
modle pistmologique, la notion de problme fait partie des aspects fondamen-
taux pour lalgorithme. Dans le modle par -conceptions, la notion de problme
permet de distinguer lalgorithme en tant quoutil de lalgorithme en tant quobjet
(voir outil-objet) en permettant de dcrire les familles P
a
et P. Cela permet aussi
de dnir la notion de problmes fondamentaux pour lalgorithme (P
fa
). 40, 57,
59
programmation dynamique La programmation dynamique est un type dalgorithme (le
terme de programmation est prendre ici au sens de planication ou dorganisation
et non de programmation informatique). Son principe est le suivant : pour trouver
une solution optimale une instance dun problme, on peut sappuyer sur la
recherche de solutions optimales des instances plus petites. Ainsi, on commence
par rsoudre de petites instances, puis de plus grandes et ainsi de suite jusqu
obtention de la solution de linstance tudie. 27
programme de modlisation-simulation Expression dune mthode systmatique vi-
sant simuler par informatique un phnomne ou un modle donn de ce phno-
mne. Il peut sagir de simuler un jeu, une machine, une exprience, un modle de
comportement dun appareil, etc. Les programmes de modlisation-simulation ne
sont pas des algorithmes au sens o ils ne rsolvent pas un problme. 143
programme-papier Reprsentation des algorithmes comme des programmes (au niveau
formel) hors dun contexte de programmation mais en conservant de nombreux
lments lis limplmentation. Les programmes-papier sont caractristique dun
ancrage dans AI et bien souvent dun amalgame algorithme-programme. 129
pseudo-code Nous appelons pseudo-code, un mlange de langage mathmatique et dl-
ments de langage de programmation permettant dexprimer des algorithmes sans
entrer dans les spcicits dun langage de programmation. 24, 63
S
savoir-savant Dans ltude de la transposition didactique, le savoir-savant reprsente le
savoir de rfrence, tel quil existe dans les institutions productrices du savoir. 56
structure de contrle Dans une conception, lensemble des structures de contrle (not
) assure la non-contradiction de la conception et dcrit la relation problmes-
oprateurs. 56, 59
systme de reprsentation Dans une conception, le systme de reprsentation (not )
permet lexpression des problmes et des oprateurs. 56
T
248
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
terminaison La terminaison dun algorithme est le fait que pour toute instance du pro-
blme que lon veut rsoudre, lexcution de lalgorithme demande un nombre ni
dtapes. 23, 31, 36, 41
V
variable informatique Variable qui joue le rle dun emplacement en mmoire en pouvant
changer de valeur au cours du temps. Par une opration daectation, on peut
associer une nouvelle valeur la variable, lancienne valeur est alors perdue. La
variable informatique est un modle de la mmoire dune machine. 27, 50, 63
variable mathmatique Symbole utilis en mathmatiques pour reprsenter un lment
non spci ou inconnu dun ensemble et marquer sa place dans une expression mathma-
tique. 62
249
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
250
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Acronymes et symboles
Nous rcapitulons ici les principaux acronymes et symboles du document. Les pages cor-
respondent leur premire apparition et dnition. Plus de prcisions sur certains peuvent
tre trouves dans le glossaire prcdent.
AI Algorithme Informatique 61
AM Algorithme Mathmatique 61
PA Preuve Mathmatique 61
ISN Informatique et Sciences du Numrique 13
P Problmes de la forme (Instances, Question) 58
P
a
Problmes algorithmiquement rsolubles 58
P Problmes dalgorithmique 58
p
0
Problme dappartenance P
a
58
P
ca
Problmes de complexit dalgorithme 58
P
cp
Problmes de complexit de problmes 58
P
fa
Problmes fondamentaux pour lalgorithme 217
P
1,+
Problme de la recherche dune fausse pice,
plus lourde
227
P
1,+/
Problme de la recherche dune fausse pice
de poids dirent
227
P
0/1,+
Problme de la recherche de zro ou une fausse
pice, plus lourde
227
P
0/1,+/
Problme de la recherche de zro ou une fausse
pice, de poids dirent
227
S
exp
Stratgie exprimentale 227
S
prob
Stratgie de changement de problme 229
S
etal
Stratgie par talonnage 229
S
dicho
Stratgie de dichotomie 227
S
tricho
Stratgie de trichotomie 228
251
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
252
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
253
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3
Enseigner lalgorithme pour quoi ? Quelles nouvelles questions pour les
mathmatiques ? Quels apports pour lapprentissage de la preuve ?
Rsum
Rcemment, lalgorithme a pris une place plus importante dans lenseignement secondaire
en France et ltranger. Ce concept, li linformatique mais aussi aux mathmatiques
et la preuve, soulve de nombreuses questions didactiques. Cette thse propose une ana-
lyse pistmologique du concept dans le but dtudier sa transposition et de construire des
situations didactiques.
Dans un premier temps, nous prsentons une analyse pistmologique dtaille du concept
en mettant en avant ses aspects fondamentaux. Cela permet de proposer un modle de
conceptions pour lalgorithme du point de vue du savoir savant (en mathmatiques et in-
formatique) et tenant compte lensemble des formes que peut prendre lalgorithme.
Ces rsultats, valids exprimentalement par les analyses dentretiens avec des chercheurs,
permettent de mener une tude de la transposition en jeu dans lenseignement au lyce
en France. Au travers de ltude des instructions ocielles, de manuels scolaires et de
ressources en ligne, nous mettons en vidence une transposition partielle du concept prin-
cipalement oriente vers la programmation et lusage de lalgorithme comme un outil.
La dernire partie propose une caractrisation des problmes fondamentaux pour lalgo-
rithme et des perspectives pour la construction et ltude de situations didactiques en
algorithmique.
Mots-cls
didactique des mathmatiques, algorithme, algorithmique, pistmologie, transposition di-
dactique, situations didactiques, conceptions, outil-objet
Teaching algorithm, what for? Some new questions for mathematics
and issues for proof learning.
Abstract
Recently, the notion of algorithm has gained in importance in secondary school curricula,
in France and abroad. Algorithm is strongly linked with computer science, mathematics
and proof and its teaching raises many didactical questions. In this thesis, we propose an
epistemological analysis of the algorithm in order to study its transposition and to build
didactical situations.
To begin with, we introduce a detailed epistemological analysis of the concept, highlighting
its fundamental aspects. It leads us to construct a model of conceptions for algorithm re-
garding the academical knowledge (in mathematics and computer science) and taking into
account the dierent forms an algorithm can take. Those results have been experimentally
validated by the analysis of interviews of researchers.
This allows us to study the didactical transposition involved in the French high school.
Through the study of the ocial curricula, selected textbooks and online resources, we
emphasize a partial transposition of the concept, mainly tool-oriented and based on pro-
gramming.
In the last part, we propose a characterization of fundamental problems for algorithm and
perspectives for the design and the study of didactical situations in algorithmics.
Keywords
mathematics education, algorithm, algorithmics, epistemology, didactical transposition,
didactical situations, conceptions, tool-object
t
e
l
-
0
0
7
8
3
2
9
4
,

v
e
r
s
i
o
n

1

-

1

F
e
b

2
0
1
3

Вам также может понравиться