summaryrefslogtreecommitdiffstats
path: root/controle-20160421.tex
blob: 9c09891624630b5ed168e8f851ca01518272544e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
%% This is a LaTeX document.  Hey, Emacs, -*- latex -*- , get it?
\documentclass[12pt,a4paper]{article}
\usepackage[francais]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
%\usepackage{ucs}
\usepackage{times}
% A tribute to the worthy AMS:
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{amsthm}
%
\usepackage{mathrsfs}
\usepackage{wasysym}
\usepackage{url}
%
\usepackage{xr-hyper}
%
\usepackage{graphics}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{tikz}
\usetikzlibrary{matrix,calc}
\usepackage{hyperref}
%
\externaldocument{notes-mitro206}[notes-mitro206.pdf]
%
\theoremstyle{definition}
\newtheorem{comcnt}{Tout}
\newcommand\thingy{%
\refstepcounter{comcnt}\smallbreak\noindent\textbf{\thecomcnt.} }
\newcommand\exercice{%
\refstepcounter{comcnt}\bigbreak\noindent\textbf{Exercice~\thecomcnt.}}
\renewcommand{\qedsymbol}{\smiley}
%
\newcommand{\outnb}{\operatorname{outnb}}
\newcommand{\downstr}{\operatorname{downstr}}
\newcommand{\precs}{\operatorname{precs}}
\newcommand{\mex}{\operatorname{mex}}
\newcommand{\id}{\operatorname{id}}
\newcommand{\limp}{\Longrightarrow}
\newcommand{\gr}{\operatorname{gr}}
\newcommand{\rk}{\operatorname{rk}}
\newcommand{\fuzzy}{\mathrel{\|}}
%
\DeclareUnicodeCharacter{00A0}{~}
%
\DeclareMathSymbol{\tiret}{\mathord}{operators}{"7C}
\DeclareMathSymbol{\traitdunion}{\mathord}{operators}{"2D}
%
\DeclareFontFamily{U}{manual}{} 
\DeclareFontShape{U}{manual}{m}{n}{ <->  manfnt }{}
\newcommand{\manfntsymbol}[1]{%
    {\fontencoding{U}\fontfamily{manual}\selectfont\symbol{#1}}}
\newcommand{\dbend}{\manfntsymbol{127}}% Z-shaped
\newcommand{\danger}{\noindent\hangindent\parindent\hangafter=-2%
  \hbox to0pt{\hskip-\hangindent\dbend\hfill}}
%
\newcommand{\spaceout}{\hskip1emplus2emminus.5em}
\newif\ifcorrige
\corrigetrue
\newenvironment{corrige}%
{\ifcorrige\relax\else\setbox0=\vbox\bgroup\fi%
\smallbreak\noindent{\underbar{\textit{Corrigé.}}\quad}}
{{\hbox{}\nobreak\hfill\checkmark}%
\ifcorrige\relax\else\egroup\fi\par}
%
%
%
\begin{document}
\ifcorrige
\title{MITRO206\\Contrôle de connaissances — Corrigé\\{\normalsize Théorie des jeux}}
\else
\title{MITRO206\\Contrôle de connaissances\\{\normalsize Théorie des jeux}}
\fi
\author{}
\date{21 avril 2016}
\maketitle

%% {\footnotesize
%% \immediate\write18{sh ./vc > vcline.tex}
%% \begin{center}
%% Git: \input{vcline.tex}
%% \end{center}
%% \immediate\write18{echo ' (stale)' >> vcline.tex}
%% \par}

\pretolerance=8000
\tolerance=50000

\vskip1truein\relax

\noindent\textbf{Consignes.}

Les exercices sont indépendants sauf dans la mesure où le contraire
est précisé.  Ils pourront être traités dans un ordre quelconque, mais
on demande de faire apparaître de façon très visible dans les copies
où commence chaque exercice.

Il n'est pas nécessaire de faire des réponses longues.  Notamment, si
certaines réponses sont très semblables à des exercices déjà traités
en cours, on pourra donner une justification lapidaire, mais on
prendra bien soin de souligner tout ce qui diffère.

\medbreak

L'usage de tous les documents (notes de cours manuscrites ou
imprimées, feuilles d'exercices, livres) est autorisé.

L'usage des calculatrices électroniques est interdit.

\medbreak

Durée : 3h

\medbreak

Barème indicatif : chaque question a approximativement la même valeur.
Il ne sera pas nécessaire de tout traiter pour avoir le maximum des
points.

\pagebreak


%
%
%

\exercice

Alice joue contre Bob un jeu dans lequel elle choisit une option parmi
deux possibles appelées U et V, et Bob choisit une option parmi deux
appelées X et Y (les modalités du choix varient selon les questions
ci-dessous) : les gains d'\emph{Alice} (c'est-à-dire, la fonction
qu'elle cherche à maximiser) sont donnés par le tableau ci-dessous, en
fonction de son choix (colonne de gauche) et de celui de Bob (ligne du
haut) :

\begin{center}
\begin{tabular}{r|ccc}
$\downarrow$A, B$\rightarrow$&X&Y\\\hline
U&$3$&$1$\\
V&$0$&$4$\\
\end{tabular}
\end{center}

\smallbreak

(1) On suppose que Bob fait son choix \emph{après} Alice, et en
connaissant le choix d'Alice, et qu'il cherche à minimiser le gain
d'Alice (i.e., le gain de Bob est l'opposé de celui d'Alice).  Comment
Alice a-t-elle intérêt à jouer et comment Bob répondra-t-il ?  Quelle
est le gain d'Alice dans ce cas ?

\begin{corrige}
Si Alice choisit U, Bob répondra par Y et le gain d'Alice sera $1$ ;
si Alice choisit V, Bob répondra par X et le gain d'Alice sera $0$.
Comme Alice veut maximiser son gain, elle a intérêt à choisir U, et
Bob répondra par Y, et le gain d'Alice sera $1$ dans ce cas.
\end{corrige}

\smallbreak

(2) On suppose maintenant que Bob fait son choix \emph{avant} Alice,
et qu'Alice connaîtra le choix de Bob ; on suppose toujours que Bob
cherche à minimiser le gain d'Alice.  Que fera Bob et comment Alice
répondra-t-elle ?  Quelle est le gain d'Alice dans ce cas ?

\begin{corrige}
Si Bob choisit X, Alice répondra par U et le gain d'Alice sera $3$ ;
si Bob choisit Y, Alice répondra par V et le gain d'Alice sera $4$.
Comme Bob veut minimiser le gain d'Alice, il a intérêt à choisir X, et
Alice répondra par U, et le gain d'Alice sera $3$ dans ce cas.
\end{corrige}

\smallbreak

(3) On suppose qu'Alice et Bob font leur choix séparément, sans
connaître le choix de l'autre, et toujours que Bob cherche à minimiser
le gain d'Alice.  Comment ont-ils intérêt à faire leurs choix ?  Quel
est le gain (espéré) d'Alice dans ce cas ?

\begin{corrige}
On a affaire à un jeu à somme nulle écrit en forme normale :
l'algorithme \ref{zero-sum-games-by-linear-programming-algorithm} nous
indique qu'on obtient la stratégie optimale d'Alice en résolvant le
problème de programmation linéaire suivant :
\[
\left\{
\begin{aligned}
\text{maximiser\ }v&\text{\ avec}\\
p_U \geq 0\;, \;\; p_V \geq 0&\\
p_U + p_V &= 1\\
v - 3p_U - 1p_V &\leq 0\;\;\text{(X)}\\
v - 0p_U - 4p_V &\leq 0\;\;\text{(Y)}\\
\end{aligned}
\right.
\]
On peut l'écrire sous forme normale en réécrivant $v = v_+ - v_-$ avec
$v_+,v_- \geq 0$, mais on gagne un petit peu en remarquant que $v$
sera forcément positif puisque tous les gains du tableau le sont, donc
on peut ajouter la contrainte $v \geq 0$.  Une application de
l'algorithme du simplexe donne finalement l'optimum $v = 2$ atteint
pour $p_U = \frac{2}{3}$ et $p_V = \frac{1}{3}$, avec pour le dual
$q_X = \frac{1}{2}$ et $q_Y = \frac{1}{2}$ (les inégalités (X) et (Y)
sont toutes les deux saturées).

Autrement dit, Alice joue les options U et V avec probabilités
$\frac{1}{3}$ et $\frac{2}{3}$, Bob réplique avec les options X et Y
de façon équiprobable, et le gain espéré d'Alice est $2$, qui est la
valeur du jeu à somme nulle en forme normale considéré ici.
\end{corrige}

\smallbreak

(4) On suppose maintenant que Bob cherche à \emph{maximiser} le gain
d'Alice (i.e., il n'est plus son adversaire comme dans les questions
(1), (2) et (3), mais son allié).  On cherche à déterminer quels sont
les équilibres de Nash possibles.  On notera $(p_U,p_V, q_X,q_Y)$ un
profil de stratégies mixtes général, où $p_U,p_V$ (positifs de
somme $1$) sont les poids des trois options d'Alice (=probabilités
qu'elle les joue), et $q_X,q_Y$ (positifs, également de somme $1$) les
poids des trois options de Bob.  On va discuter selon le support des
stratégies (i.e., selon les ensembles d'options qui ont un poids
strictement positif).\spaceout (a) Pour commencer, quels sont les
équilibres de Nash évidents en stratégies pures ?  Expliquer pourquoi
ce sont bien les seuls équilibres de Nash où l'un des deux joueurs a
une stratégie pure.\spaceout (b) Calculer ce que doivent valoir $p_U$
et $p_V$ dans un équilibre de Nash où $q_X > 0$ et $q_Y > 0$ (i.e.,
les options X et Y de Bob sont dans le support), et ce que doivent
valoir $q_X$ et $q_Y$ dans un équilibre de Nash où $p_U > 0$ et $p_V >
0$ (i.e., les options U et V d'Alice sont dans le support).  Ces
contraintes donnent-elles effectivement un équilibre de
Nash ?\spaceout (c) Conclure quant à l'ensemble des équilibres de Nash
du jeu considéré.

\begin{corrige}
(a) Deux équilibres de Nash sont évidents : si Alice joue (purement) U
  et Bob joue (purement) X, aucun n'a intérêt à changer puisque $3$
  est maximum sur la ligne et sur la colonne ; si Alice joue
  (purement) V et Bob joue (purement) Y, aucun n'a intérêt à changer
  puisque $4$ est maximum sur la ligne et sur la colonne.  Les gains
  d'Alice (et de Bob) dans chacun de ces trois cas sont donc $3$
  et $4$ respectivement.

Il s'agit là de l'ensemble des équilibres de Nash où l'un des deux
joueurs a une stratégie pure : par exemple, si Alice joue purement U,
Bob ne peut que répondre par purement X puisque le gain $3$ est
strictement plus grand que tout autre gain sur la ligne (i.e., donner
un poids non nul à une autre option de Bob ne pourrait que diminuer le
gain).

(b) Si $q_X > 0$ et $q_Y > 0$, les stratégies pures X et Y de Bob
donnent forcément le même gain, car si l'une d'elle donnait un gain
strictement supérieure à l'autre, Bob aurait intérêt à augmenter le
poids $q$ correspondant et améliorerait ainsi strictement sa réponse.
Autrement dit, l'espérance de gain contre la stratégie pure X,
c'est-à-dire $6 p_U$, est égale à l'espérance de gain contre la
stratégie pure Y, soit $p_U + 4 p_V$.  On a donc $3 p_U = p_U + 4
p_V$, et comme aussi $p_U + p_V = 1$ on trouve $(p_U, p_V) =
(\frac{1}{3}, \frac{2}{3})$ en résolvant le système (soit la même
stratégie mixte que trouvée en (3), ce qui n'est pas un hasard vu que
le signe des gains de Bob n'est pas du tout intervenu dans le
raisonnement).  De même, si $p_U > 0$ et $p_V > 0$, on a $3 q_X + q_Y
= 4 q_Y$, et comme aussi $q_X + q_Y = 1$ on trouve $(q_X, q_Y) =
(\frac{1}{2}, \frac{1}{2})$ en résolvant le système (même remarque).

Bref, on a un équilibre de Nash \emph{potentiel} donné par $(p_U,p_V,
q_X,q_Y) = (\frac{2}{3}, \frac{1}{3}, \frac{1}{2}, \frac{1}{2})$,
c'est-à-dire exactement le même profil que dans la question (3) quand
les joueurs étaient adversaires.  Pourtant, aucun des deux joueurs n'a
(strictement) intérêt à changer unilatéralement sa stratégie puisque
les deux options qui se présentent à lui sont indifférentes (elles ont
le même gain espéré) compte tenu du comportement de l'autre.  On a
donc bien trouvé un troisième équilibre de Nash.

(c) Pour résumer, on a trois équilibres de Nash récapitulés par le
tableau (triés par ordre de gain espéré décroissant) :
\begin{center}
\begin{tabular}{cc|cc|c}
$p_U$&$p_V$&$q_X$&$q_Y$&gain\\\hline
$0$&$1$&$0$&$1$&$4$\\
$1$&$0$&$1$&$0$&$3$\\
$\frac{2}{3}$&$\frac{1}{3}$&$\frac{1}{2}$&$\frac{1}{2}$&$2$\\
\end{tabular}
\end{center}
et on a prouvé que c'étaient bien les seuls.
\end{corrige}


%
%
%

\exercice\label{game-for-nim-product}

On considère le jeu suivant : une position du jeu consiste en un
certain nombre fini de jetons placés sur un damier transfini dont les
cases étiquetées par un couple $(\alpha,\beta)$ d'ordinaux (on dira
que $\alpha$ est [le numéro de] la ligne de la case et $\beta$ [le
  numéro de] la colonne).  Plusieurs jetons peuvent se trouver sur la
même case.

Un coup du jeu consiste à faire l'opération suivante : le joueur qui
doit jouer choisit un jeton du jeu, disons qu'il soit sur la case
$(\alpha,\beta)$, et il choisit aussi $\alpha' < \alpha$ (i.e., une
ligne située plus haut) et $\beta' < \beta$ (i.e., une colonne située
plus à gauche), il retire le jeton choisi de la case $(\alpha,\beta)$
et le remplace par \emph{trois} jetons, sur les cases
$(\alpha',\beta)$, $(\alpha,\beta')$ et $(\alpha',\beta')$.  (À titre
d'exemple, si le jeu comporte un seul jeton sur la case $(42,7)$, un
coup valable consiste à le remplacer par trois jetons, sur les cases
$(18,7)$, $(42,5)$ et $(18,5)$.)  Le nombre de jetons présents
augmente donc de $2$ à chaque coup joué.

On remarquera que les jetons sur la ligne ou la colonne $0$ ne peuvent
plus être retirés ou servir de quelque manière que ce soit : on pourra
dire que cette ligne et cette colonne $0$ sont la « défausse » des
jetons.  Le jeu se termine lorsque chacun des jetons est sur la ligne
ou la colonne $0$ (=dans la défausse), car il n'est alors plus
possible de jouer.  Les joueurs (Alice et Bob) jouent à tour de rôle
et celui qui ne peut plus jouer a perdu.

(0) Décrire brièvement le jeu complètement équivalent dans lequel il
n'y a pas de ligne ou de colonne $0$ (on fait démarrer la numérotation
à $1$) et il n'y a pas de défausse (les jetons disparaissent plutôt
qu'être défaussés) : quels sont les types de coups possibles à ce
jeu ?  On se permettra dans la suite d'utiliser librement l'une ou
l'autre variante du jeu.

\begin{corrige}
Les jetons défaussés ne jouant aucun rôle dans le jeu, on peut les
ignorer et obtenir un jeu équivalent.  Les lignes et les colonnes sont
alors numérotés par des ordinaux non nuls, c'est-à-dire $\geq 1$.  Les
quatre types de coups possibles dans ce jeu, selon que $\alpha'$ et/ou
$\beta'$ vaut $0$, sont alors :
\begin{itemize}
\item simplement retirer un jeton de la case $(\alpha,\beta)$ [cas où
  $\alpha' = 0$ et $\beta' = 0$],
\item déplacer un jeton de la case $(\alpha,\beta)$ vers une case
  $(\alpha,\beta')$ plus à gauche (i.e., $\beta' < \beta$) dans la
  ligne [cas où $\alpha' = 0$ et $\beta' \neq 0$],
\item déplacer un jeton de la case $(\alpha,\beta)$ vers une case
  $(\alpha',\beta)$ plus haut (i.e., $\alpha' < \alpha$) dans la
  colonne [cas où $\alpha' \neq 0$ et $\beta' = 0$],
\item remplacer un jeton de la case $(\alpha,\beta)$ par un jeton sur
  une case $(\alpha,\beta')$ plus à gauche dans la ligne, un autre sur
  une case $(\alpha',\beta)$ plus haut dans la colonne, et un
  troisième sur la case $(\alpha',\beta')$ à l'intersection de la
  nouvelle ligne et de la nouvelle colonne, comme dans le jeu
  d'origine [cas où $\alpha' \neq 0$ et $\beta' \neq 0$].
\end{itemize}
\vskip-\baselineskip\vskip-\baselineskip
\end{corrige}

\smallbreak

(1) (a) Montrer qu'il existe une fonction $h(\alpha,\beta)$ de deux
ordinaux $\alpha,\beta$ et à valeurs ordinales qui soit strictement
croissante en chaque variable (c'est-à-dire que si $\alpha' < \alpha$
alors $h(\alpha',\beta) < h(\alpha,\beta)$ et que si $\beta' < \beta$
alors $h(\alpha,\beta') < h(\alpha,\beta)$).  Pour cela, on pourra,
comme on préfère, poser $h(\alpha,\beta) = \omega^{\max(\alpha,\beta)}
+ \omega^{\min(\alpha,\beta)}$ ou bien $h(\alpha,\beta) =
\alpha\boxplus\beta$ où $\alpha\boxplus\beta$ désigne l'ordinal dont
les chiffres de la forme normale de Cantor sont la somme des chiffres
correspondants de $\alpha$ et de $\beta$.\spaceout (b) En déduire que
le jeu considéré dans cet exercice termine toujours en temps fini.
(On pourra par exemple considérer la somme des $\omega^\gamma$ où
$\gamma$ parcourt les $h(\alpha,\beta)$ des cases où il y a un jeton,
dans l'ordre décroissant.)

\begin{corrige}
(a) Si on pose $h(\alpha,\beta) = \omega^{\max(\alpha,\beta)} +
  \omega^{\min(\alpha,\beta)}$ et si $\alpha' < \alpha$, alors soit
  $\max(\alpha,\beta) < \max(\alpha',\beta)$ soit $\max(\alpha,\beta)
  = \max(\alpha',\beta)$ et alors $\min(\alpha,\beta) <
  \min(\alpha',\beta)$, et dans les deux cas $h(\alpha',\beta) <
  h(\alpha,\beta)$ par comparaison des formes normales de Cantor.
  Comme la fonction $h$ est symétrique en ses deux arguments, on a
  aussi $h(\alpha,\beta') < h(\alpha,\beta)$ si $\beta' < \beta$.

Si on préfère poser $h(\alpha,\beta) = \alpha\boxplus\beta$, et si
$\alpha' < \alpha$, le chiffre correspondant à la plus haute puissance
de $\omega$ qui diffère est strictement plus petit dans la forme
normale de Cantor de $\alpha'$ que celui de $\alpha$, et cette
affirmation est encore vraie lorsqu'on ajoute chiffre à chiffre la
forme normale de Cantor de $\beta$, donc on a bien $h(\alpha',\beta) <
h(\alpha,\beta)$.  Comme la fonction $h$ est symétrique en ses deux
arguments, on a aussi $h(\alpha,\beta') < h(\alpha,\beta)$ si $\beta'
< \beta$.

(\emph{Remarque :} En fait, la fonction $\boxplus$, aussi appelée
« somme naturelle » sur les ordinaux, est plus naturelle dans ce
contexte, parce qu'on peut se convaincre que $\alpha \boxplus \beta =
\sup^+ \big( \{\alpha'\boxplus\beta : \alpha' < \alpha\} \cup\,
\{\alpha\boxplus\beta' : \beta' < \beta\}\big)$, c'est-à-dire qu'elle
est justement la « plus petite » fonction strictement croissante en
chacun de ses arguments.  On comparera cette définition avec $\alpha
\oplus \beta = \mex \big( \{\alpha'\oplus\beta : \alpha' < \alpha\}
\cup\, \{\alpha\oplus\beta' : \beta' < \beta\}\big)$.  En revanche,
l'addition usuelle ne convient pas, parce que $\alpha'+\beta$ peut
être égal à $\alpha+\beta$ même si $\alpha'<\alpha$, par exemple
$1+\omega = 0+\omega$.)

(b) À une position du jeu ayant $s$ jetons sur les
cases $(\alpha_i,\beta_i)$ (pour $i=1,\ldots,s$) on peut associer
l'ordinal $\omega^{\gamma_1} + \cdots + \omega^{\gamma_s}$ où les
$\gamma_i := h(\alpha_i,\beta_i)$ ont été triés de façon à avoir
$\gamma_1 > \cdots > \gamma_s$ (donc, quitte à regrouper les mêmes
puissances, à avoir une forme normale de Cantor).  Un coup consistae à
remplacer un terme $\omega^{\gamma_i}$ par une somme de
$\omega^{\gamma'}$ pour des $\gamma' < \gamma_i$ vu que
$h(\alpha',\beta) < h(\alpha,\beta)$ et $h(\alpha,\beta') <
h(\alpha,\beta)$ et \textit{a fortiori} $h(\alpha',\beta') <
h(\alpha,\beta)$ si $\alpha'<\alpha$ et $\beta'<\beta$.  Ceci fait
donc décroître strictement l'ordinal en question, et en particulier,
la partie doit terminer en temps fini.
\end{corrige}

(2) Dans le cas particulier où il n'y a qu'une ligne de jetons
(numérotée $1$ ; ou bien deux lignes numérotées $0$ et $1$ si on garde
la défausse), expliquer pourquoi le jeu est simplement une
reformulation du jeu de nim.

\begin{corrige}
Un coup joué sur un jeton de la ligne $1$ consiste simplement soit à
le retirer soit à le déplacer vers une colonne plus à gauche ; on peut
identifier la position ayant $n_i$ jetons sur la case $(1,\alpha_i)$ à
un partie de nim ayant $n_i$ lignes avec $\alpha_i$ allumettes : le
coup consistant à déplacer un jeton de la case $\alpha_i$ vers la case
$\alpha_i' < \alpha_i$ peut se voir comme un coup de nim consistant à
diminuer le nombre d'allumettes de la ligne qui en a $\alpha_i$ pour
qu'il en reste $\alpha'_i$ ; et le fait de retirer un jeton sur la
case $(1,\alpha_i)$ comme le coup de nim consistant à retirer toutes
les allumettes de la ligne correspondante.  Les jeux sont donc
complètement équivalents.
\end{corrige}

\smallbreak

(3) Montrer que la valeur de Grundy d'un état quelconque du jeu vaut
\[
\bigoplus_{i=1}^s (\alpha_i\otimes\beta_i)
\]
où $(\alpha_1,\beta_1),\ldots,(\alpha_s,\beta_s)$ sont les cases où se
trouvent les $s$ jetons (en autant de fois que nécessaire les cases
sur lesquelles se trouvent des jetons multiples), où $\oplus$ désigne
la somme de nim et où l'opération $\otimes$ sur les ordinaux est
définie inductivement par
\[
\alpha\otimes\beta := \mex\Big\{(\alpha'\otimes\beta)
\oplus (\alpha\otimes\beta') \oplus (\alpha'\otimes\beta')
: \alpha'<\alpha,\text{~et~}\beta'<\beta\Big\}
\tag{*}
\]

\begin{corrige}
Il n'y a aucune interaction entre les jetons dans le jeu.  En
particulier, jouer à une somme de nim de deux positions du jeu
considéré dans cet exercice revient au même que de jouer à la position
ayant la réunion de ces deux ensembles de jetons.  Si on note
$u_{\alpha,\beta}$ la position du jeu ayant un unique jeton sur la
case $(\alpha,\beta)$, on déduit de \ref{summary-of-grundy-theory} que
la valeur de Grundy d'un état quelconque du jeu vaut
$\bigoplus_{i=1}^s \gr(u_{\alpha_i,\beta_i})$.  Or
$\gr(u_{\alpha,\beta})$ est le plus petit ordinal qui n'est pas de la
forme $\gr(z)$ pour $z$ une position voisine sortante
de $u_{\alpha,\beta}$, et d'après ce qu'on vient de dire, on obtient
exactement $\gr(u_{\alpha,\beta}) = \mex\big\{\gr(u_{\alpha',\beta})
\oplus \gr(u_{\alpha,\beta'}) \oplus \gr(u_{\alpha',\beta'}) :
\alpha'<\alpha, \beta'<\beta\big\}$, c'est-à-dire bien
$\gr(u_{\alpha,\beta}) = \alpha\otimes\beta$ (même définition
inductive), et on a montré ce qui était demandé.
\end{corrige}

\smallbreak

(4) Calculer la valeur de $\alpha\otimes\beta$ pour $0\leq\alpha\leq
5$ et $0\leq\beta\leq 5$.  Pour accélérer les calculs ou bien pour les
vérifier, on pourra utiliser les résultats de
l'exercice \ref{inductions-on-nim-product} (il n'est pas nécessaire
d'avoir traité l'exercice en question).

\begin{corrige}
En calculant un peu plus loin que ce qui était demandé, on trouve :
{\[
\begin{array}{c|cccccccccccccccc}
\otimes&0&1&2&3&4&5&6&7\\\hline
0&0&0&0&0&0&0&0&0\\
1&0&1&2&3&4&5&6&7\\
2&0&2&3&1&8&10&11&9\\
3&0&3&1&2&12&15&13&14\\
4&0&4&8&12&6&2&14&10\\
5&0&5&10&15&2&7&8&13\\
6&0&6&11&13&14&8&5&3\\
7&0&7&9&14&10&13&3&4\\
\end{array}
\]}
(pour simplifier les calculs, on peut notamment utiliser la
commutativité, et le fait que $\alpha\otimes 3 = \alpha\otimes(2\oplus
1) = (\alpha\otimes 2) \oplus \alpha$ et de même $\alpha\otimes 5 =
\alpha\otimes(4\oplus 1) = (\alpha\otimes 4) \oplus \alpha$).
\end{corrige}


%
%
%

\exercice\label{inductions-on-nim-product}

On définit inductivement une opération $\alpha\otimes\beta$
(\emph{produit de nim}) de deux ordinaux $\alpha,\beta$ par la
formule (*) de l'exercice \ref{game-for-nim-product} (il n'est pas
nécessaire d'avoir traité l'exercice en question, même s'il est permis
de s'en servir), autrement dit $\alpha\otimes\beta :=
\mex\{(\alpha'\otimes\beta) \oplus (\alpha\otimes\beta') \oplus
(\alpha'\otimes\beta') : \alpha'<\alpha, \beta'<\beta\}$ où la
notation $\oplus$ désigne la somme de nim.

(On rappelle que $\gamma = \mex S$ signifie que $\gamma\not\in S$ et
que tout ordinal $\gamma'<\gamma$ appartient à $S$.)

(1) Montrer que $\otimes$ est commutative, c'est-à-dire que
$\beta\otimes\alpha = \alpha\otimes\beta$ quels que soient les
ordinaux $\alpha,\beta$.

\begin{corrige}
Par induction sur $\alpha$ et $\beta$, on prouve $\beta\otimes\alpha =
\alpha\otimes\beta$ en supposant que la même formule est vraie si l'un
de $\alpha$ ou $\beta$ est remplacé par un ordinal strictement plus
petit.  Or $\beta\otimes\alpha = \mex \{(\beta\otimes\alpha') \oplus
(\beta'\otimes\alpha) \oplus (\beta'\otimes\alpha') : \alpha'<\alpha,
\beta'<\beta\}$, et par hypothèse d'induction ceci vaut $\mex
\{(\alpha'\otimes\beta) \oplus (\alpha\otimes\beta') \oplus
(\alpha'\otimes\beta') : \alpha'<\alpha, \beta'<\beta\} =
\alpha\otimes\beta$.

Si on préfère, on peut aussi utiliser le jeu défini dans
l'exercice \ref{game-for-nim-product}, en remarquant qu'échanger les
coordonnées des cases de tous les jetons ne change rien au jeu (i.e.,
les règles sont symétriques ligne/colonne) donc ne change pas la
fonction de Grundy.
\end{corrige}

\smallbreak

(2) Montrer que $0$ est absorbant pour $\otimes$,
c'est-à-dire $\alpha\otimes 0 = 0$ pour tout ordinal $\alpha$.
Montrer que $1$ est neutre pour otimes, c'est-à-dire $\alpha\otimes 1
= \alpha$ pour tout ordinal $\alpha$.

\begin{corrige}
On a $\alpha \otimes 0 = \mex \varnothing = 0$ (puisqu'il n'existe pas
de $\beta'<0$).  Pour la seconde affirmation, par induction sur
$\alpha$, on prouve $\alpha \otimes 1 = \alpha$ : en effet, $\alpha
\otimes 1 = \mex \{(\alpha'\otimes 1) \oplus (\alpha\otimes 0) \oplus
(\alpha'\otimes 0): \alpha'<\alpha\}$, et en utilisant le fait que $0$
est aborbant pour $\otimes$ et neutre pour $\oplus$ et l'hypothèse
d'induction, ceci vaut $\mex \{\alpha': \alpha'<\alpha\} = \mex \alpha
= \alpha$.

Si on préfère, on peut aussi utiliser le jeu défini dans
l'exercice \ref{game-for-nim-product}, en remarquant qu'un jeton sur
la ligne ou colonne $0$ est mort (défaussé), et que jouer sur la ligne
ou colonne $1$ revient à jouer au jeu de nim d'après la question (2)
de l'exercice \ref{game-for-nim-product}.
\end{corrige}

\smallbreak

(3) (a) Montrer que si $\alpha\otimes\beta = \alpha\otimes\beta'$
alors $\alpha=0$ ou bien $\beta=\beta'$ (on pourra procéder par
contraposée).\spaceout (b) En déduire que si $\alpha'\neq\alpha$ et
$\beta'\neq\beta$, alors $(\alpha'\otimes\beta) \oplus
(\alpha\otimes\beta') \oplus (\alpha'\otimes\beta') \neq
\alpha\otimes\beta$.

\begin{corrige}
(a) Si $\alpha>0$ et $\beta\neq\beta'$, supposons sans perte de
  généralité que $\beta'<\beta$.  Alors $\alpha\otimes\beta$ est
  le $\mex$ d'un ensemble contenant $(0\otimes\beta) \oplus
  (\alpha\otimes\beta') \oplus (0\otimes\beta') =
  \alpha\otimes\beta'$, donc il ne peut pas lui être égal.

(b) Grâce aux propriétés de la somme de nim ($\gamma \neq \gamma'$
  équivaut à $\gamma\oplus\gamma' \neq 0$), la condition qu'on veut
  montrer est équivalente à : $(\alpha\otimes\beta) \oplus
  (\alpha'\otimes\beta) \oplus (\alpha\otimes\beta') \oplus
  (\alpha'\otimes\beta') \neq 0$.  Sous cette forme, on voit qu'il y a
  symétrie entre $\alpha'$ et $\alpha$ et entre $\beta'$ et $\beta$ :
  on peut donc supposer $\alpha'<\alpha$ et $\beta'<\beta$, auquel cas
  la condition est claire par la définition même de $\otimes$.
\end{corrige}

\smallbreak

(4) Montrer que $\otimes$ est distributive sur $\oplus$, c'est-à-dire
$\alpha \otimes (\beta\oplus\gamma) = (\alpha\otimes\beta) \oplus
(\alpha\otimes\gamma)$.  Pour cela, on pourra procéder par induction
(et remarquer que pour montrer $\lambda = \mu$ il suffit de montrer
que (a) $\xi<\lambda$ implique $\xi\neq\mu$ et que (b) $\xi<\mu$
implique $\xi\neq\lambda$).

\begin{corrige}
Pour montrer $\lambda = \mu$ il suffit de montrer que
(a) $\xi<\lambda$ implique $\xi\neq\mu$ et que (b) $\xi<\mu$ implique
$\xi\neq\lambda$ : en effet, si on avait $\lambda > \mu$, on aurait
une contradiction en posant $\xi = \mu$ dans (a), et si on avait
$\lambda < \mu$, on aurait une contradiction en posant $\xi = \lambda$
dans (b).

Procédons par induction pour prouver $\alpha \otimes
(\beta\oplus\gamma) = (\alpha\otimes\beta) \oplus
(\alpha\otimes\gamma)$ : on peut supposer cette égalité connue si l'un
des ordinaux $\alpha,\beta,\gamma$ est remplacé par un strictement
plus petit.

(a) Si $\xi < \alpha \otimes (\beta\oplus\gamma)$, alors on peut
écrire $\xi = (\alpha'\otimes(\beta\oplus\gamma)) \oplus
(\alpha\otimes\delta') \oplus (\alpha'\otimes\delta')$ où
$\alpha'<\alpha$ et $\delta' < \beta\oplus\gamma$.  La définition
inductive de $\oplus$ permet alors d'écrire soit $\delta' =
\beta'\oplus\gamma$ où $\beta'<\beta$, soit $\delta' =
\beta\oplus\gamma'$ où $\gamma'<\gamma$ : par symétrie, plaçons nous
sans perte de généralité dans le premier cas.  On a alors $\xi =
(\alpha'\otimes (\beta\oplus\gamma)) \oplus (\alpha\otimes
(\beta'\oplus\gamma)) \oplus (\alpha'\otimes (\beta'\oplus\gamma))$.
Par hypothèse d'induction, on peut développer les trois termes, et
quitte à simplifier les deux termes $\alpha'\otimes\gamma$ qui
apparaissent, on obtient $\xi = (\alpha'\otimes\beta) \oplus
(\alpha\otimes\beta') \oplus (\alpha'\otimes\beta') \oplus
(\alpha\otimes\gamma)$.  Puisque la somme $(\alpha'\otimes\beta)
\oplus (\alpha\otimes\beta') \oplus (\alpha'\otimes\beta')$ des trois
premiers termes est différente de $\alpha\otimes\beta$
(d'après (3)(b)), on en déduit que $\xi \neq (\alpha\otimes\beta)
\oplus (\alpha\otimes\gamma)$, ce qu'on voulait.

(b) Maintenant, si $\xi < (\alpha\otimes\beta) \oplus
(\alpha\otimes\gamma)$, on a soit $\xi = \delta' \oplus
(\alpha\otimes\gamma)$ avec $\delta' < \alpha\otimes\beta$, soit $\xi
= (\alpha\otimes\beta) \oplus \varepsilon'$ avec $\varepsilon' <
\alpha\otimes\gamma$ : par symétrie, plaçons nous sans perte de
généralité dans le premier cas.  On peut alors écrire $\delta' =
(\alpha'\otimes\beta) \oplus (\alpha\otimes\beta') \oplus
(\alpha'\otimes\beta')$ avec $\alpha'<\alpha$ et $\beta'<\beta$, donc
on a : $\xi = (\alpha'\otimes\beta) \oplus (\alpha\otimes\beta')
\oplus (\alpha'\otimes\beta') \oplus (\alpha\otimes\gamma)$.  Quitte à
faire apparaître deux termes $\alpha'\otimes\gamma$ qui s'annulent,
l'hypothèse d'induction permet de réécrire $\xi = (\alpha'\otimes
(\beta\oplus\gamma)) \oplus (\alpha\otimes (\beta'\oplus\gamma))
\oplus (\alpha'\otimes (\beta'\oplus\gamma))$.  Or $\beta'\oplus\gamma
\neq \beta\oplus\gamma$ : en utilisant (3)(b), on a $\xi \neq \alpha
\otimes (\beta\oplus\gamma)$, ce qu'on voulait.
\end{corrige}

%% \smallbreak
%%
%% On \emph{admet} que $\otimes$ est associative, c'est-à-dire
%% $(\alpha\otimes\beta) \otimes \gamma = \alpha \otimes
%% (\beta\otimes\gamma)$ (ce n'est pas très difficile à prouver).



%
%
%
\end{document}