AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
merge_scoring_function_miasm_utils.h
1#ifndef MERGE_AND_SHRINK_MERGE_SCORING_FUNCTION_MIASM_UTILS_H
2#define MERGE_AND_SHRINK_MERGE_SCORING_FUNCTION_MIASM_UTILS_H
3
4#include <memory>
5
6namespace utils {
7class LogProxy;
8}
9
10namespace merge_and_shrink {
11class FactoredTransitionSystem;
12class ShrinkStrategy;
13class TransitionSystem;
14
15/*
16 Copy the two transition systems at the given indices, possibly shrink them
17 according to the same rules as merge-and-shrink does, and return their
18 product.
19*/
20extern std::unique_ptr<TransitionSystem> shrink_before_merge_externally(
21 const FactoredTransitionSystem &fts,
22 int index1,
23 int index2,
24 const ShrinkStrategy &shrink_strategy,
25 int max_states,
26 int max_states_before_merge,
27 int shrink_threshold_before_merge,
28 utils::LogProxy &log);
29}
30
31#endif