Formal logic rests on a small set of connectives – AND, OR, NOT – that most introductory courses treat as the full toolkit. But logicians have long asked a deeper question: what is the minimum number of operators needed to express every possible logical relationship? The answer leads to a remarkable operator known as the dagger function, also called joint denial, the Peirce arrow, or Quine’s dagger. Far from being a mere curiosity, the dagger function demonstrates that a single, well-chosen operator can carry the entire expressive weight of propositional logic – making it one of the most theoretically important connectives in the discipline.

Table of Contents

What is the dagger function?

The dagger function is a binary logical operator that takes two propositions and returns true only when both are false. In Boolean logic, the dagger function – formally known as logical NOR or non-disjunction – is a truth-functional operator that produces true precisely when neither of its operands is true. In everyday language, it captures the meaning of the phrase “neitherโ€ฆnor.” If p and q are two propositions, then “p dagger q” (written p โ†“ q) is true only in the situation where p is false and q is also false. If even one of them turns out to be true, the whole expression becomes false.

This contrasts sharply with most connectives students first encounter. The OR connective is generous – it returns true whenever at least one part is true. The dagger function is the exact opposite: it is true only when every component fails. This strict, all-or-nothing character is precisely what makes it so powerful as a logical building block.

The dagger function and the stroke function: how they relate

To appreciate the dagger function fully, it helps to place it alongside its close relative, the stroke function (also called NAND, or the Sheffer stroke). The Sheffer stroke denotes a logical operation equivalent to the negation of conjunction, expressed in ordinary language as “not both,” and its dual is the NOR operator – also known as the Peirce arrow, Quine dagger, or Webb operator. Both the stroke function and the dagger function belong to a special class of operators that, by themselves, can express any truth-functional formula – a property known as functional completeness.

The key difference lies in the condition for falsehood. The stroke function (NAND) says a statement is false only when both components are true. The dagger function (NOR) says a statement is true only when both components are false. They are logically dual to one another: one is the “not both true” operator, the other is the “not either true” operator. In this sense, the dagger function strengthens the requirements that the stroke function imposes – rather than demanding that both be true to trigger a false output, it demands that both be false to produce any true output at all.

A brief history: Peirce, Quine, and the road to functional completeness

The American logician and philosopher Charles Sanders Peirce (1839-1914) had already discovered the logical connective we now call the dagger function – known also as Peirce’s Arrow – with a relevant manuscript dating to 1880, though this was nearly discarded and only salvaged for posterity in 1926. Peirce called it the ampheck, from the Greek word meaning “cutting both ways,” and he introduced the symbol โ†“ for it and demonstrated that NOR is completely expressible – meaning all logical operations can be built from it alone.

Much later, the philosopher W.V.O. Quine independently described the same operator and used the symbol โ€  (the typographic dagger), which is why it often carries his name. The operator is also known as Quine’s dagger (his symbol was โ€ ), and in Peirce’s own terminology, the ampheck, from Greek meaning “cutting both ways.” Henry Sheffer’s 1913 paper, which demonstrated a related result for the NAND operator, gained far wider attention at the time – Russell and Whitehead used the Sheffer stroke in the 1927 second edition of Principia Mathematica, suggesting it as a replacement for the OR and NOT operations of the first edition – but the dagger function quietly shares the same remarkable property.

Expressing negation with the dagger function

One of the most striking features of the dagger function is how it can express negation – a unary operator – using only its own binary form. If you apply the dagger to a single proposition with itself, the result is equivalent to a simple negation. The negation of A (written ยฌA) is equivalent to the expression (A โ†“ A). Why? Because “neither A nor A” is true only when A is false – which is precisely what negation means. This is a significant logical economy: a single two-place connective, applied self-referentially, takes on the role of a completely different category of operator.

This matters theoretically because negation is foundational to virtually all reasoning. Being able to derive it from the dagger function alone confirms that the dagger function is not merely a supplementary tool – it is a primitive from which other logical operations can be constructed from the ground up.

Expressing conjunction with the dagger function

The dagger function can also express conjunction – the AND operator – through a more elaborate but equally elegant construction. The conjunction of two statements A and B is expressed as (A โ†“ A) โ†“ (B โ†“ B). Reading this step by step: first, (A โ†“ A) produces ยฌA, and (B โ†“ B) produces ยฌB. Then applying the dagger to those two negations – “neither ยฌA nor ยฌB” – yields a statement that is true only when both ยฌA and ยฌB are false, i.e., when both A and B are true. That is exactly what conjunction means.

Similarly, if the dagger (โ†“) were used as the sole operator, disjunction (A โˆจ B) would be defined as ((A โ†“ B) โ†“ (A โ†“ B)). This ability to reconstruct the entire family of standard connectives – negation, conjunction, disjunction, and beyond – from a single operator is the hallmark of functional completeness.

Functional completeness: why this matters philosophically

The theoretical significance of the dagger function goes well beyond logical notation. The logical-philosophic significance of the availability of a Sheffer function was taken by Ludwig Wittgenstein (in the Tractatus Logico-Philosophicus, 1922) to consist in its perspicuous illustration of deeper features of formal logic. Wittgenstein saw in the existence of functionally complete connectives evidence that logic has an underlying unity – that the apparent diversity of logical operations conceals a simpler, more unified structure beneath.

Operators have explicit philosophical significance: on the one hand, they represent important ontological issues of reality; on the other hand, epistemological operators form the basic mechanism of cognition. The dagger function illustrates this double significance: it is simultaneously a formal syntactic device and a window into how logical relations can be unified. The fact that a single connective – one that says nothing more than “neither this nor that” – is sufficient to express every truth-functional relationship is a striking result about the architecture of logic itself.

Functional completeness and its proof

Logical NOR does not possess any of the five qualities – truth-preserving, false-preserving, linear, monotonic, or self-dual – required to be absent from at least one member of a set of functionally complete operators; thus, the set containing only NOR suffices as a complete set. This is the formal criterion, established by Emil Post’s 1941 completeness theorem, for why the dagger function qualifies as a sole sufficient connective. No other binary connective except NAND shares this property.

The dagger function in practice: from logic gates to spacecraft

Functional completeness is not a purely theoretical virtue. In digital electronics, every logical operator corresponds to a physical circuit component called a gate. Because NOR is functionally complete, an entire computing system can, in principle, be built using only NOR gates. The Apollo Guidance Computer – the computer used in the spacecraft that first carried humans to the Moon – was constructed entirely using NOR gates with three inputs. This remarkable fact shows how a concept rooted in formal philosophy and symbolic logic has had direct, world-changing engineering consequences.

In the context of propositional logic and formal semantics, the dagger function’s value lies in simplifying the logical basis of a system. Rather than committing to a set of primitive connectives like {ยฌ, โˆง, โˆจ}, a logician or system designer can work with a single primitive – the dagger – and derive everything else as needed. This parsimony is valued both for its elegance and for the clarity it lends to foundational arguments.

The dagger function in the broader landscape of logic

It is worth situating the dagger function within the full picture of propositional logic – the branch of logic that studies ways of combining or modifying entire propositions to form more complex propositions, and the logical relationships derived from these combinations. Most standard treatments of propositional logic introduce several primitive connectives and show how they interact. The dagger function offers an alternative foundation: one primitive, maximum expressive power.

This approach has consequences in areas like modal logic, formal semantics, and computability theory, where the choice of logical primitives affects the complexity and tractability of proofs. It also connects to philosophical debates about logical minimalism – the idea that a good logical system should commit to as few primitives as necessary, letting the rest emerge from derivation. The dagger function is one of the cleanest examples of this minimalist ideal in action.

It is also worth noting the dagger function’s place in the history of logic more broadly. The discovery of the Sheffer stroke – and by duality, the dagger function – was hailed by seminal figures in the history of logic, including Ludwig Wittgenstein and Bertrand Russell. That Peirce had arrived at the same result decades earlier, in an unpublished manuscript nearly lost to history, only deepens the significance of the finding. It suggests that the dagger function is not an artifact of any one logical tradition but reflects something genuinely fundamental about the structure of propositional reasoning.

What do you think? If a single operator like the dagger function can express every possible logical relationship, does that suggest that the apparent complexity of logical reasoning is ultimately reducible to one simple idea – or does the complexity simply get pushed elsewhere into how we combine that one operator? And given that the dagger function captures “neitherโ€ฆnor,” does its central role in formal logic say anything interesting about how negation and exclusion might be more fundamental to reasoning than affirmation?

How useful was this post?

Click on a star to rate it!

Average rating / 5. Vote count:

No votes so far! Be the first to rate this post.

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

References
  1. https://en.wikipedia.org/wiki/Logical_NOR
  2. https://en.wikipedia.org/wiki/Sheffer_stroke
  3. https://iep.utm.edu/sheffers/
  4. https://encyclopediaofmath.org/wiki/Peirce_arrow
  5. https://www.scientificlib.com/en/Mathematics/LX/LogicalNOR.html
  6. https://iep.utm.edu/propositional-logic-sentential-logic/
  7. https://www.mdpi.com/2409-9287/2/3/21

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

Logic

1 Nature and Scope of Logic

  1. Various Definitions of Logic
  2. Two Types of Logic: Formal and Material
  3. Logic: Science or Art?
  4. Logic: Positive Science or Normative Science?
  5. Logic and Other Disciplines

2 Concept and Term

  1. Concept Word and Terms
  2. Terms as a Name of Class
  3. Extension and Intension
  4. Inverse Variation
  5. Classification of Terms

3 Definition and Division

  1. Nature of Definition
  2. Rules of Definition and Fallacies
  3. Limits of Definition
  4. On Division
  5. Rules of Logical Division
  6. Division by Dichotomy

4 Propositions

  1. History of Logic and Proposition
  2. Propositions and Sentences
  3. Propositions and Judgments
  4. Types of Proposition
  5. Quality and Quantity

5 Meaning and Kinds of Reasoning

  1. Meaning of Reasoning and Inference
  2. Objections against Reasoning and Inference
  3. Kinds of Reasoning
  4. Arguments against Deduction and Induction
  5. Kinds of Generalization

6 Deductive Reasoning

  1. Deductive Arguments: Truth-Conditions of Relations
  2. Opposition of Relations
  3. Categorical Proposition and Distribution of Terms
  4. Diagrammatic Presentation of Distribution
  5. Equivalence Relation
  6. Criticisms

7 The Dilemma and Fallacies

  1. The Structure and Value
  2. Kinds of Dilemma
  3. Avoiding Dilemma
  4. Fallacies
  5. Formal Fallacies
  6. Informal Fallacies
  7. Fallacies Due to Ambiguity
  8. Inductive Fallacy

8 Induction

  1. Kantโ€™s Problem
  2. Humeโ€™s Attack on Science vis-a-vis Induction
  3. In Defense of Induction
  4. Against Induction
  5. Function of Falsification

9 History and Utility of Symbolic Logic

  1. History and Utility of Symbolic Logic
  2. The Rise of Symbolic Logic
  3. The Age of Principia Mathematica (PM)

10 Compound Statements and their Truth-Values

  1. Simple and Compound Statements
  2. Sentential Connectives
  3. Compound Propositions and Their Truth-Values
  4. Other Forms of Compound Proposition

11 Syllogism

  1. The Structure of Categorical Syllogism
  2. Axioms of Syllogism
  3. Figures and Moods
  4. Fallacies of Categorical Syllogism
  5. Reduction of Arguments
  6. Antilogism or Inconsistent Triad
  7. Venn Diagram Technique

12 Truth – Functional Forms

  1. Implication and Its Equivalent Forms
  2. Disjunction and Its Equivalent Forms
  3. Negation and Its Equivalent Forms
  4. Conjunction and Bicondition
  5. Form of Contradiction
  6. The Stroke Function
  7. The Dagger Function

13 Formal Proof of Validity – Rules of Inference

  1. Formal Proof of Validity โ€“ Meaning
  2. Rules of Inference
  3. Testing the Validity of Arguments
  4. Testing the Validity of Arguments (Verbal)

14 Formal Proof of Validity – Rules of Replacement

  1. Formal Proof of Validity: Rules of Replacement
  2. Testing the Validity of Arguments (The Rules of Replacement)
  3. The Rules of Inference and Replacement
  4. Test of Arguments in Verbal Form

15 Conditional Proof and Indirect Proof

  1. Conditional Proof
  2. Indirect Proof
  3. The Strengthened Rule of Conditional Proof
  4. Proving Invalidity

16 Quantification

  1. Quantification: its Meaning
  2. Logical Relations Involving Quantifiers
  3. Quantification Rules
  4. Testing the Validity of Syllogism
  5. Multiply General Propositions
  6. The Strengthened Rule of C.P. And Quantification
  7. Proving Invalidity
  8. Non-syllogism