[논문 리뷰] Construction of Sparse Suffix Trees and LCE Indexes in Optimal Time and Space
이 논문은 길이 n인 문자열에 대해 O(n/b) 시간과 O(b) 공간에서 크기가 O(b)인 τ-분할 집합을 결정적 알고리즘으로 구성하며, 이는 희소 접미사 트리와 LCE 인덱스 모두에 대해 최적의 O(b) 공간과 O(n/b) 쿼리 시간을 가능하게 한다. 이 방법은 부분 문자열의 비트 표현에 대한 압축된 트라이와 사전에 계산된 색인 테이블을 활용하여 선형 시간 내에 구성되며, 점근적으로 최적의 공간 사용량을 달성한다.
The notions of synchronizing and partitioning sets are recently introduced variants of locally consistent parsings with great potential in problem-solving. In this paper we propose a deterministic algorithm that constructs for a given readonly string of length $n$ over the alphabet $\{0,1,\ldots,n^{\mathcal{O}(1)}\}$ a variant of $τ$-partitioning set with size $\mathcal{O}(b)$ and $τ= \frac{n}{b}$ using $\mathcal{O}(b)$ space and $\mathcal{O}(\frac{1}εn)$ time provided $b \ge n^ε$, for $ε> 0$. As a corollary, for $b \ge n^ε$ and constant $ε> 0$, we obtain linear construction algorithms with $\mathcal{O}(b)$ space on top of the string for two major small-space indexes: a sparse suffix tree, which is a compacted trie built on $b$ chosen suffixes of the string, and a longest common extension (LCE) index, which occupies $\mathcal{O}(b)$ space and allows us to compute the longest common prefix for any pair of substrings in $\mathcal{O}(n/b)$ time. For both, the $\mathcal{O}(b)$ construction storage is asymptotically optimal since the tree itself takes $\mathcal{O}(b)$ space and any LCE index with $\mathcal{O}(n/b)$ query time must occupy at least $\mathcal{O}(b)$ space by a known trade-off (at least for $b \ge Ω(n / \log n)$). In case of arbitrary $b \ge Ω(\log^2 n)$, we present construction algorithms for the partitioning set, sparse suffix tree, and LCE index with $\mathcal{O}(n\log_b n)$ running time and $\mathcal{O}(b)$ space, thus also improving the state of the art.
연구 동기 및 목표
- 최적의 시간과 공간에서 희소 접미사 트리와 LCE 인덱스를 구성하는 결정적 알고리즘을 개발하는 것.
- 읽기 전용 문자열 외에 O(b) 추가 공간만을 사용하여 이러한 인덱스를 구축하는 데 도전하는 것.
- 이전의 결정적 구성 방법이 O(n log n / b) 시간 이상을 요구한 데 비해 개선하는 것.
- 두 데이터 구조 모두에 대해 최적의 O(b) 공간과 O(n/b) 쿼리 시간을 달성하여 알려진 하한선을 충족하는 것.
- 국소적으로 일致하는 파싱을 결정적이고 소공간 문자열 인덱싱에 확장하는 것.
제안 방법
- O(b) 공간으로 효율적인 인덱싱을 가능하게 하기 위해 τ = n/b로 설정된 τ-분할 집합을 사용한다.
- 빠른 LCE 쿼리를 지원하기 위해 부분 문자열의 비트 표현에 대한 압축된 트라이를 구성한다.
- 융합 트리와 비트 조작을 활용하여 k개의 부분 문자열에 대해 O(k) 시간 내에 압축된 트라이를 구축한다.
- 모든 가능한 비트 조각, 부분 문자열, 압축된 트라이를 인코딩하기 위한 사전 계산된 색인 테이블 D를 준비하여 O(1) 시간 내에 문자 계산을 가능하게 한다.
- 슬라이딩 윈도우 크기 τ 내에서 S′ 내의 위치를 나타내는 동적 비트 배열을 유지하기 위해 비트 시프트 연산을 사용한다.
- 각 위치당 O(1) 시간 내에 배열 Mi를 초기화하기 위해 사전 계산된 테이블 F를 활용하여 범위 카운팅을 효율적으로 수행한다.
실험 결과
연구 질문
- RQ1모든 b ≥ n^ϵ에 대해 결정적 알고리즘이 O(n/b) 시간과 O(b) 공간에서 희소 접미사 트리를 구성할 수 있는가?
- RQ2오직 O(b) 공간과 결정적 구성만을 사용하여 LCE 인덱스의 쿼리 시간을 O(n/b)로 달성할 수 있는가?
- RQ3국소적으로 일致하는 파싱은 어떻게 최적의 소공간 문자열 인덱스를 설계하는 데 활용될 수 있는가?
- RQ4크기 O(b)의 분할 집합을 구성하기 위해 필요한 최소한의 공간 및 시간 오버헤드는 무엇인가?
- RQ5완전한 부분 문자열을 저장하지 않고도 비트 수준 표현과 압축된 트라이를 사용하여 LCE 계산을 가속화할 수 있는가?
주요 결과
- 알고리즘은 모든 b ≥ n^ϵ 및 ϵ > 0에 대해 O(n/b) 시간과 O(b) 공간에서 크기가 O(b)인 τ-분할 집합을 구성한다.
- 희소 접미사 트리와 LCE 인덱스는 임의의 b ≥ Ω(log² n)에 대해 O(n log b n) 시간과 O(b) 공간에서 구성되며, 이는 이전의 결정적 기준을 향상시킨다.
- O(n/b)의 구성 시간은 b ≥ n^ϵ일 경우 최적이며, 쿼리 시간의 하한선과 일치한다.
- O(b)의 공간 사용은 두 데이터 구조 모두에 대해 점근적으로 최적으로, 알려진 시간-공간 트레이드오프에 의해 요구된다.
- 사전 계산된 색인 테이블과 비트 수준 압축된 트라이의 사용은 각 위치당 O(1) 처리를 가능하게 하여 총 시간이 선형이 되도록 한다.
- 이 방법은 랜덤화에 의존하지 않고도 최적의 성능을 달성하여 결정적 소공간 인덱싱 분야의 격차를 메꾼다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.