Если откинуть условие
![$\alpha \neq \beta$ $\alpha \neq \beta$](https://dxdy-03.korotkov.co.uk/f/6/b/d/6bd68f5a2b5b2f20bbae8d0824ddd92082.png)
то он не будет контекстно свободным это понятно.
Да Вы что?
![:shock: :shock:](./images/smilies/icon_eek.gif)
Если откинуть это условие, он будет ваще регулярным!!!
Вот если заменить это условие на "противоположное" условие
![$\alpha = \beta$ $\alpha = \beta$](https://dxdy-02.korotkov.co.uk/f/1/d/8/1d8b73d1d2d790ce1afe07488f4512cc82.png)
, то он точно не будет контекстно-свободным и это легко доказывается. А с неравенством... не знаю.
-- Чт дек 10, 2009 00:55:41 --Стоп! Кажется понял. Язык, конечно же, будет контекстно-свободным (но не детерминированно контекстно-свободным).
Автомат, естественно, должен быть недетерминированным и для распознавания он должен угадывать, какая по счёту буква в словах
![$\alpha$ $\alpha$](https://dxdy-01.korotkov.co.uk/f/c/7/4/c745b9b57c145ec5577b82542b2df54682.png)
и
![$\beta$ $\beta$](https://dxdy-01.korotkov.co.uk/f/8/2/1/8217ed3c32a785f0b5aad4055f432ad882.png)
различаются (либо угадывать тот факт, что это слова разной длины, но сие вообще тривиально). До этой буквы всё пихаем в стек. Затем пропускаем остаток слова
![$\alpha$ $\alpha$](https://dxdy-01.korotkov.co.uk/f/c/7/4/c745b9b57c145ec5577b82542b2df54682.png)
вплоть до символа #. Затем снимаем верхнюю букву из стека и запоминаем её через состояние. Затем освобождаем стек, читая слово
![$\beta$ $\beta$](https://dxdy-01.korotkov.co.uk/f/8/2/1/8217ed3c32a785f0b5aad4055f432ad882.png)
буква за буквой, и когда дойдём до нужной буквы (узнаём это по тому факту, что стек освободился), фиксируем различие и радуемся
-- Чт дек 10, 2009 01:17:12 --Автомат рисовать не буду, поскольку полные решения запрещены правилами форума, но грамматику --- пожалуйста. Считаем, что
![$A = \{ a,b \}$ $A = \{ a,b \}$](https://dxdy-02.korotkov.co.uk/f/1/f/3/1f316758daf6e1ee04d7fe65df2253f982.png)
.
![$S \to aL | bL | Ra | Rb | M$ $S \to aL | bL | Ra | Rb | M$](https://dxdy-01.korotkov.co.uk/f/c/3/5/c3599f8957c5b7745f366f0c62b000d782.png)
![$L \to aL | bL | aLa | aLb | bLa | bLb | \sharp$ $L \to aL | bL | aLa | aLb | bLa | bLb | \sharp$](https://dxdy-04.korotkov.co.uk/f/7/0/6/7061430bb3c5727c833a8cac5b0b100d82.png)
![$R \to Ra | Rb | aRa | aRb | bRa | bRb | \sharp$ $R \to Ra | Rb | aRa | aRb | bRa | bRb | \sharp$](https://dxdy-04.korotkov.co.uk/f/f/f/b/ffb44ab97a8ec7a7f30609b01aa06b0b82.png)
![$M \to UX | VY$ $M \to UX | VY$](https://dxdy-03.korotkov.co.uk/f/e/f/3/ef395c3dc6a162479b1f04a5673e94a382.png)
![$U \to aUa | aUb | bUa | bUb | aZ\sharp$ $U \to aUa | aUb | bUa | bUb | aZ\sharp$](https://dxdy-04.korotkov.co.uk/f/b/6/6/b66a82935f486ce256b13fedefae187a82.png)
![$V \to aVa | aVb | bVa | bVb | bZ\sharp$ $V \to aVa | aVb | bVa | bVb | bZ\sharp$](https://dxdy-02.korotkov.co.uk/f/9/5/0/950866cf8de47dc364208873d0be111682.png)
![$X \to bZ$ $X \to bZ$](https://dxdy-04.korotkov.co.uk/f/7/b/c/7bc19903a505dceb484857866103552e82.png)
![$Y \to aZ$ $Y \to aZ$](https://dxdy-01.korotkov.co.uk/f/0/d/8/0d8a203bc67ef8623676985ecff4e73b82.png)
-- Чт дек 10, 2009 01:22:10 --А если сравнивать в лоб, то есть идея задействовать булеву алгебру
Вот эти Ваши слова для меня вообще загадочны. Как Вы собирались какую-то булеву алгебру задействовать, даже не представляю.