Orientifold

From formulasearchengine
Revision as of 19:34, 11 March 2013 by en>Addbot (Bot: Migrating 2 interwiki links, now provided by Wikidata on d:q3356307)
Jump to navigation Jump to search

In theoretical computer science and formal language theory, a prefix grammar is a type of string rewriting system, consisting of a set of string rewriting rules, and similar to a formal grammar or a semi-Thue system. What is specific about prefix grammars is not the shape of their rules, but the way in which they are applied: only prefixes are rewritten. The prefix grammars describe exactly all regular languages.[1]

Formal definition

A prefix grammar G is a 3-tuple, (Σ, S, P), where

  • Σ is a finite alphabet
  • S is a finite set of base strings over Σ
  • P is a set of production rules of the form uv where u and v are strings over Σ

For strings x, y, we write x →G y (and say: G can derive y from x in one step) if there are strings u, v, w such that x = vu, y = wu, and v → w is in P. Note that G is a binary relation on the strings of Σ.

The language of G, denoted L(G), is the set of strings derivable from S in zero or more steps: formally, the set of strings w such that for some s in S, s R w, where R is the transitive closure of G.

Example

The prefix grammar

  • Σ = {0, 1}
  • S = {01, 10}
  • P = {0 → 010, 10 → 100}

describes the language defined by the regular expression

01(01)*100*

See also

References

43 year old Petroleum Engineer Harry from Deep River, usually spends time with hobbies and interests like renting movies, property developers in singapore new condominium and vehicle racing. Constantly enjoys going to destinations like Camino Real de Tierra Adentro.