natural deduction metalanguage, practical foundations
type theory (dependent, intensional, observational type theory, homotopy type theory)
computational trinitarianism = propositions as types +programs as proofs +relation type theory/category theory
basic constructions:
strong axioms
In formal logic, a judgment, or judgement, is a “meta-proposition”; that is, a proposition belonging to the meta-language (the deductive system or logical framework) rather than to the object language.
More specifically, any deductive system includes, as part of its specification, which strings of symbols are to be regarded as the judgments. Some of these symbols may themselves express a proposition in the object language, but this is not necessarily the case.
The interest in judgements is typically in how they may arise as theorems, or as consequences of other judgements, by way of the deduction rules in a deductive system. One writes
to mean that $J$ is a judgment that is derivable, i.e. a theorem of the deductive system.
In first-order logic, a paradigmatic example of a judgement is the judgement that a certain string of symbols is a well-formed proposition. This is often written as ”$P \;prop$”, where $P$ is a metavariable? standing for a string of symbols that denotes a proposition.
Another example of a judgement is the judgement that these symbols form a proposition proved to be true. This judgment is often written as ”$P\;true$”.
Neither of these judgements is the same thing as the proposition $P$ itself. In particular, the proposition is a statement in the logic, while the judgement that the proposition is a proposition, or is provably true, is a statement about the logic. However, often people abuse notation and conflate a proposition with the judgment that it is true, writing $P$ instead of than $P\;true$.
The distinction between judgements and propositions is particularly important in intensional type theory.
The paradigmatic example of a judgment in type theory is a typing judgment. The assertion that a term $t$ has type $A$ (written ”$t:A$”) is not a statement in the type theory (that is, not something which one could apply logical operators to in the type-theoretic system) but a statement about the type theory.
Often, type theories include only a particular small set of judgments, such as:
(In a type theory with a type of types, judgments of typehood can sometimes be incorporated as a special case of typing judgments, writing $A:Type$ instead of $A\;type$.)
These limited sets of judgments are often defined inductively by giving type formation/term introduction/term elimination- and computation rules (see natural deduction) that specify under what hypotheses one is allowed to conclude the given judgment.
These inductive definitions can be formalized by choosing a particular type theory to be the meta-language; usually a very simple type theory suffices (such as a dependent type theory with only dependent product types). Such a meta-type-theory is often called a logical framework.
It may happen that a judgment $J$ is only derivable under the assumptions of certain other judgments $J_1,\dots, J_2$. In this case one writes
Often, however, it is convenient to incorporate hypotheticality into judgments themselves, so that $J_1,\dots,J_n \;\vdash J$ becomes a single hypothetical judgment. It can then be a consquence of other judgments, or (more importantly) a hypothesis used in concluding other judgments. For instance, in order to conclude the truth of an implication $\phi\Rightarrow\psi$, we must conclude $\psi$ assuming $\phi$; thus the introduction rule for implication is
with a hypothetical judgment as its hypothesis. See natural deduction for a more extensive discussion.
In a type theory, we may also conside the case where the hypotheses $J_1$ are typing judgments of the form $x:A$, where $x$ is a variable, and in which the conclusion judgment $J$ involves these variables as free variables. For instance, $J$ could be $\phi\;prop$, where $\phi$ is a valid (well-formed) proposition only when $x$ belongs of a specific type $X$. In this case we have a generic judgement, written
which expresses that assuming the hypothesis or antecedent judgement that $x$ is of type $X$, as a consequence we have the succedent judgement that $\phi$ is a proposition. If on the right here we have a typing judgment
we have a term in context.
For more about the precise relationship between the various meanings of $\vdash$ here, see natural deduction and logical framework.
While this may seem to be a very basic form of (hypothetical/generic) judgement only, in systems such as dependent type theory or homotopy type theory, all of logic and a good bit more is all based on just this.
Foundational discussion of the notion of judgement in formal logic is in
More on this is in in sections 2 and 3 of
A textbook acccount is in section I.3 of
Something called judgement (Urteil) appears in