English

Inferring an Indeterminate String from a Prefix Graph

Data Structures and Algorithms 2015-03-02 v1

Abstract

An \itbf{indeterminate string} (or, more simply, just a \itbf{string}) \sx=\sx[1..n]\s{x} = \s{x}[1..n] on an alphabet Σ\Sigma is a sequence of nonempty subsets of Σ\Sigma. We say that \sx[i1]\s{x}[i_1] and \sx[i2]\s{x}[i_2] \itbf{match} (written \sx[i1]\match\sx[i2]\s{x}[i_1] \match \s{x}[i_2]) if and only if \sx[i1]\sx[i2]\s{x}[i_1] \cap \s{x}[i_2] \ne \emptyset. A \itbf{feasible array} is an array \sy=\sy[1..n]\s{y} = \s{y}[1..n] of integers such that \sy[1]=n\s{y}[1] = n and for every i2..ni \in 2..n, \sy[i]0..n\-i\+1\s{y}[i] \in 0..n\- i\+ 1. A \itbf{prefix table} of a string \sx\s{x} is an array \sπ=\sπ[1..n]\s{\pi} = \s{\pi}[1..n] of integers such that, for every i1..ni \in 1..n, \sπ[i]=j\s{\pi}[i] = j if and only if \sx[i..i\+j\-1]\s{x}[i..i\+ j\- 1] is the longest substring at position ii of \s{x} that matches a prefix of \s{x}. It is known from \cite{CRSW13} that every feasible array is a prefix table of some indetermintate string. A \itbf{prefix graph} P=P\sy\mathcal{P} = \mathcal{P}_{\s{y}} is a labelled simple graph whose structure is determined by a feasible array \s{y}. In this paper we show, given a feasible array \s{y}, how to use P\sy\mathcal{P}_{\s{y}} to construct a lexicographically least indeterminate string on a minimum alphabet whose prefix table \sπ=\sy\s{\pi} = \s{y}.

Keywords

Cite

@article{arxiv.1502.07870,
  title  = {Inferring an Indeterminate String from a Prefix Graph},
  author = {Ali Alatabbi and M. Sohel Rahman and W. F. Smyth},
  journal= {arXiv preprint arXiv:1502.07870},
  year   = {2015}
}

Comments

13 pages, 1 figure

R2 v1 2026-06-22T08:39:36.836Z