[agm_grammar1.xml] Found 10 Production Rules
Our Grammar is:

Terminal Tokens: (10)

   $  type:TERMINAL
   (  type:TERMINAL
   )  type:TERMINAL
   *  type:TERMINAL
   +  type:TERMINAL
   -  type:TERMINAL
   /  type:TERMINAL
   ^  type:TERMINAL
   identifier  type:TERMINAL
   integer_literal  type:TERMINAL

Non-Terminal Tokens: (2)

   START  type:NONTERMINAL
   expression  type:NONTERMINAL

Production Rules:
1: START  -->  expression  
0: SYSGOAL  -->  START   $  
2: expression  -->  expression   -   expression  
3: expression  -->  expression   +   expression  
4: expression  -->  expression   *   expression  
5: expression  -->  expression   /   expression  
6: expression  -->  expression   ^   expression  
7: expression  -->  identifier  
8: expression  -->  integer_literal  
9: expression  -->  (   expression   )  



FirstSets

First[START] :=    (   identifier   integer_literal

First[SYSGOAL] :=    (   identifier   integer_literal

First[expression] :=    (   identifier   integer_literal

FollowSets

Follow[START] :=    $

Follow[expression] :=    $   )   *   +   -   /   ^

THIS GRAMMAR IS NOT LL1

Parse Table:
CurrentLookAheadApply Rule
START(START --> expression 
STARTidentifierSTART --> expression 
STARTinteger_literalSTART --> expression 
SYSGOAL(SYSGOAL --> START $ 
SYSGOALidentifierSYSGOAL --> START $ 
SYSGOALinteger_literalSYSGOAL --> START $ 
expression(expression --> expression - expression 
expression(expression --> expression + expression 
expression(expression --> expression * expression 
expression(expression --> expression / expression 
expression(expression --> expression ^ expression 
expression(expression --> ( expression ) 
expressionidentifierexpression --> expression - expression 
expressionidentifierexpression --> expression + expression 
expressionidentifierexpression --> expression * expression 
expressionidentifierexpression --> expression / expression 
expressionidentifierexpression --> expression ^ expression 
expressionidentifierexpression --> identifier 
expressioninteger_literalexpression --> expression - expression 
expressioninteger_literalexpression --> expression + expression 
expressioninteger_literalexpression --> expression * expression 
expressioninteger_literalexpression --> expression / expression 
expressioninteger_literalexpression --> expression ^ expression 
expressioninteger_literalexpression --> integer_literal 



CFSM

State 0
  SYSGOAL  -->    START   $   2
  START  -->    expression   3
  expression  -->    expression   -   expression   3
  expression  -->    expression   +   expression   3
  expression  -->    expression   *   expression   3
  expression  -->    expression   /   expression   3
  expression  -->    expression   ^   expression   3
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1


State 2
  SYSGOAL  -->  START     $   6


State 6
  SYSGOAL  -->  START   $    


State 3
  START  -->  expression    
  expression  -->  expression     -   expression   9
  expression  -->  expression     +   expression   8
  expression  -->  expression     *   expression   7
  expression  -->  expression     /   expression   10
  expression  -->  expression     ^   expression   11


State 9
  expression  -->    expression   -   expression   12
  expression  -->  expression   -     expression   12
  expression  -->    expression   +   expression   12
  expression  -->    expression   *   expression   12
  expression  -->    expression   /   expression   12
  expression  -->    expression   ^   expression   12
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1


State 8
  expression  -->    expression   -   expression   13
  expression  -->    expression   +   expression   13
  expression  -->  expression   +     expression   13
  expression  -->    expression   *   expression   13
  expression  -->    expression   /   expression   13
  expression  -->    expression   ^   expression   13
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1


State 7
  expression  -->    expression   -   expression   14
  expression  -->    expression   +   expression   14
  expression  -->    expression   *   expression   14
  expression  -->  expression   *     expression   14
  expression  -->    expression   /   expression   14
  expression  -->    expression   ^   expression   14
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1


State 10
  expression  -->    expression   -   expression   15
  expression  -->    expression   +   expression   15
  expression  -->    expression   *   expression   15
  expression  -->    expression   /   expression   15
  expression  -->  expression   /     expression   15
  expression  -->    expression   ^   expression   15
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1


State 11
  expression  -->    expression   -   expression   16
  expression  -->    expression   +   expression   16
  expression  -->    expression   *   expression   16
  expression  -->    expression   /   expression   16
  expression  -->    expression   ^   expression   16
  expression  -->  expression   ^     expression   16
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1


State 1
  expression  -->    expression   -   expression   17
  expression  -->    expression   +   expression   17
  expression  -->    expression   *   expression   17
  expression  -->    expression   /   expression   17
  expression  -->    expression   ^   expression   17
  expression  -->    identifier   4
  expression  -->    integer_literal   5
  expression  -->    (   expression   )   1
  expression  -->  (     expression   )   17


State 12
  expression  -->  expression     -   expression   9
  expression  -->  expression   -   expression    
  expression  -->  expression     +   expression   8
  expression  -->  expression     *   expression   7
  expression  -->  expression     /   expression   10
  expression  -->  expression     ^   expression   11


State 13
  expression  -->  expression     -   expression   9
  expression  -->  expression     +   expression   8
  expression  -->  expression   +   expression    
  expression  -->  expression     *   expression   7
  expression  -->  expression     /   expression   10
  expression  -->  expression     ^   expression   11


State 14
  expression  -->  expression     -   expression   9
  expression  -->  expression     +   expression   8
  expression  -->  expression     *   expression   7
  expression  -->  expression   *   expression    
  expression  -->  expression     /   expression   10
  expression  -->  expression     ^   expression   11


State 15
  expression  -->  expression     -   expression   9
  expression  -->  expression     +   expression   8
  expression  -->  expression     *   expression   7
  expression  -->  expression     /   expression   10
  expression  -->  expression   /   expression    
  expression  -->  expression     ^   expression   11


State 16
  expression  -->  expression     -   expression   9
  expression  -->  expression     +   expression   8
  expression  -->  expression     *   expression   7
  expression  -->  expression     /   expression   10
  expression  -->  expression     ^   expression   11
  expression  -->  expression   ^   expression    


State 17
  expression  -->  expression     -   expression   9
  expression  -->  expression     +   expression   8
  expression  -->  expression     *   expression   7
  expression  -->  expression     /   expression   10
  expression  -->  expression     ^   expression   11
  expression  -->  (   expression     )   18


State 4
  expression  -->  identifier    


State 5
  expression  -->  integer_literal    


State 18
  expression  -->  (   expression   )