Duality Principle vs. DeMorgan Law What is the difference between the two?


*

*Duality Principle states that any theorem in switching algebra remains true if 0 and 1 are swapped and + and . are swapped throughout.

*DeMorgan's Law says that any theorem remains true if the variables are complemented and + and . are swapped as well.
I don't see a difference really, could anyone enlighten me?
 A: In your formulation, the two items indeed seem to say the same with very minor changes in wording.
However, you're quoting De Morgan's laws wrong. What they are usually taken to say is that
$$ \neg(A \land B) = \neg A \lor \neg B \\
\neg(A \lor B) = \neg A \land \neg B $$
(or something very similar to that) are identities.
These laws imply the duality principle that you're speaking about, but the duality principle itself will not help you conclude from whole cloth that $\neg(A\land B)$ always has the same truth value as $\neg A\lor \neg B$ -- because which already known identity would you apply it to from the beginning?
A: I think this answer should talk about duality in general. Notably, Stone Duality, the connection between Boolean Algebra and rings, as well as fundamental set theory in mathematical logic and dis/conjunctive normal forms.
Since Not(0) = 1 and Not(1) = 0, swapping 0 and 1 is equivalent to complementing all variables. 
Keep in mind any part of a boolean statement can only take on values 1 or 0, GF(2), so if xyz=1/0 then Not(xyz) = 0/1. For both, + and * are swapped.
You are talking about boolean functions, in boolean algebra. Here are two equivalent definitions:
1. A Boolean algebra is any set with binary operations ∧ and ∨ and a unary operation ¬ thereon satisfying the Boolean laws.
2. A Boolean algebra is a complemented distributive lattice.
Note: a distributive lattice is a lattice in which the operations of join and meet distribute over each other. 
 Boolean algebra has an algebraic structure: in abstract algebra, an algebraic structure is a set (called carrier set or underlying set) with one or more finitary operations defined on it that satisfies a list of axioms.
