void initialize_vm_rb_map() { DECLARE_VM_BUILTIN(name({"rb_map", "mk_core"}), rb_map_mk_core); DECLARE_VM_BUILTIN(name({"rb_map", "size"}), rb_map_size); DECLARE_VM_BUILTIN(name({"rb_map", "insert"}), rb_map_insert); DECLARE_VM_BUILTIN(name({"rb_map", "erase"}), rb_map_erase); DECLARE_VM_BUILTIN(name({"rb_map", "contains"}), rb_map_contains); DECLARE_VM_BUILTIN(name({"rb_map", "find"}), rb_map_find); DECLARE_VM_BUILTIN(name({"rb_map", "min"}), rb_map_min); DECLARE_VM_BUILTIN(name({"rb_map", "max"}), rb_map_max); DECLARE_VM_BUILTIN(name({"rb_map", "fold"}), rb_map_fold); }
void initialize_vm_array() { DECLARE_VM_BUILTIN(name({"array", "mk"}), array_mk); DECLARE_VM_BUILTIN(name({"mk_array"}), mk_array); DECLARE_VM_BUILTIN(name({"array", "data"}), array_read); DECLARE_VM_BUILTIN(name({"array", "read"}), array_read); DECLARE_VM_BUILTIN(name({"array", "write"}), array_write); DECLARE_VM_BUILTIN(name({"array", "push_back"}), array_push_back); DECLARE_VM_BUILTIN(name({"array", "pop_back"}), array_pop_back); DECLARE_VM_BUILTIN(name({"array", "foreach"}), array_foreach); DECLARE_VM_BUILTIN(name({"array", "iterate"}), array_iterate); DECLARE_VM_CASES_BUILTIN(name({"array", "cases_on"}), array_cases_on); }
void initialize_fun_info_tactics() { DECLARE_VM_BUILTIN(name({"tactic", "get_fun_info"}), tactic_get_fun_info); DECLARE_VM_BUILTIN(name({"tactic", "get_subsingleton_info"}), tactic_get_subsingleton_info); DECLARE_VM_BUILTIN(name({"tactic", "get_spec_subsingleton_info"}), tactic_get_spec_subsingleton_info); DECLARE_VM_BUILTIN(name({"tactic", "get_spec_prefix_size"}), tactic_get_spec_prefix_size); }
void initialize_info_manager() { DECLARE_VM_BUILTIN(name({"tactic", "save_info_thunk"}), tactic_save_info_thunk); }
void initialize_vm_level() { DECLARE_VM_BUILTIN(name({"level", "zero"}), level_zero); DECLARE_VM_BUILTIN(name({"level", "succ"}), level_succ); DECLARE_VM_BUILTIN(name({"level", "max"}), level_max); DECLARE_VM_BUILTIN(name({"level", "imax"}), level_imax); DECLARE_VM_BUILTIN(name({"level", "param"}), level_param); DECLARE_VM_BUILTIN(name({"level", "global"}), level_global); DECLARE_VM_BUILTIN(name({"level", "meta"}), level_meta); DECLARE_VM_BUILTIN(name({"level", "has_decidable_eq"}), level_has_decidable_eq); DECLARE_VM_BUILTIN(name({"level", "lt"}), level_lt); DECLARE_VM_BUILTIN(name({"level", "lex_lt"}), level_lex_lt); DECLARE_VM_BUILTIN(name({"level", "eqv"}), level_eqv); DECLARE_VM_BUILTIN(name({"level", "normalize"}), level_normalize); DECLARE_VM_BUILTIN(name({"level", "occurs"}), level_occurs); DECLARE_VM_BUILTIN(name({"level", "to_format"}), level_to_format); DECLARE_VM_BUILTIN(name({"level", "to_string"}), level_to_string); DECLARE_VM_BUILTIN(name({"level", "fold"}), level_fold); DECLARE_VM_BUILTIN(name({"level", "instantiate"}), level_instantiate); DECLARE_VM_CASES_BUILTIN(name({"level", "cases_on"}), level_cases_on); }
void initialize_vm_exceptional() { DECLARE_VM_BUILTIN("_throwable_to_format", throwable_to_format); }
void initialize_clear_tactic() { DECLARE_VM_BUILTIN(name({"tactic", "clear"}), tactic_clear); }
void initialize_vm_format() { DECLARE_VM_BUILTIN(name({"format", "line"}), format_line); DECLARE_VM_BUILTIN(name({"format", "space"}), format_space); DECLARE_VM_BUILTIN(name({"format", "nil"}), format_nil); DECLARE_VM_BUILTIN(name({"format", "compose"}), format_compose); DECLARE_VM_BUILTIN(name({"format", "nest"}), format_nest); DECLARE_VM_BUILTIN(name({"format", "highlight"}), format_highlight); DECLARE_VM_BUILTIN(name({"format", "group"}), format_group); DECLARE_VM_BUILTIN(name({"format", "of_string"}), format_of_string); DECLARE_VM_BUILTIN(name({"format", "of_nat"}), format_of_nat); DECLARE_VM_BUILTIN(name({"format", "flatten"}), format_flatten); DECLARE_VM_BUILTIN(name({"format", "to_string"}), format_to_string); DECLARE_VM_BUILTIN(name({"format", "to_buffer"}), format_to_buffer); DECLARE_VM_BUILTIN(name({"format", "print_using"}), format_print_using); DECLARE_VM_BUILTIN(name({"format", "of_options"}), format_of_options); DECLARE_VM_BUILTIN(name({"format", "is_nil"}), format_is_nil); DECLARE_VM_BUILTIN(name("trace_fmt"), trace_fmt); DECLARE_VM_BUILTIN(name("scope_trace"), scope_trace); DECLARE_VM_BUILTIN("_apply_format_thunk", apply_format_thunk); }
void initialize_elaborate() { g_by_name = new name("by"); register_annotation(*g_by_name); DECLARE_VM_BUILTIN(name({"tactic", "to_expr_core"}), tactic_to_expr_core); }
void initialize_vm_io() { DECLARE_VM_BUILTIN("put_str", put_str); DECLARE_VM_BUILTIN("put_nat", put_nat); DECLARE_VM_BUILTIN("get_line", get_line); }
void initialize_revert_tactic() { DECLARE_VM_BUILTIN(name({"tactic", "revert_lst"}), tactic_revert_lst); }
void initialize_vm_nat() { DECLARE_VM_BUILTIN(name({"nat", "succ"}), nat_succ); DECLARE_VM_BUILTIN(name({"nat", "add"}), nat_add); DECLARE_VM_BUILTIN(name({"nat", "mul"}), nat_mul); DECLARE_VM_BUILTIN(name({"nat", "sub"}), nat_sub); DECLARE_VM_BUILTIN(name({"nat", "div"}), nat_div); DECLARE_VM_BUILTIN(name({"nat", "mod"}), nat_mod); DECLARE_VM_BUILTIN(name({"nat", "gcd"}), nat_gcd); DECLARE_VM_BUILTIN(name({"nat", "has_decidable_eq"}), nat_has_decidable_eq); DECLARE_VM_BUILTIN(name({"nat", "decidable_le"}), nat_decidable_le); DECLARE_VM_BUILTIN(name({"nat", "decidable_lt"}), nat_decidable_lt); DECLARE_VM_BUILTIN(name({"nat", "to_string"}), nat_to_string); DECLARE_VM_BUILTIN(name({"nat", "repeat"}), nat_repeat); declare_vm_builtin(name({"nat", "cases_on"}), "nat_rec", 4, nat_rec); declare_vm_builtin(name({"nat", "rec_on"}), "nat_rec", 4, nat_rec); declare_vm_builtin(name({"nat", "no_confusion"}), "nat_no_confusion", 5, nat_no_confusion); declare_vm_builtin(name({"nat", "no_confusion_type"}), "nat_no_confusion", 3, nat_no_confusion); }
void initialize_vm_options() { DECLARE_VM_BUILTIN(name({"options", "size"}), options_size); DECLARE_VM_BUILTIN(name({"options", "mk"}), options_mk); DECLARE_VM_BUILTIN(name({"options", "contains"}), options_contains); DECLARE_VM_BUILTIN(name({"options", "set_bool"}), options_set_bool); DECLARE_VM_BUILTIN(name({"options", "set_nat"}), options_set_nat); DECLARE_VM_BUILTIN(name({"options", "set_string"}), options_set_string); DECLARE_VM_BUILTIN(name({"options", "get_bool"}), options_get_bool); DECLARE_VM_BUILTIN(name({"options", "get_nat"}), options_get_nat); DECLARE_VM_BUILTIN(name({"options", "get_string"}), options_get_string); DECLARE_VM_BUILTIN(name({"options", "join"}), options_join); DECLARE_VM_BUILTIN(name({"options", "fold"}), options_fold); DECLARE_VM_BUILTIN(name({"options", "has_decidable_eq"}), options_has_decidable_eq); }