1#ifndef PROBFD_CARTESIAN_ABSTRACTIONS_UTILS_H
2#define PROBFD_CARTESIAN_ABSTRACTIONS_UTILS_H
4#include "probfd/cartesian_abstractions/types.h"
6#include "downward/cartesian_abstractions/cartesian_set.h"
8#include "downward/utils/hash.h"
10#include "downward/task_proxy.h"
16namespace additive_heuristic {
17class AdditiveHeuristic;
21class ProbabilisticTaskProxy;
22class ProbabilisticTask;
25namespace probfd::cartesian_abstractions {
29template <
typename ConditionsProxy>
30CartesianSet get_cartesian_set(
31 const std::vector<int>& domain_sizes,
32 const ConditionsProxy& conditions)
34 CartesianSet cartesian_set(domain_sizes);
35 for (FactProxy condition : conditions) {
36 cartesian_set.set_single_value(
37 condition.get_variable().get_id(),
38 condition.get_value());
43extern std::unique_ptr<additive_heuristic::AdditiveHeuristic>
44create_additive_heuristic(
const std::shared_ptr<ProbabilisticTask>& task);
51extern utils::HashSet<FactPair> get_relaxed_possible_before(
52 const ProbabilisticTaskProxy& task,
53 const FactPair& fact);
The top-level namespace of probabilistic Fast Downward.
Definition command_line.h:8