Langages réguliers et hors-contexte
Cours M1 INaLCO, 2009-2010
Interrogation écrite du 05/11/09
- On considère l'alphabet X = {
0, x, 7,
9, h},
et l'expression régulière suivante sur cet alphabet,
écrite en syntaxe
standard du logiciel automate :
E = (7|9)+|0(7+|x(7|9|h)+)
- Transcrire cette expression en notation mathématique
(avec "∪" pour la
réunion et "
." pour le produit).
- Les deux sous-ensembles
(7|9)+ et 0(7+|x(7|9|h)+)
sont-ils disjoints ?
- Les mots suivants appartiennent-ils au langage de
l'expression, et
pourquoi ?
779, 0779,
779h, 0779h,
0x779h, h779,
0h779, 0xh779
- On considère un alphabet à quatre lettres X
= {
a,
b, d, s}, et les trois expressions régulières
- E =
ab+s
∪ ad ∪ abb+d
- F =
(s ∪ d)
(a ∪ bb+a)
- G = E
∪ F
- Les mots suivants appartiennent-ils à l'un des trois
langages décrits par nos trois expressions (et pourquoi) ?
abbs, abbd, ba,
abbsba, abbdba
- Les trois langages décrits par nos trois expressions
sont-ils deux à deux disjoints (et pourquoi) ?
- On considère un alphabet à cinq lettres X
= {
f,
g, d, x,
v},
et l'expression régulière sur X
E = fgd ∪
fg(xv)*xd
- Les mots suivants appartiennent-ils au langage L
décrit par notre expression (et pourquoi) ?
fd, fgd,
fgxd,
fgxvxvd, fgxvxvxd
- Interprétation :
on lit les mots de L
comme des expressions mathématiques où une fonction est appliquée à ses
arguments.
- la lettre
f
est le nom de la fonction
- la lettre
x
désigne de
manière générique un argument quelconque
- la lettre
g
représente la parenthèse ouvrante
- la lettre
d
représente la parenthèse fermante
- la lettre
v
représente la
virgule
Exemples : les trois mots de la question 1 se lisent respectivement
"f)", "f()",
"f(x)", "f(x,x,)" et "f(x,x,x)".
Donner une description générale en français des mots du langage L
ainsi interprétés.