Материалы (4) (Материалы к лекциям)
Описание файла
Файл "Материалы (4)" внутри архива находится в папке "Материалы к лекциям". PDF-файл из архива "Материалы к лекциям", который расположен в категории "". Всё это находится в предмете "практика расчётов на пэвм" из 3 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .
Просмотр PDF-файла онлайн
Текст из PDF
46Приведенные КС-грамматикиСимвол x (VT VN) называетсянедостижимым в грамматике G=(VT, VN, P, S), еслион не появляется ни в одной сентенциальной формеэтой грамматики.Символ А VN называется бесплодным вграмматике G=(VT, VN, P, S), если множествовыводимых из этого символа терминальных цепочекпусто.КС-грамматика называется приведенной, если вней нет недостижимых и бесплодных символов.47Приведенные КС-грамматикиАлгоритм приведения грамматики:1.Найти и удалить все бесплодные символы иправила, их содержащие.2.Найти и удалить все недостижимые символы иправила, их содержащие.Примечание. Если начальный символ грамматики окажется бесплодным, тоследует удалить содержащие его правила, а сам символ оставить в алфавитенетерминалов VN, так как по определению грамматики VN обязан содержатьначальный символ.48Для нахождения бесплодных и недостижимыхсимволов полезен граф КС-грамматики: каждому символу из VT VN соответствуетединственная вершина, помеченная этим символом;если в P есть правило с пустой правой частью , тограф имеет вершину, помеченную ; вершина X соединяется с вершиной Y стрелкой(дугой), если в грамматике есть правило XY,,(VTVN)* ; X соединяется с вершиной , если в грамматикеесть правило X .49Алгоритм удаления бесплодных символов:1.
Отметить терминальные вершины (вершины,помеченные терминальными символами), а такжевершину , если таковая имеется.2. Если в Р есть правило А, где состоит из ужеотмеченных в графе символов, а вершина А неотмечена, то отметить эту вершину. Повторятьшаг 2 пока возможно.3. Из грамматики удалить неотмеченные символы иправила, их содержащие.50Алгоритм удаления бесплодных символов:1. Отметить терминальные вершины (вершины, помеченныетерминальными символами), а также вершину , если такаяимеется.2.
Если в Р есть правило А, где состоит из ужеотмеченных в графе символов, а вершина А не отмечена, тоотметить эту вершину. Повторять шаг 2 пока возможно.3. Из грамматики удалить неотмеченные символы и правила, ихсодержащие.Алгоритм удаления недостижимых символов:1. Отметить вершины, в которые есть путь из вершины S.2. Удалить из грамматики неотмеченные символы и правила, ихсодержащие.51Пример. Дана грамматикаG=({a, b, c, d, e}, {S, A, B, C, D}, P, S)P:S aAB | CD cDc | dC aCDA aA | a | cBbГраф грамматики G:SBaACDbde52Пример. Дана грамматикаG=({a, b, c, d, e}, {S, A, B, C, D}, P, S)P:S aAB | CD cDc | dC aCDA aA | a | cBbГраф грамматики G:SBaACDbdeНе отмеченные жирным кружком символы бесплодны.53Пример.
Дана грамматикаG=({a, b, c, d, e}, {S, A, B, C , D}, P, S)P:S aAB | CD cDc | dC aCDA aA | a | cBbГраф грамматики G:SBaACDbdeНе отмеченные жирным кружком символы бесплодны.Удалив из G бесплодные символы, получим эквивалентную грамматикуG1 =({a, b, c, d, e}, {S, A, B, D}, P1 , S)P1 : S aABD cDc | dA aA | a | BbG1 не содержит бесплодных символов.Находим недостижимые символыГраф грамматики G1 :SBaAcDbde54G1 =({a, b, c, d, e}, {S, A, B, D}, P1 , S)P1 : S aABD cDc | dA aA | a | BbГраф грамматики G1 :SBaAcDbdЗдесь неотмеченные символы являются недостижимыми.e55G1 =({a, b, c , d , e }, {S, A, B, D }, P1 , S)P1 : S aABD cDc | d лA aA | a | BbГраф грамматики G1 :SBaAcDbdeЗдесь неотмеченные символы являются недостижимыми.Удалив из G1недостижимые символы, получимэквивалентнуюграмматику:G2 =({a, b}, {A, B}, P2 , S)P2 : S aABG2 – приведенная грамматикаA aA | a | BbL(G)=L(G1 )=L(G2 )={ an b | n1 }Задача.
Убедиться, что если в рассмотренном выше примере поменятьместами шаги (1) и (2) алгоритма приведения грамматики, то результатомбудет неприведенная грамматика.56Устранение правил с пустой правой частью из КС-грамматики1. Построить множество Х={AN | A}.2.
Удалить правила с пустой правой частью.3. Если SX, то S’ – новый начальный символ, S’S | P.4. AX правило вида B1A12A2...nAnn+1,где i((N – X)T)*nзаменить 2 правилами, соответствующими всем возможнымкомбинациям вхождений А между i:B12...nn+1B12...nAnn+1...B12A2...nAnn+1B1A12A2...nAnn+1Замечание: если все i= i=1,...,n+1, то правило B невключать в новую грамматику.5. Удалить бесполезные символы и правила, их содержащие.57Пример.исходнаяграмматикаSBC | AbBCcAAa | эквивалентнаяграмматикаSC | b | AbCcAAa | a.