Table of Contents
Fetching ...

Maximal Palindromes in MPC: Simple and Optimal

Solon P. Pissis

TL;DR

The paper addresses the longest palindromic substring problem in the MPC model, aiming for a simple, optimal $\mathcal{O}(1)$-round solution with near-linear total resources. It introduces a block-decomposition approach combined with modular (fingerprint-based) LCP answering to compute all maximal palindromes in $\mathcal{O}(1)$ rounds and $\mathcal{O}(n)$ total time/memory, using per-machine memory $\mathcal{O}(n^{1-\epsilon})$ for any $\epsilon \in (0,0.5]$ with high probability. A key technical ingredient is a combinatorial lemma linking palindromic prefixes and maximal palindromes within fragments to a shared period, enabling efficient LCP-based extensions; this is complemented by a modular decomposition and data replication to realize the necessary LCP queries in MPC, and extended to AMPC where the $\epsilon$ constraint can be bypassed. The results unify and simplify prior work, offering a practical, pedagogical framework for implementing LPS in parallel settings and suggesting avenues for deterministic extensions and broader parameter regimes.

Abstract

In the classical longest palindromic substring (LPS) problem, we are given a string $S$ of length $n$, and the task is to output a longest palindromic substring in $S$. Gilbert, Hajiaghayi, Saleh, and Seddighin [SPAA 2023] showed how to solve the LPS problem in the Massively Parallel Computation (MPC) model in $\mathcal{O}(1)$ rounds using $\mathcal{\widetilde{O}}(n)$ total memory, with $\mathcal{\widetilde{O}}(n^{1-ε})$ memory per machine, for any $ε\in (0,0.5]$. We present a simple and optimal algorithm to solve the LPS problem in the MPC model in $\mathcal{O}(1)$ rounds. The total time and memory are $\mathcal{O}(n)$, with $\mathcal{O}(n^{1-ε})$ memory per machine, for any $ε\in (0,0.5]$. A key attribute of our algorithm is its ability to compute all maximal palindromes in the same complexities. Furthermore, our new insights allow us to bypass the constraint $ε\in (0,0.5]$ in the Adaptive MPC model. Our algorithms and the one proposed by Gilbert et al. for the LPS problem are randomized and succeed with high probability.

Maximal Palindromes in MPC: Simple and Optimal

TL;DR

The paper addresses the longest palindromic substring problem in the MPC model, aiming for a simple, optimal -round solution with near-linear total resources. It introduces a block-decomposition approach combined with modular (fingerprint-based) LCP answering to compute all maximal palindromes in rounds and total time/memory, using per-machine memory for any with high probability. A key technical ingredient is a combinatorial lemma linking palindromic prefixes and maximal palindromes within fragments to a shared period, enabling efficient LCP-based extensions; this is complemented by a modular decomposition and data replication to realize the necessary LCP queries in MPC, and extended to AMPC where the constraint can be bypassed. The results unify and simplify prior work, offering a practical, pedagogical framework for implementing LPS in parallel settings and suggesting avenues for deterministic extensions and broader parameter regimes.

Abstract

In the classical longest palindromic substring (LPS) problem, we are given a string of length , and the task is to output a longest palindromic substring in . Gilbert, Hajiaghayi, Saleh, and Seddighin [SPAA 2023] showed how to solve the LPS problem in the Massively Parallel Computation (MPC) model in rounds using total memory, with memory per machine, for any . We present a simple and optimal algorithm to solve the LPS problem in the MPC model in rounds. The total time and memory are , with memory per machine, for any . A key attribute of our algorithm is its ability to compute all maximal palindromes in the same complexities. Furthermore, our new insights allow us to bypass the constraint in the Adaptive MPC model. Our algorithms and the one proposed by Gilbert et al. for the LPS problem are randomized and succeed with high probability.

Paper Structure

This paper contains 11 sections, 4 theorems, 2 figures.

Key Result

Lemma 3.1

Let $F=S[i\mathinner{.\,.} j]=B_1B_2B_3B_4$ be a fragment of $S$ of length $\ell=4\ell'$, with $\ell'=|B_1|=|B_2|=|B_3|=|B_4|>0$. Then the following hold: (1) If $|\mathcal{P}_F|=0$, then $|\mathcal{M}_F|=0$; (2) If $|\mathcal{P}_F|=1$, then $|\mathcal{M}_F|=1$; (3) If $|\mathcal{P}_F|\geq 2$, every

Figures (2)

  • Figure 1: Illustration of the block decomposition. The top (black) lines show the size of the (overlapping) superblocks and the size of the (non-overlapping) blocks. The bottom (dark red) lines show how the superblocks are assigned to the machines. Thus, we use $n^{\epsilon}$ machines with local memory $\mathcal{O}(n^{1-\epsilon})$ for this decomposition.
  • Figure 2: An example of the data replication process with $n=25$ and $\epsilon=0.5$. Each machine sends or receives messages of $\mathcal{O}(\sqrt{n})$ size in $\mathcal{O}(1)$ rounds. Moreover, the data replication takes $\mathcal{O}(n)$ total time.

Theorems & Definitions (10)

  • Lemma 3.1
  • proof
  • Lemma 3.2
  • proof
  • proof
  • proof : Proof of \ref{['lem:LCPs']}
  • Remark 3.5
  • Theorem 3.6
  • Corollary 3.7
  • proof