chore: fix typo in hash code for Expr equality test (#4990)

We observed a small performance improvement at
https://github.com/leanprover/LNSym/blob/proof_size_expt/Proofs/SHA512/Experiments/Sym30.lean
Before: 2.65s
After: 2.60s
This commit is contained in:
Leonardo de Moura 2024-08-12 02:47:08 +02:00 committed by GitHub
parent 37f9063c3e
commit 89c3079072
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -23,7 +23,7 @@ template<bool CompareBinderInfo>
class expr_eq_fn {
struct key_hasher {
std::size_t operator()(std::pair<lean_object *, lean_object *> const & p) const {
return hash((size_t)p.first >> 3, (size_t)p.first >> 3);
return hash((size_t)p.first >> 3, (size_t)p.second >> 3);
}
};
typedef std::unordered_set<std::pair<lean_object *, lean_object *>, key_hasher> cache;