1#ifndef PRUNING_STUBBORN_SETS_ACTION_CENTRIC_H
2#define PRUNING_STUBBORN_SETS_ACTION_CENTRIC_H
4#include "downward/pruning/stubborn_sets.h"
6namespace stubborn_sets {
7class StubbornSetsActionCentric :
public stubborn_sets::StubbornSets {
14 std::vector<int> stubborn_queue;
16 virtual void initialize_stubborn_set(
const State& state) = 0;
17 virtual void handle_stubborn_operator(
const State& state,
int op_no) = 0;
18 virtual void compute_stubborn_set(
const State& state)
override;
21 explicit StubbornSetsActionCentric(utils::Verbosity verbosity);
22 bool can_disable(
int op1_no,
int op2_no)
const;
23 bool can_conflict(
int op1_no,
int op2_no)
const;
32 FactPair find_unsatisfied_goal(
const State& state)
const
34 return find_unsatisfied_condition(sorted_goals, state);
38 bool enqueue_stubborn_operator(
int op_no);