#include <xchaff_solver.h>
Inheritance diagram for CSolver:
Synopsis [Sat Solver]
Description [This class contains the process and datastructrues to solve the Sat problem.]
SeeAlso []
Definition at line 147 of file xchaff_solver.h.
|
|
Definition at line 101 of file xchaff_solver.cpp. References _assignment_stack, _stats, CSolverStats::is_solver_started, and CDatabase::variables(). |
|
Definition at line 738 of file xchaff_solver.cpp. References _addedUnitClauses, _conflicts, _implication_queue, _stats, analyze_conflicts(), CONFLICT, decide_next_branch(), deduce(), CDatabase::find_unit_literal(), CSolverStats::is_mem_out, MEM_OUT, CSolverStats::outcome, queue_implication(), run_periodic_functions(), SATISFIABLE, TIME_OUT, time_out(), and UNSATISFIABLE. Referenced by continueCheck(), and solve(). |
|
Definition at line 681 of file xchaff_solver.cpp. References _params, CDatabase::clause(), CDatabase::clauses(), CONFLICT, deduce(), CVariable::dlevel(), std::endl(), CDatabase::find_unit_literal(), CVariable::lits_count(), NO_CONFLICT, num_free_variables(), queue_implication(), UNKNOWN, CVariable::value(), CDatabase::variable(), CDatabase::variables(), and CSolverParameters::verbosity. Referenced by solve(). |
|
Definition at line 827 of file xchaff_solver.cpp. References _assignment_stack, _conflicts, _deduction_hook, _deduction_hook_cookie, _implication_queue, _params, CSolverParameters::back_track_complete, CONFLICT, dlevel(), find_max_clause_dlevel(), NO_CONFLICT, restart(), set_var_value(), UNKNOWN, CVariable::value(), CDatabase::variables(), and verify_integrity(). Referenced by preprocess(), and real_solve(). |
|
Definition at line 615 of file xchaff_solver.cpp. References _decision_hook, _decision_hook_cookie, _dlevel_hook, _dlevel_hook_cookie, _implication_queue, _max_score_pos, _params, _stats, _var_order, CSolverParameters::base_randomness, dlevel(), std::endl(), CSolverStats::max_dlevel, CSolverStats::num_decisions, num_free_variables(), queue_implication(), CSolverParameters::randomness, CVariable::score(), UNKNOWN, CVariable::value(), and CDatabase::variables(). Referenced by real_solve(). |
|
Definition at line 887 of file xchaff_solver.cpp. References conflict_analysis_zchaff(). Referenced by real_solve(). |
|
|
|
|
Definition at line 805 of file xchaff_solver.cpp. References _assignment_stack, _dlevel_hook, _dlevel_hook_cookie, _stats, dlevel(), dump(), std::endl(), CSolverStats::num_backtracks, num_free_variables(), unset_var_value(), and verify_integrity(). Referenced by conflict_analysis_zchaff(), and restart(). |
|
Reimplemented from CDatabase. Definition at line 142 of file xchaff_solver.cpp. References _assignment_stack, _last_var_lits_count, _stats, _var_order, current_cpu_time(), current_world_time(), dump(), CDatabase::init(), CSolverStats::is_solver_started, CSolverStats::num_free_variables, CDatabase::num_variables(), CSolverStats::start_cpu_time, CSolverStats::start_world_time, and CDatabase::variables(). Referenced by solve(). |
|
Definition at line 865 of file xchaff_solver.cpp. References _conflict_lits, _num_marked, CDatabase::clause(), dlevel(), CVariable::set_in_new_cl(), CVariable::set_marked(), and CDatabase::variable(). Referenced by conflict_analysis_zchaff(). |
|
Definition at line 445 of file xchaff_solver.cpp. References CDatabase::_variables, CDatabase::clause(), dlevel(), CClause::literals(), and UNKNOWN. Referenced by conflict_analysis_zchaff(), and deduce(). |
|
Definition at line 294 of file xchaff_solver.cpp. References _assignment_hook, _assignment_hook_cookie, _stats, CDatabase::_variables, dlevel(), CVariable::dlevel(), dump(), std::endl(), CVariable::ht_ptr(), num_free_variables(), CSolverStats::num_implications, CVariable::set_antecedence(), set_var_value_not_current_dl(), set_var_value_with_current_dl(), UNKNOWN, CVariable::value(), and verify_integrity(). Referenced by deduce(). |
|
Definition at line 366 of file xchaff_solver.cpp. References _conflicts, CLitPoolElement::direction(), CVariable::dlevel(), CVariable::ht_ptr(), CLitPoolElement::is_ht(), CDatabase::literal_value(), queue_implication(), CLitPoolElement::s_var(), CLitPoolElement::unset_ht(), CLitPoolElement::val(), CLitPoolElement::var_index(), CLitPoolElement::var_sign(), and CDatabase::variable(). Referenced by set_var_value(). |
|
Definition at line 319 of file xchaff_solver.cpp. References _conflicts, CLitPoolElement::direction(), CVariable::ht_ptr(), CLitPoolElement::is_ht(), CDatabase::literal_value(), queue_implication(), CLitPoolElement::s_var(), CLitPoolElement::unset_ht(), CLitPoolElement::val(), CLitPoolElement::var_index(), CLitPoolElement::var_sign(), and CDatabase::variable(). Referenced by set_var_value(). |
|
Definition at line 431 of file xchaff_solver.cpp. References _assignment_hook, _assignment_hook_cookie, _max_score_pos, CVariable::dlevel(), std::endl(), CVariable::set_antecedence(), UNKNOWN, CVariable::value(), CVariable::var_score_pos(), and CDatabase::variable(). Referenced by back_track(). |
|
|
Definition at line 599 of file xchaff_solver.cpp. References _last_var_lits_count, _max_score_pos, _var_order, compare_var_stat(), CVariable::lits_count(), CVariable::score(), CVariable::var_score_pos(), CDatabase::variable(), and CDatabase::variables(). Referenced by restart(), and run_periodic_functions(). |
|
Definition at line 585 of file xchaff_solver.cpp. References _params, _stats, current_cpu_time(), CSolverStats::start_cpu_time, and CSolverParameters::time_limit. Referenced by real_solve(). |
|
|
Definition at line 227 of file xchaff_solver.h. References _params, and CSolverParameters::time_limit. Referenced by Xchaff::SetBudget(). |
|
Reimplemented from CDatabase. Definition at line 229 of file xchaff_solver.h. References CDatabase::set_mem_limit(). Referenced by Xchaff::SetMemLimit(). |
|
Definition at line 232 of file xchaff_solver.h. References _params, and CSolverParameters::decision_strategy. |
|
Definition at line 234 of file xchaff_solver.h. References _params, and CSolverParameters::preprocess_strategy. |
|
Definition at line 236 of file xchaff_solver.h. References _params, and CSolverParameters::allow_clause_deletion. Referenced by Xchaff::DisableClauseDeletion(), and Xchaff::EnableClauseDeletion(). |
|
Definition at line 238 of file xchaff_solver.h. References _params, and CSolverParameters::clause_deletion_interval. |
|
Definition at line 240 of file xchaff_solver.h. References _params, and CSolverParameters::max_unrelevance. |
|
Definition at line 242 of file xchaff_solver.h. References _params, and CSolverParameters::min_num_clause_lits_for_delete. |
|
Definition at line 244 of file xchaff_solver.h. References _params, and CSolverParameters::max_conflict_clause_length. |
|
Definition at line 246 of file xchaff_solver.h. References _params, CSolverParameters::allow_multiple_conflict, and b. |
|
Definition at line 249 of file xchaff_solver.h. References _params, CSolverParameters::allow_multiple_conflict_clause, and b. |
|
Definition at line 252 of file xchaff_solver.h. References _params, and CSolverParameters::base_randomness. Referenced by Xchaff::SetRandomness(). |
|
Definition at line 255 of file xchaff_solver.h. References current_world_time(). Referenced by Xchaff::SetRandSeed(). |
|
Definition at line 263 of file xchaff_solver.h. References _dlevel_hook, and _dlevel_hook_cookie. Referenced by Xchaff::RegisterDLevelHook(). |
|
Definition at line 265 of file xchaff_solver.h. References _decision_hook, and _decision_hook_cookie. Referenced by Xchaff::RegisterDecisionHook(). |
|
Definition at line 267 of file xchaff_solver.h. References _assignment_hook, and _assignment_hook_cookie. Referenced by Xchaff::RegisterAssignmentHook(). |
|
Definition at line 269 of file xchaff_solver.h. References _deduction_hook, and _deduction_hook_cookie. Referenced by Xchaff::RegisterDeductionHook(). |
|
Definition at line 273 of file xchaff_solver.h. References _stats, and CSolverStats::outcome. |
|
Definition at line 274 of file xchaff_solver.h. References _stats, and CSolverStats::num_decisions. Referenced by Xchaff::GetNumDecisions(). |
|
Definition at line 275 of file xchaff_solver.h. References _stats, and CSolverStats::num_free_variables. Referenced by back_track(), decide_next_branch(), preprocess(), and set_var_value(). |
|
Definition at line 278 of file xchaff_solver.h. References _stats, and CSolverStats::max_dlevel. Referenced by conflict_analysis_zchaff(), and Xchaff::GetMaxDLevel(). |
|
Definition at line 279 of file xchaff_solver.h. References _stats, and CSolverStats::num_implications. Referenced by Xchaff::GetNumImplications(). |
|
Definition at line 280 of file xchaff_solver.h. References _stats, and CSolverStats::total_bubble_move. |
|
Definition at line 282 of file xchaff_solver.h. |
|
Definition at line 286 of file xchaff_solver.h. Referenced by continueCheck(), elapsed_cpu_time(), init(), run_periodic_functions(), solve(), time_out(), and total_run_time(). |
|
Definition at line 295 of file xchaff_solver.h. Referenced by continueCheck(), init(), set_random_seed(), and solve(). |
|
Definition at line 302 of file xchaff_solver.h. References _stats, current_cpu_time(), and CSolverStats::last_cpu_time. |
|
Definition at line 309 of file xchaff_solver.h. References _stats, current_cpu_time(), CSolverStats::is_solver_started, and CSolverStats::start_cpu_time. Referenced by Xchaff::GetBudgetUsed(), and Xchaff::GetTotalTime(). |
|
Definition at line 315 of file xchaff_solver.h. References _stats, CSolverStats::finish_cpu_time, and CSolverStats::start_cpu_time. |
|
Definition at line 320 of file xchaff_solver.h. References _stats, CSolverStats::finish_world_time, and CSolverStats::start_world_time. |
|
Reimplemented from CDatabase. Definition at line 325 of file xchaff_solver.h. References CDatabase::estimate_mem_usage(). Referenced by Xchaff::GetMemUsed(). |
|
Reimplemented from CDatabase. Definition at line 328 of file xchaff_solver.h. References _assignment_stack, _stats, CSolverStats::max_dlevel, and CDatabase::mem_usage(). |
|
Definition at line 336 of file xchaff_solver.h. References _dlevel. Referenced by add_clause(), back_track(), conflict_analysis_zchaff(), CSolver(), decide_next_branch(), deduce(), dump_assignment_stack(), find_max_clause_dlevel(), mark_vars_at_level(), restart(), and set_var_value(). |
|
Definition at line 339 of file xchaff_solver.h. References _hooks. |
|
Definition at line 344 of file xchaff_solver.h. References _implication_queue, and std::endl(). Referenced by add_clause(), conflict_analysis_zchaff(), decide_next_branch(), preprocess(), real_solve(), set_var_value_not_current_dl(), and set_var_value_with_current_dl(). |
|
Definition at line 160 of file xchaff_solver.cpp. References _assignment_stack, _last_var_lits_count, _stats, _var_order, CSolverStats::is_solver_started, CSolverStats::num_free_variables, and CDatabase::variables(). Referenced by Xchaff::AddVariables(). |
|
|
Definition at line 861 of file xchaff_solver.cpp. Referenced by back_track(), deduce(), and set_var_value(). |
|
Definition at line 357 of file xchaff_solver.h. References _last_var_lits_count, _params, back_track(), dlevel(), std::endl(), CVariable::score(), update_var_stats(), CDatabase::variable(), CDatabase::variables(), and CSolverParameters::verbosity. Referenced by deduce(), and run_periodic_functions(). |
|
Definition at line 779 of file xchaff_solver.cpp. References _dlevel_hook, _dlevel_hook_cookie, _stats, CONFLICT, current_cpu_time(), current_world_time(), CSolverStats::finish_cpu_time, CSolverStats::finish_world_time, init(), CSolverStats::outcome, preprocess(), real_solve(), and UNSATISFIABLE. Referenced by Xchaff::Satisfiable(). |
|
Definition at line 797 of file xchaff_solver.cpp. References _stats, current_cpu_time(), current_world_time(), CSolverStats::finish_cpu_time, CSolverStats::finish_world_time, CSolverStats::outcome, and real_solve(). Referenced by Xchaff::Continue(). |
|
Definition at line 461 of file xchaff_solver.cpp. References _assignment_stack, dlevel(), std::endl(), and CDatabase::variable(). Referenced by conflict_analysis_zchaff(), and dump(). |
|
|
|
Reimplemented from CDatabase. Definition at line 380 of file xchaff_solver.h. References CDatabase::dump(), and dump_assignment_stack(). Referenced by back_track(), delete_unrelevant_clauses(), init(), and set_var_value(). |
|
Definition at line 150 of file xchaff_solver.h. |
|
Definition at line 151 of file xchaff_solver.h. Referenced by add_variables(), back_track(), conflict_analysis_zchaff(), deduce(), dump_assignment_stack(), init(), mem_usage(), and ~CSolver(). |
|
Definition at line 152 of file xchaff_solver.h. Referenced by conflict_analysis_zchaff(), decide_next_branch(), deduce(), queue_implication(), and real_solve(). |
|
|
Reimplemented from CDatabase. Definition at line 154 of file xchaff_solver.h. Referenced by add_clause(), add_variables(), back_track(), conflict_analysis_zchaff(), continueCheck(), cpu_run_time(), CSolver(), decide_next_branch(), elapsed_cpu_time(), init(), max_dlevel(), mem_usage(), num_decisions(), num_free_variables(), num_implications(), outcome(), real_solve(), run_periodic_functions(), set_var_value(), solve(), time_out(), total_bubble_move(), total_run_time(), world_run_time(), and ~CSolver(). |
|
Definition at line 156 of file xchaff_solver.h. Referenced by add_hook(), and run_periodic_functions(). |
|
Definition at line 159 of file xchaff_solver.h. Referenced by decide_next_branch(), unset_var_value(), and update_var_stats(). |
|
Definition at line 160 of file xchaff_solver.h. Referenced by add_variables(), init(), restart(), and update_var_stats(). |
|
Definition at line 161 of file xchaff_solver.h. Referenced by add_variables(), decide_next_branch(), init(), and update_var_stats(). |
|
Definition at line 164 of file xchaff_solver.h. Referenced by conflict_analysis_zchaff(), CSolver(), and mark_vars_at_level(). |
|
Definition at line 165 of file xchaff_solver.h. Referenced by add_clause(), conflict_analysis_zchaff(), deduce(), real_solve(), set_var_value_not_current_dl(), and set_var_value_with_current_dl(). |
|
Definition at line 166 of file xchaff_solver.h. Referenced by conflict_analysis_zchaff(), and mark_vars_at_level(). |
|
Referenced by back_track(), CSolver(), decide_next_branch(), RegisterDLevelHook(), and solve(). |
|
Referenced by CSolver(), decide_next_branch(), and RegisterDecisionHook(). |
|
Referenced by CSolver(), RegisterAssignmentHook(), set_var_value(), and unset_var_value(). |
|
Referenced by CSolver(), deduce(), and RegisterDeductionHook(). |
|
Definition at line 173 of file xchaff_solver.h. Referenced by back_track(), decide_next_branch(), RegisterDLevelHook(), and solve(). |
|
Definition at line 174 of file xchaff_solver.h. Referenced by decide_next_branch(), and RegisterDecisionHook(). |
|
Definition at line 175 of file xchaff_solver.h. Referenced by RegisterAssignmentHook(), set_var_value(), and unset_var_value(). |
|
Definition at line 176 of file xchaff_solver.h. Referenced by deduce(), and RegisterDeductionHook(). |
|
Definition at line 179 of file xchaff_solver.h. Referenced by add_clause(), and real_solve(). |