弹性去生成字符串匹配,1 次错误或不匹配

IF 0.6 4区 计算机科学 Q4 COMPUTER SCIENCE, THEORY & METHODS
Giulia Bernardini, Esteban Gabory, Solon P. Pissis, Leen Stougie, Michelle Sweering, Wiktor Zuba
{"title":"弹性去生成字符串匹配,1 次错误或不匹配","authors":"Giulia Bernardini, Esteban Gabory, Solon P. Pissis, Leen Stougie, Michelle Sweering, Wiktor Zuba","doi":"10.1007/s00224-024-10194-8","DOIUrl":null,"url":null,"abstract":"<p>An elastic-degenerate (ED) string is a sequence of <i>n</i> finite sets of strings of total length <i>N</i>, introduced to represent a set of related DNA sequences, also known as a <i>pangenome</i>. The ED string matching (EDSM) problem consists in reporting all occurrences of a pattern of length <i>m</i> in an ED text. The EDSM problem has recently received some attention by the combinatorial pattern matching community, culminating in an <span>\\(\\mathcal {\\tilde{O}}(nm^{\\omega -1})+\\mathcal {O}(N)\\)</span>-time algorithm [Bernardini et al., SIAM J. Comput. 2022], where <span>\\(\\omega \\)</span> denotes the matrix multiplication exponent and the <span>\\(\\mathcal {\\tilde{O}}(\\cdot )\\)</span> notation suppresses polylog factors. In the <i>k</i>-EDSM problem, the approximate version of EDSM, we are asked to report all pattern occurrences with at most <i>k</i> errors. <i>k</i>-EDSM can be solved in <span>\\(\\mathcal {O}(k^2mG+kN)\\)</span> time, under edit distance, or <span>\\(\\mathcal {O}(kmG+kN)\\)</span> time, under Hamming distance, where <i>G</i> denotes the total number of strings in the ED text [Bernardini et al., Theor. Comput. Sci. 2020]. Unfortunately, <i>G</i> is only bounded by <i>N</i>, and so even for <span>\\(k=1\\)</span>, the existing algorithms run in <span>\\(\\varOmega (mN)\\)</span> time in the worst case. In this paper we make progress in this direction. We show that 1-EDSM can be solved in <span>\\(\\mathcal {O}((nm^2 + N)\\log m)\\)</span> or <span>\\(\\mathcal {O}(nm^3 + N)\\)</span> time under edit distance. For the decision version of the problem, we present a faster <span>\\(\\mathcal {O}(nm^2\\sqrt{\\log m} + N\\log \\log m)\\)</span>-time algorithm. We also show that 1-EDSM can be solved in <span>\\(\\mathcal {O}(nm^2 + N\\log m)\\)</span> time under Hamming distance. Our algorithms for edit distance rely on non-trivial reductions from 1-EDSM to special instances of classic computational geometry problems (2d rectangle stabbing or 2d range emptiness), which we show how to solve efficiently. In order to obtain an even faster algorithm for Hamming distance, we rely on employing and adapting the <i>k</i>-errata trees for indexing with errors [Cole et al., STOC 2004]. This is an extended version of a paper presented at LATIN 2022.</p>","PeriodicalId":22832,"journal":{"name":"Theory of Computing Systems","volume":"101 1","pages":""},"PeriodicalIF":0.6000,"publicationDate":"2024-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Elastic-Degenerate String Matching with 1 Error or Mismatch\",\"authors\":\"Giulia Bernardini, Esteban Gabory, Solon P. Pissis, Leen Stougie, Michelle Sweering, Wiktor Zuba\",\"doi\":\"10.1007/s00224-024-10194-8\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<p>An elastic-degenerate (ED) string is a sequence of <i>n</i> finite sets of strings of total length <i>N</i>, introduced to represent a set of related DNA sequences, also known as a <i>pangenome</i>. The ED string matching (EDSM) problem consists in reporting all occurrences of a pattern of length <i>m</i> in an ED text. The EDSM problem has recently received some attention by the combinatorial pattern matching community, culminating in an <span>\\\\(\\\\mathcal {\\\\tilde{O}}(nm^{\\\\omega -1})+\\\\mathcal {O}(N)\\\\)</span>-time algorithm [Bernardini et al., SIAM J. Comput. 2022], where <span>\\\\(\\\\omega \\\\)</span> denotes the matrix multiplication exponent and the <span>\\\\(\\\\mathcal {\\\\tilde{O}}(\\\\cdot )\\\\)</span> notation suppresses polylog factors. In the <i>k</i>-EDSM problem, the approximate version of EDSM, we are asked to report all pattern occurrences with at most <i>k</i> errors. <i>k</i>-EDSM can be solved in <span>\\\\(\\\\mathcal {O}(k^2mG+kN)\\\\)</span> time, under edit distance, or <span>\\\\(\\\\mathcal {O}(kmG+kN)\\\\)</span> time, under Hamming distance, where <i>G</i> denotes the total number of strings in the ED text [Bernardini et al., Theor. Comput. Sci. 2020]. Unfortunately, <i>G</i> is only bounded by <i>N</i>, and so even for <span>\\\\(k=1\\\\)</span>, the existing algorithms run in <span>\\\\(\\\\varOmega (mN)\\\\)</span> time in the worst case. In this paper we make progress in this direction. We show that 1-EDSM can be solved in <span>\\\\(\\\\mathcal {O}((nm^2 + N)\\\\log m)\\\\)</span> or <span>\\\\(\\\\mathcal {O}(nm^3 + N)\\\\)</span> time under edit distance. For the decision version of the problem, we present a faster <span>\\\\(\\\\mathcal {O}(nm^2\\\\sqrt{\\\\log m} + N\\\\log \\\\log m)\\\\)</span>-time algorithm. We also show that 1-EDSM can be solved in <span>\\\\(\\\\mathcal {O}(nm^2 + N\\\\log m)\\\\)</span> time under Hamming distance. Our algorithms for edit distance rely on non-trivial reductions from 1-EDSM to special instances of classic computational geometry problems (2d rectangle stabbing or 2d range emptiness), which we show how to solve efficiently. In order to obtain an even faster algorithm for Hamming distance, we rely on employing and adapting the <i>k</i>-errata trees for indexing with errors [Cole et al., STOC 2004]. This is an extended version of a paper presented at LATIN 2022.</p>\",\"PeriodicalId\":22832,\"journal\":{\"name\":\"Theory of Computing Systems\",\"volume\":\"101 1\",\"pages\":\"\"},\"PeriodicalIF\":0.6000,\"publicationDate\":\"2024-09-16\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Theory of Computing Systems\",\"FirstCategoryId\":\"94\",\"ListUrlMain\":\"https://doi.org/10.1007/s00224-024-10194-8\",\"RegionNum\":4,\"RegionCategory\":\"计算机科学\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q4\",\"JCRName\":\"COMPUTER SCIENCE, THEORY & METHODS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Theory of Computing Systems","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1007/s00224-024-10194-8","RegionNum":4,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q4","JCRName":"COMPUTER SCIENCE, THEORY & METHODS","Score":null,"Total":0}
引用次数: 0

摘要

弹性退化(ED)字符串是总长度为 N 的 n 个有限字符串集合的序列,用来表示一组相关的 DNA 序列,也称为泛基因组。ED 字符串匹配(EDSM)问题包括报告 ED 文本中长度为 m 的模式的所有出现情况。最近,EDSM 问题受到了组合模式匹配界的关注,最终产生了一种 \(\mathcal {\tilde{O}}(nm^{\omega -1})+\mathcal {O}(N)\)-time 算法 [Bernardini et al、SIAM J. Comput. 2022],其中 \(\omega \) 表示矩阵乘法指数,而 \(\mathcal {\tilde{O}}(\cdot )\) 符号抑制了多对数因子。在 k-EDSM 问题(EDSM 的近似版本)中,我们被要求以最多 k 个错误来报告所有模式的出现。在编辑距离下,k-ESM 可以在 \(\mathcal {O}(k^2mG+kN)\) 时间内求解,或在汉明距离下,在 \(\mathcal {O}(kmG+kN)\) 时间内求解,其中 G 表示 ED 文本中字符串的总数 [Bernardini et al、计算科学理论,2020 年]。不幸的是,G 仅以 N 为界,因此即使对于 \(k=1\),现有算法在最坏情况下也需要 \(\varOmega(mN)\)时间。在本文中,我们在这个方向上取得了进展。我们证明在编辑距离下,1-EDSM 可以在 \(\mathcal {O}((nm^2 + N)\log m)\)或 \(\mathcal {O}(nm^3 + N)\)时间内求解。对于决策版本的问题,我们提出了一种更快的 \(\mathcal {O}(nm^2\sqrt{\log m} + N\log \log m)\时间算法。我们还证明,在汉明距离下,1-EDSM 可以在 \(\mathcal {O}(nm^2 + N\log m)\)时间内求解。我们的编辑距离算法依赖于从 1-EDSM 到经典计算几何问题(2d 矩形刺入或 2d 范围虚空)特殊实例的非难还原,我们展示了如何高效地解决这些问题。为了获得更快的汉明距离算法,我们采用了 k-errata 树,并对其进行了调整,以实现有误差的索引[科尔等人,STOC 2004]。本文是在 LATIN 2022 大会上发表的论文的扩展版本。
本文章由计算机程序翻译,如有差异,请以英文原文为准。

Elastic-Degenerate String Matching with 1 Error or Mismatch

Elastic-Degenerate String Matching with 1 Error or Mismatch

An elastic-degenerate (ED) string is a sequence of n finite sets of strings of total length N, introduced to represent a set of related DNA sequences, also known as a pangenome. The ED string matching (EDSM) problem consists in reporting all occurrences of a pattern of length m in an ED text. The EDSM problem has recently received some attention by the combinatorial pattern matching community, culminating in an \(\mathcal {\tilde{O}}(nm^{\omega -1})+\mathcal {O}(N)\)-time algorithm [Bernardini et al., SIAM J. Comput. 2022], where \(\omega \) denotes the matrix multiplication exponent and the \(\mathcal {\tilde{O}}(\cdot )\) notation suppresses polylog factors. In the k-EDSM problem, the approximate version of EDSM, we are asked to report all pattern occurrences with at most k errors. k-EDSM can be solved in \(\mathcal {O}(k^2mG+kN)\) time, under edit distance, or \(\mathcal {O}(kmG+kN)\) time, under Hamming distance, where G denotes the total number of strings in the ED text [Bernardini et al., Theor. Comput. Sci. 2020]. Unfortunately, G is only bounded by N, and so even for \(k=1\), the existing algorithms run in \(\varOmega (mN)\) time in the worst case. In this paper we make progress in this direction. We show that 1-EDSM can be solved in \(\mathcal {O}((nm^2 + N)\log m)\) or \(\mathcal {O}(nm^3 + N)\) time under edit distance. For the decision version of the problem, we present a faster \(\mathcal {O}(nm^2\sqrt{\log m} + N\log \log m)\)-time algorithm. We also show that 1-EDSM can be solved in \(\mathcal {O}(nm^2 + N\log m)\) time under Hamming distance. Our algorithms for edit distance rely on non-trivial reductions from 1-EDSM to special instances of classic computational geometry problems (2d rectangle stabbing or 2d range emptiness), which we show how to solve efficiently. In order to obtain an even faster algorithm for Hamming distance, we rely on employing and adapting the k-errata trees for indexing with errors [Cole et al., STOC 2004]. This is an extended version of a paper presented at LATIN 2022.

求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Theory of Computing Systems
Theory of Computing Systems 工程技术-计算机:理论方法
CiteScore
1.90
自引率
0.00%
发文量
36
审稿时长
6-12 weeks
期刊介绍: TOCS is devoted to publishing original research from all areas of theoretical computer science, ranging from foundational areas such as computational complexity, to fundamental areas such as algorithms and data structures, to focused areas such as parallel and distributed algorithms and architectures.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信