Formal Language

Home > Languages > Formal Language

These are languages used in formal contexts, such as mathematics, computer programming, and logic.

Alphabets and Languages: An alphabet is a finite set of symbols, while a language is a set of words (strings) built from symbols in an alphabet.
Regular Expressions: Regular expressions are a notation to describe patterns of strings in a language. They are used to define regular languages.
Regular Languages: Regular languages are a type of language that can be recognized by a deterministic finite automaton (DFA) or a non-deterministic finite automaton (NFA).
Finite Automata: Finite automata are abstract machines that can recognize regular languages. DFAs are a type of finite automata that have a single accept state, while NFAs can have multiple accept states.
Context-Free Grammars: Context-free grammars are a notation for describing the structure of strings in a language. They are used to define context-free languages.
Context-Free Languages: Context-free languages are a type of language that can be recognized by a pushdown automaton (PDA) or a non-deterministic pushdown automaton (NPDA).
Pushdown Automata: Pushdown automata are abstract machines that can recognize context-free languages. PDAs are a type of pushdown automata that have a stack for storing symbols.
Turing Machines: Turing machines are abstract machines that can simulate any computer algorithm. They are used to define recursively enumerable languages and to study the limits of computation.
Recursively Enumerable Languages: Recursively enumerable languages are a type of language that can be recognized by a Turing machine. They are also known as Turing-recognizable languages.
" ... a formal language consists of words whose letters are taken from an alphabet and are well-formed according to a specific set of rules."
"The alphabet of a formal language consists of symbols, letters, or tokens that concatenate into strings of the language."
"The words that belong to a particular formal language are sometimes called well-formed words or well-formed formulas."
"A formal language is often defined by means of a formal grammar such as a regular grammar or context-free grammar, which consists of its formation rules."
"Formal languages are used among others as the basis for defining the grammar of programming languages and formalized versions of subsets of natural languages."
"Decision problems are typically defined as formal languages."
"Complexity classes are defined as the sets of the formal languages that can be parsed by machines with limited computational power."
"Formal languages are used to represent the syntax of axiomatic systems, and mathematical formalism is the philosophy that all of mathematics can be reduced to the syntactic manipulation of formal languages in this way."
"The field of formal language theory studies primarily the purely syntactical aspects of such languages—that is, their internal structural patterns."
"Formal language theory sprang out of linguistics..."
"...as a way of understanding the syntactic regularities of natural languages."
"In logic, mathematics, computer science, and linguistics..."
"A formal language is often defined by means of a formal grammar..."
"...such as a regular grammar or context-free grammar..."
"The field of formal language theory studies primarily the purely syntactical aspects of such languages..."
"Decision problems are typically defined as formal languages..."
"Mathematical formalism is the philosophy that all of mathematics can be reduced to the syntactic manipulation of formal languages..."
"...and formalized versions of subsets of natural languages in which the words of the language represent concepts that are associated with meanings or semantics."
"Each string concatenated from symbols of this alphabet is called a word..."
" ... the words that belong to a particular formal language are sometimes called well-formed words or well-formed formulas."