Кількість слів у звичайній мові


17

Згідно з Вікіпедією , для будь-якої звичайної мови існують константи та поліноми , щоб на кожне число слів довжиною в задовольняє рівнянняLλ1,,λkp1(x),,pk(x)nsL(n)nL

sL(n)=p1(n)λ1n++pk(n)λkn .

Мова є регулярною ( відповідає їй). iff n є парним, а іншому випадку.L={02nnN}(00)sL(n)=1sL(n)=0

Однак я не можу знайти та (які повинні існувати вище). Оскільки має бути диференційованим і не є постійним, він повинен якось поводитися як хвиля, і я не можу зрозуміти, як ви можете це зробити за допомогою поліномів і експоненціальних функцій, не закінчуючи нескінченною кількістю підсумків, як у розширення Тейлора. Хтось може мене просвітити?λipisL(n)


чи знаєте ви назву цієї теореми?
Артем Казнатчеєв

@ArtemKaznatcheev: ні, немає ідеї. На жаль, Вікіпедія не дає посилання :(
Alex ten Brink

Відповіді:


14

Для вашої мови, ви можете взяти , λ 0 = 1 , р 1 ( х ) = 1 / 2 , λ 1 = - 1 , і р я ( х ) = λ я = 0 для i > 1 ? Стаття у Вікіпедії нічого не говорить про те, що коефіцієнти є позитивними чи інтегральними. Сума за мій вибір -p0(x)=1/2λ0=1p1(x)=1/2λ1=1pi(x)=λi=0i>1

1/2+1/2(1)n=1/2(1+(1)n)

, Який , як видається, 1 для парного , і 0 для непарного п . Дійсно, доказ шляхом індукції здається простим.nn


Ага так, звичайно, я забув про чергування знаків мінусу. Буде голосувати, коли день закінчиться - я потрапив до обмеження голосів.
Олексій десять Бринк

Для цієї претензії не потрібна жодна індукція.
Рафаель

@Raphael Щоправда, але знову ж таки, це лише робить моє твердження ще більш точним.
Patrick87

11

@ Patrick87 дає чудову відповідь для вашого конкретного випадку, я думав, що я дам підказку, як знайти у більш загальному випадку будь-якої мови L, який може бути представлений невідводимим DFA (тобто, якщо це можливо потрапити в будь-яку державу з будь-якої держави). Зауважте, що ваша мова такого типу.sL(n)L


Доведення теореми для невідворотних ДФК

Нехай - матриця переходу вашого М-стану DFA, оскільки вона невідводима, матриця є нормальною і має повний власний базис | λ 1. . . | λ м . Нехай | Бути приймають вектор: тобто я | Є 1 , якщо я це приймає стан, і 0 в іншому випадку. WLOG припускають, що | 1 початковий стан, а так як у нас є повний власний базис, ми знаємо , що | 1 = з 1 |Dm|λ1...|λm|Ai|Ai|1 для деяких коефіцієнтів гр 1 . . . з м (зауважимощо з я = А , я | я ).|1=c1|λ1+...+cm|λmc1...cmci=λi|i

Тепер ми можемо довести обмежений випадок теореми у питанні (обмежений до непридатних DFA; як вправа узагальнює цей доказ на всю теорему). Оскільки - матриця переходу D | 1 вектор станів , досяжних після прочитання якої - або один символ, D 2 | 1 є однаковим для двох символів і т.д. З огляду на вектор | х , | х просто сума компонентів | х , які приймають держави. Таким чином:DD|1D2|1|xA|x|x

sL(n)=A|Dn|1=A|Dn(c1|λ1...cm|λm)=c1λ1nA|λ1+...+cmλmnA|λm=A|λ1λ1|1λ1n+...+A|λmλm|1λmn=p1λ1n+...+pmλmm

Тепер ми знаємо, що для невідводимого m-стану DFA, буде поліномами нульового порядку (тобто константами), що залежить від DFA та λ 1 . . . λ m будуть власними значеннями перехідної матриці.p1...pmλ1...λm

Нота загальності

Якщо ви хочете довести цю теорему для довільної ДФА, тоді вам потрібно буде розглянути розклад Шура на і тоді поліноми ненульового ступеня спливуть через нільпотентні умови. Це все ще просвічує це зробити, оскільки це дозволить вам зв'язати максимальний ступінь многочленів. Ви також знайдете залежність між складністю поліномів і кількістю λ s.Dλ


Заява до конкретного питання

Для вашої мови ми можемо вибрати DFA з перехідною матрицею:L

D=(0110)

і приймати вектор:

A=(10)

Знайдіть власні вектори та їх власні значення допомогою | λ 1= 1λ1=1іλ2=-1зі| λ2=1|λ1=12(11)λ2=1. Ми можемо використовувати цещоб знайтиP1=1/2ір2=1/2. Щоб дати нам:|λ2=12(11)p1=1/2p2=1/2

sL(n)=12+12(1)n

Maybe post this here?
Raphael

@Raphael that was asked while I was figuring out the proof and typing up my answer, so I did not know about it when I asked.
Artem Kaznatcheev

6

Ax,y

sL(n)=xTAny.
xyAiji to state j in a DFA for the language.)

Jordan's theorem states that over the complex numbers, A is similar to a matrix with blocks of one of the forms

(λ),(λ10λ),(λ100λ100λ),(λ1000λ1000λ1000λ),
If λ0, then the nth powers of these blocks are
(λn),(λnnλn10λn),(λnnλn1(n2)λn20λnnλn100λn),(λnnλn1(n2)λn2(n3)λn30λnnλn1(n2)λn200λnnλn1000λn),
Here's how we got to these formulas: write the block as B=λ+N. Successive powers of N are successive secondary diagonals of the matrix. Using the binomial theorem (using the fact that λ commutes with N),
Bn=(λ+n)N=λn+nλn1N+(n2)λn2N2+.
When λ=0, the block is nilpotent, and we get the following matrices (the notation [n=k] is 1 if n=k and 0 otherwise):
([n=0]),([n=0][n=1]0[n=0]),([n=0][n=1][n=2]0[n=0][n=1]00[n=0]),([n=0][n=1][n=2][n=3]0[n=0][n=1][n=2]00[n=0][n=1]000[n=0])

Summarizing, every entry in An is either of the form (nk)λnk or of the form [n=k], and we deduce that

sL(n)=ipi(n)λi(n)+jcj[n=j],
for some complex λi,cj and complex polynomials pi. In particular, for large enough n,
sL(n)=ipi(n)λi(n).

Thank you for the general treatment! You should consider combining your answer with mine and posting it as a full answer to this question. I think it would be more helpful than the current answer there.
Artem Kaznatcheev
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.