signature (logic)

{{Short description|Description of non-logical symbols}}

In logic, especially mathematical logic, a signature lists and describes the non-logical symbols of a formal language. In universal algebra, a signature lists the operations that characterize an algebraic structure. In model theory, signatures are used for both purposes. They are rarely made explicit in more philosophical treatments of logic.

Definition

Formally, a (single-sorted) signature can be defined as a 4-tuple \sigma = \left(S_{\operatorname{func}}, S_{\operatorname{rel}}, S_{\operatorname{const}}, \operatorname{ar}\right), where S_{\operatorname{func}} and S_{\operatorname{rel}} are disjoint sets not containing any other basic logical symbols, called respectively

and a function \operatorname{ar} : S_{\operatorname{func}} \cup S_{\operatorname{rel}} \to \N which assigns a natural number called arity to every function or relation symbol. A function or relation symbol is called n-ary if its arity is n. Some authors define a nullary (0-ary) function symbol as constant symbol, otherwise constant symbols are defined separately.

A signature with no function symbols is called a {{visible anchor|relational signature}}, and a signature with no relation symbols is called an {{visible anchor|algebraic signature}}.{{cite web |last1=Mokadem |first1=Riad |author2=Litwin, Witold |author3=Rigaux, Philippe |author4=Schwarz, Thomas |title=Fast nGram-Based String Search Over Data Encoded Using Algebraic Signatures |url=http://www.cse.scu.edu/~tschwarz/Papers/vldb07_final.pdf |website=33rd International Conference on Very Large Data Bases (VLDB) |accessdate=27 February 2019 |format=PDF |date=September 2007}}

A {{visible anchor|finite signature}} is a signature such that S_{\operatorname{func}} and S_{\operatorname{rel}} are finite. More generally, the cardinality of a signature \sigma = \left(S_{\operatorname{func}}, S_{\operatorname{rel}}, S_{\operatorname{const}}, \operatorname{ar}\right) is defined as |\sigma| = \left|S_{\operatorname{func}}\right| + \left|S_{\operatorname{rel}}\right| + \left|S_{\operatorname{const}}\right|.

The {{visible anchor|language of a signature}} is the set of all well formed sentences built from the symbols in that signature together with the symbols in the logical system.

Other conventions

In universal algebra the word {{visible anchor|type}} or {{visible anchor|similarity type}} is often used as a synonym for "signature". In model theory, a signature \sigma is often called a {{visible anchor|vocabulary}}, or identified with the (first-order) language L to which it provides the non-logical symbols. However, the cardinality of the language L will always be infinite; if \sigma is finite then |L| will be \aleph_0.

As the formal definition is inconvenient for everyday use, the definition of a specific signature is often abbreviated in an informal way, as in:

:"The standard signature for abelian groups is \sigma = (+, -, 0), where - is a unary operator."

Sometimes an algebraic signature is regarded as just a list of arities, as in:

:"The similarity type for abelian groups is \sigma = (2, 1, 0)."

Formally this would define the function symbols of the signature as something like f_0 (which is binary), f_1 (which is unary) and f_2 (which is nullary), but in reality the usual names are used even in connection with this convention.

In mathematical logic, very often symbols are not allowed to be nullary,{{Citation needed|date=January 2017}} so that constant symbols must be treated separately rather than as nullary function symbols. They form a set S_{\operatorname{const}} disjoint from S_{\operatorname{func}}, on which the arity function \operatorname{ar} is not defined. However, this only serves to complicate matters, especially in proofs by induction over the structure of a formula, where an additional case must be considered. Any nullary relation symbol, which is also not allowed under such a definition, can be emulated by a unary relation symbol together with a sentence expressing that its value is the same for all elements. This translation fails only for empty structures (which are often excluded by convention). If nullary symbols are allowed, then every formula of propositional logic is also a formula of first-order logic.

An example for an infinite signature uses S_{\operatorname{func}} = \{+\} \cup \left\{f_a : a \in F\right\} and S_{\operatorname{rel}} = \{=\} to formalize expressions and equations about a vector space over an infinite scalar field F, where each f_a denotes the unary operation of scalar multiplication by a. This way, the signature and the logic can be kept single-sorted, with vectors being the only sort.{{cite book | editor=James C. Abbot | title=Trends in Lattice Theory | location=Princeton/NJ | publisher=Van Nostrand | year=1967 | author=George Grätzer | authorlink=George Grätzer | contribution=IV. Universal Algebra | pages=173–210}} Here: p.173.

Use of signatures in logic and algebra

In the context of first-order logic, the symbols in a signature are also known as the non-logical symbols, because together with the logical symbols they form the underlying alphabet over which two formal languages are inductively defined: The set of terms over the signature and the set of (well-formed) formulas over the signature.

In a structure, an interpretation ties the function and relation symbols to mathematical objects that justify their names: The interpretation of an n-ary function symbol f in a structure \mathbf{A} with domain A is a function f^\mathbf{A} : A^n \to A, and the interpretation of an n-ary relation symbol is a relation R^\mathbf{A} \subseteq A^n. Here A^n = A \times A \times \cdots \times A denotes the n-fold cartesian product of the domain A with itself, and so f is in fact an n-ary function, and R an n-ary relation.

Many-sorted signatures

For many-sorted logic and for many-sorted structures, signatures must encode information about the sorts. The most straightforward way of doing this is via {{visible anchor|symbol types}} that play the role of generalized arities.[https://web.archive.org/web/20070929131504/http://react.cs.uni-sb.de/%7Ezarba/snow/ch01.pdf Many-Sorted Logic], the first chapter in [https://web.archive.org/web/20081006212815/http://react.cs.uni-sb.de/~zarba/notes.html Lecture notes on Decision Procedures], written by [http://theory.stanford.edu/~zarba/ Calogero G. Zarba].

=Symbol types=

Let S be a set (of sorts) not containing the symbols \times or \to.

The symbol types over S are certain words over the alphabet S \cup \{\times, \to\}: the relational symbol types s_1 \times \cdots \times s_n, and the functional symbol types s_1 \times \cdots \times s_n \to s^\prime, for non-negative integers n and s_1, s_2, \ldots, s_n, s^\prime \in S. (For n = 0, the expression s_1 \times \cdots \times s_n denotes the empty word.)

=Signature=

A (many-sorted) signature is a triple (S, P, \operatorname{type}) consisting of

  • a set S of sorts,
  • a set P of symbols, and
  • a map \operatorname{type} which associates to every symbol in P a symbol type over S.

See also

  • {{annotated link|Term algebra}}

Notes

{{reflist}}

References

  • {{cite book|last=Burris|first=Stanley N.|author2=Sankappanavar, H.P.|title=A Course in Universal Algebra|year=1981|publisher=Springer|isbn=3-540-90578-2}} [http://www.thoralf.uwaterloo.ca/htdocs/ualg.html Free online edition].
  • {{cite book|last=Hodges|first=Wilfrid|title=A Shorter Model Theory|year=1997|publisher=Cambridge University Press|isbn=0-521-58713-1}}