sig
  type token =
      Brackl of Psl_ast.token
    | Brackr of Psl_ast.token
    | Parenl of Psl_ast.token
    | Parenr of Psl_ast.token
    | Bracel of Psl_ast.token
    | Bracer of Psl_ast.token
    | Comma of Psl_ast.token
    | Semicolon of Psl_ast.token
    | Colon of Psl_ast.token
    | Period_period of Psl_ast.token
    | Equal of Psl_ast.token
    | Colon_equal of Psl_ast.token
    | Aster of Psl_ast.token
    | Plus of Psl_ast.token
    | Bar_dash_gt of Psl_ast.token
    | Bar_equal_gt of Psl_ast.token
    | Lt_dash_gt of Psl_ast.token
    | Dash_gt of Psl_ast.token
    | Brackl_aster of Psl_ast.token
    | Brackl_plus_brackr of Psl_ast.token
    | Brackl_dash_gt of Psl_ast.token
    | Brackl_equal of Psl_ast.token
    | Amp_amp of Psl_ast.token
    | Amp of Psl_ast.token
    | Bar_bar of Psl_ast.token
    | Bar of Psl_ast.token
    | Bang of Psl_ast.token
    | Dollar of Psl_ast.token
    | At of Psl_ast.token
    | Period of Psl_ast.token
    | Slash of Psl_ast.token
    | A of Psl_ast.token
    | AG of Psl_ast.token
    | AF of Psl_ast.token
    | AX of Psl_ast.token
    | Abort of Psl_ast.token
    | Always of Psl_ast.token
    | Assert of Psl_ast.token
    | Assume of Psl_ast.token
    | Assume_guarantee of Psl_ast.token
    | Before of Psl_ast.token
    | Before_bang of Psl_ast.token
    | Before_bang_ of Psl_ast.token
    | Before_ of Psl_ast.token
    | Boolean of Psl_ast.token
    | Clock of Psl_ast.token
    | Const of Psl_ast.token
    | Countones of Psl_ast.token
    | Cover of Psl_ast.token
    | Default of Psl_ast.token
    | E of Psl_ast.token
    | EF of Psl_ast.token
    | EG of Psl_ast.token
    | EX of Psl_ast.token
    | Endpoint of Psl_ast.token
    | Eventually_bang of Psl_ast.token
    | F of Psl_ast.token
    | Fairness of Psl_ast.token
    | Fell of Psl_ast.token
    | Forall of Psl_ast.token
    | G of Psl_ast.token
    | In of Psl_ast.token
    | Inf of Psl_ast.token
    | Inherit of Psl_ast.token
    | Isunknown of Psl_ast.token
    | Never of Psl_ast.token
    | Next of Psl_ast.token
    | Next_bang of Psl_ast.token
    | Next_a of Psl_ast.token
    | Next_a_bang of Psl_ast.token
    | Next_e of Psl_ast.token
    | Next_e_bang of Psl_ast.token
    | Next_event of Psl_ast.token
    | Next_event_bang of Psl_ast.token
    | Next_event_a of Psl_ast.token
    | Next_event_a_bang of Psl_ast.token
    | Next_event_e of Psl_ast.token
    | Next_event_e_bang of Psl_ast.token
    | Onehot of Psl_ast.token
    | Onehot0 of Psl_ast.token
    | Property of Psl_ast.token
    | Prev of Psl_ast.token
    | Report of Psl_ast.token
    | Restrict of Psl_ast.token
    | Restrict_guarantee of Psl_ast.token
    | Rose of Psl_ast.token
    | Sequence of Psl_ast.token
    | Stable of Psl_ast.token
    | Strong of Psl_ast.token
    | U of Psl_ast.token
    | W of Psl_ast.token
    | Union of Psl_ast.token
    | Until of Psl_ast.token
    | Until_bang of Psl_ast.token
    | Until_bang_ of Psl_ast.token
    | Until_ of Psl_ast.token
    | Vmode of Psl_ast.token
    | Vprop of Psl_ast.token
    | Vunit of Psl_ast.token
    | Within of Psl_ast.token
    | X of Psl_ast.token
    | X_bang of Psl_ast.token
    | Negedge of Psl_ast.token
    | Posedge of Psl_ast.token
    | Equal_equal of Psl_ast.token
    | Bang_equal of Psl_ast.token
    | Lt of Psl_ast.token
    | Lt_equal of Psl_ast.token
    | Gt of Psl_ast.token
    | Gt_equal of Psl_ast.token
    | Dash of Psl_ast.token
    | Tildy of Psl_ast.token
    | Carrot of Psl_ast.token
    | Integer of Psl_ast.token
    | Integer_width of Psl_ast.token
    | Identifier of Psl_ast.token
    | Identifier_esc of Psl_ast.token
    | String of Psl_ast.token
    | EOF of Psl_ast.token
    | Lexer_error of Psl_ast.token
  val psl_specification :
    (Lexing.lexbuf -> Psl_parser.token) -> Lexing.lexbuf -> Psl_ast.spec
end