Skip to main content
QUICK REVIEW

[論文レビュー] Breaking a Barrier in Constructing Compact Indexes for Parameterized Pattern Matching

Kento Iseri, I Tomohiro|arXiv (Cornell University)|Aug 11, 2023
Algorithms and Data Compression被引用数 2
ひとこと要約

本稿は、O(n lg σp lg n / lg lg n) の時間計算量を達成する、パラメータ化されたパターンマッチングのための最初のオンラインでコン pact なインデックス構築法を提示する。これにより、パラメータ化されたサフィックスアレイなどの関連データ構造で10年以上にわたり継続していた、O(σp) 要因の削除が可能になった。これは、波尾木と動的データ構造を用いて、オンライン構築中にバックワードサーチを効率的にサポートすることにより達成された。これにより、空間効率的かつ右から左への段階的構築が可能な、初めてのインデックスとなった。

ABSTRACT

A parameterized string (p-string) is a string over an alphabet (Σ_s ∪ Σ_p), where Σ_s and Σ_p are disjoint alphabets for static symbols (s-symbols) and for parameter symbols (p-symbols), respectively. Two p-strings x and y are said to parameterized match (p-match) if and only if x can be transformed into y by applying a bijection on Σ_p to every occurrence of p-symbols in x. The indexing problem for p-matching is to preprocess a p-string T of length n so that we can efficiently find the occurrences of substrings of T that p-match with a given pattern. Let σ_s and respectively σ_p be the numbers of distinct s-symbols and p-symbols that appear in T and σ = σ_s + σ_p. Extending the Burrows-Wheeler Transform (BWT) based index for exact string pattern matching, Ganguly et al. [SODA 2017] proposed parameterized BWTs (pBWTs) to design the first compact index for p-matching, and posed an open problem on how to construct the pBWT-based index in compact space, i.e., in O(n lg |Σ_s ∪ Σ_p|) bits of space. Hashimoto et al. [SPIRE 2022] showed how to construct the pBWT for T, under the assumption that Σ_s ∪ Σ_p = [0..O(σ)], in O(n lg σ) bits of space and O(n (σ_p lg n)/(lg lg n)) time in an online manner while reading the symbols of T from right to left. In this paper, we refine Hashimoto et al.’s algorithm to work in O(n lg σ) bits of space and O(n (lg σ_p lg n)/(lg lg n)) time in a more general assumption that Σ_s ∪ Σ_p = [0..n^{O(1)}]. Our result has an immediate application to constructing parameterized suffix arrays in O(n (lg σ_p lg n)/(lg lg n)) time and O(n lg σ) bits of working space. We also show that our data structure can support backward search, a core procedure of BWT-based indexes, at any stage of the online construction, making it the first compact index for p-matching that can be constructed in compact space and even in an online manner.

研究の動機と目的

  • O(n lg |Σs ∪ Σp|) ビットの記憶領域でコンパクトなパラメータ化されたBWT(pBWT)インデックスを構築するという未解決の問題に取り組む。
  • パラメータ化されたサフィックスアレイなどの関連データ構造で10年以上にわたり継続していた、構築時間における乗法的要因 O(σp) を除去する。
  • オンライン構築中にバックワードサーチをサポートし、プロセスの任意の段階で効率的なカウントおよびロケーションクエリを可能にする。
  • 空間効率的かつ右から左への段階的構築が可能なデータ構造を設計し、先行研究の制限を克服する。

提案手法

  • 2次元範囲カウントおよびランク/セレクトクエリを効率的に行うために、pBWT 上にウェーブレットツリーを活用する。
  • 動的整数列とビットベクトルを用いて、LF/FLマッピングを O(lg n / lg lg n) 時間で維持する。
  • 逆Burrows-Wheeler変換を介したLFマッピングを用い、LCP∞T を用いて、O(lg σp lg n / lg lg n) 時間で cw-インターバル を計算する新しい手法を導入する。
  • LT, FT, および LCP∞T のデータ構造を段階的に維持する右から左へのオンライン構築戦略を採用する。
  • テキストの右端からの距離に基づくサンプリング技術を適用し、R−1T(i) アクセスを O(lg²n / (lg σ lg lg n)) 時間で高速化する。
  • 補題2の動的データ構造を用いて、LT と VT を O(n lg σ) ビットの記憶領域と O(lg n) のクエリ時間で維持する。

実験結果

リサーチクエスチョン

  • RQ1コンパクトな pBWT インデックスの構築時間は、時間計算量における O(σp) 要因を削除することで改善可能か?
  • RQ2コンパクトな pBWT インデックスのオンライン構築中にバックワードサーチをサポートすることは可能か?
  • RQ3カウントおよびロケーションクエリの両方をサポートする、完全にオンラインで空間効率的な pBWT インデックスを構築可能か?
  • RQ4パラメータ化された文字列において、動的かつオンラインな環境で2次元範囲カウントを効率的にサポートする方法は何か?

主な発見

  • 本稿は、O(n lg σp lg n / lg lg n) の構築時間に到達し、関連データ構造で10年以上にわたり継続していた O(σp) 要因を削除した。
  • 提案されたインデックスは、オンライン構築の任意の段階でバックワードサーチをサポートし、効率的なカウントおよびロケーションクエリを可能にした。
  • 記憶領域使用量は O(n lg σ) ビットであり、pBWT のコンパクトな空間境界と一致しており、コンパクトな記憶領域とオンライン構築の両方を達成する最初のインデックスとなった。
  • カウントクエリは O(m lg σp lg n / lg lg n) 時間で回答され、ロケーションクエリは O(m lg σp lg n / lg lg n + occ · lg²n / (lg σ lg lg n)) 時間で回答され、ここで m はパターン長、occ は報告された出現回数を表す。
  • 動的ウェーブレットツリーとサンプリングされた逆サフィックスアレイ値を維持することで、構築中に完全なバックワードサーチをサポートした。
  • 本手法は、pBWT を基盤とするインデックスにおいて、オンライン構築、コンパクトな記憶領域、完全なバックワードサーチサポートの3つを初めて統合した。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。