Cache-Friendly Search Trees; or, In Which Everything Beats std::set
虽然理论计算机科学中的大量工作已经进入优化数据结构的运行时间和空间使用,但是这样的工作经常忽略现代计算机的非常重要的组件:高速缓存。在这样做时,经常开发的数据结构实现了理论上良好的运行时间,但是由于大量的高速缓存未命中而在实践中很慢。在1999年,Frigo等人提出了高速缓存不经意算法的概念:一种利用高速缓存的算法,不管高速缓存的大小或结构如何。从那时起,许多作者设计了高速缓存无关算法和数据结构,用于从矩阵乘法到数组排序的问题。在这项工作中,我们专注于高速缓存不经意的搜索树,即实现一个有序的字典在一个高速缓存友好的方式。我们将首先介绍高速缓存无关数据结构的概述,特别是高速缓存无关搜索树。然后,我们给出了在现代机器上使用这些缓存无关结构的实际结果,将它们与标准std::set和其他缓存友好的字典(如B树)进行比较。
2019-07-02 cs.DS cs.IR
Near-Optimal Algorithms for Linear Algebra in the Current Matrix Multiplication Time
MIT(麻省理工学院);IBM Research Almaden(IBM阿尔马登研究院);CMU(卡内基梅隆大学)
在数值线性代数社区中,有人建议要获得各种问题的近似最优边界,例如秩计算,找到列的最大线性无关子集(基),回归或低秩近似,一种自然的方法是解决Nelson和Nguyen的主要开放问题(FOCS,2013)。这个问题是关于对数因子在现有的不经意子空间嵌入,实现常数因子近似的草图尺寸。我们将展示如何绕过这个问题,使用一个精致的草图技术,并获得这些问题的最佳或接近最佳的界限。我们使用的一个关键技术是基于不确定性原理和提取器的Indyk显式映射,在首先应用已知的不经意子空间嵌入之后,使我们能够快速扩展向量的质量,以便采样现在是有效的。因此,我们避免了对数因子的草图尺寸,这是标准的边界证明,使用矩阵Beschoff不等式。对于秩计算和找到基的基本问题,我们的算法改进了Cheung,Kwok和Lau(JACM,2013),并且分别在常数因子和poly(log log(n))因子内是最优的。此外,对于常因子回归和低秩近似,我们给出了当前矩阵乘法指数的第一个最优算法。
2021-11-02 cs.DS cs.LG
Parallel Batch-Dynamic $k$-Clique Counting
在本文中,我们研究了新的批量动态算法$k$ -团计数问题,这是动态算法的更新是批量的边缘插入和删除。我们研究这个问题的并行设置,其中的目标是获得低(多对数)深度的算法。我们的第一个结果是一个新的并行批量动态三角形计数算法与$O(Δ\sqrt{Δ+m})$分期付款的工作和$O(\log^* (Δ+m))$深度的概率高,和$O(Δ+m)$空间的一批$Δ$边缘插入或删除。我们的第二个结果是基于并行快速矩阵乘法的代数算法。假设存在具有并行矩阵乘法常数$ω_p$的并行快速矩阵乘法算法,则相同的算法解决了具有高概率的$O\left(\min\left(Δm^{\frac{(2k - 1)ω_p}{3(ω_p + 1)}}, (Δ+m)^{\frac{2(k + 1)ω_p}{3(ω_p + 1)}}\right)\right)$分摊工作和$O(\log (Δ+m))$深度以及$O\left((Δ+m)^{\frac{2(k + 1)ω_p}{3(ω_p + 1)}}\right)$空间的动态$k$ -团计数。使用最近开发的并行$k$ -团计数算法,我们也得到了一个简单的批量动态算法$k$ -团计数的图荫度$α$运行在$O(Δ(m+Δ)α^{k-4})$预期的工作和$O(\log^{k-2} n)$深度与高概率,和$O(m + Δ)$空间。最后,我们提出了一个多核CPU实现我们的并行批动态三角形…
2020-12-13 cs.DC cs.DS
Spectral Gaps with Quantum Counting Queries and Oblivious State Preparation
IBM Research(IBM 研究院);ETH Zurich(苏黎世联邦理工学院);Huawei Zurich Research Center(华为苏黎世研究中心)
本文提出一种量子算法,利用对数数量的量子比特近似Hermitian矩阵的谱间隙及中点,针对大间隙提供比经典算法更快的速度。
2026-05-10 cs.DS cs.NA math.NA
SparseStack Is an Optimal Oblivious Subspace Embedding
本文证明SparseStack是最优无感知子空间嵌入,参数符合Nelson等的猜想,证明用条件期望耦合等方法,定理已在Lean 4中形式验证,证明借助AI系统完成。
2026-09-10 cs.DS cs.NA math.NA
Twin-width V: linear minors, modular counting, and matrix multiplication
我们继续围绕全序二元结构的孪晶宽度发展理论,这在本系列的前一篇论文中已经开始。我们首先介绍的奇偶校验和线性子矩阵的概念,它包括迭代替换连续的行或连续的列与它们的线性组合。我们证明了一个矩阵类有界孪生宽度当且仅当它的线性子闭包不包含所有的矩阵。我们观察到,固定参数易处理算法的一阶模型检查的结构给出了一个$O(1)$序列(有界双宽度证书)和事实,即一阶转换有界双宽度类有界双宽度,都建立在双宽度I,扩展到一阶逻辑与模块计数量词。我们明确了一个双赢的论点,作为双宽度IV的副产品,有点类似于二维,我们称之为秩二维。武装与上述扩展到模计数,我们表明,在一个有限域上的两个共形矩阵$A, B$的产品的孪生宽度是有界的$A$,$B$,和字段的大小的孪生宽度的函数。此外,如果$A$和$B$是$n \times n$矩阵的twin-width $d$在$\mathbb F_q$,我们表明,$AB$可以计算的时间$O_{d,q}(n^2 \log n)$。最后,我们提出了一个特别的算法,有效地乘以两个矩阵的有界的孪生宽度,在孪生宽度界的单指数依赖:如果输入是在一个紧凑的树状形式,称为孪生分解(宽度$d$),那么两个$n \times n$矩阵$A, B$在$\mathbb F_2$,一个孪生分解的$AB$与宽度$2^{d+o(d)}$可以计算在时间$4^{d+o(d)}n$(分别)。$4^{d+o(d)}…
2022-09-24 cs.DM cs.DS cs.LO
Dynamic Trace Estimation
我们研究了动态版本的隐式迹估计问题。由于访问一个oracle计算矩阵向量乘法与一个动态变化的矩阵A,我们的目标是保持一个准确的近似A的轨迹使用尽可能少的乘法。我们提出了一个实用的算法来解决这个问题,并证明,在一个自然的设置,其复杂性是二次优于标准的解决方案,反复应用哈钦森的随机跟踪估计。我们还提供了一种改进的算法,假设对动态矩阵A的假设略强。我们支持我们的理论与实证结果,显示显着的计算改进机器学习和网络科学中的三个应用程序:跟踪时刻的海森谱密度在神经网络优化,计数三角形,并估计自然连接的动态变化的图形。
2021-10-26 cs.DS
Parallel Triangle Counting in Massive Streaming Graphs
图中三角形的数量是一个基本的度量,用于社会网络分析、链接分类和推荐等。在这些应用程序和现代图形数据集都是大型和动态的趋势的驱动下,我们提出了一个快速和高速缓存高效的并行算法的设计和实现,用于估计三角形的数量在一个巨大的无向图的边缘到达流。它结合了流算法和并行算法的优点。通过构建流算法框架,该算法具有较小的内存占用。通过利用Cache-Oblivious框架,它可以有效地利用现代多核机器的存储层次结构,而无需知道其特定参数。我们证明了理论界的准确性,内存访问成本,并行运行时的复杂性,以及经验表明,该算法产生准确的结果和大幅加速相比,优化的顺序实现。(This是CIKM'13论文的扩展版本。
2013-08-09 cs.DB cs.DC cs.DS
Sparse Matrix Multiplication and Triangle Listing in the Congested Clique Model
我们在拥塞集团模型中将两个$n \times n$矩阵$S,T$在半环上相乘,其中$n$完全连接的节点在$O(nz(S)^{1/3} nz(T)^{1/3}/n + 1)$轮通信内使用$O(\log n)$位消息同步通信,其中$nz(A)$表示矩阵$A$中非零元素的数量。通过利用输入矩阵的稀疏性,与一般算法相比,我们的算法大大减少了通信[Censor-Hillel等人,PODC 2015],改进了具有$o(n^2)$非零元素的矩阵的最新技术水平。我们的算法表现出超越以前的解决方案,也只有一个矩阵是稀疏的额外的力量。这允许有效地将稀疏矩阵提升到大于2的幂。作为应用,我们加快了稀疏图中的4圈计数和APSP。我们的算法的贡献是一个新的\emph{deterministic}方法,以稀疏感知的方式重构输入矩阵,它分配给每个节点元素的乘法任务,不一定是连续的,但平衡,产生通信效率的乘法。此外,这种新的确定性的方法可以用来重建输入图的邻接矩阵,使图形相关的问题的快速解决方案。作为一个例子,我们提出了一种新的确定性算法,它解决了$O(m/n^{5/3} + 1)$轮中的三角形列表问题,这是一种以前通过\emph{randomized}算法获得的复杂度[Pandurangan等人,SPAA 2018],并与$\tildeΩ(n^{1/3})$的下限相匹配[Izumi和Le Gall,PODC 20…
2019-03-20 cs.DC cs.DS
Fast Approximate Counting of Cycles
本文提出有向图中三角形及任意固定长度环的快速近似计数算法,将三角形计数时间改进为与矩形矩阵乘法相当,并证明在细粒度假设下该时间最优。
2024-09-28 cs.DS
Computing Exact Distances in the Congested Clique
本文给出了简单的分布式算法的基本问题计算图的距离在拥挤集团模型。我们的算法的主要组成部分之一是快速矩阵乘法,我们展示了一个$O(n^{1/3})$轮算法时,乘法需要在一个半环,和一个$O(n^{0.157})$轮算法时,可以在一个字段上执行的计算。我们建议用$κ$表示该模型中矩阵乘法的指数,从而给出$κ< 0.157$。我们展示了如何在$n$节点的加权图中计算$O(n^{1/3}\log{n})$轮中的所有对最短路径(APSP),这也意味着图直径$D$的计算。在未加权图中,APSP可以在$O(\min\{n^{1/3}\log{D},n^κ D\})$轮中计算,直径可以在$O(n^κ\log{D})$轮中计算。此外,我们展示了如何在$O(n^{1/3})$轮中计算图的围长,并提供了在$O(n^κ)$轮中完成的三角形检测和4圈检测算法。我们所有的算法都是确定性的。我们的三角形检测和4-循环检测算法在此模型中改进了以前最知名的算法,并驳斥了一个猜想,即任何确定性遗忘算法检测三角形都需要$\tilde Ω(n^{1/3})$轮。我们的距离计算算法是精确的,并且改进了Nanongkai [STOC 2014]的先前最知名的$\tilde O(n^{1/2})$算法,用于计算APSP的$(2+o(1))$近似。最后,我们给出了与上述自然算法族相匹配的下界。对于拥塞集团广播模型,我们推导出矩阵…
2015-03-22 cs.DC cs.DS
Output-sensitive approximate counting via a measure-bounded hyperedge oracle, or: How asymmetry helps estimate $k$-clique counts faster
本文推广了DLM归约,提出度量有界超边预言机,实现输出敏感的$k$-团、$k$-支配集和$k$-和近似计数算法,在见证数少时显著提速。
2025-03-27 cs.DS
Listing, Verifying and Counting Lowest Common Ancestors in DAGs: Algorithms and Fine-Grained Lower Bounds
AP-LCA问题要求,给定$n$ -节点有向无环图(DAG),为DAG中的每对顶点$u$和$v$计算$u$和$v$的最低共同祖先(LCA)(如果存在)。在本文中,我们研究了几个有趣的变体AP LCA,提供算法和细粒度的下界。我们得到的下界是LCA问题高于$n^{ω-o(1)}$的第一个条件下界,其中$ω$是矩阵乘法指数。我们的一些结果包括:-在任何DAG,我们可以检测到所有的顶点对,最多有两个LCA,并列出所有的LCA在$O(n^ω)$时间。该算法扩展了[Kowaluk和Lingas ESA'07]的结果,该结果显示了$\tilde{O}(n^ω)$时间算法,该算法检测DAG中具有唯一LCA的所有对并输出其相应的LCA。- 在3-均匀5-超团检测需要$n^{5-o(1)}$时间的流行假设下,列出DAG中每个顶点对的$7$ LCA需要$n^{3-o(1)}$时间。这是令人惊讶的,因为基本上立方时间足以列出所有LCA(如果$ω=2$)。- 计算DAG中每个顶点对的LCA数量需要强指数时间假设下的$n^{3-o(1)}$时间和$4$ -团假设下的$n^{ω(1,2,1)-o(1)}$时间。这表明,[Echkardt,Mühling和Nowak ESA'07]列出每对顶点的所有LCA的算法可能是最佳的。- 给定每个顶点对$u,v$的DAG和顶点$w_{u,v}$,验证是否所有$w_{u,v…
2022-04-22 cs.DS
Algebraic Methods in the Congested Clique
在这项工作中,我们使用代数方法研究距离计算和子图检测任务的拥挤集团模型。具体来说,我们适应并行矩阵乘法实现拥塞集团,获得一个$O(n^{1-2/ω})$轮矩阵乘法算法,其中$ω< 2.3728639$是矩阵乘法的指数。结合已知的技术从集中式算法,这给出了显着的改进,在以前的最佳上限的拥塞集团模型。主要成果包括:--$O(n^{0.158})$轮中的三角形和4-循环计数,改进Dolev等人[DISC 2012]的$O(n^{1/3})$三角形检测算法,--$O(n^{0.158})$轮中所有对最短路径的$(1 + o(1))$ -近似,改进Nanongkai [STOC 2014]的$\tilde{O} (n^{1/2})$ -轮$(2 + o(1))$ -近似算法,以及--计算$O(n^{0.158})$轮中的围长,这是该模型中的第一个非平凡解。此外,我们提出了一种新的恒轮检测4-圈的组合算法。
2015-03-17 cs.DC cs.DS
Counting thin subgraphs via packings faster than meet-in-the-middle time
Vassilevska和Williams(STOC 2009)展示了如何计算$n$ -时间点图中$k$顶点上的简单路径和$k/2$边的匹配数$n^{k/2+O(1)}$。同年,Koutis和Williams~(ICALP 2009)和Björklund \emph{et al.}(ESA 2009)给出了两个具有相同运行时间的不同算法,通过$n^{st/2+O(1)}$ -时间算法来计算$t$ -从$n$ -元素论域的给定$s$ -大小的子集族中提取的成对不相交集的元组。不久之后,Alon和Gutner(TALG 2010)表明,当通过颜色编码计数时,这些问题具有$Ω(n^{\lfloor st/2\rfloor})$和$Ω(n^{\lfloor k/2\rfloor})$下限。在这里,我们表明,可以做得更好,即,我们表明,“满足在中间”指数$st/2$可以击败,并给出一个算法,在时间上计数$n^{0.45470382 st + O(1)}$ $t$三的倍数。这意味着算法的出现的固定子图的$k$顶点和路径宽度$p\ll k$在$n$ -顶点图在$n^{0.45470382k+2p+O(1)}$的时间,改进了上述三个算法的路径和匹配,并绕过了颜色编码的下限。我们也给出了改进的界计数$t$ -元组的不相交$s$ -集$s=2,3,4$。我们的算法使用快速矩阵乘法。我们证明了一个论点,这…
2015-08-14 cs.DM cs.DS
On the Local Communication Complexity of Counting and Modular Arithmetic
在标准的现有数多方通信复杂性中,性能是以网络中全局传输的比特总数来衡量的。在本文中,我们研究了一种称为本地通信复杂性的变体,其中性能而是衡量任何一个播放器发送或接收的最大比特数。我们专注于一个简单的模型,其中$n$播放器,每个有一个输入位,执行协议,通过交换消息来计算$n$输入位上的函数。我们问什么可以和不能解决一个小的本地通信复杂性在这种情况下。首先,我们通过证明计算分布在参与者之间的第一个$17$输入比特中的$1$的数量需要严格大于$1$的局部复杂度来建立特定函数的局部复杂度的非平凡下界。我们进一步调查是否更难计数问题,这种类型的可以产生更强的下限,提供了一个很大程度上是否定的答案,通过显示,恒定的本地复杂性是足够的数量$1$位在整个输入,因此计算任何对称函数。除了计数,我们表明,排序和搜索可以计算在恒定的局部复杂性。然后,我们使用计数的解决方案作为一个子程序来证明,恒定的本地复杂性也足以计算两个操作数上的许多标准模算术运算,包括:比较,加法,减法,乘法,除法和取幂。最后证明了函数$GCD(x,y)$的局部复杂度为$O(1)$,其中$x$和$y$在$[1,n]$的范围内.我们的工作突出了新的技术证明这个指标的下限和权力,即使是少量的本地通信。
2021-11-22 cs.CC cs.DC cs.DS
Tensor network complexity of multilinear maps
我们研究张量网络的算术计算模型评估多线性映射。这些捕获基于低边界秩张量分解的任何算法,例如$O(n^{ω+ε})$时间矩阵乘法,以及另外许多其他算法,例如$O(n \log n)$时间离散傅立叶变换和用于计算矩阵的积和的$O^*(2^n)$时间。然而,张量网络有时会产生比低秩分解更快的算法。例如,用于对$3t$ -团进行计数的已知最快的$O(n^{(ω+ε)t})$时间算法可以用张量网络来实现,即使底层张量具有针对所有$t \ge 2$的边界秩$n^{3t}$。对于一般模式图$P$在$n$顶点上到宿主图的同态的计数,我们得到了$O(n^{(ω+ε)\operatorname{bw}(P)/2})$的一个上界,其中$\operatorname{bw}(P)$是$P$的分支宽度.这基本上匹配计数集团的界限,并对$P$的许多选择产生比以前的算法小的改进。虽然功能强大,模型仍然有局限性,我们能够显示一些无条件的各种多线性映射的下限,包括:(a)一个$Ω(n^{\operatorname{bw}(P)})$时间下限计数从$P$到$n$ -顶点图的同态,如果$ω= 2$匹配的上限。特别是对于$P$一个$v$ -团,这产生了一个$Ω(n^{\lceil 2v/3 \rceil})$时间下界用于计数$v$ -团,对于$P$一个$k$ -均匀$v$ -超团,我们获得了一个$Ω(n^v)$时间下界用于…
2018-11-15 cs.CC cs.DS
Congested Clique Counting for Local Gibbs Distributions
本文在CongestedClique模型中提出首个面向局部吉布斯分布的近似计数算法,利用分布式马尔可夫链并行采样,在快速混合条件下以Õ(n^{1/3}/ε²)轮近似配分函数,并在hardcore模型中将轮数改进为Õ(1/ε²)。
2025-08-18 cs.DC cs.DS
Planar Perfect Matching Counting is as Hard as Determinants
University of Regensburg(雷根斯堡大学);IT University of Copenhagen(哥本哈根信息技术大学);University of Helsinki(赫尔辛基大学)
本文证明在代数电路等计算模型下,边加权平面图的完美匹配计数无法在 O(n^{ω/2-ε}) 算术运算内完成,从而确认了 Yuster 算法的最优性。
2026-06-02 cs.CC cs.DM cs.DS
A general purpose algorithm for counting simple cycles and simple paths of any length
我们描述了一个通用的算法计算简单的循环和简单的路径的任何长度$\ell$(加权di)图上的$N$顶点和$M$边,实现了$O\left(N+M+\big(\ell^ω+\ellΔ\big) |S_\ell|\right)$的时间复杂度。在这个表达式中,$|S_\ell|$是$G$在至多$\ell$顶点上的(弱)连通导出子图的数目,$Δ$是任何顶点的最大度,$ω$是矩阵乘法的指数。我们比较了算法的复杂性,理论和实验与大多数现有的算法相同的任务。这些比较表明,这里描述的算法是最好的通用算法的类图,其中$(\ell^{ω-1}Δ^{-1}+1) |S_\ell|\leq |\text{Cycle}_\ell|$,与$|\text{Cycle}_\ell|$的总数目的简单的循环的长度最多$\ell$,包括回溯和自循环。在Erdens-Rényi随机图上,我们经验地发现,当边概率大于约$4/N$时,会发生这种情况。此外,我们表明,一些现实世界的网络也属于这一类。最后,该算法允许枚举网络上的简单循环和简单路径,其中顶点从$n$字母上的字母表标记,时间复杂度为$O\left(N+M+\big(n^\ell\ell^ω+\ellΔ\big) |S_\ell|\right)$。这里提出的算法的Matlab实现可供下载。
2016-12-16 cs.DM cs.DS math.CO
Efficient and Near-Optimal Noise Generation for Streaming Differential Privacy
Google DeepMind(谷歌DeepMind);Google Research(谷歌研究院);IIT Madras(马德拉斯印度理工学院)
本文针对差分隐私连续计数提出两种近最优且空间高效的噪声生成方案,通过Toeplitz矩阵流式乘法和低阶有理函数逼近平方根,仅需对数或多项式对数空间即可实现高实用性。
2024-05-06 cs.CC cs.CR cs.DS
BLEST: Blazingly Efficient BFS using Tensor Cores
Sabanci University(萨贝里奇大学)
BLEST通过利用张量核心实现高效的BFS,采用位图结构和优化执行布局,结合内存效率和局部性改进,提升图计算性能。
2025-12-26 cs.DC cs.DS
Improved polynomial-time algorithms for detecting and recovering planted $Θ(\sqrt{n})$-cliques
Johns Hopkins University(约翰斯·霍普金斯大学)
本文针对植入团问题,利用颜色编码和矩阵乘法,提出改进的多项式时间算法,在更小的团大小阈值下实现检测与恢复,达到运行时间与信号强度的最佳权衡。
2026-09-22 cs.DS math.ST stat.TH