2- Expressions régulières
Les expressions régulières sont un outil pour décrire certains langages, sans avoir recours à des énumérations ou à un paramétrage.
On pose sur cette page
I. Définitions
Définition inductive : expression régulière
Une expression régulière est :
- (cas de base)
- soit une lettre
- soit le mot vide
- soit l'ensemble vide
- soit une lettre
- (cas inductifs)
- soit la concaténation de deux expressions régulières
- soit l'union de deux expressions régulières
, parfois écrit - soit l'étoile d'une expression régulière
- soit la concaténation de deux expressions régulières
Par exemple,
Définition inductive : langage associé à une expression régulière
On défini inductivement le langage associé à une expression régulière
- (cas de base)
- si
, alors - si
, alors - si
, alors
- si
- (cas inductifs, si e est une expression régulière)
- si
, alors - si
, alors - si
, alors
- si
Par exemple, pour
L'outil ci-dessous liste les mots d'un langage
L(e) sur Σ = {a, b}, mots de longueur ≤ 4 (9 mots) :
Donnez une description en langage naturel de
a.
Donnez une description en langage naturel de
a.
Donnez une expression régulière a.
Donnez une expression régulière a consécutifs.
Définition : langages réguliers
Un langage régulier est un langage
Est ce que tous les langages sont réguliers ?
Non, il existe des langages qui ne sont pas réguliers. Un premier argument est celui du dénombrement :
il existe un nombre dénombrable d'expressions régulières, mais les langages sont des parties d'un ensemble dénombrable (
On pourra construire des exemples de langages non réguliers plus tard dans le cours.