void add_thread(Thread *t);
bool sleep_can_read_from(ModelAction *curr, const ModelAction *write);
void add_thread(Thread *t);
bool sleep_can_read_from(ModelAction *curr, const ModelAction *write);
bool mo_may_allow(const ModelAction *writer, const ModelAction *reader);
bool has_asserted() const;
void set_assert();
bool mo_may_allow(const ModelAction *writer, const ModelAction *reader);
bool has_asserted() const;
void set_assert();