# Balancing Straight-Line Programs

**Authors:** Moses Ganardi, Artur Je\.z, Markus Lohrey

arXiv: 1902.03568 · 2020-07-02

## TL;DR

This paper demonstrates that context-free grammars and other grammar-based compression formalisms can be efficiently balanced to have logarithmic depth while maintaining linear size, solving a key open problem in compression theory.

## Contribution

It introduces a universal method to balance grammar-based representations, reducing their depth to logarithmic scale with minimal size increase, applicable to multiple formalism types.

## Key findings

- Balanced grammars have depth O(log |w|)
- Linear time transformation to balanced grammars
- Applicable to string and tree compression formalisms

## Abstract

It is shown that a context-free grammar of size $m$ that produces a single string $w$ (such a grammar is also called a string straight-line program) can be transformed in linear time into a context-free grammar for $w$ of size $\mathcal{O}(m)$, whose unique derivation tree has depth $\mathcal{O}(\log |w|)$. This solves an open problem in the area of grammar-based compression. Similar results are shown for two formalism for grammar-based tree compression: top dags and forest straight-line programs. These balancing results are all deduced from a single meta theorem stating that the depth of an algebraic circuit over an algebra with a certain finite base property can be reduced to $\mathcal{O}(\log n)$ with the cost of a constant multiplicative size increase. Here, $n$ refers to the size of the unfolding (or unravelling) of the circuit.

---
Source: https://tomesphere.com/paper/1902.03568