23 #ifndef SPOT_TGBA_BDDDICT_HH
24 # define SPOT_TGBA_BDDDICT_HH
71 typedef std::map<const ltl::formula*, int>
fv_map;
73 typedef std::map<int, const ltl::formula*>
vf_map;
82 enum var_type { anon = 0, now, next, var, acc };
90 typedef std::vector<bdd_info> bdd_info_map;
113 int register_proposition(
const ltl::formula* f,
const void* for_me);
122 void register_propositions(bdd f,
const void* for_me);
135 int register_state(
const ltl::formula* f,
const void* for_me);
147 int register_acceptance_variable(
const ltl::formula* f,
const void* for_me);
154 int register_clone_acc(
int var,
const void* for_me);
163 void register_acceptance_variables(bdd f,
const void* for_me);
174 const ltl::formula* oneacc_to_formula(bdd oneacc)
const;
193 int register_anonymous_variables(
int n,
const void* for_me);
201 void register_all_variables_of(
const void* from_other,
const void* for_me);
206 void unregister_all_my_variables(
const void* me);
210 void unregister_all_typed_variables(var_type type,
const void* me);
213 void unregister_variable(
int var,
const void* me);
217 bool is_registered_proposition(
const ltl::formula* f,
const void* by_me);
218 bool is_registered_state(
const ltl::formula* f,
const void* by_me);
219 bool is_registered_acceptance_variable(
const ltl::formula* f,
225 std::ostream&
dump(std::ostream& os)
const;
238 void assert_emptiness()
const;
249 #endif // SPOT_TGBA_BDDDICT_HH