Меня внезапно осенило, и я сотворил вот такую штуку:

Поясняю:

состояние служит для записи количества входных

символов, но так как

зависит от

таким образом -

-, следовательно в стек надо записывать по 2-а символа, чтобы при следующем проходе

занулил все символы

в стеке. Таким образом обеспечивается соответствие количества первых символов

и зависимого от этого количества

символов.

состояние целиком служит для зануления в стеке символов

силами символов

. Следовательно, по окончании этого цикла мы избавимся от зависимости

и

(который в начале).
Теперь осталось проверить зависимость между

и последними

. Следующий за состоянием

переход соответствует понижению

до

. Это облегчает дальнейшие действия так, что, после заполнения оставшихся

символов, теперь осталось занулить весь стек, посредством следующих символов

в состоянии

.
Если их не осталось, то стек должен быть пуст. Тогда входное слово принадлежит данному языку.
Если

ещё остались, то ими надо занулить весь стек из

. Это должно получиться, так как в стеке их ровно столько, сколько должно быть символов

в конце. Занулив стек, мы увидим дно и не должны больше встречать символов

, да и вообще больше символов быть не должно. Только в этом случае слово распознано и, следовательно, принадлежит языку (заключительное состояние

)
Вот так. Я написал это довольно спонтанно, так как с формальной грамматикой у меня большие проблемы и выстроить всё логично у меня не очень получается. То, что я написал выше - это "отражение" моих мыслей в виде слов, то есть - то, как я понимаю этот автомат :).
Если есть косяки, обязательно напишите! Буду очень признателен.