Skip to content

容忍性质测试

Tolerant property testing · Tolerant tester

以两个正距离阈值区分接近性质的对象与远离性质的对象,并把 gap 宽度纳入查询复杂度。

两阈值 promise

设性质为 PΩ,距离记作

d(x,P)=infyPd(x,y).

给定 0ε1<ε21,一个 (ε1,ε2)-tolerant tester 满足

d(x,P)ε1Pr[Tx=accept]23,d(x,P)ε2Pr[Tx=reject]23.

距离位于 (ε1,ε2) 的对象无约束。基础性质测试ε1=0 的特例;只把 no 阈值仍写作 ε 而不报告 close 阈值,会隐藏更强的完备性要求。

Gap 宽度是资源参数

Δ=ε2ε1.

Δ 缩小时,tester 必须分辨距离非常接近的对象,查询量通常随 1/Δ 增长。Complexity 应写成 q(n,ε1,ε2,δ),而不是只依赖 far 阈值。

若能构造距离估计量 d^,满足

Pr[|d^d(x,P)|Δ/3]1δ,

便可在阈值中点附近切分得到 tolerant tester。反过来,对一系列阈值调用 tester 并做带置信度的二分,可形成粗距离估计;每次调用的错误需求并,不能把单次 2/3 保证无限复用。

常量字符串的容忍测试

x{0,1}n,性质 P={0n,1n}。若 1 的比例为 p,则

d(x,P)=min{p,1p}.

均匀独立查询 m 个坐标,令样本均值为 p^,并估计

d^=min{p^,1p^}.

函数 umin{u,1u} 是 1-Lipschitz,所以 |d^d||p^p|。Hoeffding 界说明

m=O(Δ2log1δ)

足以把估计误差控制在 Δ/3。取阈值 (ε1+ε2)/2:close 对象高概率落在阈值下,far 对象高概率落在阈值上。

与非容忍常量测试相比,这里不能见到一对不同 bit 就立即拒绝;close 对象本来允许含少量少数 bit。Tester 必须估计少数比例,而不是只寻找一个局部 violation。

容忍性为何可能更难

普通 tester 的 yes 输入完全满足性质,常能依靠 perfect completeness 和局部 witness;tolerant tester 必须接受整个 ε1 邻域,其中已经存在许多 witness。拒绝规则要判断违规的 总量 是否越过远阈值。

对某些性质,普通测试只需常数或 poly(1/ε) 查询,tolerant testing 却接近学习或距离估计的复杂度。不能从基础 tester 通过“把拒绝次数阈值调高”无条件得到正确算法;需要违规计数与全局距离之间的稳定关系。

错误侧别与适应性

Tolerant 与 one-sided/two-sided 是不同轴。当 ε1>0 时,close 但不满足性质的对象也必须高概率接受;一个发现真实局部 violation 就必拒绝的 perfect-completeness 规则通常不再适用。

查询仍可自适应或非自适应。上面的样本均值 tester 非自适应;某些距离估计算法会根据粗估结果把后续查询集中到可疑区域。容忍性本身不规定访问顺序。

边界

距离必须与对象表示一致。对图性质,dense 与 bounded-degree 距离给同一图不同 close/far 身份;阈值不能脱离 oracle 单独搬用。

如果 ε1=ε2,promise 没有间隔,采样噪声下通常不能以有限次查询统一分辨边界两侧;定义要求严格 ε1<ε2

最后,接受 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.