tags : Functional Programming, Type Systems, Programming Languages, Math
FAQ
Propotional vs Predicate Logic
Quantifications
Quantification
means making statements about things.- In logic, this often involves
variables
that stand for different things in adomain
. Properties
are characteristics/attributes that you can talk about. Eg. “even” and “prime” are properties of numbers.
First order
In both these cases, we’re talking about some individual element/variable
- Universal Quantifier (∀)
- This symbol (∀) is like saying “for all” or “for every.” It allows us to make statements about every individual element in a certain group or domain. Let’s use an example to illustrate this:
- Example: Consider the domain of natural numbers. If we say ∀x (x is greater than 0), it means that we are making a statement about every natural number. In simpler terms, it’s like saying “Every natural number is greater than 0.” This statement covers all the numbers in the domain of natural numbers.
- Existential Quantifier (∃)
- This symbol (∃) is like saying “there exists” or “there is at least one.” It allows us to make statements about the existence of at least one individual element in a certain group or domain. Here’s an example:
- Example: Using the domain of natural numbers again, if we say ∃x (x is even), it means that we are making a statement about the existence of at least one even number in the group of natural numbers. So, it’s like saying “There exists a natural number that is even.” This statement doesn’t specify which number it is; it simply asserts that there is at least one.
Second order
In second order, we’re usually quantifying about property
in some domain
property
asset
: Sets of individual things that have that property. For example, the set of all even natural numbers is a set that includes 2, 4, 6, and so on.property
asfn
:functions
that take in anelement
and return a Boolean indicating whether the element satisfies theproperty
. (Characteristic function)
Third order
In third and other higher orders, we’re usually quantifying about property
of properties
- Eg. “All properties of sets of cats have the property of being mammal-related.” (Here, you’re not only looking at sets of cats but also at properties of those sets. i.e You’re reasoning about the
property
) - Even though higher-order logics seem more powerful and expressive, you can still capture their ideas and statements using second-order logic.