  Since the middle ages at least, philosophers have recognized a  semantical distinction between extension and  intension. The extension of a denoting expression, or  term, such as a name or a definite description is its  referent, the thing that it refers to; the extension of a predicate  is the set of things it applies to; and the extension of a sentence  is its truth value. By contrast, the intension of an expression is  something rather less definite — its sense, or  meaning, the semantical aspect of the expression that  determines its extension. For purposes here, let us say that a  logic is a formal language together with a semantic theory for the language, that is, a theory that provides rigorous definitions of truth, validity, and logical consequence for the   language.[2]  A logic is extensional if the truth value of every sentence  of the logic is determined entirely by its form and the extensions of its component sentences, predicates, and terms. An extensional logic  will thus typically feature a variety of valid substitutivity  principles. A substitutivity principle says that, if two  expressions are coextensional, that is, if they have the same  extension, then (subject perhaps to some reasonable conditions)  either can be substituted for the other in any sentence salva  veritate, that is, without altering the original sentence's truth value. In an   intensional logic,  the truth values of some sentences are determined by something over  and above their forms and the extensions of their components and, as  a consequence, at least one classical substitutivity principle is  typically rendered invalid. 