Ostatnio zauważyłem kontrolując kody w T-SQL, że młodzi deweloperzy nie pamiętają prawa de Morgana lub źle go interpretują. W celu przypomnienia takich podstaw omówimy dwa prawa.
I prawo de Morgana jest prawem zaprzeczenia koniunkcji
Zaprzeczenie koniunkcji dwóch zdań ∼(p∧q) jest równoważne alternatywie zaprzeczeń tych zdań (∼p)∨(∼q).
(∼(p∧q))⇔((∼p)∨(∼q))
NOT(a AND b) = (NOT a) OR (NOT b)
![](http://blog.brejnak.info/wp-content/uploads/2021/04/obraz-10.png)
II prawo de Morgana jest prawem zaprzeczenia alternatyw
Zaprzeczenie alternatywy dwóch zdań ∼(p∨q) jest równoważne koniunkcji zaprzeczeń tych zdań (∼p)∧(∼q).
(∼(p∨q))⇔((∼p)∧(∼q))
NOT(a OR b) = (NOT a) AND (NOT b)
![](http://blog.brejnak.info/wp-content/uploads/2021/04/obraz-11.png)