// Signature file for parser generated by fsyacc
module Parser
type token = 
  | STAR_MARK
  | STAR_START
  | STAR_TERMINATE
  | LSQRBKT
  | RSQRBKT
  | BEGINT
  | ENDT
  | BASE_TYPE
  | IMPLY
  | LANGLE
  | RANGLE
  | AND
  | COLON
  | END_RULE
  | PROJECT
  | LET
  | PLUS
  | MINUS
  | MULTIPLY
  | DIVIDE
  | ERROR
  | EOF
  | CONSTRAINT
  | ANDAND
  | OROR
  | NOT
  | GE
  | LE
  | EQ
  | NEQ
  | Q0
  | M0
  | GAMMA0
  | CT_CONFIG
  | CT_RULES
  | CT_TYPE
  | CT_GRAMMAR
  | CT_TOTAL
  | CT_MAPPING
  | MT_PAHORS
  | MT_RPTSA
  | MT_PPDA
  | MT_PBPA
  | MT_DRA
  | COMMA
  | ASSIGN
  | TER
  | OMEGA
  | LBKT
  | RBKT
  | BEGIN
  | END
  | LPAREN
  | RPAREN
  | QUOTES
  | NEWLINE
  | RESTRICTION
  | END_BLOCK_COMMENTING
  | DOUBLE of ( PTSV.Global.NumericType )
  | INT of ( System.Int32 )
  | ID of ( string )
type tokenId = 
    | TOKEN_STAR_MARK
    | TOKEN_STAR_START
    | TOKEN_STAR_TERMINATE
    | TOKEN_LSQRBKT
    | TOKEN_RSQRBKT
    | TOKEN_BEGINT
    | TOKEN_ENDT
    | TOKEN_BASE_TYPE
    | TOKEN_IMPLY
    | TOKEN_LANGLE
    | TOKEN_RANGLE
    | TOKEN_AND
    | TOKEN_COLON
    | TOKEN_END_RULE
    | TOKEN_PROJECT
    | TOKEN_LET
    | TOKEN_PLUS
    | TOKEN_MINUS
    | TOKEN_MULTIPLY
    | TOKEN_DIVIDE
    | TOKEN_ERROR
    | TOKEN_EOF
    | TOKEN_CONSTRAINT
    | TOKEN_ANDAND
    | TOKEN_OROR
    | TOKEN_NOT
    | TOKEN_GE
    | TOKEN_LE
    | TOKEN_EQ
    | TOKEN_NEQ
    | TOKEN_Q0
    | TOKEN_M0
    | TOKEN_GAMMA0
    | TOKEN_CT_CONFIG
    | TOKEN_CT_RULES
    | TOKEN_CT_TYPE
    | TOKEN_CT_GRAMMAR
    | TOKEN_CT_TOTAL
    | TOKEN_CT_MAPPING
    | TOKEN_MT_PAHORS
    | TOKEN_MT_RPTSA
    | TOKEN_MT_PPDA
    | TOKEN_MT_PBPA
    | TOKEN_MT_DRA
    | TOKEN_COMMA
    | TOKEN_ASSIGN
    | TOKEN_TER
    | TOKEN_OMEGA
    | TOKEN_LBKT
    | TOKEN_RBKT
    | TOKEN_BEGIN
    | TOKEN_END
    | TOKEN_LPAREN
    | TOKEN_RPAREN
    | TOKEN_QUOTES
    | TOKEN_NEWLINE
    | TOKEN_RESTRICTION
    | TOKEN_END_BLOCK_COMMENTING
    | TOKEN_DOUBLE
    | TOKEN_INT
    | TOKEN_ID
    | TOKEN_end_of_input
    | TOKEN_error
type nonTerminalId = 
    | NONTERM__startlinear_type
    | NONTERM__startfile
    | NONTERM_file
    | NONTERM_maybe_def_lines
    | NONTERM_def_lines
    | NONTERM_def_line
    | NONTERM_prob_model_def
    | NONTERM_str_gen_rptsadef
    | NONTERM_pahorsdef
    | NONTERM_pahors_type_def_lines
    | NONTERM_pahors_rule_def_lines
    | NONTERM_pahors_type_def
    | NONTERM_pahors_rule_def
    | NONTERM_pahors_term
    | NONTERM_app_term_list
    | NONTERM_non_app_term
    | NONTERM_term_comma_list
    | NONTERM_linear_type
    | NONTERM_imply_type
    | NONTERM_product_type
    | NONTERM_basic_type
    | NONTERM_rptsadef
    | NONTERM_rptsa_config
    | NONTERM_str_gen_rptsa_rule_lines
    | NONTERM_str_gen_rptsa_rule
    | NONTERM_str_gen_transop
    | NONTERM_rptsa_rule_lines
    | NONTERM_rptsa_rule
    | NONTERM_score
    | NONTERM_transop
    | NONTERM_prob_state_list
    | NONTERM_prob_state_item
    | NONTERM_ppdadef
    | NONTERM_ppda_config
    | NONTERM_ppda_rule_list
    | NONTERM_ppda_rule
    | NONTERM_ppda_transop
    | NONTERM_pbpadef
    | NONTERM_pbpa_rule_list
    | NONTERM_pbpa_rule
    | NONTERM_acc_condition_lines
    | NONTERM_acc_condition_line
    | NONTERM_dra_def
    | NONTERM_dra_rule_lines
    | NONTERM_dra_rule
    | NONTERM_dra_rule_mappings
    | NONTERM_pahors_mapping_rule_list
    | NONTERM_rptsa_mapping_rule_list
    | NONTERM_ppda_mapping_rule_list
    | NONTERM_pbpa_mapping_rule_list
    | NONTERM_pahors_mapping_rule
    | NONTERM_rptsa_mapping_rule
    | NONTERM_ppda_mapping_rule
    | NONTERM_pbpa_mapping_rule
    | NONTERM_ident
    | NONTERM_ident_list
    | NONTERM_assigns
    | NONTERM_number
    | NONTERM_number_expr
    | NONTERM_mul_expr
    | NONTERM_ele_expr
    | NONTERM_bool_expr
    | NONTERM_and_bool_expr
    | NONTERM_bool_expr_element
    | NONTERM_cmp_op
/// This function maps tokens to integer indexes
val tagOfToken: token -> int

/// This function maps integer indexes to symbolic token ids
val tokenTagToTokenId: int -> tokenId

/// This function maps production indexes returned in syntax errors to strings representing the non terminal that would be produced by that production
val prodIdxToNonTerminal: int -> nonTerminalId

/// This function gets the name of a token as a string
val token_to_string: token -> string
val linear_type : (FSharp.Text.Lexing.LexBuffer<'cty> -> token) -> FSharp.Text.Lexing.LexBuffer<'cty> -> ( PTSV.ParserSupport.ParseType ) 
val file : (FSharp.Text.Lexing.LexBuffer<'cty> -> token) -> FSharp.Text.Lexing.LexBuffer<'cty> -> ( PTSV.ParserSupport.ParseResult ) 
