Start of CONSTRUCTOR for the Grammar GA33.grm Sat Apr 03 15:59:21 2004
Terminal alphabet
# 1 = #
# 2 = a
# 3 = b
# 4 = c
Nonterminal alphabet
# 5 = `X1'
# 6 = `X2'
# 7 = `X3'
# 8 = `X4'
# 9 = `X5'
Productions
P 1: `X1' -> # a `X2' #
P 2: `X2' -> a `X2' `X3'
P 3: `X2' -> b
P 4: `X3' -> b
P 5: `X1' -> # a `X4' #
P 6: `X4' -> a `X4' `X5'
P 7: `X4' -> c
P 8: `X5' -> c
Leftmost-set
Symbol | # | a | b | c | X1 | X2 | X3 | X4 | X5 |
5.X1 | * | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
6.X2 | 0 | * | * | 0 | 0 | 0 | 0 | 0 | 0 |
7.X3 | 0 | 0 | * | 0 | 0 | 0 | 0 | 0 | 0 |
8.X4 | 0 | * | 0 | * | 0 | 0 | 0 | 0 | 0 |
9.X5 | 0 | 0 | 0 | * | 0 | 0 | 0 | 0 | 0 |
Rightmost-set
Symbol | # | a | b | c | X1 | X2 | X3 | X4 | X5 |
5.X1 | * | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
6.X2 | 0 | 0 | * | 0 | 0 | 0 | * | 0 | 0 |
7.X3 | 0 | 0 | * | 0 | 0 | 0 | 0 | 0 | 0 |
8.X4 | 0 | 0 | 0 | * | 0 | 0 | 0 | 0 | * |
9.X5 | 0 | 0 | 0 | * | 0 | 0 | 0 | 0 | 0 |
Leftmost & rightmost sets
`X1' leftmost set: `#'
`X1' rightmost set: #
`X2' leftmost set: `a' , `b'
`X2' rightmost set: b , X3
`X3' leftmost set: `b'
`X3' rightmost set: b
`X4' leftmost set: `a' , `c'
`X4' rightmost set: c , X5
`X5' leftmost set: `c'
`X5' rightmost set: c
Precedence matrix
Symbol | # | a | b | c | X1 | X2 | X3 | X4 | X5 |
1.# | 0 | = | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
2.a | 0 | < | < | < | 0 | = | 0 | = | 0 |
3.b | > | 0 | > | 0 | 0 | 0 | > | 0 | 0 |
4.c | > | 0 | 0 | > | 0 | 0 | 0 | 0 | > |
5.X1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
6.X2 | = | 0 | < | 0 | 0 | 0 | = | 0 | 0 |
7.X3 | > | 0 | > | 0 | 0 | 0 | > | 0 | 0 |
8.X4 | = | 0 | 0 | < | 0 | 0 | 0 | 0 | = |
9.X5 | > | 0 | 0 | > | 0 | 0 | 0 | 0 | > |
The relationships of symbol #1 #:
The relationships of symbol #2 a:
< a | < b | < c | = `X2' | = `X4' |
The relationships of symbol #3 b:
The relationships of symbol #4 c:
The relationships of symbol #5 `X1':
The relationships of symbol #6 `X2':
The relationships of symbol #7 `X3':
The relationships of symbol #8 `X4':
The relationships of symbol #9 `X5':
Grammar GA33.grm is a precedence grammar
Grammar GA33.grm is not invertible
Left Context
Symbol | # | a | b | c | X1 | X2 | X3 | X4 | X5 |
5.X1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
6.X2 | 0 | * | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
7.X3 | 0 | 0 | 0 | 0 | 0 | * | 0 | 0 | 0 |
8.X4 | 0 | * | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
9.X5 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | * | 0 |
Right Context
Symbol | # | a | b | c |
5.X1 | 0 | 0 | 0 | 0 |
6.X2 | * | 0 | * | 0 |
7.X3 | * | 0 | * | 0 |
8.X4 | * | 0 | 0 | * |
9.X5 | * | 0 | 0 | * |
Independent context
`X1' left context:
`X1' right context:
`X2' left context: a
`X2' right context: # , b
`X3' left context: `X2'
`X3' right context: # , b
`X4' left context: a
`X4' right context: # , c
`X5' left context: `X4'
`X5' right context: # , c
Equivalent definitions:
`X2' > b & `X3' > b
`X2' left context: a
`X2' right context: # , b
`X3' left context: `X2'
`X3' right context: # , b
The left context of `X2' and `X3' is different
Equivalent definitions:
`X4' > c & `X5' > c
`X4' left context: a
`X4' right context: # , c
`X5' left context: `X4'
`X5' right context: # , c
The left context of `X4' and `X5' is different
Grammar GA33.grm is BRC(1|1)-reducible
Semantics
Semantics file is GA33.sem
#=1
a=2
b=3
c=4
P1=5 $P 1: `X1' -> # a `X2' #
P2=6 $P 2: `X2' -> a `X2' `X3'
P3=7 $P 3: `X2' -> b
P4=8 $P 4: `X3' -> b
P5=9 $P 5: `X1' -> # a `X4' #
P6=10 $P 6: `X4' -> a `X4' `X5'
P7=11 $P 7: `X4' -> c
P8=12 $P 8: `X5' -> c
Result tables
File | Size |
GA33.prm | 28 |
GA33.pm | 100 |
GA33.t | 200 |
GA33.tt | 100 |
GA33.ht | 1352 |
GA33.sm | 56 |
GA33.v | 520 |
GA33.lc | 100 |
GA33.rc | 100 |
Look at result tablesFinish of CONSTRUCTOR Sat Apr 03 15:59:21 2004