Può esserci un lemma di pompaggio sensibile al contesto?


8

Una proprietà "pumping" (parole di una certa lunghezza implicano l'esistenza di loop nel meccanismo di definizione della lingua) sono note per linguaggi regolari e senza contesto e pochi altri (di solito usati per confutare l'appartenenza di una lingua a una certa classe ).

All'interno della discussione intorno a questa domanda , la risposta di Daisy suggerisce che non può esserci un lemma di pompaggio per i linguaggi sensibili al contesto, poiché sono così complessi.

È vero - si può dimostrare che non può esserci un qualche tipo di proprietà di pompaggio - e c'è un buon riferimento per quello (o contro quello)?


2
Puoi dare una definizione formale di "pumping lemma"? Altrimenti, per principio non può esserci tale prova.
Raffaello

Forse si può confutare il teorema di Parikh per linguaggi sensibili al contesto, e questo ci porta ad aspettarci che non esista un lemma di pompaggio simile a quelli che sappiamo esistere.
Yuval Filmus,

@YuvalFilmus Che vuoi dire? Chiaramente i numeri primi sono sensibili al contesto e non sono semilineari. Quindi Parikh non vale per il contesto sensibile. Ciò significa che il "pompaggio lineare" non si applica. Come Raffaello, sono curioso di sapere quali altri metodi sarebbero considerati pompaggio.
Hendrik Jan,

1
Hai ragione, si tratta di sapere cosa sia esattamente il "pompaggio" ... Speravo in alcuni suggerimenti ... Qual è il teorema di Parikh per i linguaggi sensibili al contesto ? Ne ho trovato solo uno per le lingue senza contesto.
lukas.coenig,

1
@ lukas.coenig Non esiste il teorema di Parikh per i linguaggi sensibili al contesto, ma potrebbe essercene stato uno se ci fosse un semplice lemma di pompaggio per i linguaggi sensibili al contesto.
Yuval Filmus,

Risposte:


8

Ecco alcune prove del fatto che non esiste un lemma di pompaggio per le lingue sensibili al contesto.

Naturalmente, una risposta si basa sulla domanda che cosa costituisce un lemma di pompaggio. La definizione ragionevole più debole che mi viene in mente è questa: una lezione di linguaCha un lemma di pompaggio se esiste un predicato ternario decidibileP(,,) dove P(g,w,d) si intende:

  • g è una parola che codifica una lingua L(g) a partire dal C (pensa: grammatica),
  • w è una parola nella lingua codificata da g
  • dè una parola che codifica un calcolo / derivazione pompabile perw(pensa: calcolo NFA con albero ripetuto di derivazione di stato o CFG con ripetuto nonterminale). Qui significa pompabile : esistono infinitamente molte parole dentroL(g).

Inoltre, vogliamo che venga data una lingua L in C codificato da g, per ogni parola sufficientemente lunga wL, esiste una parola d tale che P(g,w,d).

Ad esempio, il lemma di pompaggio per le lingue regolari darebbe origine al predicato "g codifica un εsenza NFA e d codifica una corsa che ripete uno stato e legge w". Per codifiche adeguate, ciò soddisfa chiaramente le condizioni di cui sopra.

Ora mostriamo che un tale predicato non esiste per le lingue sensibili al contesto.

Osserva che se una classe di lingue ha un lemma di pompaggio, allora il problema dell'infinito (data una grammatica, genera una lingua infinita?) È enumerabile ricorsivamente: data una codifica g, possiamo enumerare le parole w e d e controlla se P(g,w,d). Se lo trovassimow,d, rispondiamo "sì", altrimenti continuiamo l'enumerazione.

Tuttavia, mostriamo che il problema dell'infinito per i linguaggi sensibili al contesto non è ricorsivamente enumerabile. Richiama questoΠ20è un livello della gerarchia aritmetica che include rigorosamente le lingue ricorsivamente enumerabili. Quindi, è sufficiente dimostrare:

Reclamo : il problema dell'infinito per i linguaggi sensibili al contesto èΠ20-completare.

È noto che il problema dell'infinito per le lingue ricorsivamente enumerabili è Π20-completo (più spesso, si trova la formulazione del problema della finiteness Σ20-completare). Pertanto, è sufficiente ridurre quest'ultimo problema al problema dell'infinito per i linguaggi sensibili al contesto.

Dato un TM M, costruiamo un LBA A per la lingua

{u#vv is a shortlex-minimal accepting computation of M on input u}.
Poi, L(A) è infinito iff L(M) è infinito, il che completa la nostra prova.

Aggiornamento: cercato di essere più chiaro. Aggiornamento: esempio aggiunto.


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.