Skip to content

布尔公式复杂度

Boolean formula complexity · Formula size and depth

以最小叶数和最小深度衡量树状布尔公式计算函数所需资源。

条目类型
定义

形式陈述

固定二元De Morgan 公式模型。对布尔函数 f:{0,1}n{0,1},其叶规模与公式深度分别定义为

L(f)=minFfL(F),D(f)=minFfD(F).

两个最小值可以由不同公式取得,不能先选一棵最小规模公式再把其深度当成 D(f)。若以内部门数计规模,则对满二叉公式有 G(F)=L(F)1;若允许常量、任意扇入或把 NOT 计为门,精确数值会变化。本页默认文字出现次数为规模,根到叶的二元门数为深度。

公式是树,而布尔电路是可共享子计算的 DAG,因此总有一般电路规模 C(f)O(L(f)),反向关系却不能由语法得到。深度与叶数也不是同一个优化目标:任意二元公式满足 L(F)2D(F),但一棵很瘦的树可以有 L 个叶而深度接近 L;平衡化定理才提供从最小规模到对数深度的非平凡上界。

直觉

规模问“为了写出所有必要的证据,变量要在语法树中出现多少次”,深度问“沿最坏依赖链要连续作多少次选择”。一棵公式可以用很多彼此并行的分支换取浅深度,也可以把同样数量的门串成一条长链。由于没有共享,某个中间判断若被不同情形反复调用,其整段推导会反复出现在叶计数中;这正是公式复杂度与电路规模和深度既相似又不相同的地方。

研究最小公式而非某个随手写出的公式,是为了把“表达方式笨拙”与“函数本身困难”分开。真值表 DNF 给每个接受输入一个完整项,通常产生 O(n2n) 个叶,只是通用上界;证明下界必须排除所有代数化简、重新括号化和不同门组合,而不是指出这一份 DNF 很长。博弈、随机限制和矩阵方法的价值,正是把“所有可能公式”压缩为可追踪的不变量。

例子与边界

二位异或

xy=(x¬y)(¬xy)

给出 L(xy)4。事实上少于四个文字叶不够。若公式中 x 只以正文字出现,那么固定 y 后,输出关于 x 单调不减;若只出现 ¬x,则单调不增。异或却在 y=0 时随 x01,在 y=1 时沿相同变化从 10,所以 x 的两种极性都必须出现。对 y 同理,至少需要 x,¬x,y,¬y 四个叶。这个论证排除了所有三叶公式,而不只排除某种括号写法。

再看 An=x1xn。链式括号 (((x1x2)x3))n 个叶、深度 n1;平衡二叉树仍有 n 个叶,深度降为 log2n。这里利用了 AND 的结合律,不能据此断言任意混合门公式都可原规模重排。对一般公式,Brent–Spira 定理需要更精细的子公式分隔与选择器构造。

公式大小还依赖输入表示。把一个 2n 位真值表视为输入,和把 n 个变量视为输入是不同问题;允许 XOR 原子门会把上面的四叶异或压成一门。部分函数只要求在承诺域上正确,也可能比其任意全域扩张更小。任何下界都应同时标出门基、扇入、规模 convention 与函数是否为全函数。

推论与应用

多项式叶规模公式族在非一致意义下恰好对应NC¹:一边由公式平衡化得到多项式规模、O(logn) 深度;另一边把有界扇入、O(logn) 深电路从输出向输入展开,至多产生 2O(logn)=nO(1) 个叶。若讨论语言而非单个函数族,还要另加一致性,不能从存在小公式自动得到生成算法。

下界工具从不同方向观察同一最小化问题。公式规模博弈把每个 AND/OR 结点变成对负例集或正例集的分割;Karchmer–Wigderson 博弈把根到叶路径变成通信 transcript,分别突出叶数和深度。两种刻画相互补充,却不是把同一个游戏换名复制。

参考资料
  • Stasys Jukna, Boolean Function Complexity: Advances and Frontiers, Springer, 2012, Chs. 1–2.
  • Ingo Wegener, The Complexity of Boolean Functions, Wiley-Teubner, 1987, Chs. 4–6.
  • Mauricio Karchmer and Avi Wigderson, “Monotone Circuits for Connectivity Require Super-Logarithmic Depth,” SIAM Journal on Discrete Mathematics 3(2), 1990, pp. 255–265.
关系图谱3 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组