Логическое выражение
В информатике логическое выражение — это выражение, используемое в языках программирования , которое при вычислении выдает логическое значение . Логическое значение может быть либо true , либо false . Логическое выражение может состоять из комбинации логических констант True/Да или False/No , переменных логического типа , операторов с логическим значением и функций с логическим значением . [1]
Булевы выражения соответствуют формулам высказываний в логике и являются случаем частным булевых схем . [2]
Булевы операторы [ править ]
В большинстве языков программирования есть логические операторы ИЛИ , И и НЕ ; в C и некоторых вдохновленных им языках они обозначаются знаком "||" (двойной символ вертикальной черты), «&&» (двойной амперсанд ) и «!» ( восклицательный знак ) соответственно, а соответствующие побитовые операции обозначаются символами «|», «&» и «~» (тильда). [3] В математической литературе часто используются символы «+» ( плюс ), « · » ( точка ) и черта над чертой , или «∨» ( vel ), «∧» ( et ) и «¬» ( не ) или «′» (основной).
Некоторые языки, например Perl и Ruby , имеют два набора логических операторов с идентичными функциями, но разным приоритетом. Обычно в этих языках and или and not используются для операторов с более низким приоритетом .
Некоторые языки программирования, производные от PL/I, имеют тип битовой строки и используют BIT(1), а не отдельный логический тип. В этих языках одни и те же операторы служат для логических и побитовых операций. В языках ИЛИ, И, НЕ и ИСКЛЮЧИТЕЛЬНОЕ ИЛИ обозначаются символами «|», «&», «¬» (инфикс) и «¬» (префикс).
Операторы короткого замыкания [ править ]
Некоторые языки программирования, например, Ada , имеют логические операторы короткого замыкания . Эти операторы используют ленивое вычисление , то есть, если значение выражения можно определить из левого логического выражения, они не оценивают правое логическое выражение. В результате могут возникнуть побочные эффекты , возникающие только для одного значения левого операнда.
Примеры [ править ]
- Выражение
5 > 3
оценивается как истинный . - Выражение
3 > 5
оценивается как ЛОЖЬ . 5>=3
и3<=5
являются эквивалентными логическими выражениями, оба из которых оцениваются как истинный .typeof true
иtypeof false
возвращаться логическое значение- Конечно, большинство логических выражений содержат хотя бы одну переменную (
X > 3
), а часто и больше (X > Y
).
См. также [ править ]
Ссылки [ править ]
- ^ Грис, Дэвид ; Шнайдер, Фред Б. (1993), «Глава 2. Булевы выражения», Логический подход к дискретной математике , Монографии по информатике, Springer, стр. 25 и далее, ISBN 9780387941158 .
- ^ ван Мелькебек, Дитер (2000), Случайность и полнота вычислительной сложности , Конспекты лекций по информатике , том. 1950, Спрингер, с. 22, ISBN 9783540414926 .
- ^ Например, для Java см. Брогден, Уильям Б.; Грин, Маркус (2003), программист Java 2 , Que Publishing, стр. 45, ISBN 9780789728616 .
Внешние ссылки [ править ]
- Логическое исчисление , Джордж Буль, Кембриджский и Дублинский математический журнал, том. III (1848), стр. 183–98.