[Overview] [Previous] [Next]
Preliminary Definitions
A variable is useful if it occurs in the derivation
of some string.
This requires that
- the variable occurs in some sentential form (you can get
to the variable if you start from S), and
- a string of terminals can be derived from the sentential form
(the variable isn't a "dead end").
A variable is recursive if it can generate a string
containing itself.
For example, variable A is recursive if
S
uAy
for some values of u and y.
A recursive variable A can be either
- directly recursive, that is, there is a production A
x1Ax2
for some strings x1, x2
(T
V)*, or
- indirectly recursive, that is, there is are
variables Xi and productions
A
...X1...
X1
...X2...
X2
...X3...
...
XN
...A...
Copyright © 1996 by David Matuszek
Last modified Mar 20, 1996