Skip to main content
QUICK REVIEW

[論文レビュー] Computing Abelian regularities on RLE strings

Shiho Sugimoto, Naoki Noda|arXiv (Cornell University)|Jan 11, 2017
Algorithms and Data Compression参考文献 10被引用数 5
ひとこと要約

本稿では、ランレングス符号化(RLE)で圧縮された文字列に対して、アーベル正則性—アーベル平方、正則アーベル周期、最長共通アーベル因子—を効率的に計算するアルゴリズムを提示する。RLEの構造を活用することで、アーベル平方と正則アーベル周期はO(mn)時間、最長共通アーベル因子はO(m²n)時間で処理可能であり、mはRLEサイズ、nは元の文字列長である。これは、圧縮可能な文字列に対して従来のO(n²)手法と比較して顕著な性能向上を達成する。

ABSTRACT

Two strings x and y are said to be Abelian equivalent if x is a permutation of y, or vice versa. If a string z satisfies z = xy with x and y being Abelian equivalent, then z is said to be an Abelian square. If a string w can be factorized into a sequence v_1,...,v_s of strings such that v_1 ,..., v_{s-1} are all Abelian equivalent and vs is a substring of a permutation of v_1, then w is said to have a regular Abelian period (p,t) where p = |v_1| and t = |v_s|. If a substring w_1[i..i+l-1] of a string w_1 and a substring w_2[j..j+l-1] of another string w_2 are Abelian equivalent, then the substrings are said to be a common Abelian factor of w_1 and w_2 and if the length l is the maximum of such then the substrings are said to be a longest common Abelian factor of w_1 and w_2. We propose efficient algorithms which compute these Abelian regularities using the run length encoding (RLE) of strings. For a given string w of length n whose RLE is of size m, we propose algorithms which compute all Abelian squares occurring in w in O(mn) time, and all regular Abelian periods of w in O(mn) time. For two given strings w_1 and w_2 of total length n and of total RLE size m, we propose an algorithm which computes all longest common Abelian factors in O(m^2n) time.

研究の動機と目的

  • ランレングス符号化(RLE)を用いて構造的圧縮を活用することで、文字列におけるアーベル正則性の計算を高速化すること。
  • 非圧縮文字列における既存のO(n²)手法の計算非効率性を是正すること。
  • 特に高圧縮性の入力に対して、元の文字列長nではなくRLEサイズmに従ってスケーリングするアルゴリズムを開発すること。
  • RLEベースの手法を用いてアーベル平方、正則アーベル周期、最長共通アーベル因子を統合的に計算するフレームワークを提供すること。

提案手法

  • 入力文字列をランレングス符号化(RLE)で表現し、入力サイズをnからmに削減する(m ≤ n)。
  • パリク・ベクトルを用いて文字頻度を効率的に比較し、部分文字列間のアーベル同値性を検出する。
  • RLEのコンポONENTS上でのスライディングウインドウ技術を適用し、各ランの周囲で頻度のバランスをチェックすることで、アーベル平方と正則アーベル周期を検出する。
  • 境界ポインタ(bp₁, bp₂)を活用して、有望でないウインドウシフトをスキップし、重複チェックを削減する。
  • パリク・ベクトルの差分に基づくケース別条件を用いて、2つのRLE圧縮文字列間の共通アーベル因子を検出する。
  • 最長共通アーベル因子の出力をO(m²)サイズとして表現し、コンactかつ効率的な出力表現を保証する。

実験結果

リサーチクエスチョン

  • RQ1非圧縮文字列のO(n²)時間と比較して、RLE圧縮文字列におけるアーベル平方検出は高速化可能か?
  • RQ2特に高圧縮性を示す文字列に対して、RLEを用いた正則アーベル周期の計算はより効率的に行えるか?
  • RQ3RLE圧縮文字列における最長共通アーベル因子の計算の最適時間計算量は何か?
  • RQ4アーベル同値性を効率的に検出するために、RLEセグメント間でのパリク・ベクトル比較をどのように最適化できるか?
  • RQ5アーベル正則性の出力サイズを、元の文字列長nではなくRLEサイズmの関数として有界化できるか?

主な発見

  • アルゴリズムはすべてのアーベル平方をO(mn)時間で計算可能であり、m ≪ nのとき、従来のO(n²)手法よりも漸近的に高速である。
  • アルゴリズムはすべての正則アーベル周期をO(mn)時間で計算可能であり、高圧縮性の文字列に対してKociumakaらのO(n(log log n + log σ))時間手法を上回る。
  • 合計RLEサイズがm、合計長さがnの2つの文字列に対して、アルゴリズムはすべての最長共通アーベル因子をO(m²n)時間、O(σ)の作業領域空間で計算可能である。
  • 最長共通アーベル因子の出力表現サイズはO(m²)で有界であり、コンパクトな保存と効率的な取得を可能にする。
  • RLEにより有効な入力サイズをnからmに削減することで、特にmがnに比べて著しく小さい場合に、圧縮可能な文字列に対して顕著な性能向上を達成する。
  • パリク・ベクトルの算術と境界ポインタ(bp₁, bp₂)の使用により、RLEセグメント間でアーベル同値性を定数時間でチェック可能となり、効率的なスライディングウインドウ処理が可能になる。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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