# Predicate (mathematical logic)

In mathematics, a **predicate** is commonly understood to be a Boolean-valued function *P*: *X*→ {true, false}, called the predicate on *X*. However, predicates have many different uses and interpretations in mathematics and logic, and their precise definition, meaning and use will vary from theory to theory. So, for example, when a theory defines the concept of a relation, then a predicate is simply the characteristic function or the indicator function of a relation. However, not all theories have relations, or are founded on set theory, and so one must be careful with the proper definition and semantic interpretation of a predicate.

## Simplified overview

Informally, a **predicate** is a statement that may be true or false depending on the values of its variables.^{[1]} It can be thought of as an operator or function that returns a value that is either true or false.^{[2]} For example, predicates are sometimes used to indicate set membership: when talking about sets, it is sometimes inconvenient or impossible to describe a set by listing all of its elements. Thus, a predicate *P(x)* will be true or false, depending on whether *x* belongs to a set.

Predicates are also commonly used to talk about the properties of objects, by defining the set of all objects that have some property in common. So, for example, when *P* is a predicate on *X*, one might sometimes say *P* is a property of *X*. Similarly, the notation *P*(*x*) is used to denote a sentence or statement *P* concerning the variable object x. The set defined by *P*(*x*) is written as {*x* | *P*(*x*)}, and is just a collection of all the objects for which *P* is true.

For instance, {*x* | *x* is a positive integer less than 4} is the set {1,2,3}.

If *t* is an element of the set {*x* | *P*(*x*)}, then the statement *P*(*t*) is *true*.

Here, *P*(*x*) is referred to as the *predicate*, and *x* the *subject* of the *proposition*. Sometimes, *P*(*x*) is also called a propositional function, as each choice of x produces a proposition.

A simple form of predicate is a Boolean expression, in which case the inputs to the expression are themselves Boolean values, combined using Boolean operations. Similarly, a Boolean expression with inputs predicates is itself a more complex predicate.

## Formal definition

The precise semantic interpretation of an atomic formula and an atomic sentence will vary from theory to theory.

- In propositional logic, atomic formulas are called propositional variables.
^{[3]}In a sense, these are nullary (i.e. 0-arity) predicates. - In first-order logic, an atomic formula consists of a predicate symbol applied to an appropriate number of terms.
- In set theory, predicates are understood to be characteristic functions or set indicator functions,
*i.e.*functions from a set element to a truth value. Set-builder notation makes use of predicates to define sets. - In autoepistemic logic, which rejects the law of excluded middle, predicates may be true, false, or simply
*unknown*;*i.e.*a given collection of facts may be insufficient to determine the truth or falsehood of a predicate. - In fuzzy logic, predicates are the characteristic functions of a probability distribution. That is, the strict true/false valuation of the predicate is replaced by a quantity interpreted as the degree of truth.

## See also

- Free variables and bound variables
- Predicate functor logic
- Truthbearer
- Multigrade predicate
- Opaque predicate
- Classifying topos

## References

- ↑ Cunningham, Daniel W. (2012).
*A Logical Introduction to Proof*. New York: Springer. p. 29. ISBN 9781461436317.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles> - ↑ Haas, Guy M. "What If? (Predicates)".
*Introduction to Computer Programming*. Berkeley Foundation for Opportunities in IT (BFOIT),. Retrieved 20 July 2013.CS1 maint: extra punctuation (link)<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles> - ↑ Lavrov, Igor Andreevich and Larisa Maksimova (2003).
*Problems in Set Theory, Mathematical Logic, and the Theory of Algorithms*. New York: Springer. p. 52. ISBN 0306477122.<templatestyles src="Module:Citation/CS1/styles.css"></templatestyles>