syntax_ids: add_expr sub_expr mul_expr div_expr number_expr group_expr term expr rules: expr : expr plus term => new_node add_expr $0 $1 $2 : expr minus term => new_node sub_expr $0 $1 $2 : term => new_node expr $0 ; term : term multiply factor => new_node mul_expr $0 $1 $2 : term divide factor => new_node div_expr $0 $1 $2 : factor => new_node term $0 ; factor : number => new_node number_expr $0 : lparen expr rparen => new_node group_expr $1 ;