DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Лекції та розв'язання задач з лінгвістичного забезпечення САПР

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Комп’ютерні науки
Кафедра:
Кафедра програмного забезпечення

Інформація про роботу

Рік:
2000
Тип роботи:
Практична робота
Предмет:
Лiнгвiстичне забезпечення САПР
Група:
КН-31
Коротко про документ

Про що ця робота

Документ містить розв'язання задач із побудови формальних граматик та скінченних автоматів для розпізнавання ланцюжків. Наведено приклади побудови розпізнавачів та опису множин ланцюжків за заданими умовами.

У роботі розглядаються

  • Формальні граматики
  • Скінченні автомати
  • Таблиці переходів
  • Алфавіт і ланцюжки
  • Розпізнавачі
  • Правила підстановки

Зміст і розділи

  1. Записати граматику для довільних рядків
  2. Побудувати автомат для розпізнавання ланцюжків
  3. Описати автомат та ланцюжки
  4. Побудувати кінцевий розпізнавач для множин ланцюжків
  5. Описати множину ланцюгів автоматично
Для кого:Студенти технічних спеціальностей та розробники систем автоматизованого проектування
Викладачі:Викладач кафедри

Ключові поняття

граматикаавтоматстаналфавітланцюжокперехідтермінальний символнетермінальний символрозпізнавачтаблиця переходів

Частина тексту файла (без зображень, графіків і формул):

“Лiнгвiстичне забезпечення САПР” 1.(184) Записати граматику, по якiй генеруються довiльнi рядки (включаючи порожнi) по алфавiту {0,1}. Граматика описується наступною четівркою Vn - множина нетермінальних символів, Vt - множина термінальних символів,S - початковий символ,P - множина правил підстановки. Множина термінальних символів Vn={0, 1, e}, де е - пустий ланцюжок Множина нетермінальних символів Vt={A, S}, де S - початковий символ Множина правил підстановки Р: S ->A; A->e; A->0A; A->A0; A->1A; A->A1; або S->A; A-> e | 0A | A0 | 1A | A1 Граматика яка описується такою четвіркою генерує довільні рядки по алфавіту {0, 1} 2. (185) Побудувати автомат для розпiзнавання ланцюжкiв, якi можуть знаходитися пiсля слова INTEGER в операторах специфiкацiї формату. Ролі, які зустрічаються в наступній задачі можуть бути описані так: 2 - ім'я змінної, описаної як INTEGER 3 - ліва дужка 4 - ціла стала, яка визначає розмірність 5 - кома, яка розділяє розмірності 6 - змінна, яка визначає змінну розмірність 7 - права дужка 8 - кома, яка розділяє об'єкти, описані як цілі Після того, коли всі ролі позначені автомат може бути побудований по такому алгоритму: Крок 1 Ввести початковий стан і стан помилки Крок 2 Ввести стан для кожної ролі Крок 3 Помістити в таблицю переходи з одного стану в інший, якщо відповідні ролі можуть поступати одна за одною Крок 4 Поповнити таблицю переходами в стан помилки Крок 5 Вибрати в якості допускаючих ті стани, ролі яких з'являються в кінці допускаючих ланцюжків Початковий стан - 1, Стан помилки - Е * - Допускаючі стани - 2 і 7 3.(186) Описати автомат i написати ланцюжки, якi допускає i якi вiдкидає розпiзнавальний автомат, зображений на рисунку: Скінченний автомат описується наступним чином:  EMBED Equation.3 , де Q - скінченна множина станів, S - початковий стан,  EMBED Equation.3 - множина переходів,  EMBED Equation.3 - скінченний вхідний алфавіт, F - множина заключних станів У даному випадку: Q={1, 2, E}, S=1,  EMBED Equation.3 ={A,B}, F={1} Множина переходів  EMBED Equation.3 (1,A)=1  EMBED Equation.3 (1,B)=2;  EMBED Equation.3 (2,A)=E;  EMBED Equation.3 (2,B)=1;  EMBED Equation.3 (E,A)=E;  EMBED Equation.3 (E,B)=E A,B A B B A 1 2 E Можливі наступні варіанти ланцюжків, які допускає даний автомат: Аn, АnВВ , після кожної послідовності символів А повинно йти два символи В або ланцюжок має закінчитись. 4. (187) Побудувати кiнцевий розпiзнавач для множин ланцюжкiв з нулiв i одиниць з кiнцевим маркером, при цьому виявляти допустимi i недопустимi ланцюжки необхiдно якнайшвидше: - кiлькiсть одиниць парна, а кiлькiсть нулiв непарна Введемо наступні стани: А - кількість нулів парна, кількість одиниць парна; В - кількість нулів непарна, кількість одиниць парна; С - кількість нулів парна, кількість одиниць непарна; D - кількість нулів непарна, кількість одиниць непарна; Допускаючим станом є стан В. Таблиця переходів виглядає наступним чином: 5. (188) Побудувати кiнцевий розпiзнавач для множин ланцюжкiв з нулiв i одиниць з кiнцевим маркером, при цьому виявляти допустимi i недопустимi ланцюжки необхiдно якнайшвидше: - мiж одиницями в ланцюжку парна кiлькiсть нулiв Множина станів для такого розпізнавача: S={S1,S2}, множина магазиннних символів: {С,Z}. Вхідний алфавіт: {0, 1, -| }. Множина переходів описується наступними таблицями: Для стану S1: Для стану S2: 6. (189) Побудувати кiнцевий розпiзнавач для множин ланцюжкiв з нулiв i одиниць з кiнцевим маркером, при цьому виявляти допустимi i недопустимi ланцюжки необхiдно якнайшвидше: - пiсля кожної пари одиниць знаходиться нуль Множина станів для такого розпізнавача: S={S1,S2}, множина магазиннних символів: {С,Z}. Вхідний алфавіт: {0, 1, -| }. Множина переходів описується наступними таблицями: Для стану S1: Для стану S2: 7. (190) Побудувати кiнцевий розпiзнавач для множин ланцюжкiв з нулiв i одиниць з кiнцевим маркером, при цьому виявляти допустимi i недопустимi ланцюжки необхiдно якнайшвидше: - кожний третiй символ - одиниця Множина станів для такого розпізнавача S={A,B,C,E} де Е - стан помилки. Початковим станом є стан А. При аналізі кожного третього символа автомат знаходиться в стані С. При наявності на вході в цьому стані 0 автомат переходить в стан помилки, при наявності 1 - в стан А. Всі стани крім стану помилки Е є допускаючими. 8. (191) Побудувати кiнцевий розпiзнавач для множин ланцюжкiв з нулiв i одиниць з кiнцевим маркером, при цьому виявляти допустимi i недопустимi ланцюжки необхiдно якнайшвидше - знаходиться в ланцюжку хоча б одна одиниця. Множина станів для такого розпізнавача S={A,B }. В стані А автомат перебуває до тих пір, поки у вхідному ланцюжчу не зустрічалась одиниця. При поступленні одиниці автомат переходить в стан В, який є допускаючим. 9. (192) Опишить словами множину ланцюгiв, якi розпiзнаються автоматом з такою таблицею станiв (переходiв): Автомат переходить зі стану А в стан В при поступленні 0. При поступленні 1 автомат залишається в стані А. Отже після надходження де-якої кількості одиниць для переходу в стан В на вхід повинна поступити одиниця. Допускаючим станом є стан С. При поступленні нуля в стані В автомат залишається в цьому ж стані, а при поступленні одиниці автомат переходить в стан С. В стані С автомат залишається до закінчення ланцюжка. Отже ланцюжки, які допускає даний автомат можна описати наступним чином  EMBED Equation.3 де n  EMBED Equation.3 0, m>0 А - довільний ланцюжок алфавіту {0,1}. 10. (193) Опишить словами множину ланцюгiв, якi розпiзнаються автоматом з такою таблицею станiв (переходiв): Очевидно, що першим символом в допускаючому ланцюжку повинен бути 0. Після поступлення 0 автомат переходить в стан В, який є допускаючим станом. При поступленні 0 в стані В автомат переходить в стан помилки. При поступленні 1 в стані В автомат залишається в цьому ж стані. Отже монжину допускаючих ланцюжків для заданого автомата можна описати наступним чином:  EMBED Equation.3 , де n  EMBED Equation.3 0 11. (194)Опишить словами множину ланцюгiв, якi розпiзнаються автоматом з такою таблицею станiв (переходiв): При поступленні 0 в стані А автомат переходить в стан В, в якому для того щоб ланцюжок був допускаючим на вхід повинні поступати лише одиниці. При поступленні 1 в стані В автомат переходить в стан С, в якому для того щоб ланцюжок був допускаючим на вхід повинні поступати лише нулі. Можливі ланцюжки, які допускає даний автомат: 01n n>=0, 10m, m>=0
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!