sig
  type token =
      VAR of string
    | PREFIX_PRED of string
    | INFIX_PRED of string
    | NEG_INFIX_PRED of string
    | PREFIX_FUNC of string
    | INFIX_FUNC of string
    | POSTFIX_FUNC of string
    | UNOP of string
    | BINOP1 of string
    | BINOP2 of string
    | QUANT of string
    | LPAR
    | RPAR
    | LBR
    | RBR
    | COMMA
    | EOF
  val main :
    (Stdlib.Lexing.lexbuf -> FML_parser.token) ->
    Stdlib.Lexing.lexbuf -> FML_types.t_fml
end