Specjalna klasa języków: języki „okrężne”. Czy to jest znane


20

Zdefiniuj następującą klasę języków „okrągłych” nad skończonym alfabetem Sigma. W rzeczywistości nazwa już istnieje, aby oznaczać inną rzecz, która się wydaje, stosowana w dziedzinie przetwarzania DNA. AFAICT, to inna klasa języków.

Język L jest okrągła wtw dla wszystkich słów w , mamy:wΣ

w należy do L wtedy i tylko wtedy, gdy dla wszystkich liczb całkowitych , należy do L.k>0wk

Czy ta klasa języków jest znana? Interesują mnie języki obiegowe, które są również regularne, a w szczególności:

  • imię dla nich, jeśli są już znane

  • rozstrzygalność problemu, biorąc pod uwagę automat (w szczególności: DFA), czy zaakceptowany język jest zgodny z powyższą definicją


1
To bardzo interesujące pytanie. Dwa powiązane pytania: 1) jeśli mamy zwykły język L i powiązany DFA, czy możemy sprawić, by był okrągły? 2) Czy w danym języku L jest tak, że circ (L) jest regularny lub ma jakieś fajne właściwości?
Suresh Venkat,

ps może to jest oczywiste, ale dlaczego uważasz, że języki okrężne są podklasą zwykłych języków?
Suresh Venkat,

3
@Suresh, myślę, że definiuje on język jako kolisty, jeśli jest to a) regularny; b) spełnia właściwość zamknięciawL,nN:wnL .
Peter Taylor


1
Może nie należy pisać podziękowań, ale to było moje pierwsze pytanie i bardzo doceniłem jakość komentarzy, odpowiedzi i dyskusji. Dzięki.
vincenzoml

Odpowiedzi:


19

W pierwszej części przedstawiamy wykładniczy algorytm decydujący o okrągłości. W drugiej części pokazujemy, że jest to trudny problem coNP. W trzeciej części pokazujemy, że każdy język okrągły jest połączeniem języków postaci (tutaj r może być pustym wyrażeniem regularnym); związek niekoniecznie jest rozłączny. W czwartej części pokazujemy okrągły język, którego nie można zapisać jako rozłączną sumę r + i .r+rri+

Edycja: Wprowadzono poprawki po komentarzach Marka. W szczególności moje wcześniejsze twierdzenia, że ​​cykliczność jest coNP-pełna lub NP-twarda są poprawione.

Edit: Poprawione normalną formę z do Ď R + I . Wykazał „z natury dwuznaczny” język.riri+


Kontynuując komentarz Petera Taylora, oto jak zdecydować (wyjątkowo nieefektywnie), czy dany język jest okrągły, biorąc pod uwagę jego DFA. Skonstruuj nowy DFA, którego stany są czopami starych stanów. Ten nowy DFA obsługuje równolegle n kopii starego DFA.nn

Jeśli język nie jest okrągły, wówczas istnieje słowo tak że jeśli przepuszczamy go przez DFA wielokrotnie, zaczynając od stanu początkowego s 0 , otrzymujemy stany s 1 , , s n takie, że s 1 akceptuje tylko jeden z pozostałych nie akceptuje (jeśli wszystkie z nich akceptują, to sekwencja s 0 , , s n musi cyklicznie, aby w zawsze było w języku). Innymi słowy, mamy ścieżkę od s 0 , , s nws0s1,,sns1s0,,snw do s 1 ,, s n gdzie s 1 akceptuje, ale jeden z pozostałych nie akceptuje. I odwrotnie, jeśli język jest okrągły, to nie może się zdarzyć.s0,,sn1s1,,sns1

Więc zredukowaliśmy problem do prostego ukierunkowanego testu osiągalności (po prostu sprawdź wszystkie możliwe „złe” pary).n


Problem okrężności jest trudny dla CoNP. Załóżmy, że mamy dane instancji 3SAT z zmiennymi x i m klauzule C 1 , ... , C m . Możemy założyć, że n = m (dodaj zmienne fikcyjne) i że n jest liczbą pierwszą (w przeciwnym razie znajdź liczbę pierwszą między n a 2 n za pomocą testowania pierwotności AKS, i dodaj zmienne fikcyjne i klauzule).nxmC1,,Cmn=mnn2n

Rozważ następujący język: „dane wejściowe nie mają formy gdzie x i jest zadowalającym przypisaniem dla C i ”. Łatwo jest zbudować O ( n 2 ) DFA dla tego języka. Jeśli język nie jest okrągły, wówczas w języku znajduje się słowo w , którego mocy nie ma w języku. Ponieważ jedyne słowa spoza języka mają długość n 2 , w musi mieć długość lub . Jeśli ma długośćx1xnxiCiO(n2)wn2w1n1 , zamiast tego rozważ (wciąż jest w języku), aby było w języku, a nie było w języku. Fakt, że nie jest w języku oznacza, że jest zadowalającym zadaniem.wnwwnwnw

I odwrotnie, każde zadowalające przypisanie przekłada się na słowo potwierdzające niekołowość języka: zadowalające przypisanie należy do języka, ale nie. Tak więc język jest okrągły, jeśli instancja 3SAT jest niezadowalająca.wwn


W tej części omawiamy normalną formę dla języków okrężnych. Rozważmy pewien DFA dla okrągłej języka . Sekwencja C = C 0 , jest prawdziwa, jeśli C 0 = s (stan początkowy), wszystkie inne stany akceptują, a C i = C j oznacza C i + 1 = C j + 1 . Tak więc każda prawdziwa sekwencja jest ostatecznie okresowa i istnieje tylko skończona liczba prawdziwych sekwencji (ponieważ DFA ma skończenie wiele stanów).LC=C0,C0=sCi=CjCi+1=Cj+1

Mówimy, że słowo zachowuje się zgodnie z C jeśli bierze ono DFA ze stanu do stanu c i + 1 , dla wszystkich i . Zbiór wszystkich takich słów E ( C ) jest regularny (argument jest podobny do pierwszej części tej odpowiedzi). Należy zauważyć, że E ( C ) jest podzbiorem L .cici+1iE(C)E(C)L

Biorąc pod uwagę rzeczywistą sekwencję , zdefiniuj C k jako sekwencję C k ( t ) = C ( k t ) . Sekwencja C k jest również prawdziwe. Ponieważ istnieje tylko skończenie wiele różnych sekwencji C k , język D ( C ) , która jest sumą wszystkich E ( C k ) jest również regularne.CCkCk(t)=C(kt)CkCkD(C)E(Ck)

Twierdzimy, że ma właściwość, że jeśli x , y D ( C ), to x y D ( C ) . Rzeczywiście, załóżmy, że x C k i y C l . Następnie x y C k + l . Zatem D ( C ) = D ( C ) + można zapisać w postaci rD(C)x,yD(C)xyD(C)xCkyClxyCk+lD(C)=D(C)+ dla niektórych wyrażeń regularnych r .r+r

Każde słowo w pewnym językowych odpowiada rzeczywistym sekwencji C , czyli istnieje realne sekwencji C , które w działa zgodnie. Zatem L jest związek R ( C ) w ciągu wszystkich rzeczywistych kolejności C . Dlatego każdy język okrągły ma reprezentację postaci r + i . I odwrotnie, każdy taki język jest okrągły (trywialny).wCCwLD(C)Cri+


Rozważmy okrągły język wszystkich słów nad a , b, które zawierają albo liczbę parzystą, albo a , albo parzystą liczbę b (lub oba). Pokazujemy, że nie można go zapisać jako rozłącznej sumy r + i ; przez „rozłączny” rozumiemy, że r + ir + j = .La,babri+ri+rj+=

Niri+N>maxNix=aNbN!xLxri+ixNri+z=aN!bN!y=aN!bNrj+zijxyL . Zatem reprezentacja nie może być rozłączna.


Wydaje się, że jest tu wiele błędów. Redukujesz z UNSAT, a nie SAT, więc pokazujesz, że jest to trudne dla CoNP. Jaki jest twój wielomian czasowy świadek (nie) członkostwa?
Mark Reitblatt,

„Ponieważ jedyne słowa nie w języku mają długość ” Czy to nie powinno być ? n2nm
Mark Reitblatt

Nie sądzę, że jest „trywialnie w CoNP”. Przynajmniej nie jest to dla mnie oczywiste. „Oczywistym” certyfikatem byłby ciąg w języku, a potęga taka, że nie jest w języku. Ale nie jest dla mnie od razu oczywiste, dlaczego takie słowo musi być wielomianowe. Może przeoczam prosty fakt teorii automatów. lklk
Mark Reitblatt,

Jeszcze poważniejszą pozorną wadą jest to, że przeskakujesz od każdej klauzuli indywidualnie do satysfakcjonującej, aż cała formuła jest satysfakcjonująca. Oczywiście, chyba że się mylę.
Mark Reitblatt,

Zgadzam się, że nie jest jasne, że cykliczność jest w CoNP. Z drugiej strony nie widzę problemów w pozostałej części argumentu (teraz, gdy wstawiłem ). Jeśli każda klauzula jest spełniona przez to samo przypisanie, wówczas instancja 3SAT jest spełniona przez to przypisanie. n=m
Yuval Filmus

17

Oto kilka artykułów omawiających te języki:

Thierry Cachat, Moc literowych języków racjonalnych, DLT 2001, Springer LNCS # 2295 (2002), 145-154.

S. Hovath, P. Leupold i G. Lischke, Korzenie i potęgi języków regularnych, DLT 2002, Springer LNCS # 2450 (2003), 220-230.

H. Bordihn, Wolność kontekstu potęgi języków bezkontekstowych jest nierozstrzygalna, TCS 314 (2004), 445–449.


6

@Dave Clarke, L = a * | b * byłoby koliste, ale L * byłoby (a | b) *.

Pod względem rozstrzygalności język jest okrągły, jeśli istnieje taki, że jest zamknięciem pod + lub jeśli jest skończonym połączeniem języków okrągłych.LLLL

(Umieram przedefiniować „okrągły” wymieniając z . Upraszcza rzeczy dużo. Możemy wtedy charakteryzować języki okrągłe jak te, dla których istnieje NDFA którego począwszy państwo ma tylko epsilon-przejścia z akceptacją państw i ma przejście epsilon do każdego stanu akceptującego).>


Masz rację. Usunąłem mój niepoprawny post.
Dave Clarke

Odnośnie adaptacji za pomocą : Myślę, że minimalny DFA powinien zawsze mieć dokładnie jeden stan akceptacji, a mianowicie stan początkowy. Być może może się zdarzyć więcej stanów akceptujących, ale wtedy potrzebują one przejścia ε do stanu początkowego. ε
Raphael

1
@ Rafael, zastanów się ponownie L = a * | b *. DFA, którego stan początkowy jest jedynym stanem akceptującym i który akceptuje aib, musi zaakceptować (a | b) *.
Peter Taylor

W kwestii rozstrzygalności ponownie: załóżmy, że masz DFA z stanami, z których n a akceptuje. Załóżmy, że akceptuje słowo w , a także akceptuje w 2 , w 3 , ..., w n a + 1 . Następnie akceptuje w x dla x > 0 . (Dowód jest prostym zastosowaniem zasady szufladki). Jeśli można pokazać, że minimalny (minimalizujący | w | ) kontrprzykład ( w , xnnaww2w3wna+1wxx>0|w|wx) do okrągłości języka akceptowanego przez DFA ma długość ograniczona funkcją wówczas możliwe jest badanie siły brutalnej. Podejrzewam, że | w | < = n + 1 , ale tego nie udowodniłem. n|w|<=n+1
Peter Taylor

Kontynuacja powyższego pomysłu @ Raphael. Idea stanu początkowego = tylko stan akceptacji jest niewłaściwa dla tego problemu, ale przechwytuje kilka interesujących właściwości. Gdy M jest minDFA, stan początkowy jest jedynym stanem akceptacji wtedy i tylko wtedy, gdy L (M) jest gwiazdą Kleene języka bez prefiksów. To jedna z moich ulubionych ciekawostek DFA, dlatego szybko się nią dzielę! ;)
mikero

5

Edycja: Pełny (uproszczony) dowód kompletności PSPACE pojawia się poniżej.

Dwie aktualizacje. Po pierwsze, normalna forma opisana w mojej drugiej odpowiedzi pojawia się już w artykule Calbrixa i Nivata zatytułowanym Prefiks i języki okresowe racjonalnych langaugesω , niestety niedostępne online.

Po drugie, podejmowanie decyzji, czy język jest okrągły, biorąc pod uwagę jego DFA, jest kompletny z PSPACE.

A=(Q,Σ,δ,q0,F)|Q|=nL(A)nnL(A)wnnwL(A)wkL(A)knwδw(q)=δ(q,w)qQO(nlogn)nnδw(q0)Fδw(k)Fkn

A1,,Anp[n,2n]A

L(A)={2w12w22wp:wiL(A1+(imodn))}¯.
Arównież binarne.) Nietrudno jest zauważyć (używając faktu, że jest liczbą pierwszą), że jest kołowy tylko wtedy, gdy przecięcie jest puste.pL(A)L(A1)L(An)

0

Każde o długości można zapisać jako gdzie , . To oczywiste, że i . Wynika z tego, że język jest regularny dla niepustych danych wejściowych, dzięki lemacie pompującej.sLp>0xyizx=z=ϵy=wϵ|xy|p|y|=|w|>0

Dla obowiązuje definicja, ponieważ NDFA, który akceptuje pusty ciąg, akceptuje również dowolną liczbę pustych ciągów.w=ϵ

Zjednoczeniem powyższych języków jest język L, a ponieważ języki zwykłe są zamknięte w ramach unii, wynika z tego, że każdy język okrągły jest regularny.

Według twierdzenia Rice'a, jest nierozstrzygalna. Dowód jest podobny do regularności.CIRCULARITY/TM


1
Lemat pompowania jest koniecznym, ale niewystarczającym warunkiem prawidłowości. W szczególności istnieją języki nieregularne spełniające warunki pompowania. Twierdzenie Rice'a mówi również, że jest nierozstrzygalny. Nie oznacza to, że jest nierozstrzygalny (gdzie to DFA, a TM)! Na przykład, test pustki dla DFA jest rozstrzygalny, podczas gdy test pustki dla TM nie jest. {M|L(M) is circular}{D|L(D) is circular}DM
alpoge 13.01.11

1
Oto niemożliwy do obliczenia język okrężny. Niech , gdzie to jakiś język, który nie jest obliczalny (np. Kody zatrzymujących baz TM). Wówczas jest okrągły, ale wyraźnie nieobliczalny (wyrocznia dla może być użyta do ustalenia ). D={0x1:xR}RDDR
Yuval Filmus

2
@Peter, czy przeczytałeś tę odpowiedź? Próbowano udowodnić, że każdy okrągły język (bez warunku regularności) jest regularny.
Yuval Filmus

1
@Yuval, mój błąd. @chazisop, lemat pompujący jest przydatny do udowodnienia nieregularności języków, ale nie regularności. (Poza tym stwierdzenie pierwszego zdania sprowadza się do „Każde długości można zapisać jako gdzie ”, co jest wyraźnie fałszywe). sLp>0yiyϵ
Peter Taylor

1
Tak, używam CIRCULARITY / TM, aby się do tego odnieść. OKOLICZNOŚĆ / DFA jest prawdopodobnie rozstrzygalne.
chazisop 16.01.11
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.