From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In logic, a metavariable (also metalinguistic variable[1] or syntactical variable[2]) is a symbol or symbol string which belongs to a metalanguage and stands for elements of some object language. For instance, in the sentence

Let A and B be two sentences of a language ℒ

the symbols A and B are part of the metalanguage in which the statement about the object language ℒ is formulated.

John Corcoran considers this terminology unfortunate because it obscures the use of schemata and because such "variables" do not actually range over a domain.[3]:220

The convention is that a metavariable is to be uniformly substituted with the same instance in all its appearances in a given schema. This is in contrast with nonterminal symbols in formal grammars where the nonterminals on the right of a production can be substituted by different instances.[4]

Attempts to formalize the notion of metavariable result in some kind of type theory.[5]

See also[edit]


  1. ^ Hunter, p. 13.
  2. ^ Shoenfield 2001, p. 7.
  3. ^ Corcoran 2006, p. 220.
  4. ^ Tennent 2002, pp. 36–37, 210.
  5. ^ Masahiko Sato, Takafumi Sakurai, Yukiyoshi Kameyama, and Atsushi Igarashi. "Calculi of Meta-variables[permanent dead link]" in Computer Science Logic. 17th International Workshop CSL 2003. 12th Annual Conference of the EACSL. 8th Kurt Gödel Colloquium, KGC 2003, Vienna, Austria, August 25-30, 2003. Proceedings, Springer Lecture Notes in Computer Science 2803. ISBN 3-540-40801-0. pp. 484–497