
- •6.050102 “ Комп’ютерна інженерія” та 6.050101 “Комп’ютерні науки”
- •1. Графи. Основні поняття та визначення
- •1.1. Визначення графа
- •1.2. Типи скінченних графів
- •1.3. Суміжність та інцидентність
- •1.4. Способи задання графів
- •1.5. Маршрути і підграфи
- •На орграфі рис. 1.4, а маршрут (е1, е2, е5) – простий шлях, що є контуром, а маршрут (е1, е2, е3) – простий неконтурний шлях.
- •1.6. Зв'язність і роздільність
- •1.7. Характеристики графів
- •1.8. Дерева і ліс
- •1.9. Приклади задач, які використовують зважені графи
- •2.1. Логіка висловів. Загальні поняття
- •2.2. Формули алгебри висловів
- •2.3. Розв'язання «логічних» задач
- •2.4. Застосування алгебри логіки в теорії автоматів. Схеми перемикачів
- •2.5. Логіка першого порядку (логіка предикатів). Загальні поняття
- •2.6. Інтерпретація формул логіки предикатів
- •2.7. Передуюча нормальна форма
- •2.8. Логіка реляційна
- •2.9. Нечітка логіка. Загальні поняття
- •2.10. Нечітка алгебра
- •2.11. Нечітке числення
- •3. Булеві функції. Основні закони алгебри логіки
- •3.1. Цифрові автомати в схемотехніці та програмуванні
- •3.2. Висловлювання, предикати, булеві функції
- •3.3. Схемні реалізації булевих функцій
- •3.4. Найбільш поширені булеві функції
- •3.5. Основні закони алгебри логіки
- •4. Аналітичне подання булевих функцій. Функціонально повні системи булевих функцій
- •4.1. Досконала диз’юнктивна нормальна форма
- •4.2. Досконала кон’юнктивна нормальна форма
- •4.3. Досконала Шефферівська нормальна форма
- •4.4. Досконала Пірсівська нормальна форма
- •4.5. Функціонально повні системи булевих функцій
- •5. Мінімізація булевих функцій
- •5.1. Карти Карно
- •5.2. Мінімальна диз’юнктивна нормальна форма
- •5.3. Мінімальна кон’юнктивна нормальна форма
- •5.4. Мінімальна Шефферівська нормальна форма
- •5.5. Мінімальна Пірсівська нормальна форма
- •6. Абстрактні цифрові автомати
- •6.1. Основні поняття, пов’язані з абстрактними автоматами
- •6.2. Способи задання абстрактних автоматів
- •6.3. Приклади синтезу абстрактних автоматів
- •7. Синтез структурного автомата
- •7.1. Етапи канонічного методу структурного синтезу автоматів
- •7.2. Кодування станів
- •7.3. Побудова канонічної таблиці структурного автомата
- •7.4. Вибір елементів пам’яті автомата
- •7.5. Побудова таблиці збудження тригера
- •7.6. Побудова рівнянь функцій збудження і виходів автомата
- •7.7. Побудова функціональної схеми автомата
- •8. Проектування комбінаційних схем на дешифраторах і мультиплексорах
- •8.1. Синтез схем на дешифраторах
- •8.2. Синтез схем на мультиплексорах
- •9. Синтез мікропрограмного автомата за схемою алгоритму
- •9.1. Послідовність дій, необхідних для побудови управляючого пристрою
- •9.2. Синтез автомата Мілі
- •9.3. Синтез автомата Мура
- •10. Формальні мови і граматики
- •10.1. Визначення формальних мов і граматик
- •10.2. Приклади, що ілюструють первинні поняття
- •10.3. Порожня мова
- •10.4. Типи формальних мов і граматик
- •10.5. Виведення у кв-граматиках і правила побудови дерева виведення
- •10.6. Неоднозначні та еквівалентні граматики
- •10.7. Способи задання схем граматик
- •11. Контекстно-вільні граматики і автомати
- •11.1. Приведені граматики
- •11.2. Виключення ліворекурсивних правил
- •11.3. Виключення ланцюгових правил
- •11.4. Магазинні автомати
- •12. Спадні розпізнавачі
- •12.1. Розділені граматики
- •12.2. Побудова детермінованого спадного розпізнавача
- •12.3. Слаборозділені граматики
- •12.5. Побудова магазинного автомата
- •12.6. Приклади побудови спадного розпізнавача
- •4. Аналітичне подання булевих функцій.
- •8. Проектування комбінаційних схем на
- •9. Синтез мікропрограмного автомата за схемою
- •Теорія цифрових автоматів та формальних мов. Вступний курс
- •6.050101 “Комп’ютерні науки”
2.3. Розв'язання «логічних» задач
Алгебра висловів може бути з успіхом застосована для вирішення одного типу задач, які називають «логічними». Ці задачі можна вирішувати і безпосереднім міркуванням, але не завжди очевидний шлях таких міркувань, а методи алгебри висловів забезпечують гарантований успіх. У таких задачах, як правило, є ряд висловів, про які відомо, що стільки-то з них істинні, а стільки-то хибні, але не відомо, які саме істинні, а які хибні. Наприклад, є три вислови U, V, W, з яких два істинні, а один хибний. Враховуючи ці умови, потрібно скласти з цих висловів будь-який складний вислів, який буде свідомо істинний (або хибний). Потім, використовуючи закони логіки, перетворити його до вигляду, з якого визначиться відповідь на питання задачі. У даному прикладі такий складний вислів будується виходячи з таких міркувань. Оскільки з висловів U, V, W два істинні, то всі диз'юнкції пар цих висловів також будуть істинні: U V, U W, V W. Отже, буде істинною і кон'юнкція цих висловів: (U V) (U W) (V W). Рівносильне перетворення цього виразу залежатиме від структури висловів U, V, W.
Приклад 12. Один з трьох братів Вітя, Толя або Коля розбив вікно. У розмові беруть участь ще двоє братів – Андрій та Діма.
– Це міг зробити тільки або Вітя, або Толя, – сказав Андрій.
– Я вікно не розбивав, – заперечив Вітя, – і Коля теж.
– Ви обидва говорите неправду, – заявив Толя.
– Ні, Толя, один з них сказав правду, а інший сказав неправду, – заперечив Діма.
– Ти, Діма, не маєш рації, – втрутився Коля.
Їх батько, якому, зазвичай, можна довіряти, впевнений, що троє братів сказали правду. Хто розбив вікно?
Рішення. Введемо позначення для висловів:
В: «Вітя розбив вікно»;
Т: «Толя розбив вікно»;
К: «Коля розбив вікно».
Тоді вислови братів можна записати в символічній формі таким чином:
А = В Т;
V = В К;
L = А V = (В Т) (В К) = В T (В K) =
= T ((В B) (В K)) = T В K;
D = (A V) (A V) = ((В T) (B К )) ( (В Т)
(В К)) = ((В Т) (В K)) (B T К) = B (T К)
(B T К) = (В B) (В T) (В K) = B (T К);
M = D = (B (T К)) = B (T К).
Утворюємо з висловів А, V, L, D, M всілякі кон'юнкції по три вислови: A V L, A V D, A L D, A L M, A D M, V L D, V L M, V D M, L D M, A V M. Оскільки з висловів А, V, L, D, M тільки три істинні, то з десяти кон'юнкцій істинна лише одна. Легко перевірити, що кон'юнкції A L, V L, L D хибні, тому вісім з перерахованих кон'юнкцій помилкові.
Залишаються дві кон'юнкції: A V D, A V M. Проведемо їх перетворення:
A V D = (В Т) В К (B (T К)) = (В (Т T К)) В К = В В К = 0;
A V M = (В Т) В К B (T К) = Т В К T =
= Т В К.
Отже, робимо висновок, що істинним може бути тільки вислів A V M або (еквівалентний йому) Т В К, тобто істинні вислови Т, В, К, і виходить, що вікно розбив Толя.