Paweł Gawrychowski, Egor Gorbachev, Tomasz Kociumaka
{"title":"Core-Sparse Monge Matrix Multiplication: Improved Algorithm and Applications","authors":"Paweł Gawrychowski, Egor Gorbachev, Tomasz Kociumaka","doi":"arxiv-2408.04613","DOIUrl":null,"url":null,"abstract":"The task of min-plus matrix multiplication often arises in the context of\ndistances in graphs and is known to be fine-grained equivalent to the All-Pairs\nShortest Path problem. The non-crossing property of shortest paths in planar\ngraphs gives rise to Monge matrices; the min-plus product of $n\\times n$ Monge\nmatrices can be computed in $O(n^2)$ time. Grid graphs arising in sequence\nalignment problems, such as longest common subsequence or longest increasing\nsubsequence, are even more structured. Tiskin [SODA'10] modeled their behavior\nusing simple unit-Monge matrices and showed that the min-plus product of such\nmatrices can be computed in $O(n\\log n)$ time. Russo [SPIRE'11] showed that the\nmin-plus product of arbitrary Monge matrices can be computed in time\n$O((n+\\delta)\\log^3 n)$ parameterized by the core size $\\delta$, which is\n$O(n)$ for unit-Monge matrices. In this work, we provide a linear bound on the core size of the product\nmatrix in terms of the core sizes of the input matrices and show how to solve\nthe core-sparse Monge matrix multiplication problem in $O((n+\\delta)\\log n)$\ntime, matching the result of Tiskin for simple unit-Monge matrices. Our\nalgorithm also allows $O(\\log \\delta)$-time witness recovery for any given\nentry of the output matrix. As an application of this functionality, we show\nthat an array of size $n$ can be preprocessed in $O(n\\log^3 n)$ time so that\nthe longest increasing subsequence of any sub-array can be reconstructed in\n$O(l)$ time, where $l$ is the length of the reported subsequence; in\ncomparison, Karthik C. S. and Rahul [arXiv'24] recently achieved\n$O(l+n^{1/2}\\log^3 n)$-time reporting after $O(n^{3/2}\\log^3 n)$-time\npreprocessing. Our faster core-sparse Monge matrix multiplication also enabled\nreducing two logarithmic factors in the running times of the recent algorithms\nfor edit distance with integer weights [Gorbachev & Kociumaka, arXiv'24].","PeriodicalId":501525,"journal":{"name":"arXiv - CS - Data Structures and Algorithms","volume":"171 1","pages":""},"PeriodicalIF":0.0000,"publicationDate":"2024-08-08","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Data Structures and Algorithms","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2408.04613","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
The task of min-plus matrix multiplication often arises in the context of
distances in graphs and is known to be fine-grained equivalent to the All-Pairs
Shortest Path problem. The non-crossing property of shortest paths in planar
graphs gives rise to Monge matrices; the min-plus product of $n\times n$ Monge
matrices can be computed in $O(n^2)$ time. Grid graphs arising in sequence
alignment problems, such as longest common subsequence or longest increasing
subsequence, are even more structured. Tiskin [SODA'10] modeled their behavior
using simple unit-Monge matrices and showed that the min-plus product of such
matrices can be computed in $O(n\log n)$ time. Russo [SPIRE'11] showed that the
min-plus product of arbitrary Monge matrices can be computed in time
$O((n+\delta)\log^3 n)$ parameterized by the core size $\delta$, which is
$O(n)$ for unit-Monge matrices. In this work, we provide a linear bound on the core size of the product
matrix in terms of the core sizes of the input matrices and show how to solve
the core-sparse Monge matrix multiplication problem in $O((n+\delta)\log n)$
time, matching the result of Tiskin for simple unit-Monge matrices. Our
algorithm also allows $O(\log \delta)$-time witness recovery for any given
entry of the output matrix. As an application of this functionality, we show
that an array of size $n$ can be preprocessed in $O(n\log^3 n)$ time so that
the longest increasing subsequence of any sub-array can be reconstructed in
$O(l)$ time, where $l$ is the length of the reported subsequence; in
comparison, Karthik C. S. and Rahul [arXiv'24] recently achieved
$O(l+n^{1/2}\log^3 n)$-time reporting after $O(n^{3/2}\log^3 n)$-time
preprocessing. Our faster core-sparse Monge matrix multiplication also enabled
reducing two logarithmic factors in the running times of the recent algorithms
for edit distance with integer weights [Gorbachev & Kociumaka, arXiv'24].