SMT-RAT  24.02
Toolbox for Strategic and Parallel Satisfiability-Modulo-Theories Solving
ApproximationSettings.h
Go to the documentation of this file.
2 
4 
6 
7 struct ApxSettings {
8  static constexpr ApxPoly bound = ApxPoly::SIMPLE;
9  static constexpr ApxPoly between = ApxPoly::SIMPLE;
11 
12  const std::size_t taylor_deg = settings_module().get("apx_taylor_deg", (std::size_t)1);
13  // constexpr std::size_t hyperplane_dim = 0;
14  const std::size_t maximize_n_iter = settings_module().get("apx_maximize_iter", (std::size_t)5);
15 
16  const std::size_t n_sb_iterations = settings_module().get("apx_sb_iter", (std::size_t)2);
17  const double root_ratio_lower = settings_module().get("apx_root_ratio_l", (double)0.75);
18  const double root_ratio_upper = settings_module().get("apx_root_ratio_u", (double)0.875);
19 
20  const std::size_t crit_max_considered = settings_module().get("apx_max_considered", (std::size_t)20);
21  const std::size_t crit_max_apx = settings_module().get("apx_max_apx", (std::size_t)50);
22  const std::size_t crit_max_constraint_involved = settings_module().get("apx_max_involved", (std::size_t)5);
23  const std::size_t crit_max_apx_per_poly = settings_module().get("apx_max_app", (std::size_t)5);
24  const std::size_t crit_degree_threshold = settings_module().get("apx_deg_threshold", (std::size_t)5);
25 
26  const bool crit_level_enabled = settings_module().get("apx_level_enabled", false);
27  const bool crit_considered_count_enabled = settings_module().get("apx_considered_enabled", false);
28  const bool crit_apx_count_enabled = settings_module().get("apx_count_enabled", true);
29  const bool crit_single_degree_enabled = settings_module().get("apx_single_degree_enabled", true);
30  const bool crit_pair_degree_enabled = settings_module().get("apx_pair_degree_enabled", false);
31  const bool crit_poly_apx_count_enabled = settings_module().get("apx_poly_count_enabled", false);
32  const bool crit_involved_count_enabled = settings_module().get("apx_involved_count_enabled", false);
33  const bool crit_side_degree_enabled = settings_module().get("apx_side_degree_enabled", false);
34 };
35 
36 inline const ApxSettings& apx_settings() {
37  static ApxSettings s;
38  return s;
39 }
40 
41 }
const auto & settings_module()
Definition: Settings.h:108