Skip to main content
QUICK REVIEW

[논문 리뷰] Breaking a Barrier in Constructing Compact Indexes for Parameterized Pattern Matching

Kento Iseri, I Tomohiro|arXiv (Cornell University)|2023. 08. 11.
Algorithms and Data Compression인용 수 2
한 줄 요약

이 논문은 O(n lg σp lg n / lg lg n) 시간 복잡도를 갖는 파라미터화된 패턴 매칭을 위한 최초의 온라인, 압축 인덱스 구축 방법을 제시한다. 이는 이전까지 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 기반 인덱스에서 온라인 구축, 압축된 공간, 완전한 역방향 검색 지원을 동시에 구현한 최초의 접근이다.

더 나은 연구,지금 바로 시작하세요

연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.