Логические функции
Основные логические функции над логическими данными р, 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[x1,x2,x3] или x1 > х2 > х3 Возвращает True, если х оказывается больше у, иначе возвращает False;
- GreaterEqual[х,у] или х >= у Возвращает True, если xi образуют строго убывающую последовательность, иначе возвращает False;
- GreaterEqual[x1,х2,хЗ] или x1>= х2 >= хЗ Возвращает True, если х больше или равно у, иначе возвращает False;
- Negative[х] NonNegative[х] Positive[х] Возвращает True, если xi образуют невозрастающую последовательность, иначе возвращает False;
- SameQ[lhs,rhs] или Ihs === rhs Возвращает True, если х оказывается отрицательным числом, иначе возвращает False;
- Xor[e1, 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 |
Ряд дополнительных логических функций читатель найдет в приложении.