- •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 “Комп’ютерні науки”
1.8. Дерева і ліс
Нехай множина V містить р вершин, які пронумеровані порядковими числами від 1 до р, тобто V = {1, 2, ..., р}. Зв'язавши ці вершини ребрами так, щоб були відсутні цикли, отримаємо деякий граф, що покриває дану множину р вершин.
Визначення. Дерево – це зв'язний ациклічний граф.
Дерево на множині р вершин завжди містить q = р – 1 ребро, тобто мінімальну кількість ребер, необхідну для того, щоб граф був зв'язним. Дійсно, дві вершини зв'язуються одним ребром, і для зв'язку кожної подальшої вершини з попередніми потрібне ребро, отже, для зв'язку р вершин необхідно і достатньо р – 1 ребро. При р = 2 дерево одне і воно складається з однієї гілки.
При додаванні в дерево ребра утворюється цикл, а при видаленні хоч би одного ребра дерево розпадається на компоненти, кожна з яких є також деревом або ізольованою вершиною.
Визначення. Незв'язний граф, компоненти якого є деревами, називається лісом.
Ліс з k дерев, що містить р вершин, має в точності р – k ребер. Дерева вважаються істотно різними, якщо вони не ізоморфні. Зі збільшенням числа вершин кількість різних дерев різко зростає (наприклад, при р = 20 їх налічується близько мільйона). Серед різних дерев виділяються два важливі окремі випадки: послідовне дерево, що є простим ланцюгом, і зіркове дерево, в якому одна з вершин (центр) суміжна з рештою всіх вершин.
Розглядаються також дерева з орієнтованими ребрами (дугами). Орієнтоване дерево називається прадеревом з коренем v0, якщо існує шлях між вершиною v0 і будь-якою іншою його вершиною. Ясно, що прадерево має єдиний корінь (вершину, в яку не входить жодна дуга).
П
риклад
11.
Дерево
Т
на
рис. 1.11
має 9 вершин і 8 ребер. Введення додаткового
ребра (v2,
v7)
порушує ациклічність дерева і перетворює
його на зв'язний граф Т1,
в якому цикл (v2,
v7,
v8,
v5,
v3,
v2)
виділений подвійною лінією. Видалення
ребра (v5,
v8)
перетворює дерево Т
в
ліс, що складається з двох дерев, – Т2
і
Т3.
Н
а
рис. 1.12 показані всі істотно різні
шестивершинні дерева
(Т1 – Т6 ),
серед яких
є послідовне дерево – Т1
і зіркове
дерево –
Т6.
На рис. 1.13 показане дерево з орієнтованими ребрами, яке, очевидно, є прадеревом з коренем v0.
Д
v0
v0
Р
Рисунок 1.14
– Дерево
як частина графа (виділено
жирними лініями):
а
– дерево; б
– остов
(покривне дерево)
ебра
графа, які належать його дереву, називають
гілками.
Якщо дерево покриває граф, то множина
ребер графа розбивається на дві
підмножини: підмножина гілок і підмножина
ребер доповнення
ребер, названих хордами.
При цьому зв'язний (р,
q)-граф містить = р – 1
гілок і = q – р + 1
хорд. Якщо
граф незв'язний, то сукупність остовів
k
його компонент утворює
покривний ліс.
У цьому випадку = p – k
і
= q – p + k.
Дерева мають важливе значення в різних прикладних задачах, коли, наприклад, мова йде про з'єднання яких-небудь об'єктів мінімальним числом каналів (ліній зв'язку, доріг, комунікацій) з певними властивостями. За допомогою дерева визначається система координат при моделюванні ланцюгів і систем різної фізичної природи. Дерева використовуються як моделі при розгляді ієрархічних систем об'єктів, структурних формул органічних сполук і тому подібне.
