Terminals unused in grammar ERROR Grammar 0 $accept: input $end 1 input: %empty 2 | expr 3 | expr error 4 expr: match 5 | match relation expr 6 match: invert ATTRIBUTE '(' args ')' 7 | invert '(' expr ')' 8 args: ATTRIBUTE 9 | ATTRIBUTE args 10 relation: AND 11 | OR 12 invert: %empty 13 | NOT Terminals, with rules where they appear $end (0) 0 '(' (40) 6 7 ')' (41) 6 7 error (256) 3 ERROR (258) ATTRIBUTE (259) 6 8 9 AND (260) 10 OR (261) 11 NOT (262) 13 Nonterminals, with rules where they appear $accept (10) on left: 0 input (11) on left: 1 2 3, on right: 0 expr (12) on left: 4 5, on right: 2 3 5 7 match (13) on left: 6 7, on right: 4 5 args (14) on left: 8 9, on right: 6 9 relation (15) on left: 10 11, on right: 5 invert (16) on left: 12 13, on right: 6 7 State 0 0 $accept: . input $end NOT shift, and go to state 1 $end reduce using rule 1 (input) $default reduce using rule 12 (invert) input go to state 2 expr go to state 3 match go to state 4 invert go to state 5 State 1 13 invert: NOT . $default reduce using rule 13 (invert) State 2 0 $accept: input . $end $end shift, and go to state 6 State 3 2 input: expr . 3 | expr . error error shift, and go to state 7 $end reduce using rule 2 (input) State 4 4 expr: match . 5 | match . relation expr AND shift, and go to state 8 OR shift, and go to state 9 $default reduce using rule 4 (expr) relation go to state 10 State 5 6 match: invert . ATTRIBUTE '(' args ')' 7 | invert . '(' expr ')' ATTRIBUTE shift, and go to state 11 '(' shift, and go to state 12 State 6 0 $accept: input $end . $default accept State 7 3 input: expr error . $default reduce using rule 3 (input) State 8 10 relation: AND . $default reduce using rule 10 (relation) State 9 11 relation: OR . $default reduce using rule 11 (relation) State 10 5 expr: match relation . expr NOT shift, and go to state 1 $default reduce using rule 12 (invert) expr go to state 13 match go to state 4 invert go to state 5 State 11 6 match: invert ATTRIBUTE . '(' args ')' '(' shift, and go to state 14 State 12 7 match: invert '(' . expr ')' NOT shift, and go to state 1 $default reduce using rule 12 (invert) expr go to state 15 match go to state 4 invert go to state 5 State 13 5 expr: match relation expr . $default reduce using rule 5 (expr) State 14 6 match: invert ATTRIBUTE '(' . args ')' ATTRIBUTE shift, and go to state 16 args go to state 17 State 15 7 match: invert '(' expr . ')' ')' shift, and go to state 18 State 16 8 args: ATTRIBUTE . 9 | ATTRIBUTE . args ATTRIBUTE shift, and go to state 16 $default reduce using rule 8 (args) args go to state 19 State 17 6 match: invert ATTRIBUTE '(' args . ')' ')' shift, and go to state 20 State 18 7 match: invert '(' expr ')' . $default reduce using rule 7 (match) State 19 9 args: ATTRIBUTE args . $default reduce using rule 9 (args) State 20 6 match: invert ATTRIBUTE '(' args ')' . $default reduce using rule 6 (match)