Predicate Logic, and Why Anumāna Needs It
Chapter Sixty-Six
Syllabus topic Module 2, "Predicate logic"
Pages 231 to 233 of 378
In one line
Predicate logic can look inside a statement, so it can say "every" and "some", which is what a general rule needs.
In the wording you can write in an examination: predicate logic extends propositional logic by analysing a statement into a predicate and the terms it applies to, and by adding quantifiers. Its vocabulary is the constant, naming an individual; the variable, ranging over individuals; the predicate, expressing a property or a relation; the universal quantifier ∀, read "for every"; and the existential quantifier ∃, read "there is at least one".
The problem, stated exactly
Take the Nyāya argument and try to write it in propositional logic.
P = this hill is smoky
Q = this hill is fiery
R = whatever is smoky is fiery
Now try to derive Q from P and R. You cannot, because to propositional logic P, Q and R are three unrelated atoms. Nothing in the notation says that R has anything to do with P and Q.
And you cannot repair it by making R the implication P ⊃ Q, because R is not about this hill. R is about every smoky thing, and this hill is one of them. The notation has no way to express that relationship, because it cannot see that P and Q are both about this hill.
So the load-bearing member of a Nyāya argument is not expressible. That is the argument for predicate logic and it is the argument to give in an examination.
The vocabulary
Constant. A name for one individual. Write h for this hill.
Variable. A placeholder ranging over individuals. Write x.
Predicate. A property or a relation, written with its terms. Smoky(x) says x is smoky. Older(x, y) says x is older than y. A predicate with one term is a property; with two or more it is a relation.
Atomic formula. A predicate applied to terms: Smoky(h).
Quantifier. ∀x, for every x; ∃x, there is at least one x.
Scope. The part of the formula the quantifier governs, which the brackets fix.
The same argument, written
premise 1 Smoky(h)
premise 2 ∀x (Smoky(x) ⊃ Fiery(x))
conclusion Fiery(h)
Now the derivation is available, and it has two steps.
Universal instantiation. From ∀x (Smoky(x) ⊃ Fiery(x)) infer Smoky(h) ⊃ Fiery(h). What is true of every x is true of h.
Modus ponens. From Smoky(h) ⊃ Fiery(h) and Smoky(h) infer Fiery(h).
And that is the whole Nyāya argument. The example member is premise two, the reason is premise one, the application is the instantiation step, and the conclusion is the conclusion. [The Five Members Written in Logical Notation] works the correspondence out in full.
Predicate Logic, and Why Anumāna Needs It
The four quantifier patterns
These four cover almost every general statement, and telling them apart is most of the skill.
| English | In symbols | True when |
|---|---|---|
| every S is P | ∀x (S(x) ⊃ P(x)) | no S fails to be P |
| some S is P | ∃x (S(x) • P(x)) | at least one thing is both |
| no S is P | ∀x (S(x) ⊃ ¬P(x)) | nothing is both |
| some S is not P | ∃x (S(x) • ¬P(x)) | at least one S fails to be P |
Two traps, and both are worth stating.
The universal uses implication and the existential uses conjunction. Write ∀x (S(x) • P(x)) and you have said that everything whatever is both an S and a P, which is almost never what was meant. Write ∃x (S(x) ⊃ P(x)) and you have said something true whenever anything at all fails to be an S, which is almost always.
"Every S is P" is true when there are no S at all. ∀x (S(x) ⊃ P(x)) is satisfied vacuously if nothing is an S, because the implication is true whenever its antecedent is false. That is a consequence of the truth table in [Propositional Logic: The Minimum You Need] and it surprises everyone once.
Vyāpti, written properly
The Nyāya claim. There is no smoke without fire.
As a universal. ∀x (Smoky(x) ⊃ Fiery(x)).
As its negation, which is what destroys it. ∃x (Smoky(x) • ¬Fiery(x)). One thing that is smoky and not fiery.
That pair is the whole logic of the vipakṣa. The tradition says a single case of the mark without the conclusion destroys the connection; in this notation, the existential is the direct negation of the universal, so one such case makes the universal false. The classical rule and the logical fact are the same statement.
And the direction matters here just as it did there. ∀x (Fiery(x) ⊃ Smoky(x)) is a different formula and it is false: a red-hot iron ball is fiery and not smoky, which is the counterexample the Sūtra's own extra member offers.
Worked example: writing three claims
"All students may borrow books."
∀x (Student(x) ⊃ MayBorrow(x))
"Some students have not returned a book."
∃x (Student(x) • ∃y (Book(y) • Borrowed(x, y) • ¬Returned(x, y)))
Note the second quantifier inside the first, and the two-place predicates. This is where propositional logic stopped being an option: the relation between a student and a book cannot be said at all without terms.
"No student may borrow more than three books." This one cannot be written with the vocabulary above, because counting is not a quantifier. It needs either a numeric predicate or a much longer formula, and knowing that is worth as much as writing the other two.
Predicate Logic, and Why Anumāna Needs It
What predicate logic still cannot do easily
Counting. "Exactly three" needs a long formula with distinctness conditions.
Defaults. "Students usually return books" has no natural form, which is the same limitation [Knowledge Representation: The Modern Name For It] records for logic as a family.
Quantifying over predicates. "There is a property that all students share" quantifies over properties, not individuals, which is second-order logic and a different system with different guarantees.
Deciding validity mechanically. Propositional validity is decidable by a truth table. Predicate validity is not decidable in general. That is the price of the extra expressiveness, and it is the same trade the Chomsky hierarchy records in [The Chomsky Hierarchy, and Where the Aṣṭādhyāyī Sits].
Quick revision
- Predicate logic analyses a statement into a predicate and its terms, and adds quantifiers.
- Vocabulary: constant, variable, predicate, atomic formula, quantifier, scope.
- The Nyāya argument becomes universal instantiation followed by modus ponens.
- Every S is P uses implication; some S is P uses conjunction. Swapping them is the standard error.
- A universal is vacuously true when nothing satisfies its antecedent.
- Vyāpti is a universal, and its negation is an existential, which is why one counterexample destroys it.
- What is still hard: counting, defaults, quantifying over predicates. And validity is not decidable in general.
Test yourself
1. Why can propositional logic not express the Nyāya argument?
Because it treats "this hill is smoky", "this hill is fiery" and "whatever is smoky is fiery" as three unrelated atoms. It cannot see that the first two concern the same individual, so it cannot bring that individual under the general claim.
2. Write "every S is P" and "some S is P" in symbols and say why the connectives differ.
∀x (S(x) ⊃ P(x)) and ∃x (S(x) • P(x)). The universal uses implication because it makes a claim only about things that are S; the existential uses conjunction because it asserts that something is both.
3. Write vyāpti and its negation, and connect them to the vipakṣa rule.
∀x (Smoky(x) ⊃ Fiery(x)), whose negation is ∃x (Smoky(x) • ¬Fiery(x)). The negation asserts a single case of the mark without the conclusion, which is exactly the vipakṣa that the tradition says destroys the connection.
4. Give one thing predicate logic buys and one thing it costs, compared with propositional logic.
It buys the ability to state general rules and relations, so a particular case can be brought under a general claim. It costs decidability: propositional validity can be settled by a truth table, and predicate validity cannot be decided in general.
The rest of this subject
These notes are cut from the University's printed syllabus. Open the syllabus itself for the same subject.