Логическое умножение

Логическое умножение

Конъю́нкциялогическая операция, по своему применению максимально приближенная к союзу "и". Синонимы: логи́ческое "И", логи́ческое умноже́ние, иногда просто "И".

Это бинарная инфиксная операция, то есть, она имеет два операнда и ставится между ними. Чаще всего встречаются следующие варианты записи:
~a && ~b, ~a & ~b, a \land b, a \cdot b, ~a~\mbox{AND} ~b.
По аналогии с умножением в алгебре знак логического умножения может быть пропущен: ~a b.

Содержание

Булева алгебра

В булевой алгебре конъюнкция - это функция двух переменных (они же - операнды операции). Переменные могут принимать значения из множества ~\{0, 1\}. Результат также принадлежит множеству ~\{0, 1\}. Вычисление результата производится по простому правилу, либо по таблице истинности. Вместо значений ~0, 1 может использоваться любая другая пара подходящих символов, например ~false, true или ~F, T или "ложь", "истина".

Правило: результат равен ~1, если оба операнда равны ~1; во всех остальных случаях результат равен ~0.

Таблица истинности:

~a ~b ~a \land b
~0 ~0 ~0
~0 ~1 ~0
~1 ~0 ~0
~1 ~1 ~1

Многозначная логика

В многозначной логике операция конъюнкции может определяться другими способами. Чаще всего применяется схема: a \land b = min(a, b), где ~a, b \in [0, 1]. Возможны и другие варианты. Как правило, стараются сохранить совместимость с булевой алгеброй для значений операндов

Классическая логика

В классическом исчислении высказываний свойства конъюнкции определяются с помощью аксиом. Классическое исчисление высказываний может быть задано разными системами аксиом, и некоторые из них будут описывать свойства конъюнкции. Один из самых распространённых вариантов включает 3 аксиомы для конъюнкции:
~a \land b \to a
~a \land b \to b
~a \to (b \to (a \land b))

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

Программирование

В компьютерных языках используется два основных варианта конъюнкции: логическое "И" и побитовое "И". Например, в языках C/C++ логическое "И" обозначается символом "&&", а побитовое - символом "&".

Логическое "И" применяется в операторах условного перехода или в аналогичных случаях, когда требуется получение результата ~false или ~true. Например:

if (a && b) 
{
    /* какие-то действия */
};

Результат будет равен ~true, если оба операнда равны ~true (для числовых типов не равны ~0). В любом другом случае результат будет равен ~false.

При этом применяется стандартное соглашение: если значение левого операнда равно ~false, то значение правого операнда не вычисляется (вместо ~b может стоять сложная формула). Такое соглашение ускоряет исполнение программы и служит полезным приемом в некоторых случаях. Например, если левый операнд проверяет возможность вычисления правого операнда:

if (a != 0 && b / a > 3) 
{
    /* какие-то действия */
};

В этом примере, благодаря проверке в левом операнде, в правом операнде никогда не произойдет деления на ноль.

Побитовое "И" выполняет обычную операцию булевой алгебры для всех битов левого и правого операнда попарно. Например,

если
a = ~01100101_2
b = ~00101001_2
то
a И b = ~00100001_2

Связь с естественным языком

Часто указывают на сходство между конъюнкцией и союзом "и" в естественном языке. Составное утверждение "A и B" считается истинным, когда истинны оба утверждения A и B, в противном случае составное утверждение ложно. Это в точности соответствует определению конъюнкции в булевой алгебре, если "истину" обозначать как 1, а "ложь" как 0. При этом часто делают стандартную оговорку о неоднозначности естественного языка. Например, в зависимости от контекста союз "и" может нести дополнительный оттенок "и тогда", "и поэтому", "и потом"..."И" также несет в себе оттенок неопределенного смысла. Отличие логики естественного языка от математической остроумно выразил американский математик Стивен Клини, заметив, что в естественном языке "Мэри вышла замуж и родила ребенка" - не то же самое, что "Мэри родила ребенка и вышла замуж".

См. также


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Полезное


Смотреть что такое "Логическое умножение" в других словарях:

  • Логическое умножение — двуместная логическая операция, определяемая таблицей истинности: : 0 and 0 = 0 : 0 and 1 = 0 : 1 and 0 = 0 : 1 and 1 = 1 Синонимы: Конъюнкция Синонимы английские: and , & См. также: Логические операции Финансовый словарь Финам …   Финансовый словарь

  • логическое умножение — — [Я.Н.Лугинский, М.С.Фези Жилинская, Ю.С.Кабиров. Англо русский словарь по электротехнике и электроэнергетике, Москва, 1999 г.] Тематики электротехника, основные понятия EN logical multiplication …   Справочник технического переводчика

  • логическое умножение — loginė daugyba statusas T sritis automatika atitikmenys: angl. logical multiplication vok. logische Multiplikation, f rus. логическое умножение, n pranc. multiplication logique, f …   Automatikos terminų žodynas

  • Логическое мышление — Логика (др. греч. λογική «наука о рассуждении», «искусство рассуждения» от λόγος  «речь», «рассуждение»)  наука о формах, методах и законах интеллектуальной познавательной деятельности, формализуемых с помощью логического языка. Поскольку это… …   Википедия

  • Логическое исчисление —         Исчисление (формальная система), интерпретируемое в терминах какого либо фрагмента дедуктивной логики (См. Логика). Различные Л. и. служат базой для построения более богатых «нелогических» (например, математических) теорий. Примерами Л. и …   Большая советская энциклопедия

  • Арифметическо-логическое устройство — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей …   Википедия

  • АЛГЕБРА ЛОГИКИ —         система алгебраич. методов решения логич. задач, а также совокупность задач, решаемых такими методами. А. л. в узком смысле слова алгебраич. (табличное, матричное) построение классич. логики высказываний, в котором рассматриваются… …   Философская энциклопедия

  • БУЛЬ — (Boole) Джордж (род. 2 нояб. 1815, Линкольн – ум. 8 дек. 1864, Корк) англ, математик и логик, создатель т. н. «алгебраической логики» (см. Логистика). Осн. произв.: «The mathematical analysis of logik», 1847; «An analysis of the laws of thought» …   Философская энциклопедия

  • Логические элементы — Логические элементы  устройства, предназначенные для обработки информации в цифровой форме (последовательности сигналов высокого  «1» и низкого  «0» уровней в двоичной логике, последовательность «0», «1» и «2» в троичной логике,… …   Википедия

  • Логический тип — По техническим причинам Bool перенаправляется сюда. О Bool можно прочитать здесь: stdbool.h. Логический, булев (англ. Boolean или logical data type) тип данных  примитивный тип данных в информатике, которые могут принимать два возможных …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»