Deterministyczne języki bezkontekstowe (DCFL) i języki z widocznym przesunięciem w dół (VPL) są zestawami języków formalnych między językami bezkontekstowymi (CFL) i zwykłymi (REG). Czy istnieje czytelny zapis, który można wyrazić zwykłym ASCII, takim jak Backus-Naur-Form dla CFL i wyrażenia regularne dla REG?
fl.formal-languages
Jakob
źródło
źródło
Odpowiedzi:
źródło
Aby znaleźć reprezentację kanoniczną, rozważ następujące kwestie: klasa DCFL jest równoważna klasie języków generowanych przez gramatykę LR (k), która ponownie jest równoważna LR (1). Oznacza to, że możesz znaleźć gramatykę LR (1) dla każdego DCFL. Oczywiście, gramatyka LR (1) jest nadal gramatyką bezkontekstową, ale ze specjalną właściwością: z gramatyki LR (1) możemy łatwo budować tabele analizowania, aby poprowadzić deterministyczny parser (z wyprzedzeniem 1 symbolu, stąd LR (1)). Te tabele analiz byłyby inną reprezentacją, choć nieco mniej czytelną.
Nawiasem mówiąc, należy pamiętać, że nie można rozstrzygnąć, czy dany język bezkontekstowy jest deterministyczny (twierdzenie Greibacha).
Muszę przyznać, że nigdy nie słyszałem o VPL.
źródło