Formal systems

In formal logic, a formal system (also called a logical calculus) consists of a formal language and a set of inference rules, used to derive (to conclude) an expression from one or more other premises that are antecedently supposed (axioms) or derived (theorems). The axioms and rules may be called a deductive apparatus. A formal system may be formulated and studied for its intrinsic properties, or it may be intended as a description (i.e. a model) of external phenomena.

Overview
Each formal system has a formal language, which is composed by primitive symbols. These symbols act on certain rules of formation and are developed by inference from a set of axioms. The system thus consists of any number of formulas built up through finite combinations of the primitive symbols—combinations that are formed from the axioms in accordance with the stated rules.

Formal systems in mathematics consist of the following elements:
 * 1) A finite set of symbols (i.e. the alphabet), that can be used for constructing formulas (i.e. finite strings of symbols).
 * 2) A grammar, which tells how well-formed formulas (abbreviated wff) are constructed out of the symbols in the alphabet. It is usually required that there be a decision procedure for deciding whether a formula is well formed or not.
 * 3) A set of axioms or axiom schemata: each axiom must be a wff.
 * 4) A set of inference rules.

A formal system is said to be recursive (i.e. effective) if the set of axioms and the set of inference rules are decidable sets or semidecidable sets, according to context.

Some theorists use the term formalism as a rough synonym for formal system, but the term is also used to refer to a particular style of notation, for example, Paul Dirac's bra-ket notation.

Logical system
A logical system or, for short, logic, is a formal system together with a form of semantics, usually in the form of model-theoretic interpretation, which assigns truth values to sentences of the formal language, that is, formulae that contain no free variables. A logic is sound if all sentences that can be derived are true in the interpretation, and complete if, conversely, all true sentences can be derived.

Formal proofs
Formal proofs are sequences of wffs. For a wff to qualify as part of a proof, it might either be an axiom or be the product of applying an inference rule on previous wffs in the proof sequence. The last wff in the sequence is recognized as a theorem.

The point of view that generating formal proofs is all there is to mathematics is often called formalism. David Hilbert founded metamathematics as a discipline for discussing formal systems. Any language that one uses to talk about a formal system is called a metalanguage. The metalanguage may be nothing more than ordinary natural language, or it may be partially formalized itself, but it is generally less completely formalized than the formal language component of the formal system under examination, which is then called the object language, that is, the object of the discussion in question.

Once a formal system is given, one can define the set of theorems which can be proved inside the formal system. This set consists of all wffs for which there is a proof. Thus all axioms are considered theorems. Unlike the grammar for wffs, there is no guarantee that there will be a decision procedure for deciding whether a given wff is a theorem or not. The notion of theorem just defined should not be confused with theorems about the formal system, which, in order to avoid confusion, are usually called metatheorems.

Formal language
In mathematics, logic, and computer science, a formal language is a language that is defined by precise mathematical or machine processable formulas. Like languages in linguistics, formal languages generally have two aspects:


 * the syntax of a language is what the language looks like (more formally: the set of possible expressions that are valid utterances in the language)
 * the semantics of a language are what the utterances of the language mean (which is formalized in various ways, depending on the type of language in question)

A special branch of mathematics and computer science exists that is devoted exclusively to the theory of language syntax: formal language theory. In formal language theory, a language is nothing more than its syntax; questions of semantics are not included in this specialty.

Formal grammar
In computer science and linguistics a formal grammar is a precise description of a formal language: a set of strings. The two main categories of formal grammar are that of generative grammars, which are sets of rules for how strings in a language can be generated, and that of analytic grammars, which are sets of rules for how a string can be analyzed to determine whether it is a member of the language. In short, an analytic grammar describes how to recognize when strings are members in the set, whereas a generative grammar describes how to write only those strings in the set.