You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
891 B
31 lines
891 B
#pragma once
|
|
|
|
#include "storm/adapters/sylvan.h"
|
|
|
|
#include <boost/functional/hash.hpp>
|
|
|
|
namespace storm {
|
|
namespace dd {
|
|
|
|
struct SylvanMTBDDPairHash {
|
|
std::size_t operator()(std::pair<MTBDD, MTBDD> const& pair) const {
|
|
std::hash<MTBDD> hasher;
|
|
std::size_t seed = hasher(pair.first);
|
|
boost::hash_combine(seed, hasher(pair.second));
|
|
return seed;
|
|
}
|
|
};
|
|
|
|
struct SylvanMTBDDPairLess {
|
|
std::size_t operator()(std::pair<MTBDD, MTBDD> const& a, std::pair<MTBDD, MTBDD> const& b) const {
|
|
if (a.first < b.first) {
|
|
return true;
|
|
} else if (a.first == b.first && a.second < b.second) {
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
};
|
|
|
|
}
|
|
}
|