Fix biased bit distribution under value < (1 << N) constraints (#7563) (#7684)

Fixes #7563
This commit is contained in:
Yilou Wang
2026-05-30 13:00:35 -04:00
committed by GitHub
parent 125bdb45f5
commit fa0f814686
4 changed files with 199 additions and 8 deletions
+2
View File
@@ -235,6 +235,8 @@ class VlRandomizer VL_NOT_FINAL {
void randomConstraint(std::ostream& os, VlRNG& rngr, int bits);
bool parseSolution(std::iostream& os, bool log = false);
bool checkSat(std::iostream& os);
// Indices of the "a<N>" literals named by (get-unsat-assumptions).
std::vector<int> readUnsatAssumptions(std::iostream& os);
void emitRandcExclusions(std::ostream& os) const; // Emit randc exclusion constraints
void recordRandcValues(); // Record solved randc values for future exclusion
size_t hashConstraints() const;