Спеціальний клас мов: «кругові» мови. Чи відомо?


20

Визначте наступний клас "кругових" мов над кінцевим алфавітом Sigma. Власне, назва вже існує для позначення іншої речі, яку, здається, використовується в галузі обчислення ДНК. AFAICT, це інший клас мов.

Мова L - круговий iff для всіх слів у , ми маємо:w Σ ∗wΣ∗

шw належить L, якщо і тільки якщо для всіх цілих чисел k > 0k>0 , w kwk належить L.

Чи відомий цей клас мов? Мене цікавлять кругові мови, які також є регулярними, зокрема:

  • ім'я для них, якщо вони вже відомі

  • вирішення проблеми, з огляду на автоматику (зокрема: DFA), чи підкоряється прийнята мова вищенаведеному визначенню


1
Це дуже цікаве питання. Два пов'язаних з цим питання: 1) якщо у нас є звичайна мова L та пов’язана DFA, чи можемо ми зробити це круговим? 2) Враховуючи будь-яку мову L, чи буває так, що circ (L) є регулярним або має деякі приємні властивості?
— Суреш Венкат

ps, можливо, це очевидно, але чому ви вважаєте, що кругові мови є підкласом звичайних мов?
— Суреш Венкат

3
@ Суреш, я думаю, що він визначає мову, щоб вона була круглою, якщо вона є) регулярною; б) задовольняє замкнутості ∀ W ∈ L , N ∈ N : W п ∈ L∀w∈L,n∈N:wn∈L .
— Пітер Тейлор


1
Можливо, подяки не слід розміщувати, але це було моє перше питання, і я дуже оцінив якість коментарів, відповідей та обговорень. Спасибі.
— vincenzoml

Відповіді:


19

У першій частині ми покажемо експоненціальний алгоритм вирішення циркулярності. У другій частині ми показуємо, що ця проблема є важкою для coNP. У третій частині ми показуємо, що кожна кругова мова є об'єднанням мов форми r + (тут r може бути порожнім регулярним виразом); союз не обов'язково є нерозбірливим. У четвертій частині ми демонструємо кругову мову, яка не може бути записана як суперечлива сума ∑ r + i .r+r∑r+i

Редагувати: Включено деякі виправлення після коментарів Марка. Зокрема, мої попередні твердження, що циркулярність є coNP-повною або NP-жорсткою, виправляються.

Редагувати: виправлена ​​нормальна форма з ∑ r ∗ i в∑r + i . Виставляли "по своїй суті неоднозначну" мову.∑r∗i∑r+i


Продовжуючи коментар Пітера Тейлора, ось як вирішити (вкрай неефективно), чи є мова круговою, враховуючи її DFA. Створіть нову DFA, стани якої n - пар старих. Цей новий DFA паралельно виконує n копій старого DFA.nn

Якщо мова не кругла, то є слово w таке, що якщо ми повторимо його через DFA кілька разів, починаючи з початкового стану s 0 , то отримаємо стани s 1 , … , s n такі, що s 1 приймає, але одне з інших не приймає (якщо всі вони приймають, то послідовність s 0 , ... , s n повинна кругообігу, щоб w ∗ завжди був у мові). Іншими словами, у нас є шлях від s 0 , … , s nws0s1,…,sns1s0,…,snw∗- від 1 до s 1 ,…, s n, де s 1 приймає, але один з інших не приймає. І навпаки, якщо мова кругла, то цього не може статися.s0,…,sn−1s1,…,sns1

Тож ми звели проблему до простого спрямованого тесту на доступність (просто перевірте всі можливі «погані» n- пар).n


Проблема циркулярності є coNP-жорсткою. Припустимо, нам дають екземпляр 3SAT з n змінними → x та m , C 1 , … , C m . Ми можемо припустити, що n = m (додавання фіктивних змінних) і що n є простим (інакше знайти просте між n і 2 n за допомогою тестування первинності AKS, і додати фіктивні змінні та пропозиції).nx⃗ mC1,…,Cmn=mnn2n

Розглянемо наступну мову: "вхід не має форми → x 1 ⋯ → x n, де → x i - задовольняюче завдання для C i ". Побудувати O ( n 2 ) DFA для цієї мови легко . Якщо мова не кругла, то в мові є слово w , деякої сили якого немає в мові. Оскільки єдині слова, які не є в цій мові, мають довжину n 2 , w має бути довжиною 1 або n . Якщо вона довжиниx⃗ 1⋯x⃗ nx⃗ iCiO(n2)wn2w1n1 , розглянемозамість w n (воно все ще в мові), так що w є в мові, а w n - не в мові. Те, що w n немає у мові, означає, що w - задовольняюче завдання.1wnwwnwnw

І навпаки, будь-яке задовольняє завдання перекладається на слово, що підтверджує некруговість мови: задовольняюче завдання w належить до мови, але w n - ні. Таким чином, мова є круговою, якщо екземпляр 3SAT незадовільний.wwn


У цій частині ми обговорюємо нормальну форму для кругових мов. Розглянемо деякий DFA для кругового мови L . Послідовність З = С 0 , ... є реальним , якщо С 0 = s (початковий стан), всі інші держави беруть і С я = С J означає C я + 1 = С J + 1 . Таким чином, кожна реальна послідовність зрештою є періодичною, і існує лише безмежно багато реальних послідовностей (оскільки DFA має кінцево багато станів).LC=C0,…C0=sCi=CjCi+1=Cj+1

Ми говоримо, що слово поводиться відповідно до C,C якщо слово приймає DFA зі стану c i в стан c i + 1 , для всіх i . Набір усіх таких слів E ( C ) є регулярним (аргумент подібний до першої частини цієї відповіді). Зауважимо , що Е ( С ) представляє собою підмножина L .cici+1iE(C)E(C)L

Давши реальну послідовність C , визначте, що C k є послідовністю C k ( t ) = C ( k t ) . Послідовність C k також реальна. Оскільки існує лише кінцево багато різних послідовностей C k , мова D ( C ), яка є об'єднанням усіх E ( C k ) , також є регулярною.CCkCk(t)=C(kt)CkCkD(C)E(Ck)

Ми стверджуємо, що D ( C ) має властивість, що якщо x , y ∈ D ( C ), то x y ∈ D ( C ) . Справді, припустимо, що x ∈ C k і y ∈ C l . Тоді x y ∈ C k + l . Таким чином, D ( C ) = D ( C ) + можна записати у формі rD(C)x,y∈D(C)xy∈D(C)x∈Cky∈Clxy∈Ck+lD(C)=D(C)++ для деякого регулярного виразу r .r+r

Кожне слово w у мові відповідає деякій реальній послідовності C , тобто існує реальна послідовність C, яка w поводиться відповідно до. Таким чином , L є об'єднанням D ( C ) в протягом всього дійсної послідовності C . Тому кожна кругова мова має подання форми ∑ r + i . І навпаки, кожна така мова є круговою (тривіально).wCCwLD(C)C∑r+i


Розглянемо кругової мову L всіх слів над , б , які містять або парне число або «и або парне число б » и (або обидва). Ми показуємо, що вона не може бути записана як непересічна сума ∑ r + i ; Під "неперервним" ми маємо на увазі, що r + i ∩ r + j = ∅ .La,bab∑r+ir+i∩r+j=∅

Нехай N i - розмір деякої DFA для r + i , а N > max N i - якесь непарне ціле число. Розглянемо x = a N b N ! . Оскільки x ∈ L , x ∈ r + i для деяких i . За насосним леми, можна накачати префікс х довжин не більше N . Таким чином, r + i породжує z = a N !Nir+iN>maxNix=aNbN!x∈Lx∈r+iixNr+i b N ! . Аналогічно, y = az=aN!bN!N!bNy=aN!bN is generated by some r+jr+j, which also generates zz. Note that i≠ji≠j since xy∉Lxy∉L. Thus the representation cannot be disjoint.


There seem to be a number of errors here. You're reducing from UNSAT, not SAT, so you're showing it's coNP-hard. What's your polynomial time witness for (non)-membership?
— Mark Reitblatt

"Since the only words not in the language have length n2n2" Shouldn't that be nmnm?
— Mark Reitblatt

I don't think it's "trivially in coNP". At least, it's not trivially obvious to me. The "obvious" certificate would be a string ll in the language, and a power kk such that lklk isn't in the language. But it's not immediately obvious to me why such a word must be polynomially-sized. Maybe it's by a simple fact of automata theory that I'm overlooking.
— Mark Reitblatt

An even more serious apparent flaw is that you jump from each clause being satisfiable individually to the whole formula being satisfiable. Unless I am misreading, of course.
— Mark Reitblatt

Я погоджуюсь, що не ясно, що циркулярність є у співзвучності. З іншого боку, я не бачу проблем в решті аргументу (тепер, коли я поставив n = m ). Якщо кожне застереження задовольняється тим самим призначенням, то примірник 3SAT задовольняється цим призначенням. n=m
— Yuval Filmus

17

Ось кілька робіт, які обговорюють ці мови:

Тьєррі Качат, Сила раціональних мов з однієї літери, DLT 2001, Springer LNCS № 2295 (2002), 145-154.

С. Говат, П. Лепольд і Г. Лішке, Коріння і повноваження звичайних мов, DLT 2002, Springer LNCS № 2450 (2003), 220-230.

Х. Бордін, Безперервність сили без контекстних мов не можна визначити, TCS 314 (2004), 445-449.


6

@Dave Clarke, L = a*|b* would be circular, but L* would be (a|b)*.

In terms of decidability, a language LL is circular if there is an L′L′ such that LL is the closure under + of L′L′ or if it is a finite union of circular languages.

(I'm dying to redefine "circular" replacing your >> with ≥≥. It simplifies things a lot. We can then characterise the circular languages as those for which there exists a NDFA whose starting state has only epsilon-transitions to accepting states and has an epsilon-transition to each accepting state).


You are right. I've removed my incorrect post.
— Dave Clarke

Regarding adaption with ≥≥: I am thinking that a minimal DFA should always have exactly one accepting state, namely the start state. Maybe more accepting states can happen, but then they need an εε-transition to the start state.
— Raphael

1
@Raphael, consider again L = a*|b*. A DFA whose start state is the only accepting state and which accepts a and b must accept (a|b)*.
— Peter Taylor

On the question of decidability, again: suppose you have a DFA with nn states of which nana are accepting. Suppose it accepts a word ww, and also accepts w2w2, w3w3, ..., wna+1wna+1. Then it accepts wxwx for x>0x>0. (Proof is a straightforward application of the pigeonhole principle). If it's possible to show that the minimal (minimising |w||w|) counterexample (ww, xx) to the circularity of the language accepted by the DFA has length bounded by a function of nn then brute force testing is possible. I suspect that |w|<=n+1|w|<=n+1, but I haven't proved it.
— Peter Taylor

Продовжити ідею @ Рафаеля вище. Ідея start state = only accept state неправильна для цієї проблеми, але вона захоплює якусь цікаву властивість. Коли M є minDFA, стартовий стан є єдиним прийнятим станом, якщо і тільки тоді, коли L (M) є зіркою Клінова мови, що не містить префікса. Це один з моїх улюблених дрібниць DFA, і тому я швидко поділюсь цим! ;)
— mikero

5

Редагувати: Нижче відображається повний (спрощений) доказ повноти PSPACE.

Два оновлення. По-перше, нормальна форма, описана в моїй іншій відповіді, з'являється вже в роботі Калбрікса і Нівату під назвою Префікс і періодичні мови раціональних ω -язиківω , на жаль, недоступні в Інтернеті.

Second, deciding whether a language is circular given its DFA is PSPACE-complete.

Circularity in PSPACE. Since NPSPACE=PSPACE by Savitch's theorem, it is enough to give an NPSPACE algorithm for non-circularity. Let A=(Q,Σ,δ,q0,F)A=(Q,Σ,δ,q0,F) be a DFA with |Q|=n|Q|=n states. The fact that the syntactic monoid of L(A)L(A) has size at most nnnn implies that if L(A)L(A) is not circular then there is a word ww of length at most nnnn such that w∈L(A)w∈L(A) but wk∉L(A)wk∉L(A) for some k≤nk≤n. The algorithm guesses w and computes δw(q)=δ(q,w) for all q∈Q, using O(nlogn) space (used to count up to nn). It then verifies that δw(q0)∈F but δ(k)w∉F for some k≤n.

Circularity is PSPACE-hard. Kozen showed in his classic 1977 paper Lower bounds for natural proof systems that it is PSPACE-hard to decide, given a list of DFAs, whether the intersection of the languages accepted by them is empty. We reduce this problem to circularity. Given binary DFAs A1,…,An, we find a prime p∈[n,2n] and construct a ternary DFA A accepting the language L(A)=¯{2w12w2⋯2wp:wi∈L(A1+(imodn))}.

(With some more effort, we can make A binary as well.) It is not difficult to see (using the fact that p is prime) that L(A) is circular if and only if the intersection L(A1)∩⋯∩L(An) is empty.

0

Every s∈L of length p>0 can be written as xyiz where x=z=ϵ , y=w≠ϵ . It's obvious that |xy|≤p and |y|=|w|>0. It follows that the language is regular for non-empty inputs, by the pumping lemma.

For w=ϵ , the definition holds, since a NDFA that accepts the empty string will also accept any number of empty strings.

The union of the above languages is the language L and since regular languages are closed under union, it follows that every circular language is regular.

By Rice's theorem, CIRCULARITY/TM is undecidable. The proof is similar to regularity.


1
The pumping lemma is a necessary, but not sufficient, condition for regularity. In particular, there are nonregular languages satisfying the pumping condition. Also, Rice's theorem would say that {⟨M⟩|L(M) is circular} is undecidable. This does not mean that {⟨D⟩|L(D) is circular} is undecidable (where D is a DFA, M a TM)! For instance, emptiness testing for DFAs is decidable, while emptiness testing for TMs is not.
— alpoge

1
Here's a non-computable circular language. Let D={0x1:x∈R}, where R is some non-computable language (e.g. codes of halting TMs). Then D∗ is circular but clearly non-computable (an oracle for D∗ can be used to decide R).
— Yuval Filmus

2
@Peter, have you read this answer? It was trying to prove that any circular language (without the condition of regularity) is regular.
— Yuval Filmus

1
@Yuval, my mistake. @chazisop, the pumping lemma is useful for proving non-regularity of languages, but not regularity. (Besides, the assertion of your first sentence reduces to "Every s∈L of length p>0 can be written as yi where y≠ϵ", which is clearly false).
— Peter Taylor

1
Yes, I use CIRCULARITY/TM to refer to this. CIRCULARITY/DFA is probably decidable.
— chazisop
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.