This deck defines monoids and monoid homomorphisms.
It shows that logical OR (||) and AND (&&) form monoids, and negation (!) is a monoid homomorphism between them.
Specifically, negation applied to OR is equal to AND of negations, and vice versa, demonstrating De Morgan's laws.
The deck is an excerpt from the Monoids chapter of Functional Programming in Scala relating monoids to logical operations.