Top Banner
Классы функций, теорема Поста Методы минимизации
31

Классы функций, теорема Поста

Dec 31, 2015

Download

Documents

Классы функций, теорема Поста. Методы минимизации. Следствие. Любую логическую ( булеву ) функцию можно выразить через три логические функции : конъюнкцию , дизъюнкцию и отрицание. Теорема. - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Классы функций, теорема Поста

Классы функций, теорема Поста

Методы минимизации

Page 2: Классы функций, теорема Поста

Следствие

Любую логическую (булеву) функцию можно выразить через три логические функции: конъюнкцию, дизъюнкцию и отрицание

Page 3: Классы функций, теорема Поста

Теорема

По аналогии с представлением любой функции (не равной тождественному нулю) в виде СДНФ можно функцию (не равную тождественной 1) представить в виде СКНФ: простая дизъюнкция составляется для тех наборов переменных (х1, х2, …, хп), для которых f(x1, x2,…, xn) = 0, причем если хi = 1, то в этой дизъюнкции берем !хi, если же хi = 0, то берем хi.

Page 4: Классы функций, теорема Поста

Штрих Шеффера

 — отрицание

 — дизъюнкция

 — конъюнкция

Page 5: Классы функций, теорема Поста

Стрелка Пирса

Через стрелку Пирса могут быть выражены все другие логические операции:

¬x ≡ x↓xx & y ≡ (x↓x) ↓ (y↓y)x ∨ y ≡ (x↓y) ↓ (x↓y)Системы из одной функции принято

называть универсальным базисом.

Page 6: Классы функций, теорема Поста

Классы ФАЛ

Класс функций, сохраняющих константу 0 – K0: f(0,0,…,0)=0 Класс функций, сохраняющих константу 1 – K1: f (1 ,1,...,1)=1 Класс самодвойственных функций – V: функции f*(x1,x2,…,xn) двойственная

для (K) f(x1,x2,…,xn), если имеет место равенство

Функция самодвойственная, если

Другими словами самодвойственная функция на противоположных друг другу наборах значений аргументов принимает противоположные значения.

Класс линейных функций – L: f(x1,x2,…,xn)=С0⊕С1*x1 ⊕ … ⊕ Cnxn, где С – константы

Класс монотонных функций – M:

Класс симметричных функций – S: функция называется симметричной, если ее значение не меняется при любой перестановке аргументов.

f(0,1,0)=f(1,0,0)=f(0,0,1)

Page 7: Классы функций, теорема Поста

Теорема Поста (теорема о пяти «нет»)

Название Обозначение Не сохранимость

константы 0 Не сохранимость

константы 1 Не

самодвойственность Не

линейность Не

монотонность Конст. 0 0 * * Конст. 1 1 * * Отриц. ¬ * * *

Конъюн. & * * Дизъюн. v * * Имплик. → * * * *

Эквивал. ∼ * * *

Сумма по мод. 2 ⊕ * * *

Штрих Шеффера

| * * * * *

Стрелка Пирса

↓ * * * * *

Page 8: Классы функций, теорема Поста

Базисы

Система функций S1={¬,&,v} образует базис. Для приведения булевой функции к виду содержащему лишь связки из базиса S1 могут быть полезны следующие эквивалентности:         X→Y=¬XvY         X↔Y=(Xv¬Y)(¬XvY)         X⊕Y=¬XYvX¬Y         X|Y=¬Xv¬Y         X↓Y=¬X&¬Y

Page 9: Классы функций, теорема Поста

Базисы

Система S2={¬,&} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S1, а затем использовать соотношение XvY=¬(¬X&¬Y).

Система S3={¬,v} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S1, а затем использовать соотношение X&Y=¬(¬Xv¬Y).

Page 10: Классы функций, теорема Поста

Базисы

Система S4={1,&,⊕} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S1 а затем использовать соотношения:         ¬X=1⊕X         XvY=X⊕Y ⊕ X&Y

Система S5={|} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S2 а затем использовать соотношения:         X&Y=¬(¬X|¬Y)         ¬X=X|X

Page 11: Классы функций, теорема Поста

Базисы

Система S6={↓} образует базис. Произвольную функцию можно сначала привести к виду, содержащему связки из S3 а затем использовать соотношения:         XvY=¬(¬X|¬Y)         ¬X=X↓X

Система S7={→,0} образует базис.

Page 12: Классы функций, теорема Поста

Минимизация булевских выражений

Литерал – булевская переменная или ее отрицание.

Минимизация булевских выражений – переход от СДНФ к дизъюнктивной форме, в которой каждое слагаемое, представляет собой конъюнкцию минимума литералов.

Page 13: Классы функций, теорема Поста

Правило склеивания

42133

421

43214321

xxxxxxx

xxx

xxxxxxxx

1xx

Page 14: Классы функций, теорема Поста

Операция попарного склеивания

Возможность поглощения следует из равенств

Операция попарного склеивания осуществляется между двумя термами (членами), содержащими одинаковые переменные, вхождения которых (прямые и инверсные) совпадают для всех переменных, кроме одной.

Page 15: Классы функций, теорема Поста

Геометрическое представление логических функций

Обозначим через Еn множество всех наборов (α1,..., αη), состоящих из чисел ноль и единица. Множество Еn называется n-мерным кубом, а набор (α1, ..., αη) - вершинами куба.

В трехмерном кубе Е3 наборы (0,0,1) и (0,0,0) образуют одномерную (n = 3, r = 2) грань (ребро), а наборы (1,0,0), (1,0,1), (1,1,0), (1,1,1) - двухмерную грань.

Пусть f(X1,X2,…,Xn) - произвольная булева функция. Ей сопоставляется в соответствие подмножество Νf вершин куба Еn, таких что (α1, ..., αη) Nf тогда и только тогда, когда f(α1, ..., αη) = 1.

Page 16: Классы функций, теорема Поста

Пример 1(011)

2(111)

3(010)

4(110)

5(001)

6(101)

7(000)

8(100)

1X8,6,4,2 1X7,5,3,1

2X4,3,2,1 2X8,7,6,5

3X6,5,2,1 3X8,7,4,3 213231 XX5,7,XX2,1,XX8,4

Page 17: Классы функций, теорема Поста

Составить СДНФ

1 2 31Вершина X X X

1 323Вершина X X X

31 24Вершина X X X

1 2 35Вершина X X X

21 36Вершина X X X

321321321321321 XXXXXXXXXXXXXXX

Page 18: Классы функций, теорема Поста

Метод Карно

Page 19: Классы функций, теорема Поста

Случай трех переменных

Page 20: Классы функций, теорема Поста

Переход на плоскость

Page 21: Классы функций, теорема Поста

Случай 4х, 5ти переменных

Page 22: Классы функций, теорема Поста

Пример

1 2X X

Page 23: Классы функций, теорема Поста

Рассмотрим первый случай для трех переменных

x1 x2 x3 f

0 0 0 0

0 0 1 0

0 1 0 1

0 1 1 0

1 0 0 1

1 0 1 1

1 1 0 0

1 1 1 1

1 2 3 1 3 1 2 1 2 3f x ,x ,x x x x x x x x

Page 24: Классы функций, теорема Поста

Второй пример

x1 x2 x3 f

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 1

1 0 0 1

1 0 1 1

1 1 0 0

1 1 1 1

1 2 3 3 1 2 1 2f x ,x ,x x x x x x

Page 25: Классы функций, теорема Поста

Метод неопределенных коэффициентов

1. Исходное уравнение разбить на систему уравнений, равных числу строк в таблице истинности.

2. Напротив каждого выражения поставить соответствующее значение функции.

3. Выбрать строку, в которой значение функции f=0 и приравнять все ki к нулю.

4. Просмотреть строки, где функция имеет единичное значение, и вычеркнуть все коэффициенты, встречающиеся в нулевых строках.

5. Проанализировать оставшиеся коэффициенты в единичных строках.

6. Используя правило, что дизъюнкция равна 1 если хотя бы один из , выбрать min-термы минимального ранга. Причем отдавать предпочтение коэффициентам, встречающимся в нескольких уравнениях одновременно.

7. Записать исходный вид функции.

Page 26: Классы функций, теорема Поста

Рассмотрим случай 3х переменных

1 0 1 0 1 0 11 10 011 2 3 1 1 1 1 2 2 2 2 3 3 3 3 12 1 2 12 1 2 12 1 2

00 11 10 01 00 11 10 0112 1 2 13 1 3 13 1 3 13 1 3 13 1 3 23 2 3 23 2 3 23 2 3

00 111 11023 2 3 123 1 2 3 123 1 2 3 123

, ,f x x x k x k x k x k x k x k x k x x k x x k x x

k x x k x x k x x k x x k x x k x x k x x k x x

k x x k x x x k x x x k

101 100 0111 2 3 123 1 2 3 123 1 2 3

010 001 000123 1 2 3 123 1 2 3 123 1 2 3 ,

x x x k x x x k x x x

k x x x k x x x k x x x

Page 27: Классы функций, теорема Поста

Получим уравнения

0 0 0 00 00 00 0001 2 3 12 13 23 1230,0,0f k k k k k k k

0 0 1 00 01 01 0011 2 3 12 13 23 1230,0,1f k k k k k k k

0 1 0 01 00 10 0101 2 3 12 13 23 1230,1,0f k k k k k k k

0 1 1 01 01 11 0111 2 3 12 13 23 1230,1,1f k k k k k k k

1 0 0 10 10 00 1001 2 3 12 13 23 1231,0,0f k k k k k k k

1 0 1 10 11 01 1011 2 3 12 13 23 1231,0,1f k k k k k k k

1 1 0 11 10 10 1101 2 3 12 13 23 1231,1,0f k k k k k k k

1 1 1 11 11 11 1111 2 3 12 13 23 1231,1,1f k k k k k k k

Page 28: Классы функций, теорема Поста

Минимизировать функцию

1 2 3 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3, ,f x x x x x x x x x x x x x x x x x x

0,0,0 1f 0,0,1 0f 0,1,0 0f 0,1,1 0f

1,0,0 1f 1,0,1 1f 1,1,0 1f 1,1,1 1f

010,0,1f k 0

2k 13k 00

12k 0113k 01

23k 001123k

010,1,0f k 1

2k 03k 01

12k 0013k 10

23k 010123k

010,1,1f k 1

2k 13k 01

12k 0113k 11

23k 011123k

Page 29: Классы функций, теорема Поста

Вычеркиваем нулевые коэффициенты

010,0,0f k 0

2k 03k 00

12k 0013k 00 000

23 123k k

1 01 21,0,0f k k 0

3k 10 10 00 10012 13 23 123k k k k

1 01 21,0,1f k k 1

3k 10 11 0112 13 23k k k 101

123k

1 11 21,1,0f k k 0

3k 11 10 1012 13 23k k k 110

123k

1 11 21,1,1f k k 1

3k 11 11 1112 13 23k k k 111

123k

Page 30: Классы функций, теорема Поста

После вычеркивания

00 00023 123 1k k 1 10 10 00 1001 12 13 23 123 1k k k k k

1 10 11 1011 12 13 123 1k k k k

1 11 10 1101 12 13 123 1k k k k

1 11 11 1111 12 13 123 1k k k k

Page 31: Классы функций, теорема Поста

Ответ

Приравняем к единице коэффициент k1

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

00. Остальные коэффициенты приравнивают к 0. 1 2 3 1 2 3, ,f x x x x x x