русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Эквивалентность сохраняет единицу.


Дата добавления: 2015-08-31; просмотров: 1056; Нарушение авторских прав


Булева функция называется монотонной, если для любых двух сравнимых наборов a, b выполняется условие:

.

Двоичный набор не меньше двоичного набора , если для каждой пары справедливо соотношение:. Для функции двух аргументов следующие наборы сравнимы: 11>10, 11>01, 10>00 и т.д. Наборы 01 и 10 несравнимы. Т.о., условие монотонности для функции двух аргументов мы можем записать в виде:

. Функция не является монотонной, т.к., например,. Для функции трех переменных наборы 110 и 001, 101 и 010 являются несравнимыми.

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

. Или, что то же самое: . Функция не является самодвойственной, т.к. .

Функции пользователя задаются в Maple с помощью функционального оператора. При этом используется следующая конструкция:

name:=(x,y,...)->expr ,

где name – имя функции; := - знак присваивания; в круглых скобках (x,y,...)указываются формальные параметры (аргументы) функции; -> - знаки «минус» и «больше» без пробела набирается с клавиатуры; expr – тело функции (аналитическое или логическое выражение для функции). Для того, чтобы вычислить значение функции, вместо формальных параметров подставляются фактические параметры (конкретные значения аргументов).

Булевы функции задаются в Maple с помощью следующих логических операторов:

not- отрицание ; notx;

or – дизъюнкция, логическое или , , x or y

and –конъюнкция, логическое и, ,&, x and y.

xor – сложение по модулю 2, , x xor y.

Т.к. булевы функции – это логические функции, то и аргументы их принимают значения илиtrueилиfalse

 

Зададим функцию эквивалентности в 3-х формах в Maple:

СДНФ:

> f1:=(x1,x2)->not x1 and not x2 or x1 and x2;



> f1(false,false);

f1(false,true);

f1(true,false);

f1(true,true);

 

Так как приоритет конъюнкции выше, чем дизъюнкции, скобки не ставятся. Чтобы наборы рассматривались как единое целое, после каждого набора набираем Shift+Enter, после последнего набора – Enter. Наборы аргументов у булевых функций располагаются в порядке возрастания двоичной записи номера набора.

СКНФ:

 

> f2:=(x1,x2)->(x1 or not x2)and(not x1 or x2);

Т.к. нам сначала надо выполнить дизъюнкцию, то берем операциюв скобки.

Полином Жегалкина:

 

> f3:=(x1,x2)->true xor x1 xor x2;

Можно вывести и таблицу истинности для функции. Рассмотрим пример для функции(штрих Шеффера).

> f:=(x1,x2)->not(x1 and x2);

x1:=false: x2:=false:

print('x1','x2','f()');



<== предыдущая лекция | следующая лекция ==>
Рассмотрим, к каким классам у нас относится функция эквивалентности. | for j from 1 to 2 do


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.73 сек.