И не или логические обозначения: Логические операторы И, ИЛИ, НЕ в C++ / Ravesli

Содержание

Логические связки — Гуманитарный портал

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

  1. конъюнкция (соединительный союз «и») — читается: «A и B»; записывается: A ⋀ B, другие обозначения: AB, A & B, A × B; другое название: логическое умножение;
  2. дизъюнкция (нестрогий союз «или») — читается: «A или B»; записывается: A ⋁ B; другое название: логическое сложение;
  3. импликация (условие «если…, то…») — читается: «если 
    A
    , то B», или «из A следует B»; записывается: A ⊃ B, другое обозначение: A → B; другое название: логическое следование;
  4. эквиваленция (условие «если…, то…») — читается: «A эквивалентно B», или «A равнозначно B», или «A, если и только если B»; записывается: А ~ В, другие обозначения: A ≡ B, A ↔ B; другие названия: эквивалентность, равнозначность;
  5. отрицание (условие «неверно, что…») — читается: «не A», или «A ложно», или «неверно, что
    A
    », или «отрицание A»; записывается: ¬ A, другое обозначение: ; другое название: инверсия.

Из указанных логических связок отрицание называется одноместной (унарной) связкой; другие называются двухместными (бинарными) связками. В принципе, логические связки могут быть сколь угодно местными, но на практике более, чем бинарные, используются очень редко. В классической логике (см. Логика) любые многоместные логические связки выразимы через перечисленные. Некоторый практический смысл даёт также использование тернарной логической связки, называемой условной дизъюнкцией, связывающей три высказывания AB и C и означающей, что «

A в случае B, и C в случае не-B» или формально: (B ⊃ A) & (¬ B ⊃ C).

Классическая логика рассматривает логические связки экстенсионально (игнорируя содержательный смысл связываемых ими высказываний) как функции истинности, определяемые истинностными значениями связываемых ими высказываний. При двух имеющих место в этой логике истинностных значениях 1 (истинно) и 0 (ложно) высказывания A и B могут иметь четыре возможных набора упорядоченных истинностных значений: (1, 1), (1, 0), (0, 1), (0, 0). Пропозициональная истинностная функция ставит в соответствие каждому перечисленному набору одно из значений истинности — 1 или 0. Всего таких функций 16. Конъюнкция приписывает выражению 

AB значение 1 только в случае, когда как A, так и B истинны, то есть оба имеют значение 1, в остальных случаях значение AB равно 0. Дизъюнкция Α ∨ B, напротив, ложна только в одном случае, когда ложны как A, так и B. Импликация A ⊃ B является ложной только при истинном (антецеденте) A и ложном (консеквенте) B. В остальных случаях A ⊃ B принимает значение 1.

Из четырёх одноместных функций интерес представляет только отрицание, меняющее значение высказывания на противоположное: когда 

A — истинно, ¬ A — ложно, и наоборот. Все другие унарные и бинарные классические функции могут быть выражены через представленные. Когда принятая в соответствующей семантике система логических связок позволяет дать определение всех остальных, её называют функционально полной. К полным системам в классической логике относятся, в частности, конъюнкция и отрицание; дизъюнкция и отрицание; импликация и отрицание. Конъюнкция и дизъюнкция определимы друг через друга за счёт эквивалентностей (AB) ≡ ¬ (¬ A∨ ¬ B) и (A ∨ B) ≡ ¬ (¬ A & ¬ B), именуемых законами де Моргана, а также: (
Α
 ⊃ Β) ≡ (¬ Α ∨ B), (AB) ≡ ¬ (A ⊃ ¬ B), (Α ∨ B) ≡ (A ⊃ B) ⊃ A). Любая эквивалентность вида A ≡ B имеет силу только тогда, когда общезначима (всегда истинна) конъюнкция (A ⊃ B) & (B ⊃ A).

Функции антидизъюнкция и антиконъюнкция, определимые соответственно как ¬ (A ∨ B) и ¬ (AB), также представляют каждая в отдельности функционально полную систему связок. Это последнее обстоятельство было известно уже Ч. С. Пирсу (неопубликованная при его жизни работа 1880 года) и было переоткрыто X. Шеффером. Используя антидизъюнкцию как единственную логическую связку, Шеффер в 1913 построил полное исчисление высказываний. Антидизъюнкцию обозначают 

AB и называют штрихом Шеффера, читая данное выражение, как «не-A и не-B». Ж. Нико употребил то же обозначение для антиконъюнкции («Неверно, что одновременно A и B») и с помощью только этой связки в 1917 сформулировал полное исчисление высказываний с одной (всего!) аксиомой и одним правилом вывода. Таким образом, штрихом Шеффера называют по сути саму вертикальную черту, которая у разных авторов может обозначать как антидизъюнкцию, так и антиконъюнкцию.

Экстенсиональность логических связок придаёт им однозначность, упрощает проблему построения логических исчислений, даёт возможность решать для последних метатеоретические проблемы непротиворечивости, разрешимости, полноты. Однако в некоторых случаях истинностно-функциональная трактовка связок приводит к значительному несоответствию с тем, как они понимаются в естественном языке. Так, указанная истинностная интерпретация импликации вынуждает признавать верными предложения вида «Если 

A, то B» даже в том случае, когда между высказываниями A и B (и, соответственно, событиями, о которых в них идёт речь) нет никакой реальной связи. Достаточно, чтобы A было ложным или B — истинным. Поэтому из двух предложений: «Если 
A
, то B» и «Если B, то A», по крайней мере одно приходится признавать верным, что плохо сообразуется с обычным употреблением условной связки. Импликацию в данном случае специально называют «материальной», отличая её тем самым от условного союза, предполагающего, что между антецедентом и консеквентом истинного условного высказывания имеется действительная связь. При этом материальная импликация может прекрасно использоваться во многих контекстах, например, математических, когда при этом не забывают о её специфических особенностях. В некоторых случаях, однако, именно контекст не позволяет трактовать условный союз как материальную импликацию, предполагая взаимосвязь высказываний. Для анализа таких контекстов приходится строить специальные
неклассические логики
(например, релевантные логики), в язык которых вместо материальной импликации (или наряду с ней) вводятся другие импликации, которые понимаются интенсионально (содержательно) и верность которых не может быть обоснована истинностно-функционально. Интенсионально могут трактоваться также и другие логические связки.

Выражения и операторы — JavaScript

Эта глава описывает выражения и операторы языка JavaScript, такие как операторы присваивания, сравнения, арифметические, битовые, логические, строчные, и различные специальные операторы.

Полный и детальный список операторов и выражений также доступен в этом руководстве.

В JavaScript есть следующие типы операторов. Данный подраздел описывает каждый тип и содержит информацию об их приоритетах друг над другом.

JavaScript поддерживает бинарные и унарные операторы, а также ещё один специальный тернарный оператор — условный оператор. Бинарная операция использует два операнда, один перед оператором и другой за ним:

operand1 operator operand2

Например: 3+4 или x*y.

В свою очередь унарная операция использует один операнд, перед или после оператора:

operator operand

или

operand 
operator

Например: x++ или ++x.

Операторы присваивания

В результате операции присваивания операнду слева от оператора присваивания (en-US) (знак «=») устанавливается значение , которое берётся из правого операнда. Основным оператором присваивания является  =, он присваивает значение правого операнда операнду, находящемуся слева. Таким образом, выражение x = y означает, что x присваивается значение y.

Существуют также составные операторы присваивания, которые используются для сокращённого представления операций, описанных в следующей таблице:

Деструктуризация

Для более сложного присваивания в JavaScript есть синтаксис деструктуризации — это выражение, которое позволяет извлекать данные из массивов или объектов, используя синтаксис, который зеркалирует конструкторы массивов и литералы объектов.

var foo = ["one", "two", "three"];


var one   = foo[0];
var two   = foo[1];
var three = foo[2];


var [one, two, three] = foo;

Операторы сравнения

Оператор сравнения (en-US) сравнивает свои операнды и возвращает логическое значение, базируясь на истинности сравнения. Операнды могут быть числами, строками, логическими величинами или объектами. Строки сравниваются на основании стандартного лексикографического порядка, используя Unicode-значения. В большинстве случаев, если операнды имеют разный тип, то JavaScript пробует преобразовать их в тип, подходящий для сравнения. Такое поведение обычно происходит при сравнении числовых операндов. Единственным исключением из данного правила является сравнение с использованием операторов === и !==, которые производят строгое сравнение на равенство или неравенство. Эти операторы не пытаются преобразовать операнды перед их сравнением. Следующая таблица описывает операторы сравнения в контексте следующего примера кода:

Операторы сравнения
ОператорОписаниеПримеры, возвращающие true
Равно (==)Возвращает true, если операнды равны.3 == var1
"3" == var1
3 == '3'
Не равно (!=)Возвращает true, если операнды не равны.var1 != 4
var2 != "3"
Строго равно (===)Возвращает true, если операнды равны и имеют одинаковый тип. Смотрите также Object.is и sameness in JS.3 === var1
Строго не равно(!==)Возвращает true, если операнды не равны и/или имеют разный тип.var1 !== "3"
3 !== '3'
Больше (>)Возвращает true, если операнд слева больше операнда справа.var2 > var1
"12" > 2
Больше или равно (>=)Возвращает true, если операнд слева больше или равен операнду справа.var2 >= var1
var1 >= 3
Меньше (<)Возвращает true, если операнд слева меньше операнда справа.var1 < var2
"2" < 12
Меньше или равно (<=)Возвращает true, если операнд слева меньше или равен операнду справа.var1 <= var2
var2 <= 5

Арифметические операторы

Арифметические операторы (en-US) используют в качестве своих операндов числа (также литералы или переменные) и в качестве результата возвращают одно числовое значение. Стандартными арифметическими операторами являются сложение (+), вычитание (-), умножение (*), и деление (/). При работе с числами с плавающей точкой эти операторы работают аналогично их работе в большинстве других языках программирования (обратите внимание, что деление на ноль возвращает бесконечность Infinity). Например:

console.log(1 / 2); 
console.log(1 / 2 == 1.0 / 2.0); 

Кроме того, JavaScript позволяет использовать следующие арифметические операторы, представленные в таблице:

Арифметические операторы
ОператорОписаниеПример
Остаток от деления (en-US) (%)Бинарный оператор. Возвращает целочисленный остаток от деления двух операндов.12 % 5 вернёт 2.
Инкремент (en-US) (++)Унарный оператор. Добавляет единицу к своему операнду. Если используется в качестве префикса (++x), то возвращает значение операнда с добавленной к нему единицей; а в случае применения в качестве окончания (x++) возвращает значение операнда перед добавлением к нему единицы.Если x равно 3, тогда ++x установит значение x равным 4 и вернёт 4, напротив x++ вернёт 3 и потом установит значение x равным 4.
Декремент (en-US) (--)Унарный оператор. Вычитает единицу из значения своего операнда. Логика данного оператора аналогична оператору инкремента.Если x равно 3, тогда --x установит значение x равным 2 и вернёт 2, напротив x-- вернёт 3 и потом установит значение x равным 2.
Унарный минус (en-US)-Унарный оператор. Возвращает отрицательное значение своего операнда.Если x равно 3, тогда -x вернёт -3.
Унарный плюс (en-US) (+)Унарный оператор. Пытается конвертировать операнд в число, если он ещё не оно.+"3" вернёт 3.
+true вернёт 1.
Возведение в степень (en-US) (**)Возводит основание в показатель степени, как, основаниестепень2 ** 3 вернёт 8.
10 ** -1 вернёт 0.1.

Битовые (поразрядные) операторы

Битовые операторы (en-US) обрабатывают свои операнды как последовательности из 32 бит (нулей и единиц), а не как десятичные, шестнадцатеричные или восьмеричные числа. Например, десятичное число 9 имеет двоичное представление 1001. bВозвращает единицу в каждой битовой позиции, для которой только один из соответствующих битов операндов является единицей.Побитовое НЕ (en-US)~ aЗаменяет биты операнда на противоположные.Сдвиг влево (en-US)a << bСдвигает a в двоичном представлении на b бит влево, добавляя справа нули.Сдвиг вправо с переносом знака (en-US)a >> bСдвигает a в двоичном представлении на b бит вправо, отбрасывая сдвигаемые биты.Сдвиг вправо с заполнением нулями (en-US)a >>> bСдвигает a в двоичном представлении на b бит вправо, отбрасывая сдвигаемые биты и добавляя слева нули.

Битовые логические операторы

Основной смысл работы битовых логических операторов состоит в следующем:

  • Операнды преобразуются в 32-битные целые числа и представляются в виде последовательности бит (нулей и единиц). Числа, имеющие более 32 битов будут сокращены. Например, следующее число имеет больше 32 битов и сконвертируется в 32-х битное:
    До    : 11100110111110100000000000000110000000000001
    После :             10100000000000000110000000000001
  • Каждый бит первого операнда связывается с соответствующим битом второго операнда: первый бит с первым битом, второй бит — со вторым, и так далее.
  • К каждой паре бит применяется заданный оператор, и побитово формируется итоговый результат.

Например, двоичным представлением числа 9 является 1001, а двоичным представлением пятнадцати — 1111. Результаты применения к этим числам битовых логических операторов выглядят следующим образом:

Примеры работы битовых операторов
ВыражениеРезультатДвоичное описание
15 & 991111 & 1001 = 1001
15 | 9151111 | 1001 = 1111
15 ^ 961111 ^ 1001 = 0110
~15-16~00000000...00001111 = 11111111...11110000
~9-10~00000000...00001001 = 11111111...11110110

Обратите внимание, что все 32 бита преобразуются с использованием битового оператора НЕ, и что величины с наиболее значимым (самым левым) битом равным 1 представляют собой отрицательные числа (в представлении дополнения до двух).

Битовые операторы сдвига

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

Операторы сдвига преобразуют свои операнды в 32-битные целые числа и возвращают результат того же типа, каким является левый операнд.

Операторы сдвига перечислены в следующей таблице.

Битовые операторы сдвига
ОператорОписаниеПример
Сдвиг влево (en-US)
(<<)
Данный оператор сдвигает первый операнд на указанное количество бит влево. Излишние биты, сдвинутые влево, отбрасываются. Справа число дополняется нулевыми битами.9<<2 равно 36, так как 1001 после сдвига на 2 бита влево превращается в 100100, что соответствует числу 36.
Сдвиг вправо с переносом знака (en-US) (>>)Данный оператор сдвигает первый операнд на указанное количество бит вправо. Излишние биты, сдвинутые вправо, отбрасываются. Слева число дополняется копиями крайнего слева бита.9>>2 равно 2, так как 1001 после сдвига на 2 бита вправо превращается в 10, что соответствует числу 2. Подобным же образом -9>>2 равно -3, так как знак сохраняется.
Сдвиг вправо с заполнением нулями (en-US) (>>>)Данный оператор сдвигает первый операнд на указанное количество бит вправо. Излишние биты, сдвинутые вправо, отбрасываются. Слева число дополняется нулевыми битами.19>>>2 равно 4, так как 10011 после сдвига на 2 бита вправо превращается в 100, что соответствует числу 4. Для неотрицательных чисел сдвиг вправо с заполнением нулями и сдвиг вправо с переносом знака дают одинаковый результат.

Логические операторы

Логические операторы (en-US) обычно используются с булевыми (логическими) значениями; при этом возвращаемое ими значение также является булевым. Однако операторы && и || фактически возвращают значение одного из операндов, поэтому, если эти операторы используются с небулевыми величинами, то возвращаемая ими величина также может быть не булевой. Логические операторы описаны в следующей таблице.

Логические операторы
ОператорИспользованиеОписание
Логическое И (en-US) (&&)expr1 && expr2(Логическое И) Возвращает операнд expr1, если он может быть преобразован в false; в противном случае возвращает операнд expr2. Таким образом, при использовании булевых величин в качестве операндов, оператор && возвращает true, если оба операнда true; в противном случае возвращает false.
Логическое ИЛИ (en-US)(||)expr1 || expr2(Логическое ИЛИ) Возвращает операнд expr1, если он может быть преобразован в true; в противном случае возвращает операнд expr2. Таким образом, при использовании булевых величин в качестве операндов, оператор || возвращает true, если один из операндов true; если же оба false, то возвращает false.
Логическое НЕ (en-US)(!)!expr(Логическое НЕ) Возвращает false, если операнд может быть преобразован в true; в противном случае возвращает true.

Примерами выражений, которые могут быть преобразованы в false являются: null, 0, NaN, пустая строка («») или undefined.

Следующий код демонстрирует примеры использования оператора && (логическое И).

var a1 =  true && true;     
var a2 =  true && false;    
var a3 = false && true;     
var a4 = false && (3 == 4); 
var a5 = "Cat" && "Dog";    
var a6 = false && "Cat";    
var a7 = "Cat" && false;    

Следующий код демонстрирует примеры использования оператора || (логическое ИЛИ).

var o1 =  true || true;     
var o2 = false || true;     
var o3 =  true || false;    
var o4 = false || (3 == 4); 
var o5 = "Cat" || "Dog";    
var o6 = false || "Cat";    
var o7 = "Cat" || false;    

Следующий код демонстрирует примеры использования оператора ! (логическое НЕ).

var n1 = !true;  
var n2 = !false; 
var n3 = !"Cat"; 
Сокращённая оценка

Так как логические выражения вычисляются слева направо, они проверяются на возможность выполнения сокращённой оценки с использованием следующих правил:

  • false && anything — сокращение с результатом false.
  • true || anything — сокращение с результатом true.

Правила логики гарантируют, что данные вычисления всегда корректны. Обратите внимание, что часть «anything» представленных выше выражений не вычисляется, таким образом удаётся избежать любых побочных эффектов вычисления данной части.

Строковые операторы

В дополнение к операторам сравнения, которые могут использоваться со строковыми значениями, оператор (+) позволяет объединить две строки, возвращая при этом третью строку, которая представляет собой объединение двух строк-операндов:

console.log("my " + "string");  

Сокращённый оператор присваивания += также может быть использован для объединения (конкатенации) строк:

var  mystring = "alpha";  mystring += "bet"; 

Условный (тернарный) оператор

Условный оператор является единственным оператором JavaScript, который использует три операнда. Оператор принимает одно из двух значений в зависимости от заданного условия. Синтаксис оператора:

condition ? val1 : val2

   val1 и val2 обязательно должны что-то возвращать, поэтому в этой конструкции нельзя использовать continue или break

Если condition (условие) — истина, то оператор принимает значение val1. В противном случае оператор принимает значение val2. Вы можете использовать условный оператор во всех случаях, где может быть использован стандартный оператор.

var status = (age >= 18) ? "adult" : "minor";

Данное выражение присваивает значение «adult» переменной status, если age имеет значение 18 или более. В противном случае переменной status присваивается значение «minor».

Оператор запятая

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

Например, если a является двумерным массивом, каждая строка которого содержит 10 элементов, то следующий код с использованием оператора запятая позволяет выполнять одновременное приращение двух переменных. Данный код выводит на экран значения диагональных элементов массива:

for (var i = 0, j = 9; i <= 9; i++, j--)
  document.writeln("a[" + i + "][" + j + "]= " + a[i][j]);

Унарные операторы

Унарная операция — операция только с одним операндом.

delete

Оператор delete выполняет удаление объекта, свойства объекта, или элемента массива с заданным индексом. Синтаксис оператора:

delete objectName;
delete objectName.property;
delete objectName[index];
delete property; 

где objectName представляет собой имя объекта, property — свойство объекта, а index — целое число, указывающее на положение (номер позиции)  элемента в массиве.

Четвёртый вариант использования позволяет удалить свойство объекта, но допускается только внутри with.

Вы можете использовать оператор delete для удаления переменных, объявленных неявно, но вы не можете с его помощью удалять переменные, объявленные с помощью var.

После применения оператора delete свойство элемента меняется на undefined. Оператор delete возвращает true если выполнение операции возможно; оператор возвращает false, если выполнение операции невозможно.

x = 42;
var y = 43;
myobj = new Number();
myobj.h = 4;    
delete x;       
delete y;       
delete Math.PI; 
delete myobj.h; 
delete myobj;   
Удаление элементов массива

Удаление элемента массива не влияет на длину массива. Например, если вы удалите a[3], элемент a[4] останется a[4], a[3] станет undefined.

Когда элемент массива удаляется с помощью оператора delete, то из массива удаляется значение данного элемента. В следующем примере элемент trees[3] удалён с помощью оператора delete. Однако, элемент trees[3] остаётся адресуемым и возвращает значение undefined.

var trees = new Array("redwood", "bay", "cedar", "oak", "maple");
delete trees[3];
if (3 in trees) {
  
}

Если вы хотите, чтобы элемент оставался в массиве, но имел значение undefined, то используйте ключевое слово undefined вместо оператора delete. В следующем примере элементу trees[3] присвоено значение undefined, но элемент при этом остаётся в массиве:

var trees = new Array("redwood", "bay", "cedar", "oak", "maple");
trees[3] = undefined;
if (3 in trees) {
  
}
Оператор typeof

Оператор typeof используется одним из следующих способов:

typeof operand
typeof (operand)

Оператор typeof возвращает строку обозначающую тип невычисленного операнда. Значение operand может быть строкой, переменной, дескриптором, или объектом, тип которого следует определить. Скобки вокруг операнда необязательны.

Предположим, вы определяете следующие переменные:

var myFun = new Function("5 + 2");
var shape = "round";
var size = 1;
var today = new Date();

Оператор typeof возвращает следующие результаты для этих переменных:

typeof myFun;     
typeof shape;     
typeof size;      
typeof today;     
typeof dontExist; 

Для дескрипторов true и null оператор typeof возвращает следующие результаты:

typeof true; 
typeof null; 

Для чисел и строк оператор typeof возвращает следующие результаты:

typeof 62;            
typeof 'Hello world'; 

Для свойств оператор typeof возвращает тип значения данного свойства:

typeof document.lastModified; 
typeof window.length;         
typeof Math.LN2;              

Для методов и функций оператор typeof возвращает следующие результаты:

typeof blur;        
typeof eval;        
typeof parseInt;    
typeof shape.split; 

Для встроенных объектов оператор typeof возвращает следующие результаты:

typeof Date;     
typeof Function; 
typeof Math;     
typeof Option;   
typeof String;   
Оператор void

Оператор void используется любым из следующих способов:

void (expression)
void expression

Оператор void определяет выражение, которое должно быть вычислено без возвращения результата. expression — это выражение JavaScript, требующее вычисления. Скобки вокруг выражения необязательны, но их использование является правилом хорошего тона.

Вы можете использовать оператор void для указания на то, что операнд-выражение является гипертекстовой ссылкой. При этом выражение обрабатывается, но не загружается в текущий документ.

Следующий код служит примером создания гипертекстовой ссылки, которая бездействует при нажатии на неё пользователем. Когда пользователь нажимает на ссылку, void(0) вычисляется равным undefined, что не приводит ни к каким действиям в JavaScript.

<A HREF="javascript:void(0)">Нажмите здесь, чтобы ничего не произошло</A>

Приведённый ниже код создаёт гипертекстовую ссылку, которая подтверждает отправку формы при клике на ней пользователем:

<A HREF="javascript:void(document.form.submit())">
Нажмите здесь, чтобы подтвердить отправку формы</A>

Операторы отношения

Оператор отношения сравнивает свои операнды и возвращает результат сравнения в виде булева значения.

Оператор in

Оператор in возвращает true, если указанный объект имеет указанное свойство. Синтаксис оператора:

propNameOrNumber in objectName

где propNameOrNumber — строка или числовое выражение, представляющее имя свойства или индекс массива, а objectName — имя объекта.

Некоторые примеры способов использования оператора in:


var trees = new Array("redwood", "bay", "cedar", "oak", "maple");
0 in trees;        
3 in trees;        
6 in trees;        
"bay" in trees;    
                   
"length" in trees; 


"PI" in Math;          
var myString = new String("coral");
"length" in myString;  


var mycar = {make: "Honda", model: "Accord", year: 1998};
"make" in mycar;  
"model" in mycar; 
Оператор
instanceof

Оператор instanceof возвращает true, если заданный объект является объектом указанного типа. Его синтаксис:

objectName instanceof objectType

где objectName — имя объекта, тип которого необходимо сравнить с objectType, а objectType — тип объекта, например, Date или Array.

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

Например, следующий код использует оператор instanceof для проверки того, является ли объект theDay объектом типа Date. Так как theDay действительно является объектом типа Date, то программа выполняет код, содержащийся в утверждении if.

var theDay = new Date(1995, 12, 17);
if (theDay instanceof Date) {
  
}

Приоритет операторов

Приоритет операторов определяет порядок их выполнения при вычислении выражения. Вы можете влиять на приоритет операторов с помощью скобок.

Приведённая ниже таблица описывает приоритет операторов от наивысшего до низшего.

Таблица 3.7 Приоритет операторов
Тип оператораОператоры
свойство объекта.= |=
запятая,

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

Выражением является любой корректный блок кода, который возвращает значение.

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

Выражение x = 7  является примером выражения первого типа. Данное выражение использует оператор = для присваивания переменной значения 7. Само выражение также равняется 7.

Код 3 + 4 является примером выражения второго типа. Данное выражение использует  оператор «+» для сложения чисел 3 и 4 без присваивания переменной полученного результата 7.

Все выражения в JavaScript делятся на следующие категории:

  • Арифметические: вычисляются в число, например: 3.14159 (Используют арифметические операторы).
  • Строковые: вычисляются в текстовую строку, например: «Fred» или «234» (Используют строковые операторы).
  • Логические: вычисляются в true или false (Используют логические операторы).
  • Основные выражения: Базовые ключевые слова и основные выражения в JavaScript.
  • Левосторонние выражения: Значениям слева назначаются значения справа.

Основные выражения

Базовые ключевые слова и основные выражения в JavaScript.

Оператор
this

Используйте ключевое слово this для указания на текущий объект. В общем случае this указывает на вызываемый объект, которому принадлежит данный метод. Используйте this следующим образом:

this["propertyName"]
this.propertyName

Предположим, функция validate выполняет проверку свойства value некоторого объекта; задан объект, а также верхняя и нижняя граница величины данного свойства:

function validate(obj, lowval, hival){
  if ((obj.value < lowval) || (obj.value > hival))
    alert("Неверное значение!");
}

Вы можете вызвать функцию validate для обработчика события onChange для каждого элемента формы, используя this для указания на элемент формы, как это показано в следующем примере:

<B>Введите число от 18 до 99:</B>
<INPUT TYPE="text" NAME="age" SIZE=3
   onChange="validate(this, 18, 99);">
Оператор группировки

Оператор группировки "скобки" ( ) контролирует приоритет вычисления выражений. Например, вы можете переопределить порядок — «умножение и деление, а потом сложение и вычитание», так чтобы, например, чтобы сложение выполнялось до умножения:

var a = 1;
var b = 2;
var c = 3;


a + b * c     

a + (b * c)   



(a + b) * c   


a * c + b * c 
Упрощённый синтаксис создания массивов и генераторов

Упрощённый синтаксис — экспериментальная возможность JavaScript, которая возможно будет добавлена в будущие версии ECMAScript. Есть 2 версии синтаксиса:

[for (x of y) x]
Упрощённый синтаксис для массивов.
(for (x of y) y)
Упрощённый синтаксис для генераторов.

Упрощённые синтаксисы существуют во многих языках программирования и позволяют вам быстро собирать новый массив, основанный на существующем. Например:

[for (i of [ 1, 2, 3 ]) i*i ];


var abc = [ "A", "B", "C" ];
[for (letters of abc) letters.toLowerCase()];

Левосторонние выражения

Значениям слева назначаются значения справа.

new

Вы можете использовать оператор new для создания экземпляра объекта пользовательского типа или одного из встроенных объектов. Используйте оператор new следующим образом:

var objectName = new objectType([param1, param2, ..., paramN]);
super

Ключевое слово используется, чтобы вызывать функции родительского объекта. Это полезно и с классами для вызова конструктора родителя, например.

Оператор расширения

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

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

var parts = ['shoulder', 'knees'];
var lyrics = ['head', ...parts, 'and', 'toes'];

Похожим образом оператор работает с вызовами функций:

function f(x, y, z) { }
var args = [0, 1, 2];
f(...args);

 

Логические выражения и операторы. Курс «Python. Введение в программирование»

Логические выражения и логический тип данных

Часто в реальной жизни мы соглашаемся с каким-либо утверждением или отрицаем его. Например, если вам скажут, что сумма чисел 3 и 5 больше 7, вы согласитесь, скажете: «Да, это правда». Если же кто-то будет утверждать, что сумма трех и пяти меньше семи, то вы расцените такое утверждение как ложное.

Подобные фразы предполагают только два возможных ответа – либо «да», когда выражение оценивается как правда, истина, либо «нет», когда утверждение оценивается как ошибочное, ложное. В программировании и математике если результатом вычисления выражения может быть лишь истина или ложь, то такое выражение называется логическим.

Например, выражение 4 > 5 является логическим, так как его результатом является либо правда, либо ложь. Выражение 4 + 5 не является логическим, так как результатом его выполнения является число.

На позапрошлом уроке мы познакомились с тремя типами данных – целыми и вещественными числами, а также строками. Сегодня введем четвертый – логический тип данных (тип bool). Его также называют булевым. У этого типа всего два возможных значения: True (правда) и False (ложь).

>>> a = True
>>> type(a)
<class 'bool'>
>>> b = False
>>> type(b)
<class 'bool'>

Здесь переменной a было присвоено значение True, после чего с помощью встроенной в Python функции type() проверен ее тип. Интерпретатор сообщил, что это переменная класса bool. Понятия «класс» и «тип данных» в данном случае одно и то же. Переменная b также связана с булевым значением.

В программировании False обычно приравнивают к нулю, а True – к единице. Чтобы в этом убедиться, можно преобразовать булево значение к целочисленному типу:

>>> int(True)
1
>>> int(False)
0

Возможно и обратное. Можно преобразовать какое-либо значение к булевому типу:

>>> bool(3.4)
True
>>> bool(-150)
True
>>> bool(0)
False
>>> bool(' ')
True
>>> bool('')
False

И здесь работает правило: всё, что не 0 и не пустота, является правдой.

Логические операторы

Говоря на естественном языке (например, русском) мы обозначаем сравнения словами «равно», «больше», «меньше». В языках программирования используются специальные знаки, подобные тем, которые используются в математике: > (больше), < (меньше), >= (больше или равно), <= (меньше или равно), == (равно), != (не равно).

Не путайте операцию присваивания значения переменной, обозначаемую в языке Python одиночным знаком «равно», и операцию сравнения (два знака «равно»). Присваивание и сравнение – разные операции.

>>> a = 10
>>> b = 5
>>> a + b > 14
True
>>> a < 14 - b
False
>>> a <= b + 5
True
>>> a != b
True
>>> a == b
False
>>> c = a == b
>>> a, b, c
(10, 5, False)

В данном примере выражение c = a == b состоит из двух подвыражений. Сначала происходит сравнение (==) переменных a и b. После этого результат логической операции присваивается переменной c. Выражение a, b, c просто выводит значения переменных на экран.

Сложные логические выражения

Логические выражения типа kByte >= 1023 являются простыми, так как в них выполняется только одна логическая операция. Однако, на практике нередко возникает необходимость в более сложных выражениях. Может понадобиться получить ответа «Да» или «Нет» в зависимости от результата выполнения двух простых выражений. Например, «на улице идет снег или дождь», «переменная news больше 12 и меньше 20″.

В таких случаях используются специальные операторы, объединяющие два и более простых логических выражения. Широко используются два оператора – так называемые логические И (and) и ИЛИ (or).

Чтобы получить True при использовании оператора and, необходимо, чтобы результаты обоих простых выражений, которые связывает данный оператор, были истинными. Если хотя бы в одном случае результатом будет False, то и все сложное выражение будет ложным.

Чтобы получить True при использовании оператора or, необходимо, чтобы результат хотя бы одного простого выражения, входящего в состав сложного, был истинным. В случае оператора or сложное выражение становится ложным лишь тогда, когда ложны оба составляющие его простые выражения.

Допустим, переменной x было присвоено значение 8 (x = 8), переменной y присвоили 13 (y = 13). Логическое выражение y < 15 and x > 8 будет выполняться следующим образом. Сначала выполнится выражение y < 15. Его результатом будет True. Затем выполнится выражение x > 8. Его результатом будет False. Далее выражение сведется к True and False, что вернет False.

>>> x = 8
>>> y = 13
>>> y < 15 and x > 8
False

Если бы мы записали выражение так: x > 8 and y < 15, то оно также вернуло бы False. Однако сравнение y < 15 не выполнялось бы интерпретатором, так как его незачем выполнять. Ведь первое простое логическое выражение (x > 8) уже вернуло ложь, которая, в случае оператора and, превращает все выражение в ложь.

В случае с оператором or второе простое выражение проверяется, если первое вернуло ложь, и не проверяется, если уже первое вернуло истину. Так как для истинности всего выражения достаточно единственного True, неважно по какую сторону от or оно стоит.

В языке Python есть еще унарный логический оператор not, то есть отрицание. Он превращает правду в ложь, а ложь в правду. Унарный он потому, что применяется к одному выражению, стоящему после него, а не справа и слева от него как в случае бинарных and и or.

Здесь у < 15 возвращает True. Отрицая это, мы получаем False.

>>> a = 5
>>> b = 0
>>> not a
False
>>> not b
True

Число 5 трактуется как истина, отрицание истины дает ложь. Ноль приравнивается к False. Отрицание False дает True.

Практическая работа

  1. Присвойте двум переменным любые числовые значения.

  2. Используя переменные из п. 1, с помощью оператора and составьте два сложных логических выражения, одно из которых дает истину, другое – ложь.

  3. Аналогично выполните п. 2, но уже с оператором or.

  4. Попробуйте использовать в логических выражениях переменные строкового типа. Объясните результат.

  5. Напишите программу, которая запрашивала бы у пользователя два числа и выводила бы True или False в зависимости от того, больше первое число второго или нет.

Примеры решения и дополнительные уроки в android-приложении и pdf-версии курса

Основы логики. Логические операции и таблицы истинности

Содержание:

На данной странице будут рассмотренны 5 логических операций: конъюнкция, дизъюнкция, инверсия, импликация и эквивалентность, которых Вам будет достаточно для решения сложных логических выражений. Также мы рассмотрим порядок выполнения данных логических операций в сложных логических выражениях и представим таблицы истинности для каждой логической операции. Советуем Вам воспользоваться нашими программами для решения задач по математике, геометрии и теории вероятности. Помоми большого количества программ для решения задач на сайте работает форум, на котором Вы всегда можете задать вопрос и на котором Вам всегда помогуть с решением задач. Пользуйтесь нашими сервисами на здоровье!


Глоссарий, определения логики

Высказывание — это повествовательное предложение, про которое можно определенно сказать истинно оно или ложно (истина (логическая 1), ложь (логический 0)).

Логические операции — мыслительные действия, результатом которых является изменение содержания или объема понятий, а также образование новых понятий.

Логическое выражение — устное утверждение или запись, в которое, наряду с постоянными величинами, обязательно входят переменные величины (объекты). В зависимости от значений этих переменных величин (объектов) логическое выражение может принимать одно из двух возможных значений: истина (логическая 1) или ложь (логический 0).

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

Логические операции и таблицы истинности


1) Логическое умножение или конъюнкция:

Конъюнкция — это сложное логическое выражение, которое считается истинным в том и только том случае, когда оба простых выражения являются истинными, во всех остальных случаях данное сложеное выражение ложно.
Обозначение: F = A & B.

Таблица истинности для конъюнкции

ABF
111
100
010
000

2) Логическое сложение или дизъюнкция:

Дизъюнкция — это сложное логическое выражение, которое истинно, если хотя бы одно из простых логических выражений истинно и ложно тогда и только тогда, когда оба простых логических выраженныя ложны.
Обозначение: F = A + B.

Таблица истинности для дизъюнкции

ABF
111
101
011
000

3) Логическое отрицание или инверсия:

Инверсия — это сложное логическое выражение, если исходное логическое выражение истинно, то результат отрицания будет ложным, и наоборот, если исходное логическое выражение ложно, то результат отрицания будет истинным. Другими простыми слова, данная операция означает, что к исходному логическому выражению добавляется частица НЕ или слова НЕВЕРНО, ЧТО.

Таблица истинности для инверсии

4) Логическое следование или импликация:

Импликация — это сложное логическое выражение, которое истинно во всех случаях, кроме как из истины следует ложь. Тоесть данная логическая операция связывает два простых логических выражения, из которых первое является условием (А), а второе (В) является следствием.

Таблица истинности для импликации

ABF
111
100
011
001

5) Логическая равнозначность или эквивалентность:

Эквивалентность — это сложное логическое выражение, которое является истинным тогда и только тогда, когда оба простых логических выражения имеют одинаковую истинность.

Таблица истинности для эквивалентности

ABF
111
100
010
001

Порядок выполнения логических операций в сложном логическом выражении

1. Инверсия;
2. Конъюнкция;
3. Дизъюнкция;
4. Импликация;
5. Эквивалентность.

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

Слишком сложно?

Основы логики. Логические операции и таблицы истинности не по зубам? Тебе ответит эксперт через 10 минут!

Основы логики. Логические операции и таблицы истинности

Основы логики. Логические операции и таблицы истинности

На данной странице будут рассмотрены 6 логических операций: конъюнкция, дизъюнкция, инверсия, импликация, эквивалентность и исключающие или, которых вам будет достаточно для решения сложных логических выражений. Также мы рассмотрим порядок выполнения данных логических операций в сложных логических выражениях и представим таблицы истинности для каждой логической операции. 

Глоссарий, определения логики

Высказывание — это повествовательное предложение, про которое можно определенно сказать истинно оно или ложно (истина (логическая 1), ложь (логический 0)).

Логические операции — мыслительные действия, результатом которых является изменение содержания или объема понятий, а также образование новых понятий.

Логическое выражение — устное утверждение или запись, в которое, наряду с постоянными величинами, обязательно входят переменные величины (объекты). В зависимости от значений этих переменных величин (объектов) логическое выражение может принимать одно из двух возможных значений: истина (логическая 1) или ложь (логический 0).

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

Логические операции и таблицы истинности

1) Логическое умножение или конъюнкция:

Конъюнкция — это сложное логическое выражение, которое считается истинным в том и только том случае, когда оба простых выражения являются истинными, во всех остальных случаях данное сложенное выражение ложно.

Обозначение: F = A & B.

Таблица истинности для конъюнкции

2) Логическое сложение или дизъюнкция:

Дизъюнкция — это сложное логическое выражение, которое истинно, если хотя бы одно из простых логических выражений истинно и ложно тогда и только тогда, когда оба простых логических выраженbя ложны.
Обозначение: F = A v B.

Таблица истинности для дизъюнкции

3) Логическое отрицание или инверсия:

Инверсия — это сложное логическое выражение, если исходное логическое выражение истинно, то результат отрицания будет ложным, и наоборот, если исходное логическое выражение ложно, то результат отрицания будет истинным. Другими простыми слова, данная операция означает, что к исходному логическому выражению добавляется частица НЕ или слова НЕВЕРНО, ЧТО.

Обозначение: F = ¬A.

Таблица истинности для инверсии

4) Логическое следование или импликация:

Импликация — это сложное логическое выражение, которое истинно во всех случаях, кроме как из истины следует ложь. То есть данная логическая операция связывает два простых логических выражения, из которых первое является условием (А), а второе (В) является следствием.

«A → B» истинно, если из А может следовать B.

Обозначение: F = A → B.

Таблица истинности для импликации


5) Логическая равнозначность или эквивалентность:

Эквивалентность — это сложное логическое выражение, которое является истинным тогда и только тогда, когда оба простых логических выражения имеют одинаковую истинность.

«A ↔ B» истинно тогда и только тогда, когда А и B равны.
Обозначение: F = A ↔ B.
Таблица истинности для эквивалентности

«A ⊕ B» истинно тогда, когда истинно А или B, но не оба одновременно., *,` по аналогии с алгебраическим умножением может никак не обозначаться

 

Дизъюнкция, нестрогая дизъюнкция, логическое сложение, операция ИЛИ, операция OR.

`|«, vv, +`

Строгая дизъюнкция, разделительная дизъюнкция, исключающее ИЛИ, сложение по модулю `2`.

`o+, Delta`

Эквивалентность, эквиваленция, равенство, равнозначность.

`iff, -=`

Импликация, следование, следствие

`=>, ->`

Теперь для того чтобы строго определить эти логические операции, нам нужно для каждой из них выписать таблицу истинности. Все перечисленные операции кроме отрицания имеют два операнда. Знак операции в выражениях пишется между операндами (как в алгебре чисел). Операция отрицания имеет один операнд и в выражениях записывается либо в виде черты над операндом, либо в виде символа «приставка» слева от операнда.

Для того, чтобы не путаться и гарантированно перебрать все возможные комбинации значений операндов, принято записывать их в лексикографическом порядке (условно считается, что «ложь» `<` «истина»).

Таблица истинности для конъюнкции

Первый операнд

Второй операнд

Значение операции

`0`

`0`

`bb0`

`0`

`1`

`bb0`

`1`

`0`

`bb0`

`1`

`1`

`bb1`

 

Таблица истинности для дизъюнкции

Первый операнд

Второй операнд

Значение операции

`0`

`0`

`bb0`

`0`

`1`

`bb1`

`1`

`0`

`bb1`

`1`

`1`

`bb1`

 

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

Первый операнд

Второй операнд

Значение операции

`0`

`0`

`bb0`

`0`

`1`

`bb1`

`1`

`0`

`bb1`

`1`

`1`

`bb0`

Таблица истинности для эквивалентности

Первый операнд

Второй операнд

Значение операции

`0`

`0`

`bb1`

`0`

`1`

`bb0`

`1`

`0`

`bb0`

`1`

`1`

`bb1`

 

Таблица истинности для импликации

Первый операнд

Второй операнд

Значение операции

`0`

`0`

`bb1`

`0`

`1`

`bb1`

`1`

`0`

`bb0`

`1`

`1`

`bb1`

                 

Таблица истинности для отрицания

Значение операнда

Значение операции

`0`

`bb1`

`1`

`bb0`

Теперь осталось лишь установить соответствие между логическими операциями и логическими связками в русском языке.

Логическая операция

Логические связки в русском языке

Отрицание

Неверно что…

Конъюнкция

и, а, но,  а также, при этом,

одновременно с этим, хотя

Дизъюнкция

Или

Строгая дизъюнкция

или, либо

Эквивалентность

Тогда и только тогда когда,

необходимо и достаточно чтобы

Импликация

если то, необходимо чтобы, достаточно чтобы

Обратите внимание, что союз ИЛИ может означать, как строгую, так и нестрогую дизъюнкцию. Его интерпретация зависит от содержания (!!!) высказывания.

 Рассмотрим высказывание: «Мы идём в кино в субботу или в воскресение». Здесь два простых высказывания: «Мы идём в кино в субботу» и «Мы идём в кино в воскресение». Между ними стоит союз ИЛИ, который можно интерпретировать двояко. В данном случае очевидно, что мы можем пойти в кино и в субботу, и в воскресение, поэтому дизъюнкция будет нестрогая. Возьмём две логические переменные – `p` и `q` и присвоим им простые высказывания. Тогда исходное высказывание в формализованном виде будет выглядеть, как `bb(pvvq)`.

Рассмотрим высказывание: «Я сейчас на севере Москвы или на юго-западе Москвы». Здесь тоже два простых высказывания, которые связаны союзом ИЛИ. Но в этом случае союз ИЛИ интерпретируется, как строгая дизъюнкция, поскольку нельзя одновременно находиться в двух местах. Таким образом, если снова взять логические переменные `p` и `q`, то получится следующая логическая формула: `bb(p»o+q)`.

Рассмотрим высказывание: «Для того чтобы четырёхугольник был квадратом, необходимо, чтобы все его стороны были равны». Здесь два простых высказывания: «Четырёхугольник является квадратом» и «Все стороны четырёхугольника равны». Присвоим их соответственно логическим переменным `p` и `q`. Логическая связка «необходимо, чтобы» — это импликация. Весь вопрос в том, что из чего следует. (Какая запись правильная: `bbp -> bbq` или `bbq ->bbp`?)  Импликация ложна только в единственном случае: когда левый операнд имеет значение «истина», а правый – «ложь». Рассмотрим все возможные значения операндов и проанализируем, какая из ситуаций невозможна.

1) `p` и `q` ложны. Это значит, что четырёхугольник не является квадратом и его стороны не равны. Это возможная ситуация.

2) `p` – ложно, `q` – истинно. Это значит, что четырёхугольник не является квадратом, но стороны у него равны. Это возможно (ромб).

3) `p` – истинно, `q` – истинно. Это значит, что четырёхугольник является квадратом и стороны у него равны. Это возможная ситуация.

4) `p` – истинно, `q` – ложно. Это значит, что четырёхугольник является квадратом, но стороны у него не равны. Это невозможная ситуация.

Анализ ситуаций показывает, что левым операндом импликации должна быть переменная `p`. Таким образом, в формализованном виде исходное высказывание выглядит как `bb(p -> q)`.

Очень часто вместо «присвоим логическим переменным эти высказывания» говорят «обозначим высказывания следующим образом». В дальнейшем мы тоже будем использовать этот речевой оборот.

Математическая логика — rajak.rs

Высказывание это повествовательное предложение, о котором можно сказать истинно оно или ложно.  

Высказывания обозначаются: $p$, $q$, $r$ …

Для того, чтобы не писать «истина» и «ложь» («true» и «false«) часто используют лишь начальные буквы этих слов «и» и «л» или «1« и «0«, или символы «$ \top $» и «$ \bot $«.

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

Введем следующие обозначения для операций: $ \wedge $ или & – конъюнкция, $ \vee $ – дизъюнкция, $\neg $ – отрицание, $ \Rightarrow $ – импликация, $ \Leftrightarrow $ – эквиваленция. Символы $ \wedge $ или &, $ \vee $, $\neg $, $ \Rightarrow $, $ \Leftrightarrow $, называются логическими операциями или связками.

операциялогическая операцияновое высказывание
конъюнкция ($p$ и $q$)$ \wedge $$p \wedge q$  ($p$ и $q$)
дизъюнкция ($p$ или $q$)$ \vee $$p \vee q$  ($p$ или $q$) 
импликация (если $p$ … тогда $q$)$ \Rightarrow $$p \Rightarrow q$  (если $p$, тогда $q$)
эквиваленция($p$ тогда и только тогда, когда $q$)$ \Leftrightarrow $$p \Leftrightarrow q$  ($p$ тогда и только тогда, когда $q$)
отрицание (не)$\neg $$\neg p$ (не $p$)
дисјункција (или – или)$\underline  \vee  $$p \underline  \vee  q$  ($p$ или $q$, али не оба)

 Таблица истинности логических операций

$p$$q$$p \wedge q$$p \vee  q$$p \Rightarrow  q$$p \Leftrightarrow q$$p \underline  \vee  q$
$\top$$\top$$\top$$\top$$\top$$\top$$ \bot $
$\top$$ \bot $$ \bot $$\top$$ \bot $$ \bot $$\top$
$ \bot $$ \bot $$\top$$\top$$\top$$ \bot $$\top$
$ \bot $$ \bot $$ \bot $$ \bot $$\top$$\top$$ \bot $

 

$p$$\neg p$
$\top$$ \bot $
$ \bot $$\top$ 

Формулы логики высказываний

Формулами логики высказываний называются

  1. атомаоные формулы логики высказываний (высказывания $p$, $q$, $r$… и символы истины и лжи «1» и «0«, или «$ \top $» и «$ \bot $»)
  2. и выражения вида: $A \vee B$, $A \wedge B$, $A \Rightarrow B$, $A \Leftrightarrow B$, $\neg A$, где $A$ и $B$ формулы логики высказываний.

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

Тавтология

Тавтологией называется тождественно истинное высказывание относительно значений своих компонентов.

Свойства логтческих операций

  1. Коммутативность конъюнкции, дизъюнкции и еквиваленции
    $p \wedge q \Leftrightarrow q \wedge  p$, 
    $p \vee q \Leftrightarrow q \vee p$,
    $(p \Leftrightarrow q) \Leftrightarrow (q \Leftrightarrow p)$
  2. Асоциативность конъюнкции, дизъюнкции и еквиваленции
    $(p \wedge q) \wedge r \Leftrightarrow p \wedge (q \vee r)$,
    $(p \vee q) \vee r \Leftrightarrow p \vee (q \vee r)$,
    $(p \Leftrightarrow q) \vee r \Leftrightarrow p \Leftrightarrow (q \Leftrightarrow r)$.
  3. Идемпотентность конъюнкции, дизъюнкции
    $p \wedge p \Leftrightarrow p$,
    $p \vee p \Leftrightarrow p$.
  4. Дистрибутивность конконъюнкции относительно дизъюнкции и обратно
    $p \wedge (q \vee r) \Leftrightarrow (p \wedge q) \vee (p \wedge r)$,
    $p \vee (q \wedge r) \Leftrightarrow (p \vee q) \wedge (p \vee r)$.
  5. Асоциативность конконъюнкции относительно дизъюнкции и обратно
    $p \wedge (q \vee q) \Leftrightarrow p$,
    $p \vee (q \wedge q) \Leftrightarrow p$.
  6. Инволютивность отрицания
    $\neg (\neg p) \Leftrightarrow p$.
  7. Нейтральный элемент для операции конъюнкции и дизъюнкции
    $p \wedge 0 \Leftrightarrow p$,
    $p \vee 0 \Leftrightarrow p$.

 

Логика и обозначение множеств

Теория множеств — это раздел математической логики. Поэтому естественно, что для описания множеств используются логический язык и символы. В этом разделе мы рассмотрим основные логические символы и способы определения множеств.

Логика высказываний

Предложение — это декларативное утверждение, которое либо истинно, либо ложно. Если предложение истинно, то мы говорим, что его истинностное значение равно true. Соответственно, если предложение ложно, его истинностное значение ложно.2} \) также четное.

Примеры ложных предложений:

  • Электрон тяжелее протона;
  • \ (1 + 2 \ gt 3; \)
  • \ (6 \) — простое число.

Не все предложения являются предложениями:

  • \ (x \ gt 5 \) (Это может быть истина или ложь в зависимости от \ (x \))
  • Идёт дождь? (Это вопрос, а не декларативное предложение)
  • Картины Мондриана слишком абстрактны. (Что абстрактного и слишком абстрактного?)

Для обозначения предложений мы обозначаем их буквами.Наиболее распространенные буквы: \ (p, \) \ (q, \) \ (r, \) \ (s, \) \ (t. \)

Используя логические операторы или связки, мы можем строить сложные предложения.

Логические операторы и таблицы истинности

Пусть \ (p \) и \ (q \) — два предложения. Каждое из этих утверждений может принимать два значения — истина (\ (T \)) и ложь (\ (F \)). Итак, есть \ (4 \) пары входных значений: \ (TT, \) \ (TF, \) \ (FT, \) и \ (FF. \)

Предположим, что новое предложение \ (r \) составлено из \ (p \) и \ (q.4 = 16 \) возможных выходных комбинаций (функций истинности) для \ (2 \) двоичных входных переменных. Каждая из этих комбинаций представлена ​​определенным логическим оператором.

Далее мы рассмотрим наиболее важные операторы.

Отрицание

Отрицание — унарный логический оператор. Если \ (p \) — предложение, то отрицание \ (p \) называется not \ (p \) и обозначается \ (\ lnot p. \)

.

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

В случае оператора отрицания таблица истинности очень проста:

Как видите, оператор логического отрицания меняет значение истинности входного предложения.

Пример 1:
\ (п: \) Трапеция четырехугольник (истинный)
\ (\ lnot p: \) Трапеция не четырехугольник (ложный)
Пример 2:
\ (п: \) \ (2 \) — простое число (правда)
\ (\ lnot p: \) \ (2 \) не является простым числом (ложь)

Рассмотрим теперь несколько бинарных операторов.

Соединение

Если \ (p \) и \ (q \) — два предложения, то их конъюнкция означает \ (p \) и \ (q \) и обозначается \ (p \ land q. \)

Конъюнкция \ (p \ land q \) истинна только тогда, когда оба \ (p \) и \ (q \) истинны. В противном случае это ложь. Таким образом, таблица истинности конъюнкции выглядит следующим образом:

Пример 1:
\ (п: \) Соединенное Королевство является членом Европейского Союза (неверно)
\ (q: \) Ирландия является членом Европейского Союза (правда)
\ (п \ земля q: \) Соединенное Королевство и Ирландия являются членами Европейского Союза (неверно)
Пример 2:
\ (п: \) \ (3 \) простое (истинное)
\ (q: \) \ (3 \) нечетное (правда)
\ (п \ земля q: \) \ (3 \) простое и нечетное (истинное)

Дизъюнкция

Если \ (p \) и \ (q \) — два предложения, то их дизъюнкция означает \ (p \) или \ (q \) и обозначается \ (p \ lor q.\)

Дизъюнкция \ (p \ lor q \) истинна, когда либо \ (p \) истинно, \ (q \) истинно, либо оба истинны. Это неверно, если оба \ (p \) и \ (q \) ложны.

Таблица истинности дизъюнкции:

Пример 1:
\ (п: \) Протон имеет отрицательный заряд (ложно)
\ (q: \) Нейтрон имеет отрицательный заряд (ложный)
\ (p \ lor q: \) Протон или нейтрон имеют отрицательный заряд (ложный)
Пример 2:
\ (п: \) \ (\ frac {2} {3} \) — рациональное число (верно)
\ (q: \) \ (\ frac {\ sqrt {2}} {5} \) — рациональное число (ложно)
\ (p \ lor q: \) Либо \ (\ frac {2} {3} \), либо \ (\ frac {\ sqrt {2}} {5} \), либо оба числа являются рациональными (истинными)

Материал условный

Материальное условное выражение \ (p \) и \ (q \) означает утверждение, если \ (p \), то \ (q \), и обозначается как \ (p \ to q.\) Этот логический оператор также называется условным оператором.

Если \ (p \) истинно, то условное выражение \ (p \ to q \) принимает значение истинности \ (q. \). Если \ (p \) ложно, то условное выражение \ (p \ to q \) по умолчанию считается истинным.

Вот таблица истинности условного оператора:

Условное выражение \ (p \ to q \) может быть выражено разными предложениями, некоторые из них перечислены ниже:

  • \ (p \) означает \ (q \)
  • \ (p \) является достаточным условием для \ (q \)
  • \ (q \) — необходимое условие для \ (p \)
  • \ (q \) следует из \ (p \)
  • \ (p \) только если \ (q \)
Пример:
\ (п: \) \ (x \) делится на \ (2 \) и \ (3 \)
\ (q: \) \ (x \) делится на \ (6 \)
\ (от p \ к q: \) Если \ (x \) делится на \ (2 \) и \ (3, \), то \ (x \) делится на \ (6.\)
\ (х = 12: \) \ (p \) верно, \ (q \) верно и \ (p \ to q \) верно.
\ (х = 13: \) \ (p \) ложно, \ (q \) ложно, а \ (p \ to q \) верно.

Специальные условные предложения

  • Обратным к \ (p \ к q \) является предложение \ (q \ to p \)
  • Противоположностью \ (p \ to q \) является предложение \ (\ neg q \ to \ neg p \)
  • Обратным к \ (p \ to q \) является предложение \ (\ neg p \ to \ neg q \)

Если утверждение \ (p \ to q \) верно, то верно и обратное.Если верно обратное, то верно и обратное.

Специальные условные операторы определяются следующей таблицей истинности:

Пример:
Выражение \ (p \)
Четырехугольник — это прямоугольник (ложь)
Выражение \ (q \)
Сумма внутренних углов четырехугольника равна \ (360 \) градусов (правда).
Условное выражение \ (p \ to q \)
Если четырехугольник является прямоугольником, то сумма его внутренних углов равна \ (360 \) градусам (истинно).
Преобразование \ (p \ to q: \) \ (q \ to p \)
Если сумма внутренних углов четырехугольника равна \ (360 \) градусов, то это прямоугольник ( ложный).
Обратно \ (p \ to q: \) \ (\ neg p \ to \ neg q \)
Если четырехугольник не является прямоугольником, то сумма его внутренних углов не равна \ (360 \) градусов (ложь).
Противоположность \ (p \ to q: \) \ (\ neg q \ to \ neg p \)
Если сумма внутренних углов четырехугольника не равна \ (360 \) градусам, то это не прямоугольник (правда).

Материал Biconditional

Материальное биконусное или логическое биконусное выражение \ (p \) и \ (q \) означает утверждение \ (p \) тогда и только тогда, когда \ (q \) и обозначается \ (p \ leftrightarrow q. \)

Двухусловный оператор имеет то же значение истинности, что и составной логический оператор \ (\ left ({p \ to q} \ right) \ land \ left ({q \ to p} \ right), \), что означает \ (p \) влечет \ (q \), а \ (q \) влечет \ (p. \)

Таблица истинности для двусмысленного утверждения имеет вид

Пример 1:
\ (п: \) Три вектора компланарны (истинно)
\ (q: \) Скалярное тройное произведение трех векторов равно нулю (истина)
\ (p \ leftrightarrow q: \) Три вектора компланарны тогда и только тогда, когда их тройное скалярное произведение равно нулю (истина)
Пример 2:
\ (п: \) Теннисный матч будет проводиться на открытом воздухе (ложь)
\ (q: \) Идёт дождь (правда)
\ (p \ leftrightarrow q: \) Теннисный матч будет проводиться на открытом воздухе только в том случае, если идет дождь (неверно)

Логическая эквивалентность

Утверждения \ (p \) и \ (q \) называются логически эквивалентными, если они имеют одинаковые таблицы истинности.Логическая эквивалентность \ (p \) и \ (q \) обозначается как \ (p \ Equiv q, \) или иногда как \ (\ Leftrightarrow \) в зависимости от используемых обозначений.

Предикаты и квантификаторы

До сих пор мы рассматривали предложения, которые определяются как утверждения, которые могут быть как истинными, так и ложными.

Чтобы расширить простую логику высказываний, мы вводим понятие предиката.

Предикат — это логический оператор, содержащий одну или несколько переменных или параметров.Предикаты обозначаются заглавной буквой, а переменные указываются в качестве аргументов, например \ (P \ left (x \ right) \) или \ (Q \ left ({x, y} \ right). \) Значение истинности предикат зависит от значений его переменных.

Пример 1:
Предикат \ (P \ left (x \ right) \)
\ (P \ left (x \ right): \) \ (x \) — это планета
\ (x \ ) = Венера Истинное предположение
\ (P \ left (\ text {Venus} \ right): \) Венера — планета
\ (x \) = Антарес Ложное утверждение
\ (P \ left (\ text {Antares} \ right): \) Антарес — это планета
Пример 2:
Предикат \ (Q \ left ({x, y} \ right) \)
\ (Q \ left ({x, y} \ right): {x ^ 2} + {y ^ 2 } \ le 4 \)
\ (x = 1, y = -1 \) Истинное предложение
\ (Q \ left ({1, -1} \ right): {1 ^ 2 } + {\ left ({- 1} \ right) ^ 2} \ le 4 \)
\ (x = 1, y = 2 \) Ложное утверждение
\ (Q \ left ( {1,2} \ right): {1 ^ 2} + {2 ^ 2} \ le 4 \)

Подобно суждениям, предикат принимает два значения — истина или ложь.Следовательно, к ним применимы все операции логической алгебры. Используя операторы \ (\ neg, \ land, \ lor, \ rightarrow, \) и \ (\ leftrightarrow, \), мы можем формировать более сложные предикаты.

Существует также дополнительная операция, определенная для предикатов и называемая квантификацией. Количественная оценка позволяет нам указать степень достоверности предиката, то есть диапазон значений переменных, для которых этот предикат должен выполняться.

В логике предикатов есть два типа кванторов — универсальный квантор и квантор существования.

Универсальный квантификатор

Универсальный квантификатор используется для выражения предложений такими словами, как все или каждый. Он обозначается символом \ (\ forall. \). Обозначение \ (\ forall x P \ left ({x} \ right) \) означает «для каждого значения \ (x \) в определенной области предикат \ (P \ left ({x} \ right) \) верно «. Область называется универсумом дискурса или областью дискурса.

Экзистенциальный квантификатор

Квантификатор существования используется для выражения предложений такими словами, как «некоторая» или «есть».Он обозначается символом \ (\ существует. \) Обозначение \ (\ exists x P \ left ({x} \ right) \) означает, что «существует некоторое значение \ (x \) такое, что \ (P \ left ({x} \ right) \) верно «.

Предикаты, логические операторы и кванторы — это мощный набор инструментов для описания математических объектов и моделирования реального мира.

Обозначение конструктора множеств

Нотация построителя множеств используется для определения набора объектов с помощью предиката. Обычная нотация включает части \ (3 \): переменную \ (x, \), разделитель двоеточия или вертикальной черты и логический предикат \ (P \ left ({x} \ right): \)

\ [S = \ left \ {{x | P \ left (x \ right)} \ right \}, \]

где \ (S \) обозначает множество объектов.

Единственная переменная \ (x \) может быть заменена термином, который может включать одну или несколько переменных в сочетании с функциями, действующими на них. Предикат \ ({P \ left (x \ right)} \) может быть представлен сложной логической формулой.

Некоторые другие определения и обозначения

\ (\ {\; \} \) — это набор
\ (x \ дюйм S \) \ (x \) является элементом или членом \ (S \)
\ (x \ notin S \) \ (x \) не является элементом \ (S \)
\ (S \ Subteq T \) \ (S \) является подмножеством \ (T \)
\ (S = T \) эквивалентно \ (\ left ({S \ substeq T} \ right) \ land \ left ({T \ substeq S} \ right) \)
\ (S \ подмножество T \) \ (S \) является собственным подмножеством \ (T.\) Это означает \ (\ left ({S \ substeq T} \ right) \ land \ left ({T \ ne S} \ right) \)
\ (\ varnothing \) пустой набор

См. Решенные проблемы на странице 2.

Полный список логических символов

В философии и математике логика играет ключевую роль в формализации правильных дедуктивных выводов и других форм рассуждений. Ниже приводится исчерпывающий список наиболее заметных символов в логике, включающий символы из логики высказываний, логики предикатов, булевой логики и модальной логики.

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

Предпочитаете версию в формате PDF?

Получите общее резюме математических символов в электронной книге формы — вместе с использованием каждого символа и кодом LaTeX.

Константы

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

Переменные

Подобно другим областям математики, переменных используются в качестве символов-заполнителей для различных логических объектов. В следующей таблице приведены наиболее известные из них, а также их соответствующие примеры и значения.

Название символа Пояснение Пример
$ x, y, w, z $ Переменные количественной оценки $ x_1 + x_2 = y $
$ \ mathbf {x}, \ mathbf {y}, \ mathbf {w}, \ mathbf {z} $ Метапеременные для количественных переменных Для всех переменных $ \ mathbf {x} _1 $ и $ \ mathbf {x} _2 $, ‘$ \ mathbf {x} _1 = \ mathbf {x} _2 $’ — формула.
$ f, g, h $ Функциональные символы $ h \ left (f_1 (x), g (x, y) \ right) $
$ \ mathbf {s}, \ mathbf {t} $ Метапеременные для терминов Для всех терминов $ \ mathbf {t} _1 $ и $ \ mathbf {t} _2 $, ‘$ f (\ mathbf {t} _1, \ mathbf { t} _2) $ ‘- это термин.
$ P, Q, R $ Пропозициональные / Предикатные символы $ P (x, a) \ land Q_1 (z) $
$ \ alpha, \ beta, \ gamma , \ phi, \ psi $ Метапеременные для формул Для всех формул $ \ alpha $ и $ \ beta $, $ \ alpha \ land \ beta \ Equiv \ beta \ land \ alpha $.
$ \ Sigma, \ Phi, \ Psi $ Метапеременные для набора предложений Если $ \ Sigma $ несовместим, то $ \ Sigma \ cup \ Phi $ тоже.
$ \ mathcal {L} $ Метапеременная для формальных языков Если $ \ mathcal {L} $ — язык с равенством и константой $ a $, то ‘$ a = a $’ будет формула в $ \ mathcal {L} $.

Операторы

Операторы — это символы, используемые для обозначения математических операций, которые служат для преобразования одного или нескольких входов в аналогичный выход.В логике эти операторы включают логические связки из пропозициональной / модальной логики, кванторы из логики предикатов, а также другие операторы, связанные с синтаксической заменой и семантической оценкой.

Унарные логические связки

Имя символа Пояснение Пример
$ \ lnot P $, $ \ sim \! \! P $, $ \ overline {P} $ Отрицание $ P $
(не $ P $)
$ \ lnot \ lnot P \ Equiv P $
$ \ Diamond P $ Возможно $ P $ Если $ \ Diamond P $ , то $ \ Diamond \ Diamond P $.
$ \ Box P $ Обязательно $ P $ Если $ \ Box P $, то $ \ neg \ Diamond \ neg P $.

Двоичные логические связки

Название символа Пояснение Пример
$ P \ land Q $ Соединение
(P $ и $ Q $)
$ P \ land P \ эквив P $
$ P \ lor Q $ Дизъюнкция
($ P $ или $ Q $)
$ \ neg (P \ lor Q) \ эквив $
$ \ neg P \ land \ neg Q $
$ P \ veebar Q $, $ P \ oplus Q $ Исключительная дизъюнкция
($ P $ xor $ Q $)
$ P \ oplus Q \ Equiv $
$ (P \ lor Q) \ land \ neg (P \ land Q) $
$ P \ uparrow Q $ Отрицание конъюнкции
($ P $ nand $ Q $)
$ P \ uparrow Q \ Equiv \ neg (P \ land Q) $
$ P \ downarrow Q $ Отрицание дизъюнкции
($ P $ или $ Q $)
$ P \ downarrow Q \ Equiv \\ (\ neg P \ land \ neg Q ) $
$ P \ to Q $ Условное
(Если $ P $, то $ Q $)
Для всех $ P $, $ P \ to P $ является тавтологией.
$ P \ not \ to Q $ Безусловный
(Not ‘if $ P $, then $ Q $’)
$ P \ not \ to Q \ Equiv P \ land \ neg Q $
$ P \ leftarrow Q $ Условное преобразование
(Если $ Q $, то $ P $)
$ Q \ leftarrow (P \ land Q) $
$ P \ not \ leftarrow Q $ Converse безусловный
(Not ‘if $ Q $, then $ P $’)
$ (P \ to Q) \ land \\ (P \ not \ leftarrow Q) $
$ P \ leftrightarrow Q $ Двуусловный
($ P $ тогда и только тогда, когда $ Q $)
$ P \ leftrightarrow Q \ Equiv $
$ (P \ to Q) \ land (P \ leftarrow Q) $
$ P \ not \ leftrightarrow Q $ Безусловный
(Не ‘$ P $, если и только если $ Q $’)
Если $ P \ not \ to Q $, то $ P \ not \ leftrightarrow Q $.2) $
$ \ существует! \ mathbf {x} $ Количественная оценка уникальности
(Существует уникальный $ \ mathbf {x} $)
$ \ exists! \, q, r \ in \ mathbb {Z} \, $
$ ( n = dq + r \, \ land $
$ 0 \ le | r |
$ \ mathrm {N} \ mathbf {x} $, $ \ nexists \ mathbf {x} $ Количественное определение несуществования
($ \ mathbf {x} $ не существует)
$ \ mathrm {N} x P (x) \ Equiv \\ \ forall x \, \ neg P (x) $
$ \ exists_n \ mathbf {x} $ Числовое определение
(Есть ровно $ n $ $ \ mathbf {x} $)
$ \ exists_3 x \ in \ mathbb {Z} \, (5 < x <9) $
$ \ exists _ {\ ge n} \ mathbf {x} $ Числовое определение
(Есть не менее $ n $ $ \ mathbf {x} $)
$ \ существует _ {\ ge 2} x \, Q (x) \ Equiv $
$ \ exists x \ exists y \, (Q (x) \ land $
$ Q (y) \ land x \ ne y) $
$ \ exists _ {\ le n} \ mathbf {x} $ Численное определение 9 0550
(Максимум $ n $ $ \ mathbf {x} $)
$ \ exists _ {\ le 10} x \, (x ^ 2 \ le 100) \ Equiv $
$ \ neg \ left (\ существует _ {\ ge 11} x \, (x ^ 2 \ le 100) \ right) $

Операторы на основе подстановки

Имя символа Пояснение Пример
$ \ mathbf {t} [\ mathbf {x} / \ mathbf {t} _0] $ Замещенный термин
(термин $ \ mathbf {t} $ с вхождениями $ \ mathbf {x} $ заменен на $ \ mathbf {t} _0 $)
$ (x ^ 2 + y) [x / 1] [y / 5] =
$ 1 ^ 2 + 5 $
$ \ mathbf {\ alpha} [\ mathbf {x} / \ mathbf {t_0}] $ Замещенная формула
(формула $ \ mathbf {\ alpha} $ с свободными вхождениями $ \ mathbf {x} $ заменена термином $ \ mathbf {t_0} $)
$ (\ forall x (x = y)) [x / a] = $
$ \ forall x (x = y) $

Операторы на основе оценки

Название символа Пояснение ation Пример
$ \ mathbf {t} ^ {\ sigma} $ Референт термина $ \ mathbf {t} $ при оценке $ \ sigma $ $ \ left (f ( a, b) \ right) ^ {\ sigma} = $
$ \ mathrm {отец} (\ mathrm {Al}, \ mathrm {Bob}) $
$ \ alpha ^ {\ sigma} $ Истинное значение формулы $ \ alpha $ при оценке $ \ sigma $ Если $ P ^ {\ sigma} $ — симметричное отношение, то $ \ left (P (x, y) \ right) ^ {\ sigma } = \\ \ left (P (y, x) \ right) ^ {\ sigma} $
$ \ sigma (\ mathbf {x} / u) $ Переоценка $ \ sigma $, где переменная $ \ mathbf {x} $ переоценивается как $ u $ $ (\ forall x \, \ alpha) ^ {\ sigma} = \ top $ тогда и только тогда, когда для всех $ u $ во вселенной дискурса $ U $, $ \ alpha ^ {\ sigma (x / u)} = \ top $.

Реляционные символы

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

Имя символа Пояснение Пример
$ \ mathbf {t} _1 = \ mathbf {t} _2 $ Идентификационный символ в логической системе с равенством ‘$ \ neg \ left (1 = s (1) \ right) $ ‘- формула на языке арифметики первого порядка.
$ \ alpha \! \ подразумевает \! \ beta $ Предложение $ \ alpha $ подразумевает предложение $ \ beta $ $ \ forall x \, (x \ ge 1) \! \ подразумевает 1 \ ge 1 $
$ \ alpha \! \ impliedby \! \ beta $ Предложение $ \ alpha $ — это , подразумеваемое предложением $ \ beta $ $ 5 \ mid x \! \ impliedby \! 5 \ mid 7x $
$ \ alpha \ Equiv \ beta $, $ \ alpha \ Leftrightarrow \ beta $, $ \ alpha \! \ iff \! \ beta $ Предложения $ \ alpha $ и $ \ beta $ логически эквивалентны $ \ neg (P \ to Q) \ Equiv \\ P \ land \ neg Q $
$ \ sigma \ models \ alpha $ Оценка $ \ sigma $ удовлетворяет формуле $ \ alpha $ Если $ \ phi ^ {\ sigma} = \ top $, то $ \ sigma \ models \ phi $.
$ \ Phi \ models \ phi $ Набор предложений $ \ Phi $ влечет за собой предложений $ \ phi $
($ \ phi $ является логическим следствием $ \ Phi $)
If $ \ Phi \ models \ phi $, затем $ \ Phi \ cup \ Psi \ models \ phi $.
$ \ Phi \ nvDash \ phi $ Набор предложений $ \ Phi $ не влечет за собой предложений $ \ phi $ $ \ {P \ to Q, Q \ to R \} \ nvDash R $
$ \ models \ phi $ Предложение $ \ phi $ — тавтология $ \ models \ forall x \, (x = x) $
$ \ Phi \ vdash \ phi $ Набор предложений $ \ Phi $ доказывает предложений $ \ phi $ $ \ forall x \, P (x, a) \ vdash \\ P (a, a) $
$ \ Phi \ nvdash \ phi $ Набор предложений $ \ Phi $ не доказывает предложение $ \ phi $ $ \ exists x \, R (x) \ nvdash R (a) $
$ \ vdash \ phi $ Предложение $ \ phi $ является теоремой $ \ vdash \ forall x \ forall y \, (x = y \ to $
$ y = x) $
$ \ phi \ потому что \ Phi $ $ \ phi $, потому что $ \ Phi $ $ A = 95 ^ {\ circ} \ потому что $
$ A + B = 180 ^ {\ circ}, $
$ B = 85 ^ {\ circ} $
$ \ Phi \ следовательно \ phi $ $ \ Phi $, следовательно $ \ phi $ $ P \ lor Q, \ neg P \\ \ поэтому Q $

Для основного списка символов см. математические символы.Список символов, разделенных на категории тип и предмет , см. На соответствующих страницах ниже.

Предпочитаете версию в формате PDF?

Получите общее резюме математических символов в электронной книге формы — вместе с использованием каждого символа и кодом LaTeX.

Дополнительные ресурсы

2.1: Операторы и логические операторы

ПРОСМОТР АКТИВНОСТИ \ (\ PageIndex {1} \): Составные операторы

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

  • Конъюнкция операторов \ (P \) и \ (Q \) — это утверждение «\ (P \) и \ (Q \)», которое обозначается как \ (P \ wedge Q \). Утверждение \ (P \ wedge Q \) верно только тогда, когда оба \ (P \) и \ (Q \) верны.
  • Дизъюнкция операторов \ (P \) и \ (Q \) — это утверждение «\ (P \) или \ (Q \)», которое обозначается как \ (P \ vee Q \). Утверждение \ (P \ vee Q \) истинно только тогда, когда истинно хотя бы одно из \ (P \) или \ (Q \).
  • Отрицание ( утверждения ) утверждения \ (P \) — это утверждение «, а не \ (P \)» и обозначается \ (\ urcorner P \).Отрицание \ (P \) истинно, только когда \ (P \) ложно, а \ (\ urcorner P \) ложно, только когда \ (P \) истинно.
  • Импликация или условный — это утверждение « Если \ (P \) , то \ (Q \)» и обозначается \ (P \ to Q \). Утверждение \ (P \ to Q \) часто читается как «\ (P \) влечет \ (Q \)», и мы видели в разделе 1.1, что \ (P \ to Q \) ложно только тогда, когда \ (P \) истинно, а \ (Q \) ложно.

Несколько замечаний по поводу дизъюнкции.
Важно понимать использование оператора «или». В математике мы используем « включительно или », если не указано иное. Это означает, что \ (P \ vee Q \) истинно, когда оба \ (P \) и \ (Q \) истинны, а также когда истинно только одно из них. То есть \ (P \ vee Q \) истинно, если хотя бы одно из \ (P \) или \ (Q \) истинно, или \ (P \ vee Q \) ложно, только когда оба \ (P \ ) и \ (Q \) ложны.

Другое использование слова «или» — « исключающее или ». Для исключающего или результирующий оператор является ложным, если оба утверждения верны.То есть, «\ (P \) эксклюзивное или \ (Q \)» истинно только тогда, когда истинно ровно одно из \ (P \) или \ (Q \). В повседневной жизни мы часто используем эксклюзивное или. Когда кто-то говорит: «На перекрестке поверните налево или идите прямо», этот человек использует исключительное или.

Некоторые комментарии по поводу отрицания . Хотя выражение \ (\ urcorner P \) можно прочитать как «Это не тот случай, когда \ (P \)», часто есть лучшие способы сказать или написать это на английском языке. Например, мы обычно говорим (или пишем):

  • Отрицание утверждения «391 простое» означает «391 не простое число».”
  • Отрицание утверждения «\ (12 <9 \)» равно «\ (12 \ ge 9 \)».
  1. Для выписок

    \ (P \): 15 нечетное \ (Q \): 15 простое
    запишите каждое из следующих утверждений как английские предложения и определите

    , истинны они или ложны.
    (а) \ (P \ клин Q \). (б) \ (P \ vee Q \). (c) \ (P \ клин \ urcorner Q \). (г) \ (\ urcorner P \ vee \ urcorner Q \).

  2. Для выписок

    P: 15 нечетное R: 15 <17

    запишите каждое из следующих утверждений в символической форме, используя операторы \ (\ wedge \), \ (\ vee \) и \ (\ urcorner \)

    (а) 15 \ (\ ge \) 17.(б) 15 нечетно или 15 \ (\ ge \) 17.
    (в) 15 четно или 15 <17. (г) 15 нечетно и 15 \ (\ ge \) 17.

ПРЕДВАРИТЕЛЬНЫЙ ПРОСМОТР \ (\ PageIndex {2} \): истинные значения утверждений

Мы будем использовать следующие два оператора для всего этого действия предварительного просмотра:

  • \ (P \) — это утверждение «Идет дождь».
  • \ (Q \) — это утверждение «Дейзи играет в гольф».

В каждой из следующих четырех частей утверждениям \ (P \) и \ (Q \) будет присвоено значение истинности.Например, в вопросе (1) мы предполагаем, что каждое утверждение истинно. В вопросе (2) мы будем предполагать, что \ (P \) истинно, а \ (Q \) ложно. В каждой части определите истинность каждого из следующих утверждений:

(a) (\ (P \ wedge Q \)) Идет дождь, и Дейзи играет в гольф.

(b) (\ (P \ vee Q \)) Идет дождь или Дейзи играет в гольф.

(c) (\ (P \ to Q \)) Если идет дождь, значит, Дейзи играет в гольф.

(d) (\ (\ urcorner P \)) Дождя нет.

Какие из четырех утверждений [от (a) до (d)] верны, а какие — ложны в каждой из следующих четырех ситуаций?

1. Когда \ (P \) истинно (идет дождь) и \ (Q \) истинно (Дейзи играет в гольф).
2. Когда \ (P \) истинно (идет дождь) и \ (Q \) ложно (Дейзи не играет в гольф).
3. Когда \ (P \) ложно (дождь не идет) и \ (Q \) истинно (Дейзи играет в гольф).
4. Когда \ (P \) ложно (дождь не идет) и \ (Q \) ложно (Дейзи не играет в гольф).

В предварительных упражнениях этого раздела мы узнали о составных утверждениях и их истинностных значениях. Эта информация может быть сведена к таблицам истинности, как показано ниже.

\ (П \) \ (\ urcorner P \)
т Ф
ф т
\ (П \) \ (Q \) \ (P \ клин Q \)
т т т
т Ф F
ф т F
ф Ф F
\ (П \) \ (Q \) \ (P \ vee Q \)
т т т
т Ф т
ф т т
ф Ф F
\ (П \) \ (Q \) \ (от P \ до Q \)
т т т
т Ф F
ф т т
ф Ф т

Вместо того, чтобы запоминать таблицы истинности, для многих людей легче запомнить правила, приведенные в Таблице 2.1.

Таблица 2.1: Истинные значения для общих соединительных элементов
Оператор Символическая форма Сводка истинных ценностей
Соединение \ (P \ клин Q \) Верно, только если оба \ (P \) и \ (Q \) верны
Дизъюнкция \ (P \ vee Q \) Ложь, только если оба \ (P \) и \ (Q \) неверны
Отрицание \ (\ urcorner P \) Значение противоположной истинности \ (P \)
условно \ (P \ to Q \) Ложь, только если \ (P \) истинно, а \ (Q \) ложно

Другие формы условных отчетов

Условные утверждения чрезвычайно важны в математике, потому что почти все математические теоремы (или могут быть) сформулированы в форме условного утверждения в следующей форме:

Если «соблюдаются определенные условия», то «что-то происходит.”

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

Нам также необходимо знать, что в английском языке существуют другие способы выражения условного оператора \ (P \ to Q \), кроме «Если \ (P \), то \ (Q \)». Ниже приведены некоторые распространенные способы выражения условного оператора \ (P \ to Q \) на английском языке:

Progress Check 2.1: Заявление «Только если»

Напомним, что четырехугольник — это четырехугольник.Пусть \ (S \) представляет следующее истинное условное утверждение:

Если четырехугольник квадрат, то это прямоугольник.

Запишите это условное выражение на английском языке, используя

.
  1. слово «всякий раз, когда»
  2. фраза «только если»
  3. фраза «необходимо»
  4. фраза «достаточно для»
Ответ

Добавьте сюда тексты. Не удаляйте сначала этот текст.

Построение таблиц истины

Таблицы истинности для составных утверждений могут быть построены с использованием таблиц истинности для основных связок. Чтобы проиллюстрировать это, мы построим таблицу истинности для. \ ((P \ клин \ urcorner Q) \ к R \). Первый шаг — определить необходимое количество строк.

  • Для таблицы истинности с двумя разными простыми утверждениями необходимы четыре строки, поскольку существует четыре различных комбинации значений истинности для двух утверждений.Мы должны согласовываться с тем, как мы расставляем ряды. В этом тексте мы сделаем это так, чтобы пометить строки для первого оператора с помощью (T, T, F, F) и строки для второго оператора с помощью (T, F, T, F). Все таблицы истинности в тексте имеют эту схему.
  • Для таблицы истинности с тремя разными простыми утверждениями необходимо восемь строк, поскольку существует восемь различных комбинаций значений истинности для трех утверждений. Наша стандартная схема для этого типа таблицы истинности показана в Таблице 2.2 .

Следующим шагом будет определение столбцов, которые будут использоваться. Один из способов сделать это — вернуться назад от формы данного оператора. Для \ ((P \ wedge \ urcorner Q) \ to R \) последний шаг — иметь дело с условным оператором \ ((\ to) \). Для этого нам нужно знать значения истинности \ ((P \ wedge \ urcorner Q) \) и \ (R \). Чтобы определить значения истинности для \ ((P \ wedge \ urcorner Q) \), нам нужно применить правила для оператора конъюнкции \ ((\ wedge) \), и нам нужно знать значения истинности для \ (P \ ) и \ (\ urcorner Q \).

Таблица 2.2 — это завершенная таблица истинности для \ ((P \ wedge \ urcorner Q) \ to R \) с номерами шагов, указанными внизу каждого столбца. Номера шагов соответствуют порядку заполнения столбцов.

Таблица 2.2: Таблица истинности для \ ((P \ wedge \ urcorner Q) \ to R \)
\ (П \) \ (Q \) \ (R \) \ (\ urcorner Q \) \ ((P \ клин \ urcorner Q) \) \ ((P \ клин \ urcorner Q) \ to R \)
т т т F F т
т т F F F т
т Ф т т т т
т Ф F т т F
ф т т F F т
ф т F F F т
ф Ф т т F т
ф Ф F т F т
1 1 1 2 3 4
  • При заполнении столбца для \ (P \ wedge \ urcorner Q \) помните, что конъюнкция истинна только тогда, когда оба \ (P \) и \ (\ urcorner Q \) истинны.
  • При заполнении столбца для \ ((P \ wedge \ urcorner Q) \ to R \) помните, что условное утверждение ложно только тогда, когда гипотеза \ ((P \ wedge \ urcorner Q) \) верна и заключение \ (R \) неверно.

Последний введенный столбец — это таблица истинности для утверждения \ ((P \ wedge \ urcorner Q) \ to R \), использующего настройку в первых трех столбцах.

Проверка выполнения 2.2: построение таблиц истинности

Создайте таблицу истинности для каждого из следующих утверждений:

  1. \ (P \ клин \ urcorner Q \)
  2. \ (\ urcorner (P \ клин Q) \)
  3. \ (\ urcorner P \ клин \ urcorner Q \)
  4. \ (\ urcorner P \ vee \ urcorner Q \)

Есть ли у любого из этих утверждений одна и та же таблица истинности?

Ответ

Добавьте сюда тексты.Не удаляйте сначала этот текст.

Заявление с двумя условными условиями

Некоторые математические результаты сформулированы в форме «\ (P \) тогда и только тогда, когда \ (Q \)» или «\ (P \) необходимо и достаточно для \ (Q \)». Примером может быть: «Треугольник является равносторонним тогда и только тогда, когда его три внутренних угла совпадают». Символическая форма для биконусного утверждения «\ (P \) тогда и только тогда, когда \ (Q \)» есть \ (P \ leftrightarrow Q \). Чтобы определить таблицу истинности для двусмысленного утверждения, поучительно внимательно посмотреть на форму фразы «\ (P \) тогда и только тогда, когда \ (Q \)».Слово «и» предполагает, что это утверждение является союзом. На самом деле это комбинация утверждений «\ (P \), если \ (Q \)» и «\ (P \), только если \ (Q \)». Символическая форма этого соединения — \ ([(Q \ to P) \ wedge (P \ to Q] \).

Progress Check 2.3: Таблица истинности для двоякового утверждения

Заполните таблицу истинности для \ ([(Q \ to P) \ wedge (P \ to Q] \). Используйте следующие столбцы: \ (P \), \ (Q \), \ (Q \ to P \ ), \ (P \ to Q \) и \ ([(Q \ to P) \ wedge (P \ to Q] \). Последний столбец этой таблицы будет истинным для \ (P \ leftrightarrow Q \ ).

Ответ

Добавьте сюда тексты. Не удаляйте сначала этот текст.

Другие формы двусмысленного заявления

Как и в случае с условным оператором, существует несколько распространенных способов выражения двузонального оператора \ (P \ leftrightarrow Q \) на английском языке.

Пример
  • \ (P \) есть и только если \ (Q \).
  • \ (P \) необходимо и достаточно для \ (Q \).
  • \ (P \) влечет \ (Q \), а \ (Q \) влечет \ (P \).

Тавтологии и противоречия

Определение: тавтология

Тавтология — это составное утверждение S, которое истинно для всех возможных комбинаций значений истинности составных утверждений, которые являются частью \ (S \). Противоречие — это составное утверждение, которое ложно для всех возможных комбинаций значений истинности составных утверждений, которые являются частью \ (S \).

То есть тавтология обязательно истинна при любых обстоятельствах, а противоречие обязательно ложно при любых обстоятельствах.

Проверка выполнения 2.4 (тавтологии и противоречия)

Для выписок \ (P \) и \ (Q \):

  1. Используйте таблицу истинности, чтобы показать, что \ ((P \ vee \ urcorner P) \) является тавтологией.
  2. Используйте таблицу истинности, чтобы показать, что \ ((P \ wedge \ urcorner P) \) противоречие.
  3. Используйте таблицу истинности, чтобы определить, является ли \ (P \ to (P \ vee P) \) тавтологией, противоречием или нет.
Ответ

Добавьте сюда тексты. Не удаляйте сначала этот текст.

Упражнения к разделу 2.1
  1. Предположим, Дейзи говорит: «Если не пойдет дождь, я буду играть в гольф». Позже в тот же день вы узнаете, что шел дождь, но Дейзи все еще играла в гольф. Было ли заявление Дейзи правдой или ложью? Поддержите свой вывод.
  2. Предположим, что \ (P \) и \ (Q \) — утверждения, для которых верно \ (P \ to Q \) и для которых верно \ (\ urcorner Q \).Какой вывод (если таковой имеется) можно сделать об истинности каждого из следующих утверждений?

    (а) \ (P \)
    (b) \ (P \ клин Q \)
    (c) \ (P \ vee Q \)

  3. Предположим, что \ (P \) и \ (Q \) — утверждения, для которых \ (P \ to Q \) ложно. Какой вывод (если таковой имеется) можно сделать об истинности каждого из следующих утверждений?

    (a) \ (\ urcorner P \ to Q \)
    (b) \ (Q \ to P \)
    (c) \ (P \ vee Q \)

  4. Предположим, что \ (P \) и \ (Q \) — утверждения, для которых \ (Q \) ложно и \ (\ urcorner P \ to Q \) истинно (и неизвестно, если \ (R \) верно или неверно).Какой вывод (если таковой имеется) можно сделать об истинности каждого из следующих утверждений?

    (a) \ (\ urcorner Q \ to P \)
    (b) \ (P \)
    (c) \ (P \ wedge R \)
    (d) \ (R \ to \ urcorner P \)

  5. Постройте таблицу истинности для каждого из следующих утверждений:

    (a) \ (P \ to Q \)
    (b) \ (Q \ to P \)
    (c) \ (\ urcorner P \ to \ urcorner Q \)
    (d) \ (\ urcorner Q \ to \ urcorner P \)

    Есть ли у любого из этих утверждений одна и та же таблица истинности?

  6. Постройте таблицу истинности для каждого из следующих утверждений:

    (a) \ (P \ vee \ urcorner Q \)
    (b) \ (\ urcorner (P \ vee Q) \)
    (c) \ (\ urcorner P \ vee \ urcorner Q \)
    (d) \ (\ urcorner P \ wedge \ urcorner Q \)

    Есть ли у любого из этих утверждений одна и та же таблица истинности?

  7. Постройте таблицу истинности для \ (P \ wedge (Q \ vee R) \) и \ ((P \ wedge Q) \ vee (P \ wedge R) \).Что вы наблюдаете.
  8. Предположим, что каждое из следующих утверждений верно.
    • Лаура учится в седьмом классе.
    • — Лаура получила пятерку за тест по математике или Сара получила пятерку за тест по математике.
    • �� Если Сара получила пятерку на тесте по математике, значит, Лора не учится в седьмом классе.

      Если возможно, определите истинность каждого из следующих утверждений. Тщательно объясните свои рассуждения.

      (a) Лаура сдала тест по математике на пятерку.2 \) четное ». Выразите условное выражение \ (P \ to Q \) на английском языке, используя

      (a) Форма условного оператора «if then»
      (b) Слово «Implies»
      (c) Форма «only if» выражения условное утверждение
      (d) Фраза «необходимо для»
      (e) Фраза «достаточно для»

    • Повторите упражнение (9) для условного оператора \ (Q \ to P \).
    • Для утверждений \ (P \) и \ (Q \) используйте таблицы истинности, чтобы определить, является ли каждое из следующих утверждений тавтологией, противоречием или ни тем, ни другим.
      (а) \ (\ urcorner Q \ vee (P \ to Q) \).
      (b) \ (Q \ клин (P \ клин \ urcorner Q) \).
      (c) \ ((Q \ клин P) \ клин (P \ to \ urcorner Q) \).
      (d) \ (\ urcorner Q \ to (P \ клин \ urcorner P) \).
    • Для утверждений \ (P \), \ (Q \) и \ (R \):
      (a) Докажите, что \ ([(P \ to Q) \ wedge P] \ to Q \) является тавтологией. Примечание : В символической логике это важная форма логического аргумента, называемая modus ponens .
      (b) Докажите, что \ ([(P \ to Q) \ wedge (Q \ to R)] \ to (P \ to R) \) является автологией. Примечание : В символической логике это важная форма логического аргумента, называемая силлогизмом .

      Разведки и работы

    • Работа с условными операторами. Заполните следующую таблицу:
      Английская форма Гипотеза Заключение Символическая форма
      Если \ (P \), то \ (Q \) \ (П \) \ (Q \) \ (от P \ до Q \)
      \ (Q \) только если \ (P \) \ (Q \) \ (П \) \ (Q \ to P \)
      \ (P \) необходимо для \ (Q \)
      \ (P \) достаточно для \ (Q \)
      \ (Q \) необходимо для \ (P \)
      \ (P \) подразумевает \ (Q \)
      \ (P \) только если \ (Q \)
      \ (P \) если \ (Q \)
      если \ (Q \), то \ (P \)
      если \ (\ urcorner Q \), то \ (\ urcorner P \)
      если \ (Q \), то \ (Q \ wedge R \)
      если \ (P \ vee Q \), то \ (R \)
    • Работа с истинностью утверждений. Предположим, что \ (P \) и \ (Q \) — истинные утверждения, что \ (U \) и \ (V \) — ложные утверждения, и что \ (W \) — утверждение, и неизвестно, если \ (W \) истинно или ложно.

      Какие из следующих утверждений верны, какие ложны и для каких утверждений невозможно определить, истинно оно или ложно? Обоснуйте свои выводы.

      (a) \ ((P \ vee Q) \ vee (U \ клин W) \) (f) \ ((\ urcorner P \ vee \ urcorner U) \ клин (Q \ vee \ urcorner V) \)
      (b) \ (P \ клин (Q \ к W) \) (g) \ ((P \ клин \ urcorner Q) \ клин (U \ vee W) \)
      (c) \ (P \ клин ( W \ к Q) \) (h) \ ((P \ vee \ urcorner Q) \ to (U \ wedge W) \)
      (d) \ (W \ to (P \ wedge U) \) (i) \ ((P \ vee W) \ to (U \ wedge W) \)
      (e) \ (W \ to (P \ wedge \ urcorner U) \) (j) \ ((U \ wedge \ urcorner V) \ to (P \ клин W) \)

Ответ

Добавьте сюда тексты.Не удаляйте сначала этот текст.

логических соединителей

логических соединителей

Математика работает в соответствии с законами логики, которые определяют, как делать действительные вычеты. Чтобы применить законы логики к математические утверждения, вам необходимо понять их логических формы .

Если вы пройдете курс математической логики, вы увидите формальный обсуждение доказательств. Вы начинаете с формального язык , в котором описаны символы, которые вам разрешено использовать, и как их объединить, и правила вывода , которые описывают допустимые способы выполнения шагов доказательства.Все это символы! Если бы я сделал это здесь, вам, вероятно, было бы трудно следить. Так что обсуждение здесь будет неформальным (хотя вы можете не думаю, что это так!).

Доказательства состоят из утверждений, . Заявление — повествовательное предложение, которое может быть либо правда, либо ложь.

Замечание. Многие настоящие доказательства содержат вещи, которые на самом деле это не утверждения — вопросы, описания и так далее. Они помогают объяснить читателю вещи.Когда я сказал «Доказательства состоят из утверждений», я имею в виду фактическое математическое содержание с удаленными пояснительными материалами.


Пример. Какие из следующих заявления? Если это утверждение, по возможности определите, правда или ложь.

«Кэлвин Баттербол — математик».

«.»

«Диаметр земли — 1 дюйм, или я съел пиццу».

«У вас есть бутерброд со свининой барбекю?»

«Дайте мне кофе мокко!»

«.»

«.»

«Кэлвин Баттерболл — математик», — говорится в заявлении. Ты бы нужно знать больше о Кальвине и математических специальностях, чтобы знать, утверждение верно или неверно.

«» является ложным заявлением (предполагая, что «0» и «1» относятся к реальной числа 0 и 1).

«Диаметр Земли — 1 дюйм, иначе я получу пицца »- это утверждение. Первая часть (« Диаметр земля 1 дюйм «) неверно, но вам нужно кое-что знать о моих недавних приемах пищи, чтобы узнать, является ли фраза «Я ел пиццу» правда или ложь.Тем не менее, разумно предположить, что вы может выяснить, правда ли «Я съел пиццу» или нет — и, следовательно, истинно ли исходное утверждение «или» или ложь.

«У вас есть бутерброд со свининой барбекю?» это не заявление — это вопрос.

Точно так же «Дайте мне кофе мокко!» это не заявление — это повелительное предложение, т.е. приказ что-то сделать.

«» — это заявление. Простой способ сказать для прочтите и посмотрите, является ли это полным декларативным предложение , которое является либо истинным, либо ложным.Это заявление прочтите (прописью):

«Один плюс один равен двум».

Вы можете видеть, что это полное декларативное предложение (и бывает, что чтобы быть верным утверждением о реальных числах).

С другой стороны, «» — это , а не a. утверждение. Это будет читаться как «Один плюс один», что не является предложение, поскольку в нем нет глагола. (Такие вещи, как «» обозначаются как термины или выражения .)

Поскольку доказательства состоят из утверждений , вы никогда не должны содержать отдельные фразы (вроде или «») в ваших доказательствах.Убедитесь, что каждая строка доказательства — это утверждение. Прочтите каждую строку, чтобы сам, чтобы быть уверенным.


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

Определение. Логические связки Смысловая логика:

(a) Отрицание («не»), обозначено.

(b) Соединение («и»), обозначенное .

(c) Дизъюнкция («или»), обозначено.

(d) Условный («если-то» или «импликация»), обозначено.

(e) Biconditional («если и только если» или «двойное значение»), обозначено.

Позже я рассмотрю кванторы «для все «(обозначено) и» там существует «(обозначено).

Замечание. Вы ​​можете увидеть разные символы, используемые другие люди. Например, некоторые используют для отрицания. И иногда используется для условного, и в этом случае используется для двусмысленной.


Пример. Представьте следующие утверждения используя логические связки.

(а) P или нет Q.

(b) Если P и R, то Q.

(c) P тогда и только тогда, когда (Q и R).

(d) Не P и не Q.

(e) Это не так, что если P, то Q.

(f) Если P и Q, то R или S.

а)

(б)

(c)

(г)

(е)

(е)


Замечание. Вы ​​можете возразить, что (например) «», что можно прочитать как «P или Q «не похоже на утверждение (полное предложение на английском языке). Однако в контексте доказательства символы P и Q будут стоять для операторов и заменяя P и Q на утверждения, которые они стоят для получения полного предложения на английском языке (например, «The диаметр земли 1 дюйм или я съела пиццу »).

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

Рассмотрим, например, слово «но». Если я скажу «Кальвин здесь, но Бонзо там «, я имею в виду, что Кальвин здесь и Bonzo есть. Мое намерение состоит в том, чтобы оба утверждения должны быть правдой. Это то же самое, что я имею в виду, когда говорю «Кальвин здесь, а Бонзо здесь».

На практике математики обычно используют небольшой набор фраз вместо и более. Это не делает чтение увлекательным, но позволяет читателю сосредоточиться на смысле написанного.Например, математик обычно скажет «если Q, то P», скорее чем логически эквивалентный «P, если Q» или «P только если Q «. Последние две версии менее знакомы, и поэтому заставляют читателя дольше понять, что имеется в виду.

На мой взгляд, вам следует избегать выражений в таблице выше в письменной форме . Пусть вещи будут скучными и простыми.

Сейчас хорошее время, чтобы обсудить, как слово «или» используется в математике. Когда вы говорите: «Я поужинаю в MacDonald’s или в Pizza Hut «, вы , вероятно, имеете в виду «или» в его исключительном смысле : вы пообедать в MacDonald’s или поужинать в пиццерии Хижина, , но не оба .»Но не то и другое» — вот что делает это эксклюзивным или .

Математики используют «или» в строке включительно смысл. Когда «или» используется таким образом, «Я поужинаю в MacDonald’s или Pizza Hut» означает вы будете ужинать в MacDonald’s или вы будете ужинать в Pizza Hut, или, возможно, оба . Очевидно, я не , гарантирующий , что и то и другое произойдет; Я просто не управляю этим из.

Причина такого выбора, вероятно, в том, что когда слово «или» встречается в математике, обычно в инклюзивном способ.Например, если X и Y — множества, их объединение состоит из вещей которые находятся в X или Y или в обоих . Итак, если мы решили использовать «или» исключительно, я должен сказать «или в оба «. Включая» ​​или «, я могу просто сказать «в X или в Y», поскольку предполагается «в обоих». Как и во многих математических соглашениях, так оно и есть, потому что мы ленив и экономит на письме.


Пример. Переведите следующие утверждения в логическую запись, используя следующие символы:

S = «Стромболи горячие.»

L = «Лазанья остыла.»

P = «Пицца будет доставлена».

(а) «Стромболи горячие, а пицца не будет доставлен.»

б) «Если лазанья остыла, то пицца будет доставлен.»

(c) «Либо лазанья остыла, либо пицца не будет доставлен.»

(d) «Если пицца не будет доставлена, то оба стромболи будут горячая, а лазанья холодная «.

(e) «Лазанья не холодная тогда и только тогда, когда стромболи не горячий.»

(f) «Пицца будет доставлена ​​только в том случае, если лазанья холодно.»

(g) «Стромболи горячие, а лазанья не холодная, но пицца будет доставлена ​​».

а)

(б)

(c)

(г)

(е)

(е)

(грамм)


Порядок приоритета логических связок:

1.Отрицание

2. Соединение

3. Дизъюнкция

4. Последствия

5. Двойное следствие

Как обычно, круглые скобки отменяют другие правила приоритета.

В большинстве случаев для наглядности лучше использовать круглые скобки, даже если они не требуются из-за приоритета правила. Например, лучше написать

В любом случае приоритет будет сгруппировать P и Q, но первое выражение яснее.

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

(а) Комбинация «Либо … или …» используется для обозначения что все между «либо» и «или» — это первая часть оператора «или».

(b) Комбинация «Оба … и …» используется для обозначения что все между «и» и «и» это первая часть утверждения «и».

В некоторых случаях единственный способ сказать что-то однозначно — это быть немного многословен. К счастью, математики находят способы выразить сами по себе, которые понятны, но избегают излишних лингвистических сложность.


Пример. Предположим, что

C = «Чизстейк хороший.»

F = «Картофель фри жирный».

W = «Крылышки пряные».

Переведите следующие логические утверждения в слова (без логические символы):

(а)

(б)

(в)

(г).

(а) «Если сырный бифштекс плохой, а картофель фри не жирные, то крылышки острые ».

(б) Если я скажу: «Это не тот чизстейк, или крылышки острые », может быть непонятно, отрицание относится только к «сырный бифштекс хорош» или к дизъюнкция «сырный бифштекс хорош или крылышки пряный».

Так что лучше сказать: «Дело не в том, что сырный бифштекс или крылышки острые «, так как «либо» означает, что «сырный бифштекс» или «крылышки пряные» — сгруппированы вместе в или-заявление.

В этом случае «либо» блокирует отрицание от применительно к «сырный бифштекс хорош», поэтому отрицание применить ко всему утверждению «или».

(c) «Дело не в том, что оба крылышка не острые, а сырный бифштекс хорош ». «либо» в (б), я добавил слово «оба» к указывают, что начальное отрицание применяется к соединению «крылышки не острые, а сырный бифштекс хорош».

В этом случае «оба» блокируют отрицание от применения к «крылья не острые», поэтому отрицание должно применяться ко всему высказыванию «и».

(d) Дословный перевод: «Дело не в том, что картофель-фри не жирный «. Или (что более неловко) можно сказать «Дело не в том, что картофель-фри жирные «.

Конечно, это означает то же самое, что и «Картофель фри жирный «.

Чтобы ответить на этот вопрос, вы, вероятно, должны спросить, действительно ли это переводиться буквально символами («синтаксически») или по значению («семантически»).На практике математики почти всегда упростил бы удаление двойного отрицания.


В наших предыдущих примерах использовались утверждения из реального мира. Что о актуальная математика?

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

(a) ([1], теорема 25.11) Пусть в полупростом кольце R — левый идеал с порождающим идемпотентом e.Тогда L является минимальным левым идеалом тогда и только тогда, когда является телом.

(b) ([2], предложение 14.11) Пусть X и Y -комплексы. Затем (с компактно порожденная топология) является CW комплексом и является подкомплексом.

(Цифры в квадратных скобках — ссылки (например, foonotes). Я скажу кое-что о них в конце этого раздела.)

(а) Вы могли бы выразить это с помощью логических связок в следующем способ. Позволять

A = «R — полупростое кольцо».

B = «- левый идеал с порождающим идемпотентный е «.

C = «L — минимальный левый идеал».

D = «тело».

Заявление можно перевести как.

Обратите внимание, что для определения логической формы вам не нужно знайте, что означают эти слова!

Математики используют слово «пусть», чтобы представить гипотез в формулировке теоремы. С точки зрения с точки зрения логической формы, утверждения, которые сопровождают «пусть» формируют if-часть условного оператора, как здесь делают операторы A и B.

(б) Пусть

P = «X и Y — комплексы».

Q = «(с компактно порожденным топология) является комплексом CW «.

R = «это подкомплекс».

Тогда предложение может быть записано в логической записи как.

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

A = «X является -комплексом».

B = «Y является -комплексом».

C = «(с компактно порожденным топология) является комплексом CW «.

D = «это подкомплекс».

Теперь предложение становится. Нет никакой разницы в математическом содержании, и нет разницы в том, как вы это докажете.

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


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

Мы учимся читать, писать и говорить, используя слова в самом начале наши жизни.Это естественный способ общения людей и понимать. Символы сжимают журнал значений в маленькие пробелы, поэтому они хороши для коротких периодов вычислений. Но, как упаковывая много вещей в коробку, сжатие скрывает смысл, который почему пробираться сквозь сплошные страницы символов в математических заданиях может быть так пугающий.

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

Как показывает последний пример, логические следствия часто возникают в математические утверждения.

Определение. Если это подразумевается, то:

(a) P — это антецедент или гипотеза , а Q — это последовательный или вывод .

(b) Обратное является условным.

(c) Инверсия является условной.

(d) контрапозитив является условным.

Я часто буду использовать if-part вместо «антецедент» или «гипотеза», и «тогдашняя часть» вместо «следствие» или «заключение». Хотя термины в определении больше традиционные, я думаю, «если-часть» и «потом-часть» понятнее для людей в наши дни.


Пример. Найдите антецедент (если-часть) и следствие (тогдашняя часть) следующего условного оператора:

«Если, тогда.»

Постройте обратное, обратное и противоположное.

Антецедент — «», а следствие — «».

Обратное — «Если, то».

Обратное — «Если, то».

Противоположным является «Если, тогда «.

Позже я покажу, что условный оператор и его контрапозитивные — , логически эквивалентны .


Пример. Постройте обратное, обратное, и противоположность следующего условного утверждения:

«Если Кэлвин получит хот-дог, то Кэлвин не получит газировку.»

Обратное: «Если Кальвин не получает газировку, то Кальвин получает хот-дог ».

Обратное: «Если Кальвину не достанется хот-дог, то Кальвин получает газировку ». (Обратите внимание, что буквальное отрицание последующего «Это не тот случай, когда Кальвин не получает газировку». Но два отрицания уравновешиваются — это называется двойное отрицание — так что я получаю «Кальвин получает газировку».)

Контрапозитив: «Если Кальвин получит газировку, то Кальвин не получает хот-дог «.


В разных полях используются разные форматы цитирования источников. Для Например, вы могли видеть книги, в которых ссылки на источники используют сноски. Математики часто используют числа в квадратных скобках (например, «[1]» или «[2]») для цитирования. Цифры относятся к по ссылкам, которые указаны в конце статьи или книги. Помимо прочего, это уменьшает беспорядок на текстовых страницах и легче набирать.

Некоторые авторы предпочитают использовать сокращения, включающие название автор или дата публикации вместо цифр.Если ты публикуя статью в журнале, журнал обычно имеет стиль, которому вы должны следовать. Я думаю важные вещи должны давать полные ссылки, чтобы читатель мог их найти, и чтобы было понятно, какую ссылку в библиографии вы ссылаясь на.

Вот ссылки, которые я привел в примере выше.

[1] Чарльз В. Кертис и Ирвинг Райнер, Теория представлений конечные группы и ассоциативные алгебры 92 185.Нью-Йорк: Interscience Publishers, 1962. [ISBN 0-470-18975-4]

[2] Брайтон Грей, Гомотопическая теория . Нью-Йорк: Academic Press, 1975. [ISBN 0-12-296050-5]


Контактная информация

Домашняя страница Брюса Икенаги

Авторские права 2019 Брюс Икенага

Краткое содержание главы

Глава 7

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

Чтобы облегчить изучение логики высказываний, утверждения обычного языка переводятся в нотацию логики высказываний. Логическая запись включает заглавные буквы, A – Z для обозначения простых утверждений и логические операторы для обозначения составных элементов. Есть пять символов логических операторов: тильда , точка , клин , подкова и тройная черта.

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

Когда мы конструируем составные утверждения, мы стремимся создавать правильно сформированные формулы, которые являются грамматически правильными формами составных утверждений. У каждого составного оператора, содержащего два или более операторов, есть главный оператор. Это логический оператор, в диапазоне которого находится самый большой компонент или компоненты в составном операторе.

Каждое утверждение имеет значение истинности, то есть каждое утверждение истинно или ложно. Значение истинности сложного предложения с функцией истинности определяется значениями истинности его компонентов и определениями задействованных логических операторов. Любое сложное предложение с функциональной истинностью, которое может быть определено таким образом, называется «функцией истинности».

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

Важно знать следующие концепции, связанные с использованием и результатами таблиц истинности:

  • Инклюзивная дизъюнкция: когда обе дизъюнкции могут быть истинными одновременно.

  • Исключительная дизъюнкция: когда оба дизъюнкта не могут быть истинными одновременно.

  • Порядок операций: порядок обработки логических операторов в предложении с функцией истинности; это пошаговый метод создания полной таблицы истинности.

  • Условные утверждения: утверждения, которые не обязательно истинны или ложны (иногда они верны, иногда ложны).

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

  • Тавтология: утверждение, которое обязательно верно.

  • Внутреннее противоречие: утверждение, которое обязательно ложно.

  • Логически эквивалентно: когда два функциональных утверждения истинности кажутся разными, но имеют идентичные таблицы истинности.

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

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

  • Несогласованные утверждения: два (или более) утверждения, в соответствующих таблицах истинности которых нет ни одной строки, где истинны основные операторы.

  • Форма аргумента: набор логических операторов и переменных оператора, в котором последовательная замена переменных оператора операторами приводит к получению аргумента.

  • Modus ponens : допустимая форма аргумента (также называемая , подтверждающая антецедент ).

  • Ошибка подтверждения консеквента: неверная форма аргумента; это формальная ошибка.

  • Modus tollens : допустимая форма аргумента (также обозначается как , отрицающая консеквент ).

  • Ошибка отрицания антецедента: неверная форма аргумента; это формальная ошибка.

Логика | Britannica

Объем и основные концепции

Вывод — это управляемый правилами шаг от одного или нескольких предложений, называемых предпосылками, к новому предложению, обычно называемому заключением.Говорят, что правило вывода сохраняет истину, если вывод, полученный в результате применения правила, истинен, когда истинны посылки. Выводы, основанные на правилах сохранения истины, называются дедуктивными, а изучение таких выводов известно как дедуктивная логика. Правило вывода называется действительным или дедуктивно действительным, если оно обязательно сохраняет истину. То есть в любом мыслимом случае, в котором посылки истинны, вывод, сделанный с помощью правила вывода, также будет истинным.Выводы, основанные на действительных правилах вывода, также считаются действительными.

Логика в узком смысле эквивалентна дедуктивной логике. По определению, такое рассуждение не может дать никакой информации (в форме заключения), которая еще не содержится в предпосылках. В более широком смысле, близком к обычному использованию, логика также включает изучение умозаключений, которые могут привести к заключениям, содержащим действительно новую информацию. Такие выводы называются амплиативными или индуктивными, а их формальное изучение известно как индуктивная логика.Они проиллюстрированы выводами, сделанными умными детективами, такими как вымышленный Шерлок Холмс.

Получите подписку Britannica Premium и получите доступ к эксклюзивному контенту. Подпишитесь сейчас

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

В еще более узком смысле логика ограничивается изучением выводов, которые зависят только от определенных логических концепций, выражаемых так называемыми «логическими константами» (логику в этом смысле иногда называют элементарной логикой).Наиболее важные логические константы — это кванторы, пропозициональные связки и идентичность. Квантификаторы являются формальными аналогами английских фраз, таких как «there is…» или «there exists…», а также «for every…» и «for all…». Они используются в формальных выражениях, таких как (∃ x ) (читается как «есть человек, назовите его x , так что это верно для x , что…») и (∀ y ) (читается как «для каждого человека, назовите его y , это верно для и , что… »).Основные пропозициональные связки в английском языке аппроксимируются «not» (~), «and» (&), «or» (∨) и «if… then…» (⊃). Идентичность, представленная символом ≡, обычно передается на английском языке как «… является…» или «… идентично…». Два приведенных выше примера предложения могут быть выражены как (1) и (2) соответственно:

(1) (∃ x ) (∀ y ) ( x завидует y )

(2) (∀ y ) (∃ x ) ( x завидует y )

Способ, которым различные логические константы в предложении связаны друг с другом, известен как логическая форма предложения.Логическую форму можно также рассматривать как результат замены всех нелогических понятий в предложении логическими константами или общими логическими символами, известными как переменные. Например, заменяя реляционное выражение «a завидует b» на «E (a, b)» в (1) и (2) выше, получаем (3) и (4) соответственно:

(3) (∃ x ) (∀ y ) E ( x , y )

(4) (∀ y ) (∃ x ) E ( x , y )

Формулы в (3) и (4) выше являются явным представлением логических форм соответствующих английских предложений.Изучение отношений между такими неинтерпретируемыми формулами называется формальной логикой.

Следует отметить, что логические константы в логических формулах, таких как (3) и (4), имеют то же значение, что и в предложениях, которые также содержат нелогические понятия, такие как (1) и (2). Логическая формула, переменные которой заменены нелогическими понятиями (значениями или референтами), называется «интерпретируемым» утверждением или просто «интерпретацией». Один из способов выразить обоснованность вывода от (3) к (4) — сказать, что соответствующий вывод от предложения, подобного (1), к предложению, подобному (2), будет действительным для всех возможных интерпретаций (3) и (4).

Правильные логические выводы становятся возможными благодаря тому факту, что логические константы в сочетании с нелогическими концепциями позволяют утверждению представлять реальность. Действительно, эту репрезентативную функцию можно считать их самой фундаментальной особенностью. Предложение G, например, может быть достоверно выведено из другого предложения F, когда все сценарии, представленные F — сценарии, в которых F истинно, — также сценарии, представленные G — сценарии, в которых G истинно. В этом смысле (2) можно обоснованно вывести из (1), потому что все сценарии, в которых верно то, что кто-то завидует всем, также являются сценариями, в которых верно то, что всем завидует по крайней мере один человек.

Утверждение считается логически истинным, если оно истинно во всех возможных сценариях или «возможных мирах». Утверждение противоречиво, если оно ложно во всех возможных мирах. Таким образом, еще один способ выразить обоснованность вывода из F в G — это сказать, что условное утверждение «Если F, то G» (F ⊃ G) логически истинно.

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

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

Логическая логика | Математика для гуманитарных наук

Результаты обучения

  • Объединение наборов с использованием логической логики и соответствующих обозначений
  • Используйте операторы и условные выражения для написания и интерпретации выражений
  • Используйте таблицу истинности для интерпретации сложных утверждений или условных выражений
  • Написать таблицу истинности с учетом логического следствия и связанных утверждений — обратного, обратного и противоположного.
  • Определить, являются ли два оператора логически эквивалентными
  • Используйте законы ДеМоргана для определения логической эквивалентности утверждения.

Логика — это, по сути, изучение обоснованных рассуждений.При поиске в Интернете мы используем булеву логику — такие термины, как «и» и «или» — чтобы помочь нам найти определенные веб-страницы, которые вписываются в интересующие нас наборы. После изучения этой формы логики мы рассмотрим логические аргументы. и как мы можем определить обоснованность претензии.

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

Часто мы можем классифицировать предметы как принадлежащие к наборам. Если бы вы пошли в библиотеку искать книгу, и вас попросили выразить свой поиск, используя объединения, пересечения и дополнения множеств, это было бы немного странно.Вместо этого мы обычно используем такие слова, как «и», «или» и «не», чтобы соединить наши ключевые слова вместе, чтобы сформировать поиск. Эти слова, которые составляют основу булевой логики , напрямую связаны с операциями над множествами с той же терминологией.

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

Логическая логика объединяет несколько утверждений, которые являются истинными или ложными, в выражение, которое является истинным или ложным.

  • В отношении наборов логический поиск является истинным, если рассматриваемый элемент является частью набора, в котором выполняется поиск.

Предположим, M — это набор всех мистических книг, а C — набор всех комедийных книг. Если мы ищем «тайну», мы ищем все книги, которые являются элементом набора M ; поиск актуален для книг, которые есть в наборе.

Когда мы ищем «тайну и комедию», мы ищем книгу, которая является элементом обоих наборов на пересечении. Если бы мы искали «тайну или комедию», мы ищем книгу, которая представляет собой мистерию, комедию или и то, и другое, что представляет собой объединение декораций.Если мы искали «, а не комедия», мы ищем в библиотеке любую книгу, не являющуюся комедией, дополняющую набор C .

Подключение для установки операций

A и B элементов на пересечении A B

A или B элементов в соединении A B

Not A элементов в дополнении Ac

Обратите внимание, что или не являются исключительными.В этом разница между использованием слова в логической логике и обычным повседневным употреблением. Когда ваша вторая половинка спрашивает: «Ты хочешь пойти в парк или в кино?» они обычно предлагают исключительный выбор — тот или иной вариант, но не оба сразу. В булевой логике или не являются исключительными — это больше похоже на вопрос в ресторане: «Вы хотите картошку фри или выпить с этим?» Ответ «оба, пожалуйста» — приемлемый ответ.

В следующем видео Вы увидите примеры использования логических операторов для обозначения множеств.

Пример

Предположим, мы ищем в библиотечной базе данных мексиканские университеты. Выразите разумный поиск с помощью булевой логики.

Показать решение

Мы могли бы начать с поиска «Мексика и университет», но, скорее всего, найдем результаты для штата Нью-Мексико в США. Чтобы учесть это, мы могли бы пересмотреть наш поиск, чтобы читать:

Мексика и университет , а не «Нью-Мексико»

В большинстве поисковых систем нет необходимости включать слова и ; поисковая система предполагает, что если вы укажете два ключевых слова, вы будете искать оба.В поиске Google ключевое слово или пишется с заглавной буквы как ИЛИ, а знак минуса перед словом обозначает , а не . Цитаты вокруг фразы указывают на то, что нужно искать всю фразу. Поиск из предыдущего примера в Google можно было бы написать:

Университет Мексики — «Нью-Мексико»

Пример

Опишите числа, соответствующие условию:

четные и менее 10 и более 0

Показать решение

Числа, которые удовлетворяют всем трем требованиям: {2, 4, 6, 8}

Что приходит первым?

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

Английская фраза «Иди в магазин и купи мне яйца, бублики или хлопья» неоднозначна; неясно, всегда ли запрашивающие запрашивают яйца вместе с рогаликами или хлопьями, или они просят либо сочетание яиц и рогаликов, либо просто хлопья.

По этой причине использование круглых скобок поясняет намерение:

Яйца и (рогалики или крупы) средства Вариант 1: Яйца и бублики, Вариант 2: Яйца и крупы
(Яйца и рогалики) или зерновые Вариант 1: Яйца и рогалики, Вариант 2: Зерновые

Пример

Опишите числа, соответствующие условию:

нечетное число и меньше 20 и больше 0 и (кратное 3 или кратное 5)

Показать решение

Первые три условия ограничивают нас набором {1, 3, 5, 7, 9, 11, 13, 15, 17, 19}

Последние сгруппированные условия говорят нам найти элементы этого набора, которые также либо кратны 3, либо кратны 5.Остается набор {3, 5, 9, 15}

Обратите внимание, что мы получили бы совсем другой результат, если бы написали

(нечетное число и меньше 20 и больше 0 и кратно 3) или кратное 5

Первый сгруппированный набор условий даст {3, 9, 15}. Однако в сочетании с последним условием этот набор расширяется без ограничений:

{3, 5, 9, 15, 20, 25, 30, 35, 40, 45,…}

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

Условные обозначения

Помимо поиска, логическая логика обычно используется в приложениях для работы с электронными таблицами, таких как Excel, для выполнения условных вычислений. Утверждение — это либо правда, либо ложь.

Пример

Утверждение типа 3 <5 верно; утверждение типа «крыса - это рыба» неверно. Утверждение типа «x <5» верно для одних значений x и ложно для других.
Когда действие выполняется или нет, в зависимости от значения утверждения, оно формирует условное .

Заявления и условия

Утверждение либо верно, либо неверно.
Условное выражение — это составной оператор вида
«если p , то или «если p , то q , иначе s ».

В просторечии примером условного утверждения может быть: «Если идет дождь, мы пойдем в торговый центр. В противном случае мы пойдем в поход ».
Утверждение «Если идет дождь» является условием — оно может быть истинным или ложным для любого конкретного дня.Если условие верно, то мы последуем первому плану действий и пойдем в торговый центр. Если условие ложное, то воспользуемся альтернативой и отправимся в поход.

Excel

Условные операторы обычно используются в приложениях для работы с электронными таблицами, таких как Excel. В Excel вы можете ввести такое выражение, как

= ЕСЛИ (A1 <2000, A1 + 1, A1 * 2)

Обратите внимание, что после IF есть три части. Первая часть — это условие, а две вторые — расчеты.

Excel посмотрит значение в ячейке A1 и сравнит его с 2000. Если это условие истинно, то используется первое вычисление, и 1 добавляется к значению A1, и результат сохраняется. Если условие ложно, то используется второе вычисление, и A1 умножается на 2, и результат сохраняется.

Другими словами, это утверждение эквивалентно высказыванию «Если значение A1 меньше 2000, то добавьте 1 к значению в A1. В противном случае умножьте A1 на 2 дюйма

Пример

Напишите команду Excel, которая создаст условие «A1 <3000 и A1> 100».

Показать решение

Введите «И (A1 <3000, A1> 100)». Аналогичным образом, для условия «A1 = 4 или A1 = 6» вы должны ввести «OR (A1 = 4, A1 = 6)»

Пример

Учитывая выражение Excel:

ЕСЛИ (A1> 5, 2 * A1, 3 * A1)

Найдите следующее:

  1. результат, если A1 равно 3, и
  2. результат, если A1 равно 8
Показать решение

Это эквивалентно

Если A1> 5, вычислить 2 * A1. В противном случае рассчитайте 3 * A1

Если A1 равно 3, то условие ложно, так как 3> 5 не истинно, поэтому мы выполняем альтернативное действие и умножаем его на 3, давая 3 * 3 = 9
Если A1 равно 8, то условие истинно, так как 8> 5, поэтому мы умножаем значение на 2, получая 2 * 8 = 16

Пример

Бухгалтер должен удерживать 15% дохода в качестве налога, если доход ниже 30 000 долларов США, и 20% дохода, если доход составляет 30 000 долларов США или более.Напишите выражение в Excel, которое будет рассчитывать сумму удержания.

Показать решение

Нашему условному выражению необходимо сравнить значение с 30 000. Если доход меньше 30 000, нам нужно рассчитать 15% от дохода: 0,15 * доход. Если доход больше 30 000, нам нужно посчитать 20% дохода: 0,20 * доход.

На словах мы могли бы написать: «Если доход <30 000, умножьте на 0,15, иначе умножьте на 0,20». В Excel мы бы написали:
= ЕСЛИ (A1 <30000, 0,15 * A1, 0.20 * A1)

Как и раньше, мы можем создать более сложные условия, используя операторы и , или и , а не , чтобы объединить более простые условия.

Пример

Родитель может сказать своему ребенку: «Если вы уберете свою комнату и вынесете мусор, то сможете есть мороженое». При каких обстоятельствах это условие будет верным?

Показать решение

Здесь есть два более простых условия:

  1. Ребенок убирает свою комнату
  2. Ребенок выносит мусор

Поскольку эти условия были объединены с и , то комбинированное условие будет истинным только в том случае, если истинны оба более простых условия; если какая-либо работа не завершена, условие родителя не выполняется.

Обратите внимание, что если бы родитель сказал: «Если вы уберетесь в своей комнате или вынесете мусор, тогда вы сможете съесть мороженое», тогда ребенку нужно будет выполнить только одну работу, чтобы выполнить условие.

Пример

В электронной таблице ячейка A1 содержит годовой доход, а A2 — количество иждивенцев.

Определенный налоговый кредит применяется, если кто-то без иждивенцев зарабатывает менее 10 000 долларов и не имеет иждивенцев, или если кто-то с иждивенцами зарабатывает менее 20 000 долларов.Напишите правило, описывающее это.

Показать решение

Есть два способа соблюдения правила:

доход меньше 10,000 и иждивенцев 0, или

доход меньше 20 000 и иждивенцев не 0.

Неформально мы могли бы записать их как

(A1 <10000 и A2 = 0) или (A1 <20000 и A2> 0)

Обратите внимание, что условие A2> 0 на самом деле является избыточным и необязательным, поскольку мы рассматриваем случай или только в том случае, если первая пара условий не была соблюдена.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *