MPSI2 DM6* Pour le vendredi 16 d´ecembre 2016
`
A bas la monotonie !
Ce devoir est facultatif, il est `a r´ediger `a deux. Vous pouvez me rendre une r´edaction de votre travail mˆeme si
vous n’avez pas trait´e l’int´egralit´e du devoir.
Introduction
Tous les matins, au petit d´ejeuner, Margot a le choix entre caf´e ou th´e. Le probl`eme est qu’elle d´eteste la monotonie
et aimerait faire ce choix sans que jamais la mˆeme s´equence ne se r´ep`ete trois fois de suite. Voici une solution pour
32 matin´ees en notant par la lettre Cle caf´e et Tle th´e :
CT T CT CCT T CCT CT T CT CCT CT T CCT T CT CCT
Vous pouvez v´erifier :
Iqu’aucune lettre ne se r´ep`ete trois fois de suite,
Iqu’aucune s´equence de deux lettres : T T, CC, T C ou CT ne se r´ep`ete trois fois de suite,
Iqu’aucune s´equence de trois lettres : T T T, T T C, T CT, T CC, CT T, CT C, CCT ou CCC ne se r´ep`ete
trois fois de suite,
Iet ainsi de suite : qu’aucune s´equence de klettres ne se r´ep`ete trois fois de suite, ceci quelque soit kN.
Plusieurs questions se posent :
(i) Comment cette s´equence a-t-elle ´et´e construite ?
(ii) Peut-on la poursuivre ind´efiniment ?
(iii) Comment d´emontrer qu’aucune s´equence ne se r´ep`ete trois fois de suite ?
(iv) Finalement, Margot pr´ef`ere-t-elle le caf´e ou le th´e ?
`
A la fin du probl`eme, vous connaˆıtrez les r´eponses `a ces questions, mais avant commen¸cons par quelques g´en´eralit´es
sur la combinatoire des mots.
Notations
Soit Aun ensemble fini non vide appel´e alphabet, les ´el´ements de Asont appel´es les lettres. Pour nN, un mot
de longueur nsur l’alphabet Aest un ´el´ement de An, c’est-`a-dire un n-uplet d’´el´ements de A.
On note M=[
n1
An, l’ensemble des mots sur l’alphabet A. La longueur d’un mot ude Msera not´ee |u|.
On d´efinit sur Mune loi de composition interne appel´ee concat´enation de la mani`ere suivante : si u= (u1, u2, ..., un)
et v= (v1, v2, ..., vp) sont des mots de longueurs respectives net p, alors le mot uv est le mot (u1, u2, ..., un, v1, v2, ..., vp)
de longueur n+p.
Un mot infini sur l’alphabet Aest une suite x= (xn)n0de lettres de A. Si xest un tel mot, pour tout entier
k1, [x]kd´esigne le mot de longueur finie obtenu en gardant les kpremi`eres lettres de x. On note Ml’ensemble
des mots infinis sur l’alphabet A.
Voici un exemple pour comprendre ces notions, prenons A={a, b}un alphabet contenant deux lettres aet b. Les
mots u= (a, b, b) et v= (a, b, a, b) sont des mots sur l’alphabet Ade longueurs respectives |u|= 3 et |v|= 4. La
concat´enation de uet vest ´egale `a uv = (a, b, b, a, b, a, b). On peut tronquer le mot v, par exemple [v]2= (a, b).
Informatique
Les questions pr´ec´ed´ees du symbole sont des questions d’informatique, elle sont `a r´esoudre `a l’aide du langage
Python. Vous pouvez ´ecrire vos programmes sur votre copie ou joindre une impression de vos fichiers. Vous pouvez
repr´esenter les mots en Python, soit `a l’aide d’une chaˆıne de caract`ere, soit `a l’aide d’une liste dont les ´el´ements sont
les lettres du mot.
La question 6.(d) de la partie A est difficile et peut ˆetre omise dans une premi`ere approche du probl`eme. La
question 4.(a) de la partie D est ´egalement ardue mais c’est le coeur du probl`eme !
MPSI2 DM6* Pour le vendredi 16 d´ecembre 2016
A-Combinatoire des mots
On note p1 le cardinal de Aet nun entier naturel non nul.
1. Combien y-a-t-il de mots de longueur nsur A?
2. Combien y-a-t-il de mots de longueur nform´es de lettres distinctes ?
3. (a) Si u= (u1, u2, ..., un1, un)M, on note ˜u= (un, un1, ..., u2, u1). On dit que uest un palindrome si et
seulement si u= ˜u. Combien y-a-t-il de palindromes de longueur n?
(b) ´
Ecrire un programme en Python qui teste si un mot de longueur nest un palindrome.
4. Combien y-a-t-il de mots de nlettres sans que deux lettres cons´ecutives soient identiques ? On pourra par
exemple proc´eder par r´ecurrence sur la longueur d’un mot.
5. Soient a1, ..., apdes lettres distinctes de Aet (α1, ..., αp)Npavec n=α1+... +αp. Combien y-a-t-il de mots
de nlettres contenant exactement αifois la lettre ai, pour tout iJ1, pK?
6. Dans cette question, on se place sur l’alphabet A={a, b}. On note Γnl’ensemble des mots sur l’alphabet Ade
longueur 2no`u nNcompos´es de nlettres aet nlettres bet tels que pour tout kJ1,2nKle mot tronqu´e
[u]kposs`ede autant ou plus de aque de b. On note Cnle cardinal de Γn.
(a) Expliciter tous les mots de Γnpour n= 1, n= 2 et n= 3. En d´eduire C1,C2,C3.
(b) ´
Ecrire un programme en Python qui teste si un mot de longueur 2nest dans Γn.
(c) ´
Ecrire un programme en Python qui ´etant donn´e un entier naturel nrenvoie tous les mots de Γn. On
fera une impression du r´esultat pour Γ4et Γ5.
(d) D´emontrer que pour tout nN, on a Cn=1
n+ 12n
n.
B-Relation d’ordre sur M
La concat´enation est une loi clairement associative, cependant Mne poss`ede pas d’´el´ement neutre pour cette loi.
On cr´ee artificiellement un tel ´el´ement, que nous appellerons le mot vide et que nous noterons e, par d´efinition on a
|e|= 0. Dans la suite, on note encore Ml’ensemble des mots auquel on a ajout´e le mot vide. Ainsi pour tout ´element
uM, on a : ue =eu =u.
1. Soit (u, x)M2, on dit que uest un pr´efixe de xsi et seulement s’il existe vMtel que x=uv. Si tel est le
cas, on ´ecrira ux.
(a) Montrer que est une relation d’ordre sur M.
(b) Soit (u, v)M2, avec uv, montrer que |u| ≤ |v|. La r´eciproque est-elle vraie ?
(c) Pour cette relation d’ordre Mposs`ede-t-il un minimum ? un maximum ?
2. Soient (u, v, x)M3, tels que uxet vx, montrer que l’on a uvou vu.
3. Soit (un)n0une suite d’´el´ement de M, strictement croissante pour .
(a) Montrer que la suite (|un|)n0est strictement croissante.
(b) Montrer qu’il existe un unique mot infini x= (xk)k0Mtel que pour tout n0, [x]|un|=un. On dira
que xest la limite de la suite (un)n0et on ´ecrira x= lim
n+un.
4. Soit Xun mono¨ıde et eson ´el´ement neutre, on dit que f:XXest un morphisme de mono¨ıde si et seulement
si f(e) = eet pour tout (u, v)X2, f(uv) = f(u)f(v).
(a) Dans cette question uniquement, on prend A={a, b, c}et g:AMefinie par g(a)=(c, a), g(b) = bet
g(c)=(c, c, c). Expliquer comment construire un morphisme de mono¨ıde f, de Mdans Mtel que f|A=g.
Quelle est l’image par fde u= (a, b, c) ? de v= (a, a, c, c, b) ?
MPSI2 DM6* Pour le vendredi 16 d´ecembre 2016
(b) Revenons au cas g´en´eral en consid´erant g:AMune application quelconque. Montrer qu’il existe un
unique morphisme de mono¨ıde f:MMtel que f|A=g.
C-Trois exemples
Dans toute la suite du probl`eme, on prendra comme alphabet A={a, b}. On s’autorisera `a noter un mot de fa¸con
concat´en´ee, par exemple le mot u= (a, b, b, a, a, a) pourra s’´ecrire plus simplement abbaaa.
1. Soit (un)n0la suite de mots d´efinie par r´ecurrence par u0=ab et un+1 =ununpour tout nN.
(a) Expliciter u1,u2et u3. Calculer la longueur de unpour tout nN.
(b) Montrer que la suite (un) est strictement croissante et pr´eciser sa limite.
2. Soit (φn)n0la suite de mots d´efinie par r´ecurrence par φ0=a,φ1=ab et φn+2 =φn+1φnpour tout nN.
(a) Expliciter φ2,φ3et φ4.
(b) ´
Ecrire un programme en Python qui ´etant donn´e un entier naturel nrenvoie φn.
(c) Donner une relation de r´ecurrence v´erifi´ee par la suite (|φn|) et montrer qu’elle est strictement croissante.
(d) En d´eduire que la suite (φn)n0est strictement croissante. Sa limite est appel´ee mot de Fibonacci.
3. Soit µl’unique morphisme de mono¨ıde de Mdans Md´efini par µ(a) = ab et µ(b) = ba. Par exemple si l’on
consid`ere le mot u=abbab, on a µ(u) = (ab)(ba)(ba)(ab)(ba) = abbabaabba, on a remplac´e apar ab et bpar ba
pour obtenir l’image de upar µ.
On d´efinit la suite de mots (τn)n0par r´ecurrence par : τ0=aet τn+1 =µ(τn) pour tout nN.
(a) Expliciter τ1,τ2,τ3et τ4. Calculer la longueur de τn.
(b) ´
Ecrire un programme en Python qui ´etant donn´e un entier naturel nrenvoie τn.
(c) Montrer que la suite (τn)n0est strictement croissante. Sa limite est not´ee t=t0t1t2... = (tk)k0.
C’est ce mot qui r´epond `a la question de l’´enonc´e, nous allons l’´etudier plus en d´etail dans la partie suivante.
D-R´eponse au probl`eme initial
Pour tout wM, on note wle mot obtenu en rempla¸cant dans wla lettre apar bet la lettre bpar a.
1. Montrer que pour tout wM,µ(w) = µ(w).
2. Soit (xn)n0et (yn)n0les suites de mots d´efinies par x0=a,y0=bet pour tout nN,xn+1 =xnyn,
yn+1 =ynxn.
(a) D´emontrer que pour tout nN, on a : τn+1 =τnτn.
(b) En d´eduire que pour tout nN,xn=τnet yn=τn.
(c) Montrer que x2net y2nsont des palindromes et que ˜x2n+1 =y2n+1.
(d) Combien y-a-t-il de aet de bdans le mot τn, o`u nN?
(e) ´
Ecrire un programme en Python qui v´erifie le r´esultat de la question pr´ec´edente.
3. (a) Montrer que tn=a(respectivement tn=b) si et seulement si l’´ecriture binaire de ncomporte un nombre
pair (respectivement impair) de 1. Que vaut t100 ?
(b) ´
Ecrire un programme en Python qui v´erifie le r´esultat de la question pr´ec´edente.
4. On dit qu’un mot non vide uMest un facteur cube d’un mot xMsi et seulement s’il existe deux mots
(v, w)M2tels que x=vuuuw.
(a) Montrer que si xest un mot sans facteur cube, alors µ(x) est ´egalement sans facteur cube.
(b) En d´eduire que le mot tne contient pas trois facteurs finis cons´ecutifs identiques.
1 / 3 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !