Конъюнкция

Конъюнкция

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

Конъюнкция может быть бинарной операцией, то есть, иметь два операнда, тернарной операцией, т.е. иметь три операнда или n-арной операцией, т.е. иметь n операндов. Чаще всего встречаются следующие варианты:
в инфиксной записи:

~a \And\And ~b\,,\ ~a \And ~b\,,\ a \land b\,,\ a \cdot b\,,\ ~a~\mbox{AND} ~b\,,

по аналогии с умножением в алгебре знак логического умножения может быть пропущен: ~a b\,,
в префиксной записи:

min(a,b).

Содержание

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

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

Таблицы истинности:
для бинарной конъюнкции

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

для тернарной конъюнкции

X Y Z X \land Y \land Z
0 0 0 0
1 0 0 0
0 1 0 0
1 1 0 0
0 0 1 0
1 0 1 0
0 1 1 0
1 1 1 1


Конъюнкция коммутативна, ассоциативна и дистрибутивна по отношению к слабой дизъюнкции[1].

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

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

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

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

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

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

Схемотехника

Логический элемент «И»
 A  B  f(AB)
0 0 0
1 0 0
0 1 0
1 1 1

Логический элемент, реализующий функцию конъюнкции, называется схемой совпадения[1]. Мнемоническое правило для конъюнкции с любым количеством входов звучит так: На выходе будет:

  • "1" тогда и только тогда, когда на всех входах есть «1»,
  • "0" тогда и только тогда, когда хотя бы на одном входе есть «0»


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

В компьютерных языках используется два основных варианта конъюнкции: логическое "И" и побитовое (поразрядное) "И". Например, в языках C/C++ логическое "И" обозначается символом "&&", а побитовое — символом "&". В терминологии, используемой в C#, операцию "&" принято называть логическим "И", а операцию "&&" - условным "И", поскольку значения операндов являются условиями для продолжения вычисления. В языках Pascal/Delphi оба вида конъюнкции обозначаются с использованием ключевого слова "and", а результат действия определяется типом операндов. Если операнды имеют логический тип (например, Boolean) — выполняется логическая операция, если целочисленный (например, Byte) — поразрядная.

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

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

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

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

Проверка истинности выражения в данном случае остановится после проверки переменной a, т.к. дальнейшее сравнение не имеет смысла.

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

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

{$B-}

или выключающую

{$B+}

подобное поведение. Например, если левый операнд проверяет возможность вычисления правого операнда:

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

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

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

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

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

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

Примечания

  1. 1 2 Словарь по кибернетике /Под редакцией В. С. Михалевича. — 2-е издание — К.: 1989. — 751 с., ISBN 5-88500-008-5

См. также


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат
Синонимы:

Антонимы:

Полезное


Смотреть что такое "Конъюнкция" в других словарях:

  • КОНЪЮНКЦИЯ — КОНЪЮНКЦИЯ, логическое высказывание, которое получается путем объединения двух простых утверждений союзом «и». Например, утверждение «В доме есть свет и в доме есть вода» верно лишь в том случае, если обе составляющие его части верны по… …   Научно-технический энциклопедический словарь

  • КОНЪЮНКЦИЯ —         (от лат. conjunctio союз, связь), в широком смысле сложное высказывание, образованное с помощью союза «и». В принципе можно говорить о К. бесконечного числа высказываний (напр., о К. всех истинных предложений математики). В логике К. наз …   Философская энциклопедия

  • конъюнкция — логическое произведение; операция. Ant. дизъюнкция Словарь русских синонимов. конъюнкция сущ., кол во синонимов: 1 • операция (457) Словарь синонимов ASIS. В.Н …   Словарь синонимов

  • Конъюнкция —  Конъюнкция  ♦ Conjonction    Соединение или связь. В логике конъюнкцией называют высказывание, состоящее из двух или более высказываний, связанных соединительным союзом «и»: «p и q» – пример конъюнкции. Конъюнкция истинна только при том условии …   Философский словарь Спонвиля

  • КОНЪЮНКЦИЯ — (от лат. conjunctio союз связь), логический эквивалент союза и ; операция, формализующая логические свойства этого союза …   Большой Энциклопедический словарь

  • конъюнкция — логическое умножение — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы логическое умножение EN conjunction …   Справочник технического переводчика

  • КОНЪЮНКЦИЯ — логическая операция, образующая сложное высказывание из двух высказываний, объединённых с помощью логического союза «И». Логический переключательный элемент, реализующий функцию К., называется схемой совпадения или вентилем. С помощью этой… …   Большая политехническая энциклопедия

  • КОНЪЮНКЦИЯ — (Coniunctio лат.) в буквальном смысле термин «конъюнкция» используется в алхимии для обозначения химических комбинаций, рождения нового элемента, психологически он указывает на союз противоположностей и на появление новых возможностей. Юнг… …   Словарь по аналитической психологии

  • конъюнкция — и; ж. [лат. conjunctio союз, связь] Лог. Приём, способ объединения двух и более высказываний в единое целое с помощью союза и . ◁ Конъюнктивный, ая, ое. К ое высказывание. * * * конъюнкция (от лат. conjunctio  союз, связь), логический эквивалент… …   Энциклопедический словарь

  • конъюнкция — (лат. conjunctlo) логическая операция, образующая сложное высказывание из двух высказываний, объединенных с помощью логического союза . Новый словарь иностранных слов. by EdwART, , 2009. конъюнкция и, ж. (нем. Konjunktion …   Словарь иностранных слов русского языка


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

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