Muszę wiedzieć, pod którą klasą CFL jest zamknięty, tj. Jaki zestaw jest uzupełnieniem CFL. Wiem, że CFL nie jest zamknięty pod dopełnieniem i wiem, że P jest zamknięty pod dopełnieniem. Ponieważ CFL PI może powiedzieć, że dopełnienie CFL jest zawarte w P (prawda?). Pozostaje pytanie, czy dopełnienie CFL jest właściwym podzbiorem P, czy całym P. Byłbym wdzięczny za wszelkie pomysły, jak pokazać, że dopełnienie CFL jest całym P (jeśli tak jest w przypadku).
complexity-theory
formal-languages
context-free
closure-properties
sets
użytkownik432
źródło
źródło
Odpowiedzi:
Pytanie można zrozumieć na dwa sposoby, zgodnie z definicją „uzupełnienia CFL”.
przypadek A: Uzupełnieniem CFL jest klasa wszystkich języków, których nie ma w CFL. Formalnie W takim przypadku jest znacznie większy niż , ma nawet języki, które nie są w itp. Ale może nie o to ci chodziło.
przypadek B: Zdefiniuj klasę dopełniacza-CFL jako słowy, zestaw wszystkich języków , tak aby dopełnienie było wolne od kontekstu .
W takim przypadku to, co napisałeś, ma sens: (według algorytmu CYK ), a także (uruchom ten sam algorytm, odwrotną odpowiedź), a ponieważ , to powinno być natychmiastowe, że , prawda?CFL⊊P coCFL⊆P CFL≠coCFL coCFL⊊P
źródło
Solidną klasą, która zawiera zarówno CFL, jak i coCFL jest LOGCFL , który zawiera wszystkie języki, które można sprowadzać do przestrzeni logicznej do języka bezkontekstowego. Ta klasa jest pośrednia między NL a AC1 i ma pewne naturalne kompletne problemy. Można to również zdefiniować w kategoriach ograniczonych obwodów AC1. LOGCFL jest zamknięty w dopełnieniu (jest to rozszerzenie argumentu używanego do pokazania, że NL = coNL).
źródło
Uzupełnieniem CFL może być CFL, ale niekoniecznie jest. Uzupełnienie CFL jest zarówno rekurencyjne (R), jak i rekurencyjnie policzalne (RE). Dlaczego? Wszystkie świetlówki kompaktowe są zarówno R, jak i RE. Języki R są zamknięte w uzupełnieniu (ale RE nie są). W tym kontekście uzupełnieniem CFL jest R, które z natury jest RE.
źródło