Misplaced Pages

Cone (formal languages)

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

In formal language theory, a cone is a set of formal languages that has some desirable closure properties enjoyed by some well-known sets of languages, in particular by the families of regular languages, context-free languages and the recursively enumerable languages. The concept of a cone is a more abstract notion that subsumes all of these families. A similar notion is the faithful cone, having somewhat relaxed conditions. For example, the context-sensitive languages do not form a cone, but still have the required properties to form a faithful cone.

The terminology cone has a French origin. In the American oriented literature one usually speaks of a full trio. The trio corresponds to the faithful cone.

Definition

A cone is a family S {\displaystyle {\mathcal {S}}} of languages such that S {\displaystyle {\mathcal {S}}} contains at least one non-empty language, and for any L S {\displaystyle L\in {\mathcal {S}}} over some alphabet Σ {\displaystyle \Sigma } ,

  • if h {\displaystyle h} is a homomorphism from Σ {\displaystyle \Sigma ^{\ast }} to some Δ {\displaystyle \Delta ^{\ast }} , the language h ( L ) {\displaystyle h(L)} is in S {\displaystyle {\mathcal {S}}} ;
  • if h {\displaystyle h} is a homomorphism from some Δ {\displaystyle \Delta ^{\ast }} to Σ {\displaystyle \Sigma ^{\ast }} , the language h 1 ( L ) {\displaystyle h^{-1}(L)} is in S {\displaystyle {\mathcal {S}}} ;
  • if R {\displaystyle R} is any regular language over Σ {\displaystyle \Sigma } , then L R {\displaystyle L\cap R} is in S {\displaystyle {\mathcal {S}}} .

The family of all regular languages is contained in any cone.

If one restricts the definition to homomorphisms that do not introduce the empty word λ {\displaystyle \lambda } then one speaks of a faithful cone; the inverse homomorphisms are not restricted. Within the Chomsky hierarchy, the regular languages, the context-free languages, and the recursively enumerable languages are all cones, whereas the context-sensitive languages and the recursive languages are only faithful cones.

Relation to Transducers

A finite state transducer is a finite state automaton that has both input and output. It defines a transduction T {\displaystyle T} , mapping a language L {\displaystyle L} over the input alphabet into another language T ( L ) {\displaystyle T(L)} over the output alphabet. Each of the cone operations (homomorphism, inverse homomorphism, intersection with a regular language) can be implemented using a finite state transducer. And, since finite state transducers are closed under composition, every sequence of cone operations can be performed by a finite state transducer.

Conversely, every finite state transduction T {\displaystyle T} can be decomposed into cone operations. In fact, there exists a normal form for this decomposition, which is commonly known as Nivat's Theorem: Namely, each such T {\displaystyle T} can be effectively decomposed as T ( L ) = g ( h 1 ( L ) R ) {\displaystyle T(L)=g(h^{-1}(L)\cap R)} , where g , h {\displaystyle g,h} are homomorphisms, and R {\displaystyle R} is a regular language depending only on T {\displaystyle T} .

Altogether, this means that a family of languages is a cone if and only if it is closed under finite state transductions. This is a very powerful set of operations. For instance one easily writes a (nondeterministic) finite state transducer with alphabet { a , b } {\displaystyle \{a,b\}} that removes every second b {\displaystyle b} in words of even length (and does not change words otherwise). Since the context-free languages form a cone, they are closed under this exotic operation.

See also

Notes

  1. Ginsburg & Greibach (1967)
  2. Nivat (1968)
  3. cf. Mateescu & Salomaa (1997)

References

  • Ginsburg, Seymour; Greibach, Sheila (1967). "Abstract Families of Languages". Conference Record of 1967 Eighth Annual Symposium on Switching and Automata Theory, 18–20 October 1967, Austin, Texas, USA. IEEE. pp. 128–139.

External links

Category: