两阈值 promise ​
设性质为
给定
距离位于
Gap 宽度是资源参数 ​
令
当
若能构造距离估计量
便可在阈值中点附近切分得到 tolerant tester。反过来,对一系列阈值调用 tester 并做带置信度的二分,可形成粗距离估计;每次调用的错误需求并,不能把单次
常量字符串的容忍测试 ​
令
均匀独立查询
函数
足以把估计误差控制在
与非容忍常量测试相比,这里不能见到一对不同 bit 就立即拒绝;close 对象本来允许含少量少数 bit。Tester 必须估计少数比例,而不是只寻找一个局部 violation。
容忍性为何可能更难 ​
普通 tester 的 yes 输入完全满足性质,常能依靠 perfect completeness 和局部 witness;tolerant tester 必须接受整个
对某些性质,普通测试只需常数或 poly
错误侧别与适应性 ​
Tolerant 与 one-sided/two-sided 是不同轴。当
查询仍可自适应或非自适应。上面的样本均值 tester 非自适应;某些距离估计算法会根据粗估结果把后续查询集中到可疑区域。容忍性本身不规定访问顺序。
边界 ​
距离必须与对象表示一致。对图性质,dense 与 bounded-degree 距离给同一图不同 close/far 身份;阈值不能脱离 oracle 单独搬用。
如果
最后,接受 close 对象不等于输出修复后的成员,也不保证找到最近对象。Tolerant testing 仍只输出一个 gap decision bit;local reconstruction 是额外任务。
参考资料
- Michal Parnas, Dana Ron, and Ronitt Rubinfeld, “Tolerant Property Testing and Distance Approximation,” Journal of Computer and System Sciences 72(6), 2006, pp. 1012–1042.
- Oded Goldreich, Introduction to Property Testing, Cambridge University Press, 2017, Chapter 12.
- Irit Newman and Christian Sohler, “Every Property of Hyperfinite Graphs Is Testable,” SIAM Journal on Computing 42(3), 2013, tolerant-testing context.