No history yet

Introduction to Predicate Logic

Beyond True or False

In propositional logic, we treat entire statements as single units. A sentence like "Socrates is a human" is just a proposition, let's call it PP. Another sentence, "All humans are mortal," is another proposition, QQ. From these two, can we conclude that "Socrates is mortal"?

Logically, yes. But propositional logic can't show us why. It only sees PP and QQ. It doesn't understand that the word "human" in both sentences connects them. The internal structure of the sentences is lost.

Propositional logic is too blunt. It can't see the subjects and properties inside a statement, which limits its power to reason about the world.

Predicate logic solves this. It lets us break down statements into smaller, meaningful parts. Instead of treating "Socrates is a human" as a single, unchangeable block, we can talk about the subject (Socrates) and the property being ascribed to him (being human).

Predicates and Variables

The core of predicate logic is the predicate. A predicate is a property, characteristic, or relationship. In our example, "is human" is a predicate. We can represent it with a symbol, like HH. To say "Socrates is human," we'd write H(Socrates)H(\text{Socrates}).

This simple change is powerful. It allows us to apply the same predicate to different subjects. For instance, H(Plato)H(\text{Plato}) would mean "Plato is human."

But what if we want to talk about being human in general, without naming a specific person? We use a variable, which is a placeholder for an object. We could write H(x)H(x), which means "x is human." The variable xx can stand for any object we want to consider.

predicate

noun

A property or relationship that can be applied to one or more objects.

By combining predicates and variables, we can represent the structure of our statements in a much more flexible way.

Lesson image

Talking About 'All' or 'Some'

Once we have variables, we need a way to specify their scope. Are we making a claim about every object, or just at least one? This is the job of quantifiers.

There are two main quantifiers in predicate logic.

The universal quantifier, symbolized as \forall, means "for all" or "every." It makes a statement about everything within a certain domain. If we want to say "All humans are mortal," we can use the universal quantifier. Using H(x)H(x) for "x is human" and M(x)M(x) for "x is mortal," we can express this as:

x(H(x)M(x))\forall x (H(x) \rightarrow M(x))

This reads: "For every xx, if xx is human, then xx is mortal."

The second is the existential quantifier, symbolized as \exists, which means "there exists" or "some." It makes a claim that there is at least one object with a certain property. To say "Some cats are black," we could write:

x(C(x)B(x))\exists x (C(x) \land B(x))

This reads: "There exists an xx such that xx is a cat and xx is black."

Quantifiers allow us to make general statements ( orall) or specific claims about existence (\exists), giving our logic much greater expressive power.

With predicates, variables, and quantifiers, we can now properly connect our original statements. We can represent "All humans are mortal" and "Socrates is human" and use them to formally prove that "Socrates is mortal." This ability to reason about objects and their properties is what makes predicate logic a fundamental tool in mathematics, computer science, and philosophy.