Puneet Varma (Editor)

Literal movement grammar

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit

Literal movement grammars (LMGs) are a grammar formalism introduced by Groenink in 1995 intended to characterize certain extraposition phenomena of natural language such as topicalization and cross-serial dependencies. LMGs extend the class of CFGs by adding introducing pattern-matched function-like rewrite semantics, as well as the operations of variable binding and slash deletion.

Contents

Description

The basic rewrite operation of an LMG is very similar to that of a CFG, with the addition of "arguments" to the non-terminal symbols. Where a context-free rewrite rule obeys the general schema S α for some non-terminal S and some string of terminals and/or non-terminals α , an LMG rewrite rule obeys the general schema X ( x 1 , . . . , x n ) α , where X is a non-terminal with arity n (called a predicate in LMG terminology), and α is a string of "items", as defined below. The arguments x i 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 ( x y ) and the actual pattern is f ( a b ) , there are three valid matches: x = ϵ ,   y = a b ;   x = a ,   y = b ;   x = a b ,   y = ϵ . In this way, a single rule is actually a family of alternatives.

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

  • f ( x 1 , , x n ) , a predicate of arity n,
  • x : f ( x 1 , , x n ) , a variable binding x to the string produced by f ( x 1 , . . . , x n ) , or
  • f ( x 1 , , x n ) / α , a slash deletion of f ( x 1 , . . . , x n ) by the string of terminals and/or variables α .
  • In a rule like f ( x 1 , . . . , x m ) α   y : g ( z 1 , . . . z n )   β , the variable y is bound to whatever terminal string the g predicate produces, and in α and β , all occurrences of y are replaced by that string, and α and β 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 ( ϵ ) if and only if g ( y 1 , . . . , y n ) = z , and otherwise cannot be rewritten at all.

    Example

    LMGs can characterize the non-CF language { a n b n c n : n 1 } as follows:

    S ( ) x : A ( )   B ( x ) A ( ) a   A ( ) A ( ) ϵ B ( x y ) a / x   b   B ( y ) c B ( ϵ ) ϵ

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

    S ( ) x : A ( )   B ( x ) x : ( a   A ( ) )   B ( x ) x : ( a a   A ( ) )   B ( x ) x : a a   B ( x ) a a   B ( a a )

    a a   a / a   b   B ( a )   c a a b   B ( a )   c a a b   a / a   b   B ( )   c c a a b b   B ( )   c c   a a b b c c

    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

    Literal movement grammar Wikipedia