Worst-Case Optimal Joins
当且仅当连接算法的计算复杂度不高于AGM bound,该算法才是Worst-Case Optimal的。
而计算AGM bound,需要计算fractional edge cover,也就是最小边覆盖。它要求给每条边赋权,所有权重之和最小,并且每个顶点要被权重总和>=1的边覆盖。
如三角形查询,为了满足上述条件,需要让xyz三条边:
- min x + y + z
- x + y >= 1
- y + z >= 1
- z + x >= 1
- x, y, z >= 0
最优解是x = y = z = 1/2,这使得目标函数x + y + z = 3/2最小。因此对于三角形查询,fractional edge cover number \(p*(Q) = 3/2\)。
然后根据已有的证明,查询结果数量\(|Q(D)| \leq |D|^{p*(Q)} = N^{3/2}\)
真正使用WCOJ时,都是设计一个连接算法,然后证明它是WCOJ的,进而得到一个不高于WCOJ复杂度的结果。