AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
types.h
1#ifndef PROBFD_CARTESIAN_ABSTRACTIONS_TYPES_H
2#define PROBFD_CARTESIAN_ABSTRACTIONS_TYPES_H
3
4#include "downward/cartesian_abstractions/types.h"
5
6#include <deque>
7#include <memory>
8#include <vector>
9
10namespace cartesian_abstractions {
11class CartesianSet;
12class CartesianHeuristicFunction;
13class RefinementHierarchy;
14} // namespace cartesian_abstractions
15
16namespace probfd {
17template <typename, typename>
18class Policy;
19}
20
21namespace probfd::cartesian_abstractions {
22
23struct TransitionOutcome;
24struct ProbabilisticTransition;
25
26// Classed reused from classical implementation
27using CartesianSet = ::cartesian_abstractions::CartesianSet;
28using RefinementHierarchy = ::cartesian_abstractions::RefinementHierarchy;
29
30// Typedefs reused from classical implementation
31using Goals = ::cartesian_abstractions::Goals;
32using NodeID = ::cartesian_abstractions::NodeID;
33
34// Typedefs adapted from classical implementation
35class AbstractState;
36using AbstractStates = std::vector<std::unique_ptr<AbstractState>>;
37
38using Loops = std::vector<int>;
39using ProbabilisticTransitions = std::vector<ProbabilisticTransition>;
40
41using Trace = std::deque<TransitionOutcome>;
42
43using Solution = Policy<int, const ProbabilisticTransition*>;
44
45static constexpr int UNDEFINED = -1;
46
47} // namespace probfd::cartesian_abstractions
48
49#endif // PROBFD_CARTESIAN_ABSTRACTIONS_TYPES_H
The top-level namespace of probabilistic Fast Downward.
Definition command_line.h:8