Если существует суждение, выраженное операцией логического умножения двух или более элементов, то есть операцией «и»:
, то для того, чтобы найти обратное от всего суждения, необходимо найти обратное от каждого элемента и объединить их операцией логического сложения, то есть операцией «или»: .
Закон работает аналогично в обратном направлении:
.
Применение
Законы де Моргана применяются в таких важных областях, как дискретная математика, электротехника, физика и информатика; например, используются для оптимизации цифровых схем посредством замены одних логических элементов другими.
В программировании
Законы де Моргана могут использоваться в программировании для организации и улучшения читаемости кода.
// Исходное выражение (отрицание дизъюнкции)if(!(a||b)){// ...}// Преобразованное выражение (конъюнкция отрицаний)if(!a&&!b){// ...}
В современных языках программирования, благодаря оптимизации компиляторов и интерпретаторов, различия в производительности между этими вариантами ничтожны или полностью отсутствуют. Поэтому выбор между, например, !a || !b и !(a && b) зависит от читаемости, логической ясности и предпочтений программиста. При выборе варианта следует учитывать, какое выражение проще понять другим и какое лучше отражает логику задачи.
История
Противоречащая противоположность дизъюнктивного суждения — конъюнктивное суждение, составленное из противоречащих противоположностей частей дизъюнктивного суждения.
Оригинальный текст (англ.)
The contradictory opposite of a disjunctive proposition is a conjunctive proposition composed of the contradictories of the parts of the disjunctive proposition.