Skip to the content.
English 中文

不透明谓词消除

不透明谓词是混淆器插入的、始终以相同方式求值的条件,用于添加虚假分支。

检测方法

标准方法(Z3 位向量)

使用 Z3 的位向量理论检查谓词及其否定形式的可满足性。

高级方法(整数算术)

对于涉及模运算的谓词(位向量溢出可能会掩盖结果),回退到 Z3 的整数理论进行判定。

数论模式匹配

匹配已知的数学恒真式:

示例

谓词 分类 判定方法
x == x 恒为真 (always_true) 位向量 (bitvector)
(x & 1) == 2 恒为假 (always_false) 位向量 (bitvector)
x*(x+1) % 2 == 0 恒为真 (always_true) 整数 (integer)
x > 5 动态 (dynamic) —

← 返回首页