LydiaSyft
synthesis.hpp
1 //
2 // Created by marcofavorito on 22/01/24.
3 //
4 
5 #ifndef LYDIASYFT_CLI_SYNTHESIS_H
6 #define LYDIASYFT_CLI_SYNTHESIS_H
7 
8 #include <CLI/CLI.hpp>
9 #include "VarMgr.h"
10 #include "Stopwatch.h"
11 #include "base.hpp"
12 #include "synthesizer/LTLfSynthesizer.h"
13 
14 
15 namespace Syft {
16 
17  class SynthesisRunner : public BaseRunner {
18  private:
19 
20  void do_synthesis_(const SymbolicStateDfa &symbolic_dfa);
21 
22  public:
23  SynthesisRunner(const std::shared_ptr<whitemech::lydia::parsers::ltlf::LTLfDriver> &driver,
24  const std::string &formula_file, const std::string &path_to_syfco, bool print_strategy,
25  bool print_times) : BaseRunner(driver, formula_file, path_to_syfco, print_strategy,
26  print_times) {}
27 
28  void run();
29 
30  };
31 }
32 
33 #endif //LYDIASYFT_CLI_SYNTHESIS_H
Base class for running a synthesis algorithm.
Definition: base.hpp:75
A DFA with symbolic states and transitions.
Definition: SymbolicStateDfa.h:18
Definition: synthesis.hpp:17