sig
  val debug_apply :
    string -> Xquery_core_ast.acexpr -> Xquery_core_ast.acexpr -> unit
  val get_opt_sbdo_arg_desc :
    Xquery_core_ast.acexpr -> Xquery_core_ast.acexpr_desc option
  val get_one_arg_from_call :
    Xquery_core_ast.acexpr -> Xquery_core_ast.acexpr
  val get_opt_sbdo_arg :
    Xquery_core_ast.acexpr ->
    (Xquery_common_ast.cfname * Xquery_core_ast.acexpr *
     ((Xquery_core_ast.csequencetype * Xquery_type_core_ast.cxtype) option
      list * (Xquery_core_ast.csequencetype * Xquery_type_core_ast.cxtype)) *
     Xquery_common_ast.updating_modifier)
    option
  val wrap_in_sbdo :
    Typing_context.static_context Ast_walker_rewrite_context.rewrite_context ->
    Xquery_core_ast.acexpr -> Xquery_core_ast.acexpr
  val wrap_in_fn_boolean :
    Typing_context.static_context Ast_walker_rewrite_context.rewrite_context ->
    Xquery_core_ast.acexpr -> Xquery_core_ast.acexpr
  val var_name_equals :
    Xquery_core_ast.acexpr -> Xquery_common_ast.cvname -> bool
  val is_free_var_of :
    Xquery_common_ast.cvname -> Xquery_core_ast.acexpr -> bool
  val observes_doc_order : Xquery_core_ast.acexpr -> bool
  val is_step : Xquery_core_ast.acexpr -> bool
  val mk_fn_false :
    Typing_context.static_context Ast_walker_rewrite_context.rewrite_context ->
    Xquery_ast.expr_handle -> Finfo.finfo -> Xquery_core_ast.acexpr
  val get_properties :
    Typing_context.static_context Ast_walker_rewrite_context.rewrite_context ->
    Xquery_core_ast.acexpr ->
    (Xquery_common_ast.cvname, bool * bool * bool * bool) Hashtbl.t ->
    bool * bool * bool * bool
  val is_in_tpnf : Xquery_core_ast.acexpr -> bool
  val is_in_tpnf' : Xquery_core_ast.acexpr -> bool
  val is_in_cxq_plus :
    Typing_context.static_context Ast_walker_rewrite_context.rewrite_context ->
    Xquery_core_ast.acexpr -> bool
end