Основные логические функции над логическими данными р, q и т. д. задаются следующим образом:
Not[p] или !р Логическое отрицание
And[p, q,...] или р && q &&... Логическое умножение — операция «И»
Or[p,q,...] или р || q | |... Логическое сложение — операция «ИЛИ»
Приведем примеры применения логических операторов и функций.
Ввод (In)
Вывод(Out)
And [True , True , True ]
True
True && True && False
False
Not [True]
False
Not [False]
True
Or [True, True, False]
False
2==2 && 3==3
True
True && True
True
And[l,l,0]
11111 1 0
And[l,l,0]
1 && 1&& 0
Эти примеры показывают, что аргументами логических функций и операндами логических операций должны быть только логические константы True и False или выражения, значения которых представлены ими. Недопустимо использовать численные значения 1 и 0, отождествляя их с логической единицей и логическим нулем. Результатом задания операций с ними будет повтор задания — возможно, в укороченной форме.
Отметим еще ряд логических операторов и функций:
Equal[Ihs, rhs] Greater[х,у]
или
х > у
Возвращает True, если Ihs и rhs тождественны
Greater[xl,x2,x3]
или
xl > х2 > хЗ
Возвращает True, если х оказывается больше у, иначе возвращает False
GreaterEqual[х,у]
или
х >= у
Возвращает True, если xi образуют строго убывающую последовательность, иначе возвращает False
GreaterEqual[xl,х2,хЗ]
или
xl>= х2 >= хЗ
Возвращает True, если х больше или равно у, иначе возвращает False
Negative[х] NonNegative[х] Positive[х]
Возвращает True, если xi образуют невозрастающую последовательность, иначе возвращает False
SameQtlhs,rhs] или Ihs === rhs
Возвращает True, если х оказывается отрицательным числом, иначе возвращает False
Xor[el, e2,...]
Возвращает True, если х — неотрицательное число, иначе возвращает False
Возвращает True, если х — положительное число, иначе возвращает False
Возвращает значение True, если выражение Ihs тождественно rhs, иначе False. В отличие от Equal, сравнивает форму представления операндов, а не их значения
Является логической функцией XOR (исключающее «ИЛИ»). Возвращает True, если нечетное количество из ei имеют значение True, а остальные False. Возвращает False, если четное количество ei имеют значение True, a остальные False
Ниже приводятся примеры использования этих функций.
Ввод (In)
Вывод (Out)
Positive [2-3]
False
Equal [1+2, 4-1]
True
Equal [1+2, 2]
False
Greater [5, 4]
True
Greater [5, 4,3]
True
Greater [5, 4, 9]
False
Less [3,2+3]
True
Positive [2]
True
Negative [-2]
True
Neganbve[2]
False
NonNeganive [ -2 ]
False
NonNegative[2]
True
Xor[ True, True]
False
Xor [False , False]
False
Xor [True, False]
True
Ряд дополнительных логических функций читатель найдет в приложении.