LydiaSyft
StabilityLtlfSynthesizer.h
1 //
2 // Created by shuzhu on 21/01/24.
3 //
4 
5 #ifndef LYDIASYFT_STABILITYLTLFSYNTHESIZER_H
6 #define LYDIASYFT_STABILITYLTLFSYNTHESIZER_H
7 
8 #include "automata/SymbolicStateDfa.h"
9 #include "Synthesizer.h"
10 #include "game/BuchiReachability.hpp"
11 
12 namespace Syft {
13 
14 
22  private:
26  std::shared_ptr<VarMgr> var_mgr_;
30  SymbolicStateDfa spec_;
34  Player starting_player_;
38  Player protagonist_player_;
42  CUDD::BDD goal_states_;
46  CUDD::BDD state_space_;
50  CUDD::BDD assumption_;
51 
52  protected:
53  CUDD::BDD load_CNF(const std::string &filename) const;
54 
55  public:
56 
67  StabilityLtlfSynthesizer(SymbolicStateDfa spec, Player starting_player, Player protagonist_player,
68  CUDD::BDD goal_states, CUDD::BDD state_space,
69  const std::string &assumption_filename);
70 
71 
77  SynthesisResult run() const;
78 
79  };
80 
81 }
82 
83 #endif //LYDIASYFT_STABILITYLTLFSYNTHESIZER_H
A single-strategy-synthesizer for an LTLf formula given as a symbolic-state DFA, considering environm...
Definition: StabilityLtlfSynthesizer.h:21
SynthesisResult run() const
Solves the synthesis problem of LTLf with simple Stability environment assumption.
Definition: StabilityLtlfSynthesizer.cpp:27
StabilityLtlfSynthesizer(SymbolicStateDfa spec, Player starting_player, Player protagonist_player, CUDD::BDD goal_states, CUDD::BDD state_space, const std::string &assumption_filename)
Construct an StabilityLtlfSynthesizer.
Definition: StabilityLtlfSynthesizer.cpp:14
A DFA with symbolic states and transitions.
Definition: SymbolicStateDfa.h:18
Definition: Synthesizer.h:16