FOCS 2024 游记

路线: 北京 -- 东京羽田 (转机) -- 芝加哥 ORD -- 法兰克福 (转机) -- 北京, 往返各自大概都有 20h, 折腾死了...

我没有列在下面的报告可能也是很有意思的, 只是有可能我没听懂多少东西所以不好意思写... 如果没有出现非常抱歉! > <

On Pigeonhole Principles and Ramsey in TFNP (TFNP 中的鸽笼原理和 Ramsey 定理)

报告人: 李佳蔚

\(\mathsf{FNP}\) 大概是这么一个复杂度类, 它说的是给定一个串 \(x\), 寻找一个串 \(w\) 使得一个多项式时间图灵机 \(M\) 通过检验 \(M(x, w)\). 而 \(\mathsf{TFNP}\) 里的 T 表示 total
function, 也就是说这个问题中任何 \(x\) 都一定存在一个 \(w\).

这个类的一个用处是提供了研究一些组合原则的平台, 比如鸽笼原理, Nash 均衡等等.

具体来说, 鸽笼原理 \(\mathsf{PPP}\) (Polynomial Pigeonhole Principle) 说的是如下问题 \(\mathrm{Pigeon}\) 关于多项式时间规约定义出的问题类:

  • 用多项式大小电路的方式给出一个映射 \(C\colon [N+1] \to [N]\) (也就是说电路的输入是 \(\log N\) 位), 找到 \(i\neq j\) 使得 \(C(i) = C(j)\).

人们研究这个问题的一个动机是反推数学 (reverse mathematics): 哪些数学原则是一个定理的证明中只需/必须用到的?

复杂度理论中的规约这个思想为反推数学提供了一个很好的平台, 比如一个 \(\mathsf{TFNP}\) 的问题如果能规约到 \(\mathsf{PPP}\), 那么这个问题某种意义上相当于 "只需用到" 鸽笼原理.

在 Goldberg 和 Papadimitriou 引入 PPP 这个问题类的时候, 他们还考虑了问题类 \(\mathsf{Ramsey}\), 也是直接由问题 \(\mathrm{Ramsey}\) 定义出来的:

  • 用多项式大小电路的方式给出一个图的邻接表 \([4^n]\times [4^n] \to \{0, 1\}\), 找到一个 \(n\) 个点的子图使得这个子图是完全图或者是空图.

由于经典的 Ramsey 定理 \(R(n,n)\leq \binom{2n-2}{n-1}\) 直接能说明这个图是存在的, 所以这个问题在 \(\mathsf{TFNP}\) 中. 而且, 这个经典的证明基本上就是迭代用了 \(2n\) 次鸽笼原理 (去年才被 Campos, Griffiths, Morris 和 Sahasrabudhe 改进到了 \(3.999^n\)), Goldberg 和 Papadimitriou 做出了如下猜测.

猜想. \(\mathsf{Ramsey} \subseteq \mathsf{PPP}\).

而这篇新作的作者证明了这个猜想在黑盒规约的意义上是不成立的. 也就是说, 如果把电路 \(C\) 换成黑盒 \(O\) (oracle), 那么 \(\mathsf{Ramsey}\) 不能多项式时间规约到 \(\mathsf{PPP}\). 注意如果 \(\mathsf{P} = \mathsf{NP}\), 那么这些类全都是等价于多项式时间, 所以现阶段我们不可能指望排除白盒规约. 某种意义上说这已经证明了 "Ramsey 原理不能只通过使用一次鸽笼原理来得到".

另一件事是文中作者还将鸽笼原理的原则进行了细分, 比如 \(t\)-\(\mathsf{PPP}\) 问题类是如下组合原则给出的:

  • \((t-1)N+1\) 个鸽子扔到 \(N\) 个笼子里, 总有一个笼子里有至少 \(t\) 个鸽子.

传统的 \(\mathsf{PPP}\) 就是 \(t=2\) 的情况.

一个小巧的观察是 \(t\) 越大问题越难: \((t-1)\)-\(\mathsf{PPP}\subseteq t\)-\(\mathsf{PPP}\). 因为我们我们给定一个 \(t-1\) 问题, 可以规约可以考虑额外把 \(N\) 个鸽子一一塞到 \(N\) 个笼子里, 这样就得到了一个 \(t\) 问题, 问题的解删去至多一个鸽子就是原问题的解.

作者们也证明了在黑盒意义下对任何常数 \(t\), 有 \(t\)-\(\mathsf{PPP}\nsubseteq (t-1)\)-\(\mathsf{PPP}\). 所以这个细分是某种程度上严格的. 这初看还是有点反直觉的: 越多的鸽子反而得到了越强的鸽笼原理!

Tight Analyses of Ordered and Unordered Linear Probing (有序和无序的线性探测法的严格分析)

报告人: William Kuszmal

现在数据结构研究的一个重要话题是空间限制比较严格的情况下的时间分析. 这个文章研究的是线性探测法 (linear probing) 的一种变体的哈希表如果保持有 \(1 - 1/x\) 的负载因子, 那么插入, 删除和查找的时间复杂度是多少. 具体的结果取决于设定的一些细节, 但比较有趣的是文章的技术核心在于如下一个组合问题:

在一个正方形区域里随机撒 \(\mathrm{Poisson}(n^2)\)\(+1\)\(-1\), 现在考虑找一条 \((0, 0)\)\((1, 1)\) 的单调路径, 最大化 路径下方的数的和, 这个值称为路径盈余 (path surplus).

看起来大部分单独的路径, 这个值的标准差都是 \(\Theta(n)\) 的, 但是总共有很多条路径, 所以不太好看出来这个值的期望是多少.

定理 (Braverman-Kuszmal). 路径盈余值的期望是 \(\Theta(n \log^{3/4} n)\) 的.

感觉出现 \(\log^{3/4}n\) 这个项还是相当有趣的.

注: 我另外喜欢这个报告的一个原因是, 作者也欣赏高德纳 (Donald Knuth) 的算无遗策: "Knuth is amazing, he's not just correct, he even determined the hidden constant behind \(\Theta(x^2)\)."

Canonical forms for matrix tuples in polynomial time (多项式时间计算矩阵组的标准型)

报告人: Xiaorui Sun

对于两个矩阵 \(M, N\) 是否存在可逆矩阵 \(A, B\) 使得 \(AM = NB\)? 是否存在可逆矩阵 \(A\) 使得 \(AM = NA\) (当 \(M, N\) 是方阵)?

这两个问题的答案分别是, 看 \(M, N\) 的秩是否相等, 以及 \(M, N\) 是否具有相同的 Jordan 标准型.

对于上面两个问题, 线性代数已经让我们对它完全理解清楚了, 甚至允许我们求出这个同构问题的标准型: 每个同构类有一个算法从选取一个典范元素.

对于三阶张量的同构研究 (i.e., 矩阵空间的同构) 以及群同构的研究引导作者们考虑该问题的矩阵组版本: 给定一个矩阵组 \((M_1, \ldots, M_k)\), 能够计算

  • \(A, B\) 可逆, \((AM_i B)\)
  • \(A\) 可逆, \((AM_i A^{-1})\)
    这两种同构意义下的一个矩阵组的标准型?

定理 (Qiao-Sun). 给定一个 有限域 上的矩阵组 \((M_1, \ldots, M_k)\), 存在一个多项式时间算法计算出这两种标准型.

这个算法的大概想法是这样的, 令 \(t\) 从小到大, 不断求出 \((M_i)_{i\leq t}\) 的标准型, 在这个过程中不断对 \(A, B\) 加上限制 (从这里也可以看出, 求第二种情况的标准型只需要一开始加个 \(I\) 就可以规约到第一种情况). 根据矩阵的秩的启发, 我们首先将矩阵组对其到

\[ M_1 = \begin{pmatrix}I & 0\\0 & 0 \end{pmatrix} \]

的情况.

但是往后就肯定没有对角阵这么简单了, 比如 Jordan 标准型不是对角线的矩阵我们就知道一定是不能的. 所以后面的矩阵会长得像上三角分块矩阵

\[ \begin{pmatrix}F_{11} & F_{12} & F_{13}\\0 & F_{22} & F_{23}\\0 & 0 & F_{33} \end{pmatrix}, \]

有可能不同的分块组之间一个行变换可以用列变换消过去, 所以没有那么简单 (想一想 Jordan 块的情况!)

最后一个讲座里提到的有趣的事情是, 这个消元的限制可能出现一个神奇的对称性, 这个对称性刚好构成了计算的基域有限域 \(\mathbb F_q\) 的一个扩域. 这个可能性依然可以从 Jordan 标准型看出来, 因为我们讨论 Jordan 标准型的时候一般是假设代数闭的, 根不一定在原来的域里.

我觉得这个问题非常自然, 但是不知道为什么代数学家没有怎么研究过. 不过这个文章的全文竟然有 96 页这么长, 可能是结构的复杂性导致了之前没人关心吧...

Optimal quantile estimation: beyond the comparison model (最优分位数统计: 超越比较模型)

报告人: Mihir Singhal

这是一个流算法 (streaming algorithm) 问题. 你只有很少的内存, 会依次读到数 \(x\), 要么是把一个多重集内加入 \(x\) 这个数, 要么是查询当前的 \(x\) 的 rank, 允许答案有 \(\epsilon n\) 的误差 (\(n\) 是当前集合大小). 这个问题有一些确实的工业界的用途, 而且他们想要的是这个流算法用比较少的空间就完成 (听起来很合理).

一个比较经典的算法是 2001 年的 GK sketch (Greenwald-Khanna), 做到了存 \(O(\epsilon^{-1} \log n)\) 个数. 这个算法存的数只用到了它们之间的大小关系, 而且可以证明在比较模型下是最优的. 类似的有输入的是值域 \(U = n^{O(1)}\) 情况下的 \(O(\epsilon^{-1} \log U)\)\(q\)-digest sketch 算法.

这篇新作的结果是把整数情况做到了最优.

定理 (Gupta-Singhal-武).\(O(\epsilon^{-1})\) 个数足矣.

之所以说是最优是因为王一川 已经证明了 这一点.

定理 (王). 任何算法都需要存 \(\Omega(\epsilon^{-1} (\log (\epsilon U) + \log (\epsilon n)))\) 个比特.

这个算法仍然是基于 \(q\)-digest 的想法. (我们接下来只叙述没有动态插入的版本, 也就是 \(n\) 不需要变化) 最初的 \(q\)-digest 长这样: 先考虑一个值域为 \(U\) 的线段树, 有个阈值 \(\alpha = \epsilon n / \log U\), 每个节点存一个计数器, 叶子节点以外的节点都必须保证计数器不超过 \(\alpha\).

在插入一个树的时候, 沿着线段树往下走, 直到找到一个节点的计数器小于 \(\alpha\), 给这个节点加一, 结束. 在查询的时候, 根节点到叶子的路径上的数不知道是不是真的小于 \(x\) 所以不关, 然后对所有确定小于 \(x\) 的子树的计数器求和.

为啥这个是 \(\epsilon\) 近似? 因为根节点到叶子就 \(\log U\) 个点, 统计错误的数只有 \(\alpha \log U \leq \epsilon n\) 个.

为什么空间对的? 因为只用存非空的叶子, 这只有 \(n / \alpha = \epsilon^{-1} \log U\) 个而且存树的结构代价更小.

那么新作的第一个观察是这样的. 上面这颗 \(q\)-digest 树大部分的信息用来存的是叶子上的值, 而知道叶子的精确值

  • 不太重要, 也可以考虑只用一个 quantile sketch 来做.
  • 叶子的数量是 \(\epsilon^{-1}\log U\) 远小于 \(U\) 的!

如果递归地维护一个所有叶子的 quantile sketch, 这个空间复杂度就变成了存树的拓扑结构 (\(O(\epsilon^{-1} \log U)\) 个 bit 而不是 word), 以及 \(U' = \epsilon^{-1} \log U\) 的 quantile sketch. 套一下就变成了

\[O(\epsilon^{-1} \log U + \epsilon^{-1} \log U') = O(\epsilon^{-1} (\log \log U + \log (\epsilon^{-1}))). \]

这已经比之前所有工作好了. 不停这么递归下去可能会有个含有 \(\log^*\) 的项, 文章剩下的一些工作就是把这个去掉.

Random Gabidulin Codes Achieve List Decoding Capacity in the Rank Metric (随机 Gabidulin 码在秩度量中实现了列表译码容量)

报告人: 张子涵

编码理论的一个核心问题是如何造出好的可以做列表译码 (list decoding) 的编码.

以 Reed-Solomon 编码为例, 一个 \(\mathbb F_q\) 上的 \(m-1\) 次多项式求 \(n\) 个点值 (\(n\geq m\)), 这是一个 \(\mathbb F^{m} \to \mathbb F^n\) 的编码, 这个编码的距离是 \(n-m+1\), 达到了最优 (MDS code), 也就是说任何错误不超过 \((n-m+1)/2\) 的错误都可以被纠正. 一般来说我们把这个 \(R=m/n\) 叫做码率 (code rate), 也就是说 \(\rho \leq (1-R)/2\) 的时候, \(\rho n\) 个错误可以完美纠错. 如果 \(\rho > (1-R)/2\) 呢? 有可能有多个解, 这就称为列表译码 (list decoding).

可以 (用概率方法) 证明的是, 有一些编码, 对于 \(\rho = 1 - R - \epsilon\), 在 \(\rho n\) 距离内只有 \(O(1/\epsilon)\) 个解. 这是大家想要达到的列表译码容量 (list decoding capacity). 但是 Reed-Solomon 编码能不能做到呢? 大家已经知道某些确定的取值点的选取是不能做到的, 于是又研究了所谓的折叠 (folded) Reed-Solomon 编码可以部分做到, 然后最近 陈业元和张子涵 终于说明了这个问题的答案是肯定的.

2023 年, 人们终于部分回答了 Reed-Solomon 码的列表译码容量问题, Brakensiek, Gopi 和 Makam 证明了, 随机选点的 Reed-Solomon 编码有大概率能够达到列表译码容量. 所以下一个问题就是能否找到确定性的构造了.

而 Gabidulin 码关心的是一个略有不同的问题. 在传统的编码理论里, 两个码的距离是 Hamming 距离, 也就是说两个码字之间不同的位数. 但是在秩度量 (rank metric) 里, 两个码 \(w_1, w_2 \in \mathbb F_{q^r}^n\) 的距离是把 \(w_1 - w_2\) 看做一个 \(\mathbb F_{q}^{n\times r}\) 的矩阵, 然后算它的秩, 这被称为秩度量 (rank metric). Gabidulin 码 Reed-Solomon 码的秩度量版本, 它考虑的是多项式

\[f(x) = \sum_i a_i x^{q^i} \]

在多个点求值得到的编码, 可以证明 Gabidulin 码在秩度量下也达到了最优的距离. Guo, Xing, Yuan 和 Zhang 的结果就是, 随机选取的 Gabidulin 码在秩度量下也能达到列表译码容量.

让我感兴趣的是证明过程中的一个技术性内容. 对于 Reed-Solomon 码而言, 他们通过证明了 "广义 Hall 定理" 进而得到的一个公式:

定理 (Brakensiek-Gopi-Makam). 考虑一个 \(k\times n\) 的矩阵 \(W\), 第 \((i, j)\) 个元素是形式变元 \(x_{ij}\).
\(W_{A}\) 表示从列的子集 \(A\subset [n]\) 中取出这些列生成的向量空间, 那么

\[\dim(W_{A_1} \cap \cdots \cap W_{A_\ell}) = \max_{P_1\sqcup \cdots \sqcup P_s = [\ell]} \left( \sum_{i\in [s]} \left|\bigcap_{j\in P_i} A_j\right| - (s-1) k\right). \]

而新作的技术性内容是, 他们证明了原本的公式的某种推广:

定理 (Guo-Xing-Yuan-Zhang). 考虑 \(\mathbb F\)\(\mathbb F_q\) 的扩域, 一个 \(k\times n\) 的矩阵 \(W\), 第 \((i, j)\) 个元素是形式变元 \(x_{ij}\).
对于 \(\mathbb F_q^n\) 的子空间 \(V_1,\dots,V_\ell\),

\[\dim_{\mathbb F}\left( \bigcap_i W \cdot {V_i}\right) = \max_{P_1\sqcup \cdots \sqcup P_s = [\ell]} \left( \sum_{i\in [s]} \dim_{\mathbb F_q} \left(\bigcap_{j\in P_i} V_j\right) - (s-1) k\right). \]

Power Series Composition in Near-Linear Time (近线性时间的幂级数复合)

报告人: noshi91 (木ノ下恭範 / Yasunori Kinoshita)

嗯哼, 不解释.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/828623.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

chapter16

segmentation.py参数第一题问题先让我们用一个小地址空间来转换一些地址。这里有一组简单的参数和几个不同的随机种子。你可以转换这些地址吗? segmentation.py -a 128 -p 512 -b 0 -l 20 -B 512 -L 20 -s 0 segmentation.py -a 128 -p 512 -b 0 -l 20 -B 512 -L 20 -s 1 segm…

刻不容缓腾讯云双十一活动羊毛攻略!!!

前言 每年的各大云厂商都在举办自己的活动,这不腾讯云举办了双十一嘉年华上云拼团 GO, 像我们这类程序员都拥有自己的博客或者需要部署的应用以及 Demo 案例,缺少不了云服务,接下来我带着大家领略最佳价格!!一、活动时间与节奏预热期(10 月 24 日 - 10 月 31 日)可提前了解活…

避坑指南:Mask操作时不要使用float(-inf)填充

在Transformer等类似深度学习任务中有掩码自注意力机制等子模块,会涉及默认的填充值, 建议填一个足够小的数,如-1e6就OK了,如果设置成float(-inf),如: if mask is not None:mask = mask.expand(attention_scores.shape[0], -1, -1, -1)attention_scores = attention_score…

游记:第37届校赛

T7 悦跑圈!启动! 改完这个题我就睡觉 求在s1或s2闭合的最小环,所以我枚举了边,假设一条边的两头分别是u和v,我以为环就是dij跑出来的d[u]+d[v],虽然不会立刻原路返回起点,但是中间可能有重复路径,而环是不能有这种路径的,所以从一开始就错了。(不长记性,失恋三部曲忘…

zlibrary镜像网站,z-library中文入口(持续更新)

zlibrary,一个全球领先的数字图书馆,拥有超过1300万册电子书资源,供人下载。它跨越多个学科,从古典文学到现代科技,再到人文艺术,无所不包。ZLibrary的使命是促进教育平等,让每个人都能便捷地获取知识。zlibrary数字图书馆镜像网址 zlbrary最新官网地址:https://zh.z-l…

MacOS(Unix系统)炫酷完美终端配置

MacOS(Unix系统)炫酷完美终端配置 1 下载安装 iTerm2 1.1 iTerm2,没有上架到AppStore,只能通过下载zip包安装,这是下载地址: https://iterm2.com/downloads.html ,压缩包双击打开后,将解压后的App拖动到【应用程序】文件夹就完成了。1.2 打开iTerm2 配置如下图,iTerm2…

流程编排LiteFlow-业务代码解耦

LiteFlow真的是相见恨晚啊,之前做过的很多系统,都会用各种if else,switch这些来解决不同业务方提出的问题,有时候还要“切一个分支”来搞这些额外的事情,把代码搞得一团糟,毫无可读性而言。如何打破僵局?LiteFlow为解耦逻辑而生,为编排而生,在使用LiteFlow之后,你会发…

Linux中awk命令实现指定字段的第一个字母大写

001、[root@PC1 test]# ls a.txt [root@PC1 test]# cat a.txt ## 测试数据 abcd KHG DETT dre ssae rtE [root@PC1 test]# awk {$1 = toupper(substr($1, 1, 1)) substr($1,2); print $0} a.txt ## 此处借助awk的内置函数…

java学习11.7

继续学习spring的内容

高级语言程序设计第六次作业

这个作业属于哪个课程:https://edu.cnblogs.com/campus/fzu/2024C/ 这个作业要求在哪里: https://edu.cnblogs.com/campus/fzu/2024C/homework/13303 学号:092300125 姓名:张天荣#include<stdio.h>int P(int num){int i;for(i=2;i<=num/2;i++){if(num%i==0)return…

【Maple2023软件下载与安装教程】

1、安装包Maple 2023: 链接:https://pan.quark.cn/s/8141b75ee5b5 提取码:d6AZ Maple 2022: 链接:https://pan.quark.cn/s/c726906349f2 提取码:geCP Maple 2021: 链接:https://pan.quark.cn/s/a5f710946c9a 提取码:fGKB Maple 2020: 链接:https://pan.quark.cn/s/83fd1…

SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能

SpringBoot操作Excel实现单文件上传、多文件上传、下载、读取内容等功能@目录项目整体描述页面图简介:功能概括说明具体功能举例代码介绍首页index.html操作成功跳转hello.html首页跳转index.html代码方法1:读取指定的Excel方法2:读取上传的Excel里面的内容方法3:java单文件…