sig
  val annotate_context :
    Logical_algebra_types.logical_compile_context ->
    Algebra_type.alg_compile_context
  val annotate_statement :
    Algebra_type.alg_compile_context ->
    Logical_algebra_types.logical_algop_expr -> Algebra_type.algop_expr
  val annotate_expr :
    Algebra_type.alg_compile_context ->
    Logical_algebra_types.logical_algop_expr -> Algebra_type.algop_expr
  val annotate_prolog :
    Logical_algebra_types.logical_compile_context ->
    Logical_algebra_types.logical_algop_prolog ->
    Algebra_type.algop_prolog * Algebra_type.alg_compile_context
  val annotate_prolog_with_bindings :
    Algebra_type.alg_compile_context ->
    Logical_algebra_types.logical_algop_prolog ->
    Algebra_type.algop_prolog * Algebra_type.alg_compile_context
  val annotate_module :
    Logical_algebra_types.logical_compile_context ->
    Logical_algebra_types.logical_algop_xmodule ->
    Algebra_type.algop_xmodule * Algebra_type.alg_compile_context
  val annotate_module_with_bindings :
    Algebra_type.alg_compile_context ->
    Logical_algebra_types.logical_algop_xmodule ->
    Algebra_type.algop_xmodule * Algebra_type.alg_compile_context
  val make_temp_annotated_expr :
    Xquery_algebra_ast.algop_expr_name ->
    Algebra_type.algop_sub_exprs ->
    Algebra_type.algop_sub_exprs -> Finfo.finfo -> Algebra_type.algop_expr
end