bool add_reader(ModelAction *reader);
ModelAction * get_reader(unsigned int i) const;
unsigned int get_num_readers() const { return readers.size(); }
bool eliminate_thread(thread_id_t tid);
void add_thread(thread_id_t tid);
bool thread_is_available(thread_id_t tid) const;
bool add_reader(ModelAction *reader);
ModelAction * get_reader(unsigned int i) const;
unsigned int get_num_readers() const { return readers.size(); }
bool eliminate_thread(thread_id_t tid);
void add_thread(thread_id_t tid);
bool thread_is_available(thread_id_t tid) const;