Literal movement grammar explained

In linguistics and theoretical computer science, literal movement grammars (LMGs) are a grammar formalism intended to characterize certain extraposition phenomena of natural language such as topicalization and cross-serial dependency. LMGs extend the class of context free grammars (CFGs) by adding introducing pattern-matched function-like rewrite semantics, as well as the operations of variable binding and slash deletion. LMGs were introduced by A.V. Groenink in 1995.[1]

Description

S\to\alpha

for some non-terminal

S

and some string of terminals and/or non-terminals

\alpha

, an LMG rewrite rule obeys the general schema

X(x1,...,xn)\to\alpha

, where X is a non-terminal with arity n (called a predicate in LMG terminology), and

\alpha

is a string of "items", as defined below. The arguments

xi

are strings of terminal symbols and/or variable symbols defining an argument pattern. In the case where an argument pattern has multiple adjacent variable symbols, the argument pattern will match any and all partitions of the actual value that unify. Thus, if the predicate is

f(xy)

and the actual pattern is

f(ab)

, there are three valid matches:

x=\epsilon,y=ab;x=a,y=b;x=ab,y=\epsilon

. In this way, a single rule is actually a family of alternatives.

An "item" in a literal movement grammar is one of

f(x1,\ldots,xn)

, a predicate of arity n,

x:f(x1,\ldots,xn)

, a variable binding x to the string produced by

f(x1,...,xn)

, or

f(x1,\ldots,xn)/\alpha

, a slash deletion of

f(x1,...,xn)

by the string of terminals and/or variables

\alpha

.

In a rule like

f(x1,...,xm)\to\alphay:g(z1,...zn)\beta

, the variable y is bound to whatever terminal string the g predicate produces, and in

\alpha

and

\beta

, all occurrences of y are replaced by that string, and

\alpha

and

\beta

are produced as if terminal string had always been there.

An item

x/y

, where x is something that produces a terminal string (either a terminal string itself or some predicate), and y is a string of terminals and/or variables, is rewritten as the empty string (

\epsilon

) if and only if

g(y1,...,yn)=z

, and otherwise cannot be rewritten at all.

Example

LMGs can characterize the non-CF language

\{anbncn:n\geq1\}

as follows:

S\tox:AB(x)

A\toaA

A\to\epsilon

B(xy)\toa/xbB(y)c

B(\epsilon)\to\epsilon

The derivation for , using parentheses also for grouping, is therefore

S\tox:AB(x)\tox:(aA)B(x)\tox:(aaA)B(x)\tox:aaB(x)\toaaB(aa)

\toaaa/abB(a)c\toaabB(a)c\toaaba/abBcc\toaabbBcc\toaabbcc

Computational power

Languages generated by LMGs contain the context-free languages as a proper subset, as every CFG is an LMG where all predicates have arity 0 and no production rule contains variable bindings or slash deletions.

References

  1. Groenink, Annius V. 1995. Literal Movement Grammars. In Proceedings of the 7th EACL Conference.