Враховуючи регулярні вирази , чи є нетривіальні межі щодо розміру найменшої без контексту граматики для R 1 ∩ ⋯ ∩ R n ?
Враховуючи регулярні вирази , чи є нетривіальні межі щодо розміру найменшої без контексту граматики для R 1 ∩ ⋯ ∩ R n ?
Відповіді:
Це велике запитання, і воно справді лежить в моїх інтересах. Я радий, що ти запитав це Макс.
Нехай буде задано DFA з максимум O ( n ) станами. Було б добре, якби існував КПК із субекспоненціально багатьма станами, який приймає перетин мов DFA. Однак я вважаю, що такий КПК може не завжди існувати.
Розглянемо мову копіювання. Тепер обмежте його копіюванням рядків довжиною n.
Формально розглянемо -копію : = { x x .
Ми можемо представити -копію як перетин n розмірів DFA не більше O ( n ) . Однак найменша DFA, яка приймає n -копію, має 2 Ω ( n ) станів.
Так само, якщо ми обмежимось алфавітом двійкового стека, то я підозрюю, що найменший PDA, який приймає -копію, має експоненціально багато станів.
PS Не соромтеся надіслати мені електронний лист, якщо ви хочете обговорити далі. :)
Я не думаю, що можуть бути якісь нетривіальні нижня або верхня межа.
Для нижніх меж розглянемо мову для фіксованого k . Розмір найменшої безтекстової граматики є логарифмічним у розмірі регулярного виразу L 1 , тоді як розмір найменшого автомата для є лінійним за розміром L 1 . Ця експоненціальна різниця залишається такою ж, якщо ми перетинаємо L 1 з іншими такими мовами.
Для верхніх меж розглянемо мову L 2, яка складається саме з однієї
deBruijn-Послідовність довжини . Відомо, що розмір найменшої граматики для L 2 є найгіршим випадком, тобто O ( n, тому різниця до "найменшого" автомата дляL2є просто логарифмічним фактором, пропозиція 1 в
Нетривіальна загальна нижня або верхня межа суперечить цим результатам, оскільки те, що справедливо для перетину мов, має бути правдивим для перетину 1 мови.
Дозвольте другий суд Михайла, це справді цікаве питання. Основна ідея Майкла може поєднуватися з результатами з літератури, забезпечуючи таким чином аналогічну нижню межу із суворим доказом.
Я буду позначати межі розміру CFG з точки зору загальної кількості алфавітних символів у регулярних виразах. Нехай це число позначається k . (Як зазначав john_leo, ми не знайдемо корисних меж щодо кількості регулярних виразів, що беруть участь у перетині.)
Ні ОП, ні Майкл не вважали за необхідне згадувати про це, але верхня межа (на кількість станів) для перетворення перетину регулярних виразів у NFA не може бути легко доведена. Для запису ось що: Перетворіть регулярні вирази в автомати Глушкова, які всі не повертаються. Потім застосуйте конструкцію продукту, щоб отримати NFA для перетину цих мов. (Я припускаю, що можна поліпшити обмеження до 2 k + 1 або близько того.) S -state НКА може бути перетворений в правій лінійної граматики (яка є окремим випадком CFG) розміру (якщо ми вимірюємо розмір граматики як загальну кількість символів на лівій і правій стороні постановки), таким чином надаючи розмір . Зв'язане це, звичайно, звучить жахливо, якщо ви маєте на увазі практичне застосування. Спроба довести кращу межу, використовуючи недетерміновану складність переходу замість недетермінованої складності стану для оцінки розміру NFA, можливо, варто докласти зусиль.
Інша частина - пошук мови свідків, яка може бути виразно виражена як перетин регулярних виразів, але обов'язково громіздка для опису CFG. (Тут нам потрібно встановити нижню межу щодо розміру всіх CFG, що генерують мову, яких може бути нескінченно багато.) Наступний аргумент дає
І все-таки між залишається великий проміжок
Список літератури:
В. Арвінд, Пушкар С. Джоглекар, Шрікант Шрінівасан. Арифметичні схеми та добуток Адамара поліномів , FSTTCS 2009, Vol. 4 ЛІПІК, с. 25-36
Ланге, Мартін; Лейса, Ганс (2009). " Для CNF чи не для CNF? Ефективна, але презентабельна версія алгоритму CYK ". Informatica Didactica 8.