Un autre exemple très simple est le suivant: utilisez la complexité de Kolmogorov pour prouver que Lww={ww∣w∈{0,1}∗} n'est pas régulier.
Je vous donne une preuve très informelle en espérant que cela peut vous aider à mieux comprendre le rôle de la complexité de Kolmogorov.
L'idée clé est la suivante: des automates finis D (qui reconnaît une langue régulière LD) a une quantité finie de «mémoire»; donc en cours d'exécution sur une chaîne d'entréex=yz quand il a "traité" la première partie de l'entrée y l'appartenance à x dans LD dépend uniquement de son état actuel et de la deuxième partie de l'entrée z.
Supposons maintenant que Lwwest régulier; puis il y a un DFADww qui le reconnaît.
Laisser y être une chaîne de longueur incompressible |y|=n≫|D|
Pour toutes les entrées x=yz, à la fin de la première partie y, le DFA Dww sera clairement sur le même état qi, et par hypothèse, il n'acceptera que si la partie restante z est telle que x=yz peut être divisé en deux moitiés égales (c.-à-d. yz=ww); par exemple
Let y = 10110
y z
x = 10110 0 >> rejected
x = 10110 1 >> accepted (w=101, |y|>|z|)
x = 10110 00 >> rejected
x = 10110 01 >> rejected
....
x = 10110 10110 >> accepted (w=10110, |y|=|z| !!!)
....
x = 10110 1101101 >> accepted (w=101101, |z|<|y|
Mais il est important de noter qu'il n'y a qu'une seule chaîne z de longueur |y| qui est accepté (z=y).
Donc, étant donné la description de Dww, l'état qi au bout du yet la longueur |y| nous pouvons simuler le comportement de Dww sur tous les 2|y| cordes et voir lequel d'entre eux il accepte ... mais il accepte exactement z=y.
Donc avec un programme de taille ℓ=|Dww|+logi+logy+c
(|Dww| un espace est nécessaire pour stocker la description de Dww,
logi espace pour stocker qi, logy espace pour stocker la longueur de y, c de l'espace est nécessaire pour les instructions simulant le DFA)
on peut "reconstruire" la chaîne y; mais pour assez grandy on a ℓ<|y| ce qui est une contradiction parce que y est incompressible.