Каковы алгоритмы разбора запрограммированных грамматик?

Я хочу знать, какие алгоритмы анализа используются для анализа запрограммированных грамматик. Любые ссылки, блоги или что-нибудь, где я могу прочитать о запрограммированных грамматиках и алгоритмах синтаксического анализа, кроме исследовательских работ IEEE?


person akshaykumar6    schedule 21.10.2012    source источник
comment
Что не так с исследовательскими работами? Если вы собираетесь с головой погрузиться в более нишевые области CS, вы должны быть готовы читать научные статьи...   -  person nneonneo    schedule 21.10.2012
comment
На самом деле, я уже читал некоторые из них, но не нашел ничего конкретного для запрограммированных грамматик.   -  person akshaykumar6    schedule 21.10.2012
comment
За эти годы я много раз занимался синтаксическим анализом и не знаком с фразами запрограммированные грамматики или грамматики, запрограммированные синтаксическим анализом. Что вам нужно сделать, так это найти источник, который определяет этот термин, и прочитать соответствующую статью. Вы можете быть удивлены, но если ваш термин технически точен, технический документ IEEE или ACM, вероятно, содержит наиболее авторитетный ответ. Судя по тому, что я не знаком с этим термином, возможно, вы каким-то образом исказили название интересующей вас вещи. Где вы встретили этот термин и чем он интересен? (Там много, много типов парсеров).   -  person Ira Baxter    schedule 21.10.2012
comment
Спасибо Ира! Но я получил это как тему моего задания, я ее не придумал. Я нашел несколько статей по программируемой грамматике из Google, но там ничего нет об их алгоритмах синтаксического анализа. Из моих поисков я замечаю, что это не входит в число общепринятых предметов грамматики, об этом мало кто знает. Пожалуйста, продолжайте искать и скажите мне, если вы что-то найдете ..   -  person akshaykumar6    schedule 21.10.2012
comment
Классический метод поиска нужных статей — взять те, которые упоминают вашу тему, и проверить ссылки. Хорошие статьи содержат ссылки на более ранние, более базовые материалы, обычно упоминаемые в первом абзаце в предложении типа Большая работа была проделана над синтаксическим анализом запрограммированных грамматик {ссылка 23}... Прочтите статьи, на которые есть ссылки, и следуйте их< /i> ссылки. Google Scholar теперь довольно удобен для быстрого отслеживания этого в обратном направлении. У всех нас есть свой опыт обучения; этот твой.   -  person Ira Baxter    schedule 21.10.2012
comment
Спасибо, Ира!! Таких советов бесплатно никто не дает, приятно с вами общаться.   -  person akshaykumar6    schedule 21.10.2012
comment
Ну, ну, ты не исказил фразу. Поиск в Google по запрограммированным грамматикам обнаруживает на первых страницах результатов НОВУЮ НОРМАЛЬНУЮ ФОРМУ ДЛЯ ЗАПРОГРАММИРОВАННЫХ ГРАММАТИК С... www.feec.vutbr.cz/EEICT/2012/sbornik/.../12-xvrabe01.pdfShare , вместе с (как и предполагалось) предложением в первых абзацах. В теории формального языка запрограммированные грамматики были тщательно исследованы (см. [1, 2, 4–6, 8, 10]... Это предполагает, что вы не очень старалась. Приятного чтения.   -  person Ira Baxter    schedule 21.10.2012
comment
Я должен прояснить ваши сомнения относительно моей тяжелой работы, что я уже прочитал эту статью и ссылаюсь также на их ссылки, но им нечего сказать об алгоритмах синтаксического анализа для запрограммированных грамматик. Некоторые говорят о запрограммированных грамматиках, а другие об алгоритмах разбора некоторых других грамматик.   -  person akshaykumar6    schedule 21.10.2012
comment
Хорошо, хорошо для вас. Следите за ссылками. В конце концов вы получите статью, содержащую основные идеи и алгоритмы.   -  person Ira Baxter    schedule 21.10.2012
comment
кроме исследовательских работ IEEE... значит, ACM разрешен?   -  person Austin Henley    schedule 22.10.2012


Ответы (1)


Я думаю, это хорошо объяснено в мощь запрограммированных грамматик с графики из разных классов:

Контекстно-свободная грамматика определяется как четверка G = (N, T, S, P), где N — конечное непустое множество, называемое нетерминальным алфавитом, T — конечное непустое множество, называемое терминальным алфавитом, (N ∩ T = ∅), S ∈ N — начальный символ, а P — конечное подмножество. из N × (N ∪ T)∗ называется набором правил. Правила также называются постановками.

Запрограммированная грамматика (без проверки внешнего вида) представляет собой набор из шести кортежей G = (N, T, S, Lab, P, PG), где N , T and S указаны как в контекстно-свободной грамматике, Lab — это алфавит (меток), P — конечный набор контекстно-свободных правил, называемых базовыми произведениями множества. , а PG — это конечное множество троек r = (q, p, σ), где q ∈ Lab — это метка r, p ∈ P — это контекстно-свободная продукция, называемая основной продукцией r, а σ — это подмножество Lab, называемое полем успеха r. Элементы PG называются правилами G.

Язык L(G), сгенерированный запрограммированной грамматикой G, указанной выше, определяется как множество всех слов w ∈ T∗, таких, что существует производное S = w0 =⇒r1 w1 =⇒r2 w2 =⇒r3 . . . =⇒rk wk = w,, где k ≥ 1 и, для 1 ≤ i ≤ k, wi−1 = wi−1 Ai wi−1 и wi = wi−1 vi wi−1, для некоторых слов wi−1 , wi−1 ∈ (N ∪ T)∗ , ri = (qi , Ai → vi , σi) и, для i < k, qi+1 ∈ σi.

Извините за отсутствие LaTeX.

Подобно тому, как лемма Огдена сильнее, чем лемма прокачки (из-за маркировки), концепция запрограммированной грамматики является более строгой. чем контекстно-свободный из-за этих маркировок.

person Andy Hayden    schedule 21.10.2012
comment
Как я уже сказал, я уже ссылался на эти документы, но по-прежнему ничего не объясняет об алгоритме синтаксического анализа. Спасибо!! - person akshaykumar6; 22.10.2012
comment
Третий абзац по сути описывает алгоритм парсинга, чуть позже напишу подробнее. - person Andy Hayden; 22.10.2012