Grammar has 20 nonterminal symbols, among which 7 start symbols. Grammar has 22 terminal symbols. Grammar has 52 productions. nullable(term_list) = false nullable(term_eof) = false nullable(term) = false nullable(symbol_status) = false nullable(status_eof) = false nullable(status) = true nullable(rule_set_eof) = false nullable(rule_set) = true nullable(rule) = false nullable(precedence_eof) = false nullable(precedence) = true nullable(ordered_list) = false nullable(order_constraint_eof) = false nullable(ident) = false nullable(formula) = false nullable(equation_set_eof) = false nullable(equation_set) = true nullable(equation_eof) = false nullable(equation) = false nullable(comp) = false first(term_list) = VAR_IDENT PREFIX_IDENT OPENPAR first(term_eof) = VAR_IDENT PREFIX_IDENT OPENPAR first(term) = VAR_IDENT PREFIX_IDENT OPENPAR first(symbol_status) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT first(status_eof) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT EOF first(status) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT first(rule_set_eof) = VAR_IDENT PREFIX_IDENT OPENPAR EOF first(rule_set) = VAR_IDENT PREFIX_IDENT OPENPAR first(rule) = VAR_IDENT PREFIX_IDENT OPENPAR first(precedence_eof) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT EOF first(precedence) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT first(ordered_list) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT first(order_constraint_eof) = VAR_IDENT PREFIX_IDENT OPENPAR NOT first(ident) = PREFIX_IDENT POSTFIX_IDENT INFIX_IDENT first(formula) = VAR_IDENT PREFIX_IDENT OPENPAR NOT first(equation_set_eof) = VAR_IDENT PREFIX_IDENT OPENPAR EOF first(equation_set) = VAR_IDENT PREFIX_IDENT OPENPAR first(equation_eof) = VAR_IDENT PREFIX_IDENT OPENPAR first(equation) = VAR_IDENT PREFIX_IDENT OPENPAR first(comp) = NE LT LE GT GE EQ follow(term_list) = CLOSEPAR follow(term_eof) = # follow(term) = SEMICOLON POSTFIX_IDENT OR NE LT LE INFIX_IDENT GT GE EQ EOF COMMA CLOSEPAR ARROW AND follow(symbol_status) = SEMICOLON EOF follow(status_eof) = # follow(status) = EOF follow(rule_set_eof) = # follow(rule_set) = EOF follow(rule) = SEMICOLON EOF follow(precedence_eof) = # follow(precedence) = EOF follow(ordered_list) = EOF COMMA follow(order_constraint_eof) = # follow(ident) = RL_LEX MUL LT LR_LEX GT EQ EOF COMMA follow(formula) = OR EOF CLOSEPAR AND follow(equation_set_eof) = # follow(equation_set) = EOF follow(equation_eof) = # follow(equation) = SEMICOLON EOF follow(comp) = VAR_IDENT PREFIX_IDENT OPENPAR Built an LR(0) automaton with 100 states. The grammar is not SLR(1) -- 6 states have a conflict. Built an LR(1) automaton with 100 states. 11 shift/reduce conflicts were silently solved. File "cime-terms.mly", line 31, characters 0-9: Warning: the precedence level assigned to EQ is never useful. File "cime-terms.mly", line 31, characters 0-9: Warning: the precedence level assigned to GE is never useful. File "cime-terms.mly", line 31, characters 0-9: Warning: the precedence level assigned to GT is never useful. File "cime-terms.mly", line 31, characters 0-9: Warning: the precedence level assigned to LE is never useful. File "cime-terms.mly", line 31, characters 0-9: Warning: the precedence level assigned to LT is never useful. File "cime-terms.mly", line 31, characters 0-9: Warning: the precedence level assigned to NE is never useful. 42 out of 100 states have a default reduction. 28 out of 100 states are represented. 0 out of 51 symbols keep track of their start position. 0 out of 51 symbols keep track of their end position. 31 out of 59 productions exploit shiftreduce optimization. 0 out of 100 states can peek at an error. 291 functions before inlining, 46 functions after inlining.