twa_succ_iterator: rename accessors

* src/twa/twa.hh, src/ta/ta.hh (current_state,
current_acceptance_conditions, current_condition): Rename as...
(dst, acc, cond): ... these.
* iface/ltsmin/ltsmin.cc, src/kripke/fairkripke.cc,
src/kripke/fairkripke.hh, src/kripke/kripke.cc,
src/kripke/kripke.hh, src/kripke/kripkeexplicit.cc,
src/kripke/kripkeexplicit.hh, src/kripke/kripkeprint.cc,
src/ta/taexplicit.cc, src/ta/taexplicit.hh, src/ta/taproduct.cc,
src/ta/taproduct.hh, src/ta/tgtaproduct.cc, src/ta/tgtaproduct.hh,
src/taalgos/dot.cc, src/taalgos/emptinessta.cc,
src/taalgos/minimize.cc, src/taalgos/reachiter.cc,
src/taalgos/tgba2ta.cc, src/twa/taatgba.cc, src/twa/taatgba.hh,
src/twa/twagraph.hh, src/twa/twaproduct.cc,
src/twa/twasafracomplement.cc, src/twaalgos/bfssteps.cc,
src/twaalgos/bfssteps.hh, src/twaalgos/compsusp.cc,
src/twaalgos/copy.cc, src/twaalgos/emptiness.cc,
src/twaalgos/gtec/gtec.cc, src/twaalgos/gv04.cc,
src/twaalgos/lbtt.cc, src/twaalgos/ltl2tgba_fm.cc,
src/twaalgos/magic.cc, src/twaalgos/minimize.cc,
src/twaalgos/ndfs_result.hxx, src/twaalgos/reachiter.cc,
src/twaalgos/se05.cc, src/twaalgos/stats.cc,
src/twaalgos/stutter.cc, src/twaalgos/tau03.cc,
src/twaalgos/tau03opt.cc, wrap/python/tests/interdep.py: Adjust.
* NEWS: Mention the renamings.
This commit is contained in:
Alexandre Duret-Lutz 2015-10-28 21:16:21 +01:00
parent 1b5b9e4a65
commit f6af2a84cb
46 changed files with 203 additions and 197 deletions

6
NEWS
View file

@ -64,6 +64,12 @@ New in spot 1.99.4a (not yet released)
print_tgba_run -> operator<< print_tgba_run -> operator<<
tgba_run_to_tgba -> twa_run::as_twa tgba_run_to_tgba -> twa_run::as_twa
format_parse_aut_errors -> parsed_aut::format_errors format_parse_aut_errors -> parsed_aut::format_errors
twa_succ_iterator::current_state -> twa_succ_iterator::dst
twa_succ_iterator::current_condition -> twa_succ_iterator::cond
twa_succ_iterator::current_acceptance_conditions -> twa_succ_iterator::acc
ta_succ_iterator::current_state -> ta_succ_iterator::dst
ta_succ_iterator::current_condition -> ta_succ_iterator::cond
ta_succ_iterator::current_acceptance_conditions -> ta_succ_iterator::acc
Python: Python:

View file

@ -289,7 +289,7 @@ namespace spot
} }
virtual virtual
state* current_state() const state* dst() const
{ {
return (*it_)->clone(); return (*it_)->clone();
} }

View file

@ -33,7 +33,7 @@ namespace spot
} }
bdd bdd
fair_kripke_succ_iterator::current_condition() const fair_kripke_succ_iterator::cond() const
{ {
// Do not assert(!done()) here. It is OK to call // Do not assert(!done()) here. It is OK to call
// this function on a state without successor. // this function on a state without successor.
@ -41,7 +41,7 @@ namespace spot
} }
acc_cond::mark_t acc_cond::mark_t
fair_kripke_succ_iterator::current_acceptance_conditions() const fair_kripke_succ_iterator::acc() const
{ {
// Do not assert(!done()) here. It is OK to call // Do not assert(!done()) here. It is OK to call
// this function on a state without successor. // this function on a state without successor.

View file

@ -39,23 +39,23 @@ namespace spot
/// - fair_kripke_succ_iterator::first() /// - fair_kripke_succ_iterator::first()
/// - fair_kripke_succ_iterator::next() /// - fair_kripke_succ_iterator::next()
/// - fair_kripke_succ_iterator::done() /// - fair_kripke_succ_iterator::done()
/// - fair_kripke_succ_iterator::current_state() /// - fair_kripke_succ_iterator::dst()
/// ///
/// This class implements fair_kripke_succ_iterator::current_condition(), /// This class implements fair_kripke_succ_iterator::cond(),
/// and fair_kripke_succ_iterator::current_acceptance_conditions(). /// and fair_kripke_succ_iterator::acc().
class SPOT_API fair_kripke_succ_iterator : public twa_succ_iterator class SPOT_API fair_kripke_succ_iterator : public twa_succ_iterator
{ {
public: public:
/// \brief Constructor /// \brief Constructor
/// ///
/// The \a cond and \a acc_cond arguments will be those returned /// The \a cond and \a acc_cond arguments will be those returned
/// by fair_kripke_succ_iterator::current_condition(), /// by fair_kripke_succ_iterator::cond(),
/// and fair_kripke_succ_iterator::current_acceptance_conditions(). /// and fair_kripke_succ_iterator::acc().
fair_kripke_succ_iterator(const bdd& cond, acc_cond::mark_t acc_cond); fair_kripke_succ_iterator(const bdd& cond, acc_cond::mark_t acc_cond);
virtual ~fair_kripke_succ_iterator(); virtual ~fair_kripke_succ_iterator();
virtual bdd current_condition() const; virtual bdd cond() const;
virtual acc_cond::mark_t current_acceptance_conditions() const; virtual acc_cond::mark_t acc() const;
protected: protected:
bdd cond_; bdd cond_;
acc_cond::mark_t acc_cond_; acc_cond::mark_t acc_cond_;

View file

@ -27,7 +27,7 @@ namespace spot
} }
bdd bdd
kripke_succ_iterator::current_condition() const kripke_succ_iterator::cond() const
{ {
// Do not assert(!done()) here. It is OK to call // Do not assert(!done()) here. It is OK to call
// this function on a state without successor. // this function on a state without successor.
@ -35,7 +35,7 @@ namespace spot
} }
acc_cond::mark_t acc_cond::mark_t
kripke_succ_iterator::current_acceptance_conditions() const kripke_succ_iterator::acc() const
{ {
// Do not assert(!done()) here. It is OK to call // Do not assert(!done()) here. It is OK to call
// this function on a state without successor. // this function on a state without successor.

View file

@ -36,17 +36,17 @@ namespace spot
/// - kripke_succ_iterator::first() /// - kripke_succ_iterator::first()
/// - kripke_succ_iterator::next() /// - kripke_succ_iterator::next()
/// - kripke_succ_iterator::done() /// - kripke_succ_iterator::done()
/// - kripke_succ_iterator::current_state() /// - kripke_succ_iterator::dst()
/// ///
/// This class implements kripke_succ_iterator::current_condition(), /// This class implements kripke_succ_iterator::cond(),
/// and kripke_succ_iterator::current_acceptance_conditions(). /// and kripke_succ_iterator::acc().
class SPOT_API kripke_succ_iterator : public twa_succ_iterator class SPOT_API kripke_succ_iterator : public twa_succ_iterator
{ {
public: public:
/// \brief Constructor /// \brief Constructor
/// ///
/// The \a cond argument will be the one returned /// The \a cond argument will be the one returned
/// by kripke_succ_iterator::current_condition(). /// by kripke_succ_iterator::cond().
kripke_succ_iterator(const bdd& cond) kripke_succ_iterator(const bdd& cond)
: cond_(cond) : cond_(cond)
{ {
@ -59,8 +59,8 @@ namespace spot
virtual ~kripke_succ_iterator(); virtual ~kripke_succ_iterator();
virtual bdd current_condition() const; virtual bdd cond() const;
virtual acc_cond::mark_t current_acceptance_conditions() const; virtual acc_cond::mark_t acc() const;
protected: protected:
bdd cond_; bdd cond_;
}; };

View file

@ -116,7 +116,7 @@ namespace spot
return it_ == s_->get_succ().end(); return it_ == s_->get_succ().end();
} }
state_kripke* kripke_explicit_succ_iterator::current_state() const state_kripke* kripke_explicit_succ_iterator::dst() const
{ {
assert(!done()); assert(!done());
return *it_; return *it_;

View file

@ -99,7 +99,7 @@ namespace spot
virtual bool next(); virtual bool next();
virtual bool done() const; virtual bool done() const;
virtual state_kripke* current_state() const; virtual state_kripke* dst() const;
private: private:
const state_kripke* s_; const state_kripke* s_;

View file

@ -52,7 +52,7 @@ namespace spot
os_ << "\","; os_ << "\",";
for (si->first(); !si->done(); si->next()) for (si->first(); !si->done(); si->next())
{ {
state* dest = si->current_state(); state* dest = si->dst();
os_ << " \""; os_ << " \"";
escape_str(os_, aut_->format_state(dest)); escape_str(os_, aut_->format_state(dest));
os_ << '"'; os_ << '"';

View file

@ -206,16 +206,16 @@ namespace spot
virtual bool done() const = 0; virtual bool done() const = 0;
virtual state* virtual state*
current_state() const = 0; dst() const = 0;
/// \brief Get the changeset on the transition leading to current successor. /// \brief Get the changeset on the transition leading to current successor.
/// ///
/// This is a boolean function of atomic propositions. /// This is a boolean function of atomic propositions.
virtual bdd virtual bdd
current_condition() const = 0; cond() const = 0;
acc_cond::mark_t acc_cond::mark_t
current_acceptance_conditions() const = 0; acc() const = 0;
}; };

View file

@ -72,28 +72,28 @@ namespace spot
} }
state* state*
ta_explicit_succ_iterator::current_state() const ta_explicit_succ_iterator::dst() const
{ {
trace trace
<< "***ta_explicit_succ_iterator::current_state() if(done()) =***" << "***ta_explicit_succ_iterator::dst() if(done()) =***"
<< done() << std::endl; << done() << std::endl;
assert(!done()); assert(!done());
trace trace
<< "***ta_explicit_succ_iterator::current_state() (*i_)->condition =***" << "***ta_explicit_succ_iterator::dst() (*i_)->condition =***"
<< (*i_)->condition << std::endl; << (*i_)->condition << std::endl;
state_ta_explicit* s = (*i_)->dest; state_ta_explicit* s = (*i_)->dest;
return s; return s;
} }
bdd bdd
ta_explicit_succ_iterator::current_condition() const ta_explicit_succ_iterator::cond() const
{ {
assert(!done()); assert(!done());
return (*i_)->condition; return (*i_)->condition;
} }
acc_cond::mark_t acc_cond::mark_t
ta_explicit_succ_iterator::current_acceptance_conditions() const ta_explicit_succ_iterator::acc() const
{ {
assert(!done()); assert(!done());
return (*i_)->acceptance_conditions; return (*i_)->acceptance_conditions;

View file

@ -239,12 +239,12 @@ namespace spot
virtual bool done() const; virtual bool done() const;
virtual state* virtual state*
current_state() const; dst() const;
virtual bdd virtual bdd
current_condition() const; cond() const;
virtual acc_cond::mark_t virtual acc_cond::mark_t
current_acceptance_conditions() const; acc() const;
private: private:
state_ta_explicit::transitions* transitions_; state_ta_explicit::transitions* transitions_;

View file

@ -130,7 +130,7 @@ namespace spot
return; return;
} }
kripke_current_dest_state = kripke_succ_it_->current_state(); kripke_current_dest_state = kripke_succ_it_->dst();
bdd kripke_current_dest_condition = kripke_->state_condition( bdd kripke_current_dest_condition = kripke_->state_condition(
kripke_current_dest_state); kripke_current_dest_state);
is_stuttering_transition_ = (kripke_source_condition is_stuttering_transition_ = (kripke_source_condition
@ -196,10 +196,10 @@ namespace spot
if (!ta_succ_it_->done()) if (!ta_succ_it_->done())
{ {
current_state_ = new state_ta_product(ta_succ_it_->current_state(), current_state_ = new state_ta_product(ta_succ_it_->dst(),
kripke_current_dest_state->clone()); kripke_current_dest_state->clone());
current_acceptance_conditions_ current_acceptance_conditions_
= ta_succ_it_->current_acceptance_conditions(); = ta_succ_it_->acc();
return true; return true;
} }
@ -215,7 +215,7 @@ namespace spot
} }
state_ta_product* state_ta_product*
ta_succ_iterator_product::current_state() const ta_succ_iterator_product::dst() const
{ {
return current_state_->clone(); return current_state_->clone();
} }
@ -227,13 +227,13 @@ namespace spot
} }
bdd bdd
ta_succ_iterator_product::current_condition() const ta_succ_iterator_product::cond() const
{ {
return current_condition_; return current_condition_;
} }
acc_cond::mark_t acc_cond::mark_t
ta_succ_iterator_product::current_acceptance_conditions() const ta_succ_iterator_product::acc() const
{ {
return current_acceptance_conditions_; return current_acceptance_conditions_;
} }
@ -281,7 +281,7 @@ namespace spot
artificial_initial_state, kripke_init_state_condition); artificial_initial_state, kripke_init_state_condition);
for (ta_init_it_->first(); !ta_init_it_->done(); ta_init_it_->next()) for (ta_init_it_->first(); !ta_init_it_->done(); ta_init_it_->next())
{ {
ta_init_states_set.insert(ta_init_it_->current_state()); ta_init_states_set.insert(ta_init_it_->dst());
} }
delete ta_init_it_; delete ta_init_it_;
@ -444,7 +444,7 @@ namespace spot
return; return;
} }
kripke_current_dest_state = kripke_succ_it_->current_state(); kripke_current_dest_state = kripke_succ_it_->dst();
bdd kripke_current_dest_condition = kripke_->state_condition( bdd kripke_current_dest_condition = kripke_->state_condition(
kripke_current_dest_state); kripke_current_dest_state);

View file

@ -88,12 +88,12 @@ namespace spot
// inspection // inspection
state_ta_product* state_ta_product*
current_state() const; dst() const;
bdd bdd
current_condition() const; cond() const;
acc_cond::mark_t acc_cond::mark_t
current_acceptance_conditions() const; acc() const;
/// \brief Return true if the changeset of the current transition is empty /// \brief Return true if the changeset of the current transition is empty
bool bool

View file

@ -162,7 +162,7 @@ namespace spot
return; return;
} }
kripke_current_dest_state = kripke_succ_it_->current_state(); kripke_current_dest_state = kripke_succ_it_->dst();
bdd kripke_current_dest_condition = kripke_->state_condition( bdd kripke_current_dest_condition = kripke_->state_condition(
kripke_current_dest_state); kripke_current_dest_state);
@ -205,9 +205,9 @@ namespace spot
{ {
current_state_ = new (pool_->allocate()) state_product( current_state_ = new (pool_->allocate()) state_product(
kripke_current_dest_state->clone(), kripke_current_dest_state->clone(),
tgta_succ_it_->current_state(), pool_); tgta_succ_it_->dst(), pool_);
current_acceptance_conditions_ current_acceptance_conditions_
= tgta_succ_it_->current_acceptance_conditions(); = tgta_succ_it_->acc();
return true; return true;
} }
@ -231,21 +231,21 @@ namespace spot
} }
state_product* state_product*
tgta_succ_iterator_product::current_state() const tgta_succ_iterator_product::dst() const
{ {
trace trace
<< "*** current_state() .... if(done()) = ***" << done() << std::endl; << "*** dst() .... if(done()) = ***" << done() << std::endl;
return current_state_->clone(); return current_state_->clone();
} }
bdd bdd
tgta_succ_iterator_product::current_condition() const tgta_succ_iterator_product::cond() const
{ {
return current_condition_; return current_condition_;
} }
acc_cond::mark_t acc_cond::mark_t
tgta_succ_iterator_product::current_acceptance_conditions() const tgta_succ_iterator_product::acc() const
{ {
return current_acceptance_conditions_; return current_acceptance_conditions_;
} }

View file

@ -67,12 +67,12 @@ namespace spot
// inspection // inspection
state_product* state_product*
current_state() const; dst() const;
bdd bdd
current_condition() const; cond() const;
acc_cond::mark_t acc_cond::mark_t
current_acceptance_conditions() const; acc() const;
private: private:
//@{ //@{

View file

@ -203,8 +203,8 @@ namespace spot
bdd_dict_ptr d = t_automata_->get_dict(); bdd_dict_ptr d = t_automata_->get_dict();
std::string label = std::string label =
((in == 1 && artificial_initial_state_) ((in == 1 && artificial_initial_state_)
? bdd_format_formula(d, si->current_condition()) ? bdd_format_formula(d, si->cond())
: bdd_format_accset(d, si->current_condition())); : bdd_format_accset(d, si->cond()));
if (label.empty()) if (label.empty())
label = "{}"; label = "{}";
@ -213,7 +213,7 @@ namespace spot
{ {
label += "\n"; label += "\n";
label += t_automata_->acc(). label += t_automata_->acc().
format(si->current_acceptance_conditions()); format(si->acc());
} }
os_ << " " << in << " -> " << out << " [label=\""; os_ << " " << in << " -> " << out << " [label=\"";

View file

@ -101,7 +101,7 @@ namespace spot
{ {
state_ta_product* init = new state_ta_product( state_ta_product* init = new state_ta_product(
(ta_init_it_->current_state()), kripke_init_state->clone()); (ta_init_it_->dst()), kripke_init_state->clone());
if (!h.emplace(init, num + 1).second) if (!h.emplace(init, num + 1).second)
{ {
@ -188,9 +188,9 @@ namespace spot
inc_transitions(); inc_transitions();
trace << "PASS 1: transition\n"; trace << "PASS 1: transition\n";
// Fetch the values destination state we are interested in... // Fetch the values destination state we are interested in...
state* dest = succ->current_state(); state* dest = succ->dst();
auto acc_cond = succ->current_acceptance_conditions(); auto acc_cond = succ->acc();
bool curr_is_livelock_hole_state_in_ta_component = bool curr_is_livelock_hole_state_in_ta_component =
(a_->is_hole_state_in_ta_component(curr)) (a_->is_hole_state_in_ta_component(curr))
@ -472,7 +472,7 @@ namespace spot
inc_transitions(); inc_transitions();
trace << "PASS 2 : transition\n"; trace << "PASS 2 : transition\n";
// Fetch the values destination state we are interested in... // Fetch the values destination state we are interested in...
state* dest = succ->current_state(); state* dest = succ->dst();
bool is_stuttering_transition = succ->is_stuttering_transition(); bool is_stuttering_transition = succ->is_stuttering_transition();
// ... and point the iterator to the next successor, for // ... and point the iterator to the next successor, for

View file

@ -138,7 +138,7 @@ namespace spot
for (succit->first(); !succit->done(); succit->next()) for (succit->first(); !succit->done(); succit->next())
{ {
const state* dst = succit->current_state(); const state* dst = succit->dst();
hash_map::const_iterator i = state_num.find(dst); hash_map::const_iterator i = state_num.find(dst);
if (i == state_num.end()) // Ignore useless destinations. if (i == state_num.end()) // Ignore useless destinations.
@ -175,8 +175,8 @@ namespace spot
result->add_to_initial_states_set(new_dst); result->add_to_initial_states_set(new_dst);
result->create_transition result->create_transition
(ta_src, succit->current_condition(), (ta_src, succit->cond(),
succit->current_acceptance_conditions(), succit->acc(),
ta_dst); ta_dst);
} }
delete succit; delete succit;
@ -390,24 +390,24 @@ namespace spot
trace << "+src: " << src << std::endl; trace << "+src: " << src << std::endl;
for (si->first(); !si->done(); si->next()) for (si->first(); !si->done(); si->next())
{ {
const state* dst = si->current_state(); const state* dst = si->dst();
hash_map::const_iterator i = state_set_map.find(dst); hash_map::const_iterator i = state_set_map.find(dst);
assert(i != state_set_map.end()); assert(i != state_set_map.end());
auto curacc = auto curacc =
mark_to_bdd(si->current_acceptance_conditions()); mark_to_bdd(si->acc());
f |= (bdd_ithvar(i->second) f |= (bdd_ithvar(i->second)
& si->current_condition() & curacc); & si->cond() & curacc);
trace trace
<< "+f: " << bdd_format_accset(ta_->get_dict(), f) << "+f: " << bdd_format_accset(ta_->get_dict(), f)
<< "\n -bdd_ithvar(i->second): " << "\n -bdd_ithvar(i->second): "
<< bdd_format_accset(ta_->get_dict(), << bdd_format_accset(ta_->get_dict(),
bdd_ithvar(i->second)) bdd_ithvar(i->second))
<< "\n -si->current_condition(): " << "\n -si->cond(): "
<< bdd_format_accset(ta_->get_dict(), << bdd_format_accset(ta_->get_dict(),
si->current_condition()) si->cond())
<< "\n -current_acceptance_conditions: " << "\n -current_acceptance_conditions: "
<< si->current_acceptance_conditions() << si->acc()
<< std::endl; << std::endl;
} }
delete si; delete si;

View file

@ -84,7 +84,7 @@ namespace spot
process_state(t, tn); process_state(t, tn);
for (si->first(); !si->done(); si->next()) for (si->first(); !si->done(); si->next())
{ {
const state* current = si->current_state(); const state* current = si->dst();
seen_map::const_iterator s = seen.find(current); seen_map::const_iterator s = seen.find(current);
bool ws = want_state(current); bool ws = want_state(current);
if (s == seen.end()) if (s == seen.end())

View file

@ -285,9 +285,9 @@ namespace spot
} }
// Fetch the values destination state we are interested in... // Fetch the values destination state we are interested in...
state* dest = succ->current_state(); state* dest = succ->dst();
auto acc_cond = succ->current_acceptance_conditions(); auto acc_cond = succ->acc();
// ... and point the iterator to the next successor, for // ... and point the iterator to the next successor, for
// the next iteration. // the next iteration.
succ->next(); succ->next();
@ -422,7 +422,7 @@ namespace spot
twa_succ_iterator* it = tgba_->succ_iter(tgba_init_state); twa_succ_iterator* it = tgba_->succ_iter(tgba_init_state);
it->first(); it->first();
if (!it->done()) if (!it->done())
is_acc = it->current_acceptance_conditions() != 0U; is_acc = it->acc() != 0U;
delete it; delete it;
} }
@ -453,10 +453,10 @@ namespace spot
for (twa_succ_it->first(); !twa_succ_it->done(); for (twa_succ_it->first(); !twa_succ_it->done();
twa_succ_it->next()) twa_succ_it->next())
{ {
const state* tgba_state = twa_succ_it->current_state(); const state* tgba_state = twa_succ_it->dst();
bdd tgba_condition = twa_succ_it->current_condition(); bdd tgba_condition = twa_succ_it->cond();
acc_cond::mark_t tgba_acceptance_conditions = acc_cond::mark_t tgba_acceptance_conditions =
twa_succ_it->current_acceptance_conditions(); twa_succ_it->acc();
bdd satone_tgba_condition; bdd satone_tgba_condition;
while ((satone_tgba_condition = while ((satone_tgba_condition =
bdd_satoneset(tgba_condition, bdd_satoneset(tgba_condition,
@ -474,7 +474,7 @@ namespace spot
twa_succ_iterator* it = tgba_->succ_iter(tgba_state); twa_succ_iterator* it = tgba_->succ_iter(tgba_state);
it->first(); it->first();
if (!it->done()) if (!it->done())
is_acc = it->current_acceptance_conditions() != 0U; is_acc = it->acc() != 0U;
delete it; delete it;
} }
@ -623,7 +623,7 @@ namespace spot
delete initial_states_iter; delete initial_states_iter;
return tgta; return tgta;
} }
bdd first_state_condition = initial_states_iter->current_condition(); bdd first_state_condition = initial_states_iter->cond();
delete initial_states_iter; delete initial_states_iter;
bdd bdd_stutering_transition = bdd_setxor(first_state_condition, bdd bdd_stutering_transition = bdd_setxor(first_state_condition,

View file

@ -287,21 +287,21 @@ namespace spot
} }
spot::set_state* spot::set_state*
taa_succ_iterator::current_state() const taa_succ_iterator::dst() const
{ {
assert(!done()); assert(!done());
return new spot::set_state(new taa_tgba::state_set(*(*i_)->dst), true); return new spot::set_state(new taa_tgba::state_set(*(*i_)->dst), true);
} }
bdd bdd
taa_succ_iterator::current_condition() const taa_succ_iterator::cond() const
{ {
assert(!done()); assert(!done());
return (*i_)->condition; return (*i_)->condition;
} }
acc_cond::mark_t acc_cond::mark_t
taa_succ_iterator::current_acceptance_conditions() const taa_succ_iterator::acc() const
{ {
assert(!done()); assert(!done());
return acc_.comp((*i_)->acceptance_conditions); return acc_.comp((*i_)->acceptance_conditions);

View file

@ -109,9 +109,9 @@ namespace spot
virtual bool next(); virtual bool next();
virtual bool done() const; virtual bool done() const;
virtual set_state* current_state() const; virtual set_state* dst() const;
virtual bdd current_condition() const; virtual bdd cond() const;
virtual acc_cond::mark_t current_acceptance_conditions() const; virtual acc_cond::mark_t acc() const;
private: private:
/// Those typedefs are used to generate all possible successors in /// Those typedefs are used to generate all possible successors in

View file

@ -385,14 +385,14 @@ namespace spot
/// ///
/// The returned state should be destroyed (see state::destroy) /// The returned state should be destroyed (see state::destroy)
/// by the caller after it is no longer used. /// by the caller after it is no longer used.
virtual state* current_state() const = 0; virtual state* dst() const = 0;
/// \brief Get the condition on the transition leading to this successor. /// \brief Get the condition on the transition leading to this successor.
/// ///
/// This is a boolean function of atomic propositions. /// This is a boolean function of atomic propositions.
virtual bdd current_condition() const = 0; virtual bdd cond() const = 0;
/// \brief Get the acceptance conditions on the transition leading /// \brief Get the acceptance conditions on the transition leading
/// to this successor. /// to this successor.
virtual acc_cond::mark_t current_acceptance_conditions() const = 0; virtual acc_cond::mark_t acc() const = 0;
//@} //@}
}; };
@ -545,7 +545,7 @@ namespace spot
/// \brief Build an iterable over the successors of \a s. /// \brief Build an iterable over the successors of \a s.
/// ///
/// This is meant to be used as /// This is meant to be used as
/// <code>for (auto i: aut->succ(s)) { /* i->current_state() */ }</code>. /// <code>for (auto i: aut->succ(s)) { /* i->dst() */ }</code>.
succ_iterable succ_iterable
succ(const state* s) const succ(const state* s) const
{ {

View file

@ -143,20 +143,20 @@ namespace spot
return !p_; return !p_;
} }
virtual twa_graph_state* current_state() const virtual twa_graph_state* dst() const
{ {
assert(!done()); assert(!done());
return const_cast<twa_graph_state*> return const_cast<twa_graph_state*>
(&g_->state_data(g_->edge_storage(p_).dst)); (&g_->state_data(g_->edge_storage(p_).dst));
} }
virtual bdd current_condition() const virtual bdd cond() const
{ {
assert(!done()); assert(!done());
return g_->edge_data(p_).cond; return g_->edge_data(p_).cond;
} }
virtual acc_cond::mark_t current_acceptance_conditions() const virtual acc_cond::mark_t acc() const
{ {
assert(!done()); assert(!done());
return g_->edge_data(p_).acc; return g_->edge_data(p_).acc;

View file

@ -130,10 +130,10 @@ namespace spot
return !right_ || right_->done(); return !right_ || right_->done();
} }
state_product* current_state() const state_product* dst() const
{ {
return new(pool_->allocate()) state_product(left_->current_state(), return new(pool_->allocate()) state_product(left_->dst(),
right_->current_state(), right_->dst(),
pool_); pool_);
} }
@ -175,8 +175,8 @@ namespace spot
assert(!done()); assert(!done());
do do
{ {
bdd l = left_->current_condition(); bdd l = left_->cond();
bdd r = right_->current_condition(); bdd r = right_->cond();
bdd current_cond = l & r; bdd current_cond = l & r;
if (current_cond != bddfalse) if (current_cond != bddfalse)
@ -196,18 +196,18 @@ namespace spot
return false; return false;
} }
bdd current_condition() const bdd cond() const
{ {
return current_cond_; return current_cond_;
} }
acc_cond::mark_t current_acceptance_conditions() const acc_cond::mark_t acc() const
{ {
return return
prod_->acc().join(prod_->left_acc(), prod_->acc().join(prod_->left_acc(),
left_->current_acceptance_conditions(), left_->acc(),
prod_->right_acc(), prod_->right_acc(),
right_->current_acceptance_conditions()); right_->acc());
} }
protected: protected:
@ -236,11 +236,11 @@ namespace spot
{ {
// All the transitions of left_ iterator have the // All the transitions of left_ iterator have the
// same label, because it is a Kripke structure. // same label, because it is a Kripke structure.
bdd l = left_->current_condition(); bdd l = left_->cond();
assert(!right_->done()); assert(!right_->done());
do do
{ {
bdd r = right_->current_condition(); bdd r = right_->cond();
bdd current_cond = l & r; bdd current_cond = l & r;
if (current_cond != bddfalse) if (current_cond != bddfalse)
@ -263,14 +263,14 @@ namespace spot
return false; return false;
} }
bdd current_condition() const bdd cond() const
{ {
return current_cond_; return current_cond_;
} }
acc_cond::mark_t current_acceptance_conditions() const acc_cond::mark_t acc() const
{ {
return right_->current_acceptance_conditions(); return right_->acc();
} }
protected: protected:

View file

@ -661,9 +661,9 @@ namespace spot
safra_tree::tr_cache_t transitions; safra_tree::tr_cache_t transitions;
for (auto iterator: sba_aut->succ(n)) for (auto iterator: sba_aut->succ(n))
{ {
bdd condition = iterator->current_condition(); bdd condition = iterator->cond();
typedef std::pair<bdd, const state*> bdd_state; typedef std::pair<bdd, const state*> bdd_state;
transitions.insert(bdd_state(condition, iterator->current_state())); transitions.insert(bdd_state(condition, iterator->dst()));
set_atomic_list(atomic_list, condition); set_atomic_list(atomic_list, condition);
} }
cache[n] = transitions; cache[n] = transitions;
@ -958,9 +958,9 @@ namespace spot
virtual bool first(); virtual bool first();
virtual bool next(); virtual bool next();
virtual bool done() const; virtual bool done() const;
virtual state_complement* current_state() const; virtual state_complement* dst() const;
virtual bdd current_condition() const; virtual bdd cond() const;
virtual acc_cond::mark_t current_acceptance_conditions() const; virtual acc_cond::mark_t acc() const;
private: private:
succ_list_t list_; succ_list_t list_;
acc_cond::mark_t the_acceptance_cond_; acc_cond::mark_t the_acceptance_cond_;
@ -988,21 +988,21 @@ namespace spot
} }
state_complement* state_complement*
twa_safra_complement_succ_iterator::current_state() const twa_safra_complement_succ_iterator::dst() const
{ {
assert(!done()); assert(!done());
return new state_complement(*(it_->second)); return new state_complement(*(it_->second));
} }
bdd bdd
twa_safra_complement_succ_iterator::current_condition() const twa_safra_complement_succ_iterator::cond() const
{ {
assert(!done()); assert(!done());
return it_->first; return it_->first;
} }
acc_cond::mark_t acc_cond::mark_t
twa_safra_complement_succ_iterator::current_acceptance_conditions() const twa_safra_complement_succ_iterator::acc() const
{ {
assert(!done()); assert(!done());
return the_acceptance_cond_; return the_acceptance_cond_;

View file

@ -77,13 +77,13 @@ namespace spot
todo.pop_front(); todo.pop_front();
for (auto i: a_->succ(src)) for (auto i: a_->succ(src))
{ {
const state* dest = filter(i->current_state()); const state* dest = filter(i->dst());
if (!dest) if (!dest)
continue; continue;
bdd cond = i->current_condition(); bdd cond = i->cond();
acc_cond::mark_t acc = i->current_acceptance_conditions(); acc_cond::mark_t acc = i->acc();
twa_run::step s = { src, cond, acc }; twa_run::step s = { src, cond, acc };
if (match(s, dest)) if (match(s, dest))

View file

@ -55,7 +55,7 @@ namespace spot
/// bfs_steps does not do handle the memory for the states it /// bfs_steps does not do handle the memory for the states it
/// generates, this is the job of filter(). Here \a s is a new /// generates, this is the job of filter(). Here \a s is a new
/// state* that search() has just allocated (using /// state* that search() has just allocated (using
/// twa_succ_iterator::current_state()), and the return of this /// twa_succ_iterator::dst()), and the return of this
/// function should be a state* that does not need to be freed by /// function should be a state* that does not need to be freed by
/// search(). /// search().
/// ///

View file

@ -195,8 +195,8 @@ namespace spot
for (auto li: left->succ(ls)) for (auto li: left->succ(ls))
{ {
state_pair d(li->current_state(), ris); state_pair d(li->dst(), ris);
bdd lc = li->current_condition(); bdd lc = li->cond();
twa_succ_iterator* ri = nullptr; twa_succ_iterator* ri = nullptr;
// Should we reset the right automaton? // Should we reset the right automaton?
@ -222,15 +222,15 @@ namespace spot
acc_cond::mark_t racc = radd; acc_cond::mark_t racc = radd;
if (ri) if (ri)
{ {
cond = lc & ri->current_condition(); cond = lc & ri->cond();
// Skip incompatible edges. // Skip incompatible edges.
if (cond == bddfalse) if (cond == bddfalse)
{ {
ri->next(); ri->next();
continue; continue;
} }
d.second = ri->current_state(); d.second = ri->dst();
racc = ri->current_acceptance_conditions(); racc = ri->acc();
} }
int dest; int dest;
@ -247,7 +247,7 @@ namespace spot
} }
acc_cond::mark_t a = acc_cond::mark_t a =
res->acc().join(la, li->current_acceptance_conditions(), res->acc().join(la, li->acc(),
ra, racc); ra, racc);
res->new_edge(src, dest, bdd_exist(cond, v), a); res->new_edge(src, dest, bdd_exist(cond, v), a);

View file

@ -73,8 +73,8 @@ namespace spot
const twa_succ_iterator* si) const twa_succ_iterator* si)
{ {
out_->new_edge out_->new_edge
(in - 1, out - 1, si->current_condition(), (in - 1, out - 1, si->cond(),
si->current_acceptance_conditions()); si->acc());
} }
protected: protected:

View file

@ -548,11 +548,11 @@ namespace spot
if (j->first()) if (j->first())
do do
{ {
if (j->current_condition() != label if (j->cond() != label
|| j->current_acceptance_conditions() != acc) || j->acc() != acc)
continue; continue;
const state* s2 = j->current_state(); const state* s2 = j->dst();
if (s2->compare(next)) if (s2->compare(next))
{ {
s2->destroy(); s2->destroy();
@ -579,15 +579,15 @@ namespace spot
if (j->first()) if (j->first())
do do
{ {
const state* s2 = j->current_state(); const state* s2 = j->dst();
os << " *"; os << " *";
print_annotation(os, aut, j); print_annotation(os, aut, j);
os << " label=" os << " label="
<< bdd_format_formula(aut->get_dict(), << bdd_format_formula(aut->get_dict(),
j->current_condition()) j->cond())
<< " and acc=" << " and acc="
<< (aut->acc().format << (aut->acc().format
(j->current_acceptance_conditions())) (j->acc()))
<< " going to " << aut->format_state(s2) << '\n'; << " going to " << aut->format_state(s2) << '\n';
s2->destroy(); s2->destroy();
} }
@ -717,11 +717,11 @@ namespace spot
const state* the_next = nullptr; const state* the_next = nullptr;
for (auto j: aut->succ(s)) for (auto j: aut->succ(s))
{ {
if (j->current_condition() != label if (j->cond() != label
|| j->current_acceptance_conditions() != acc) || j->acc() != acc)
continue; continue;
const state* s2 = j->current_state(); const state* s2 = j->dst();
if (s2->compare(next) == 0) if (s2->compare(next) == 0)
{ {
the_next = s2; the_next = s2;

View file

@ -108,7 +108,7 @@ namespace spot
{ {
inc_transitions(); inc_transitions();
state* s = i->current_state(); state* s = i->dst();
auto j = ecs_->h.find(s); auto j = ecs_->h.find(s);
assert(j != ecs_->h.end()); assert(j != ecs_->h.end());
s->destroy(); s->destroy();
@ -215,8 +215,8 @@ namespace spot
inc_transitions(); inc_transitions();
// Fetch the values (destination state, acceptance conditions // Fetch the values (destination state, acceptance conditions
// of the arc) we are interested in... // of the arc) we are interested in...
const state* dest = succ->current_state(); const state* dest = succ->dst();
acc_cond::mark_t acc = succ->current_acceptance_conditions(); acc_cond::mark_t acc = succ->acc();
// ... and point the iterator to the next successor, for // ... and point the iterator to the next successor, for
// the next iteration. // the next iteration.
succ->next(); succ->next();
@ -319,8 +319,8 @@ namespace spot
{ {
for (auto iter: shy->ecs_->aut->succ(s)) for (auto iter: shy->ecs_->aut->succ(s))
{ {
q.emplace_back(iter->current_acceptance_conditions(), q.emplace_back(iter->acc(),
iter->current_state()); iter->dst());
shy->inc_depth(); shy->inc_depth();
shy->inc_transitions(); shy->inc_transitions();
} }

View file

@ -120,9 +120,9 @@ namespace spot
} }
else else
{ {
const state* s_prime = iter->current_state(); const state* s_prime = iter->dst();
bool acc = bool acc =
a_->acc().accepting(iter->current_acceptance_conditions()); a_->acc().accepting(iter->acc());
inc_transitions(); inc_transitions();
trace << " Next successor: s_prime = " trace << " Next successor: s_prime = "
@ -312,8 +312,8 @@ namespace spot
twa_run::step st = twa_run::step st =
{ {
data.stack[father].s->clone(), data.stack[father].s->clone(),
data.stack[father].lasttr->current_condition(), data.stack[father].lasttr->cond(),
data.stack[father].lasttr->current_acceptance_conditions() data.stack[father].lasttr->acc()
}; };
res->prefix.push_front(st); res->prefix.push_front(st);
father = data.stack[father].pre; father = data.stack[father].pre;

View file

@ -67,7 +67,7 @@ namespace spot
twa_succ_iterator* it = aut_->succ_iter(s); twa_succ_iterator* it = aut_->succ_iter(s);
if (!it->first()) if (!it->first())
return {}; return {};
auto res = it->current_acceptance_conditions(); auto res = it->acc();
aut_->release_iter(it); aut_->release_iter(it);
return res; return res;
} }
@ -98,11 +98,11 @@ namespace spot
body_ << out - 1 << ' '; body_ << out - 1 << ' ';
if (!sba_format_) if (!sba_format_)
{ {
for (auto s: aut_->acc().sets(si->current_acceptance_conditions())) for (auto s: aut_->acc().sets(si->acc()))
body_ << s << ' '; body_ << s << ' ';
body_ << "-1 "; body_ << "-1 ";
} }
print_lbt_ltl(body_, bdd_to_formula(si->current_condition(), print_lbt_ltl(body_, bdd_to_formula(si->cond(),
aut_->get_dict())) << '\n'; aut_->get_dict())) << '\n';
} }

View file

@ -1234,8 +1234,8 @@ namespace spot
return res; return res;
for (auto i: aut->succ(st)) for (auto i: aut->succ(st))
{ {
bdd label = i->current_condition(); bdd label = i->cond();
state* s = i->current_state(); state* s = i->dst();
formula dest = formula dest =
namer->get_name(aut->state_number(s)); namer->get_name(aut->state_number(s));
@ -1279,8 +1279,8 @@ namespace spot
for (auto i: aut->succ(st)) for (auto i: aut->succ(st))
{ {
bdd label = i->current_condition(); bdd label = i->cond();
state* s = i->current_state(); state* s = i->dst();
formula dest = namer->get_name(aut->state_number(s)); formula dest = namer->get_name(aut->state_number(s));
missing -= label; missing -= label;

View file

@ -186,11 +186,11 @@ namespace spot
trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();
@ -273,11 +273,11 @@ namespace spot
trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();

View file

@ -98,7 +98,7 @@ namespace spot
for (auto sit: a->succ(src)) for (auto sit: a->succ(src))
{ {
const state* dst = sit->current_state(); const state* dst = sit->dst();
// Is it a new state ? // Is it a new state ?
if (seen->find(dst) == seen->end()) if (seen->find(dst) == seen->end())
{ {
@ -156,13 +156,13 @@ namespace spot
// Connect it to all destinations. // Connect it to all destinations.
for (auto succit: a->succ(src)) for (auto succit: a->succ(src))
{ {
const state* dst = succit->current_state(); const state* dst = succit->dst();
hash_map::const_iterator i = state_num.find(dst); hash_map::const_iterator i = state_num.find(dst);
dst->destroy(); dst->destroy();
if (i == state_num.end()) // Ignore useless destinations. if (i == state_num.end()) // Ignore useless destinations.
continue; continue;
res->new_acc_edge(src_num, i->second, res->new_acc_edge(src_num, i->second,
succit->current_condition(), accepting); succit->cond(), accepting);
} }
} }
res->merge_edges(); res->merge_edges();
@ -354,7 +354,7 @@ namespace spot
bdd f = bddfalse; bdd f = bddfalse;
for (auto si: det_a->succ(src)) for (auto si: det_a->succ(src))
{ {
const state* dst = si->current_state(); const state* dst = si->dst();
hash_map::const_iterator i = state_set_map.find(dst); hash_map::const_iterator i = state_set_map.find(dst);
dst->destroy(); dst->destroy();
if (i == state_set_map.end()) if (i == state_set_map.end())
@ -365,7 +365,7 @@ namespace spot
// want to ignore some useless states). Simply // want to ignore some useless states). Simply
// ignore these states here. // ignore these states here.
continue; continue;
f |= (bdd_ithvar(i->second) & si->current_condition()); f |= (bdd_ithvar(i->second) & si->cond());
} }
// Have we already seen this formula ? // Have we already seen this formula ?

View file

@ -272,11 +272,11 @@ namespace spot
<< std::endl; << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
ndfsr_trace << " Visit the successor: " ndfsr_trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
f.it->next(); f.it->next();
if (h_.has_been_visited(s_prime)) if (h_.has_been_visited(s_prime))
{ {

View file

@ -64,7 +64,7 @@ namespace spot
if (si->first()) if (si->first())
do do
{ {
const state* current = si->current_state(); const state* current = si->dst();
seen_map::const_iterator s = seen.find(current); seen_map::const_iterator s = seen.find(current);
bool ws = want_state(current); bool ws = want_state(current);
if (s == seen.end()) if (s == seen.end())
@ -202,7 +202,7 @@ namespace spot
continue; continue;
} }
dst = si->current_state(); dst = si->dst();
auto res = seen.emplace(dst, n); auto res = seen.emplace(dst, n);
if (!res.second) if (!res.second)
{ {

View file

@ -183,11 +183,11 @@ namespace spot
trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();
@ -274,11 +274,11 @@ namespace spot
trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();

View file

@ -72,7 +72,7 @@ namespace spot
{ {
++s_.edges; ++s_.edges;
bdd cond = it->current_condition(); bdd cond = it->cond();
bdd newvars = bdd_exist(bdd_support(cond), seen_); bdd newvars = bdd_exist(bdd_support(cond), seen_);
if (newvars != bddtrue) if (newvars != bddtrue)
{ {

View file

@ -119,7 +119,7 @@ namespace spot
need_loop_ = true; need_loop_ = true;
if (it_->first()) if (it_->first())
{ {
cond_ = it_->current_condition(); cond_ = it_->cond();
next_edge(); next_edge();
} }
return true; return true;
@ -142,7 +142,7 @@ namespace spot
} }
else else
{ {
cond_ = it_->current_condition(); cond_ = it_->cond();
next_edge(); next_edge();
return true; return true;
} }
@ -157,15 +157,15 @@ namespace spot
// inspection // inspection
state_tgbasl* state_tgbasl*
current_state() const dst() const
{ {
if (loop_) if (loop_)
return new state_tgbasl(state_->real_state(), state_->cond()); return new state_tgbasl(state_->real_state(), state_->cond());
return new state_tgbasl(it_->current_state(), one_); return new state_tgbasl(it_->dst(), one_);
} }
bdd bdd
current_condition() const cond() const
{ {
if (loop_) if (loop_)
return state_->cond(); return state_->cond();
@ -173,11 +173,11 @@ namespace spot
} }
acc_cond::mark_t acc_cond::mark_t
current_acceptance_conditions() const acc() const
{ {
if (loop_) if (loop_)
return 0U; return 0U;
return it_->current_acceptance_conditions(); return it_->acc();
} }
private: private:
@ -187,7 +187,7 @@ namespace spot
one_ = bdd_satoneset(cond_, aps_, bddtrue); one_ = bdd_satoneset(cond_, aps_, bddtrue);
cond_ -= one_; cond_ -= one_;
if (need_loop_ && (state_->cond() == one_) if (need_loop_ && (state_->cond() == one_)
&& (state_ == it_->current_state())) && (state_ == it_->dst()))
need_loop_ = false; need_loop_ = false;
} }

View file

@ -156,11 +156,11 @@ namespace spot
trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();
@ -190,12 +190,12 @@ namespace spot
for (auto i: a_->succ(f.s)) for (auto i: a_->succ(f.s))
{ {
inc_transitions(); inc_transitions();
const state *s_prime = i->current_state(); const state *s_prime = i->dst();
trace << "DFS_BLUE rescanning the arc from " trace << "DFS_BLUE rescanning the arc from "
<< a_->format_state(f.s) << " to " << a_->format_state(f.s) << " to "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = i->current_condition(); bdd label = i->cond();
auto acc = i->current_acceptance_conditions(); auto acc = i->acc();
typename heap::color_ref c_prime = h.get_color_ref(s_prime); typename heap::color_ref c_prime = h.get_color_ref(s_prime);
assert(!c_prime.is_white()); assert(!c_prime.is_white());
auto acu = acc | c.get_acc(); auto acu = acc | c.get_acc();
@ -236,11 +236,11 @@ namespace spot
trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();

View file

@ -196,11 +196,11 @@ namespace spot
trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_BLUE treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();
@ -315,11 +315,11 @@ namespace spot
trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl; trace << "DFS_RED treats: " << a_->format_state(f.s) << std::endl;
if (!f.it->done()) if (!f.it->done())
{ {
const state *s_prime = f.it->current_state(); const state *s_prime = f.it->dst();
trace << " Visit the successor: " trace << " Visit the successor: "
<< a_->format_state(s_prime) << std::endl; << a_->format_state(s_prime) << std::endl;
bdd label = f.it->current_condition(); bdd label = f.it->cond();
auto acc = f.it->current_acceptance_conditions(); auto acc = f.it->acc();
// Go down the edge (f.s, <label, acc>, s_prime) // Go down the edge (f.s, <label, acc>, s_prime)
f.it->next(); f.it->next();
inc_transitions(); inc_transitions();

View file

@ -42,7 +42,7 @@ s0 = a.get_init_state()
it = a.succ_iter(s0) it = a.succ_iter(s0)
it.first() it.first()
while not it.done(): while not it.done():
c = it.current_condition() c = it.cond()
sys.stdout.write("%s\n" % c) sys.stdout.write("%s\n" % c)
b &= c # `&=' is defined only in buddy. So if this statement works b &= c # `&=' is defined only in buddy. So if this statement works
# it means buddy can grok spot's objects. # it means buddy can grok spot's objects.