nLab De Morgan duality

De Morgan duality



(0,1)(0,1)-Category theory

Type theory

natural deduction metalanguage, practical foundations

  1. type formation rule
  2. term introduction rule
  3. term elimination rule
  4. computation rule

type theory (dependent, intensional, observational type theory, homotopy type theory)

syntax object language

computational trinitarianism =
propositions as types +programs as proofs +relation type theory/category theory

logicset theory (internal logic of)category theorytype theory
predicatefamily of setsdisplay morphismdependent type
proofelementgeneralized elementterm/program
cut rulecomposition of classifying morphisms / pullback of display mapssubstitution
introduction rule for implicationcounit for hom-tensor adjunctionlambda
elimination rule for implicationunit for hom-tensor adjunctionapplication
cut elimination for implicationone of the zigzag identities for hom-tensor adjunctionbeta reduction
identity elimination for implicationthe other zigzag identity for hom-tensor adjunctioneta conversion
truesingletonterminal object/(-2)-truncated objecth-level 0-type/unit type
falseempty setinitial objectempty type
proposition, truth valuesubsingletonsubterminal object/(-1)-truncated objecth-proposition, mere proposition
logical conjunctioncartesian productproductproduct type
disjunctiondisjoint union (support of)coproduct ((-1)-truncation of)sum type (bracket type of)
implicationfunction set (into subsingleton)internal hom (into subterminal object)function type (into h-proposition)
negationfunction set into empty setinternal hom into initial objectfunction type into empty type
universal quantificationindexed cartesian product (of family of subsingletons)dependent product (of family of subterminal objects)dependent product type (of family of h-propositions)
existential quantificationindexed disjoint union (support of)dependent sum ((-1)-truncation of)dependent sum type (bracket type of)
logical equivalencebijection setobject of isomorphismsequivalence type
support setsupport object/(-1)-truncationpropositional truncation/bracket type
n-image of morphism into terminal object/n-truncationn-truncation modality
equalitydiagonal function/diagonal subset/diagonal relationpath space objectidentity type/path type
completely presented setsetdiscrete object/0-truncated objecth-level 2-type/set/h-set
setset with equivalence relationinternal 0-groupoidBishop set/setoid with its pseudo-equivalence relation an actual equivalence relation
equivalence class/quotient setquotientquotient type
inductioncolimitinductive type, W-type, M-type
higher inductionhigher colimithigher inductive type
-0-truncated higher colimitquotient inductive type
coinductionlimitcoinductive type
presettype without identity types
set of truth valuessubobject classifiertype of propositions
domain of discourseuniverseobject classifiertype universe
modalityclosure operator, (idempotent) monadmodal type theory, monad (in computer science)
linear logic(symmetric, closed) monoidal categorylinear type theory/quantum computation
proof netstring diagramquantum circuit
(absence of) contraction rule(absence of) diagonalno-cloning theorem
synthetic mathematicsdomain specific embedded programming language

homotopy levels


De Morgan duality


In logic, De Morgan duality is a duality between intuitionistic logic and dual-intuitionistic paraconsistent logic. In classical logic and linear logic, it is a self-duality mediated by negation. Although it goes back to Aristotle (at least), its discovery is generally attributed to Augustus De Morgan.

The dualities

More explicitly, De Morgan duality is the duality between logical operators as shown in the table below:

Intuitionistic operatorDual-intuitionistic operator
\top (truth)\bot (falsehood)
\wedge (conjunction)\vee (disjunction)
\Rightarrow (conditional)\setminus (subtraction)
\Leftrightarrow (biconditional)++ (exclusive disjunction)
¬\neg (pp \Rightarrow \bot)- (p\top \setminus p)
\forall (universal quantification)\exists (existential quantification)
\Box (necessity)\lozenge (possibility)

The first two operators in each column exist in both intuitionistic and dual-intuitionistic propositional logic and the last two in each column exist in both forms of predicate logic and modal logic (respectively), but they are still dual as shown. All of these exist in classical logic (although some of the paraconsistent operators are not widely used), and the two forms of negation (¬\neg and -) are the same there.

In linear logic, this extends to a duality between conjunctive and disjunctive operators:

Conjunctive operatorDisjunctive operator

As with classical negation, linear negation is self-dual. (For the categorical semantics of this see at dualizing object and at Wirthmüller context – Comparison of push-forwards.)

The first two rows of the intuitionistic/dual-intuitionistic/classical duality generalise to arbitrary lattices, including subobject lattices in coherent categories, and from there to the duality between limits and colimits in category theory:

terminal objectinitial object

So in a way, all duality in category theory is a generalisation of De Morgan duality.

The De Morgan laws

The De Morgan laws are the statements, valid in various forms of logic, that De Morgan duality is mediated by negation. For example, using the second line of the first table, we have

¬(pq)¬p¬q, ¬(pq)¬p¬q. \array { \neg(p \wedge q) \equiv \neg{p} \vee \neg{q} ,\\ \neg(p \vee q) \equiv \neg{p} \wedge \neg{q} . }

Traditionally, the term is reserved for this line.

In constructive mathematics

In the foundations of constructive mathematics, De Morgan's Law usually means the statement

¬(pq)¬p¬q, \neg(p \wedge q) \vdash \neg{p} \vee \neg{q} ,

since every other aspect of the first two lines is already constructively valid, the claim that negation mediates the De Morgan self-duality already has a name (the double negation law, equivalent to the principle of excluded middle), and no other line involves only operators that appear in intuitionstic propositional calculus. This de Morgan’s law is equivalent to the law of weak excluded middle.

In homotopy type theory

In the context of homotopy type theory, there are two versions of the constructive De Morgan’s law, depending on whether the “or” in the law is interpreted as a propositionally truncated sum type

A,B¬(AB)¬A+¬B \prod_{A,B} \neg(A \wedge B) \to \Vert \neg A + \neg B \Vert

or as an untruncated sum type:

A,B¬(AB)(¬A+¬B). \prod_{A,B} \neg(A \wedge B) \to (\neg A + \neg B).

However, Martin Escardo proved that the truncated and untruncated versions of De Morgan’s law are the same:


Truncated De Morgan’s law implies weak excluded middle:

A¬A+¬¬A. \prod_{A} \neg A + \neg\neg A.

Note that truncation or its absence is irrelevant in weak excluded middle, since ¬A\neg A and ¬¬A\neg\neg A are mutually exclusive so that ¬A+¬¬A\neg A + \neg\neg A is always a proposition.


Let B=¬AB=\neg A in the truncated De Morgan’s law, and notice that ¬(A¬A)\neg(A\wedge \neg A) always holds.


Weak excluded middle implies that binary sums of negations have split support:

A,B¬A+¬B(¬A+¬B).\prod_{A,B} \Vert \neg A + \neg B \Vert \to (\neg A + \neg B).

By weak excluded middle, either ¬A\neg A or ¬¬A\neg\neg A. In the first case, ¬A+¬B\neg A + \neg B is just true. In the second case, either ¬B\neg B or ¬¬B\neg\neg B. In the first subcase, ¬A+¬B\neg A + \neg B is again just true. In the second subcase, we have ¬¬A\neg\neg A and ¬¬B\neg\neg B, whence (¬A+¬B)=0(\neg A + \neg B) = 0 and in particular is a proposition.


Truncated De Morgan’s law implies untruncated De Morgan’s law,

A,B¬(AB)(¬A+¬B) \prod_{A,B} \neg(A \wedge B) \to (\neg A + \neg B)

Combine the two lemmas.

In the theory of pseudolattice ordered abelian groups

Peter Freyd’s definition of a pseudolattice ordered abelian group in Freyd 08 is equational, and so is a Lawvere theory and could be defined in a category with finite products and a generic object AA where every object is equivalent to a finite product of AA.

Freyd then showed that the de Morgan laws are satisfied in any pseudolattice ordered abelian group:

(pq)=(p)(q)-(p \vee q) = (-p) \wedge (-q)
(pq)=(p)(q)-(p \wedge q) = (-p) \vee (-q)

with the join and meet being the pseudolattice operations and negation being the negation of the abelian group.

In particular, the de Morgan laws are valid for the integers, the rational numbers, and the Dedekind real numbers, with the join being the maximum function and the meet being the minimum function.


  • Peter Freyd, Algebraic real analysis, Theory and Applications of Categories, Vol. 20, 2008, No. 10, pp 215-306 (tac:20-10)

Last revised on November 16, 2022 at 20:11:35. See the history of this page for a list of all contributions to it.