This module contains the implementation of the pre processing pass for reducing UIntX/IntX to
BitVec and thus allow bv_decide to reason about them.
It:
- runs the
int_toBitVecsimp set - If
USize.toBitVec/ISize.toBitVecis used anywhere looks for equations of the formSystem.Platform.numBits = constant(or flipped) and uses them to convert the system back to fixed width.
Contains information for the USize/ISize elimination pass.
- relevantTerms : Std.HashSet Expr
Contains terms of the form
USize.toBitVec eandISize.toBitVec ethat we will translate to constant widthBitVec. - relevantHyps : Std.HashSet FVarId
Contains all hypotheses that contain terms from
relevantTerms
Instances For
Equations
- One or more equations did not get rendered due to their size.