Partial order reduction: Linear and branching temporal logics and process algebras