Solving one variable word equations in the free group in cubic time

📝 Abstract
A word equation with one variable in a free group is given as $U = V $, where both $U$ and $V$ are words over the alphabet of generators of the free group and $X, X^{-1} $, for a fixed variable $X $. An element of the free group is a solution when substituting it for $X$ yields a true equality (interpreted in the free group) of left- and right-hand sides. It is known that the set of all solutions of a given word equation with one variable is a finite union of sets of the form $\{αw^i β\: : \: i \in \mathbb Z \} $, where $α, w, β$ are reduced words over the alphabet of generators, and a polynomial-time algorithm (of a high degree) computing this set is known. We provide a cubic time algorithm for this problem, which also shows that the set of solutions consists of at most a quadratic number of the above-mentioned sets. The algorithm uses only simple tools of word combinatorics and group theory and is simple to state. Its analysis is involved and focuses on the combinatorics of occurrences of powers of a word within a larger word.
💡 Analysis
A word equation with one variable in a free group is given as $U = V $, where both $U$ and $V$ are words over the alphabet of generators of the free group and $X, X^{-1} $, for a fixed variable $X $. An element of the free group is a solution when substituting it for $X$ yields a true equality (interpreted in the free group) of left- and right-hand sides. It is known that the set of all solutions of a given word equation with one variable is a finite union of sets of the form $\{αw^i β\: : \: i \in \mathbb Z \} $, where $α, w, β$ are reduced words over the alphabet of generators, and a polynomial-time algorithm (of a high degree) computing this set is known. We provide a cubic time algorithm for this problem, which also shows that the set of solutions consists of at most a quadratic number of the above-mentioned sets. The algorithm uses only simple tools of word combinatorics and group theory and is simple to state. Its analysis is involved and focuses on the combinatorics of occurrences of powers of a word within a larger word.
📄 Content
자유군(free group)에서 한 개의 변수만을 포함하는 단어 방정식은
[
U = V
]
와 같이 주어진다. 여기서 (U)와 (V)는 자유군의 생성자(alphabet of generators)들로 이루어진 단어이며, 고정된 변수 (X)와 그 역원 (X^{-1})도 알파벳에 포함된다. 즉, (U)와 (V)는 ({,\text{생성자들},;X,;X^{-1},})라는 유한한 기호 집합 위에서 형성된 문자열이다.
자유군의 원소 (g)를 변수 (X)에 대입했을 때, 대입된 결과를 다시 자유군의 연산 규칙(즉, 약화와 소거를 통해 완전하게 환원된 형태)으로 해석했을 때 좌변 (U)와 우변 (V)가 동등하게 되는 경우, 그 원소 (g)를 방정식 (U=V)의 해(solution) 라고 부른다.
이러한 한 변수 방정식에 대해 이미 알려진 중요한 사실은 다음과 같다. 모든 해들의 전체 집합은
[
{,\alpha,w^{,i},\beta ;:; i\in\mathbb{Z},}
]
와 같은 형태의 집합들의 유한한 합으로 정확히 표현될 수 있다는 것이다. 여기서
- (\alpha,\beta)는 생성자 알파벳 위에서 환원된(reduced) 단어이며,
- (w) 역시 생성자 알파벳 위에서 환원된 단어이고,
- (w^{,i})는 정수 (i)에 따라 (w)를 (i)번 반복한(음수일 경우에는 (w^{-1})을 반복한) 단어를 의미한다.
즉, 해들은 “어떤 고정된 앞부분 (\alpha)와 뒤부분 (\beta) 사이에, 어떤 기본 단어 (w)를 임의의 정수 거듭제곱 형태로 삽입한 것”들의 집합으로 기술될 수 있다.
이러한 구조적 설명을 실제로 계산해 내는 알고리즘도 존재한다. 기존에 알려진 방법은 다항식 시간(polynomial‑time) 알고리즘이지만, 그 차수가 매우 높아 실제 구현이나 효율성 면에서 제한적이었다.
본 논문에서는 위 문제에 대해 세제곱 시간(cubic‑time) 알고리즘을 새롭게 제시한다. 이 알고리즘은 다음 두 가지 중요한 결과를 동시에 제공한다.
해의 구조적 제한: 모든 해는 앞서 언급한 ({,\alpha w^{i}\beta,}) 형태의 집합들 중 최대 (O(n^{2})) 개만큼만 존재한다는 것을 보인다. 여기서 (n)은 입력 방정식 (U=V)의 길이(문자 수)이다. 즉, 해들의 전체 집합은 “이차적으로 많은” 이러한 기본 집합들의 합으로 충분히 표현될 수 있다.
알고리즘의 단순성: 알고리즘 자체는 **단어 조합론(word combinatorics)**과 **군론(group theory)**의 아주 기본적인 도구만을 사용한다. 구체적으로는 단어의 약화(reduction), 접두·접미 관계, 그리고 단어의 거듭제곱이 다른 단어 안에 어떻게 포함되는지를 조사하는 몇 가지 간단한 관찰에 기반한다. 따라서 알고리즘을 서술하는 과정은 비교적 직관적이며, 복잡한 대수적 구조나 고차원 자동화 이론을 도입할 필요가 없다.
하지만 알고리즘의 정밀한 분석은 결코 단순하지 않다. 분석 과정에서는 특히 “큰 단어 안에 어떤 단어의 거듭제곱이 몇 번, 어떤 위치에 나타나는가”라는 출현(combinatorics of occurrences) 문제에 집중한다. 이때 사용되는 핵심 아이디어는 다음과 같다.
- 두 단어 (p)와 (q)가 겹치지 않게 반복될 때, 그 사이에 삽입될 수 있는 다른 단어들의 형태를 제한하는 중첩 구조(overlap structure) 를 파악한다.
- 특정 단어 (w)가 입력 문자열 (U) 혹은 (V) 안에서 연속적으로 나타나는 구간을 파워 블록(power block) 으로 정의하고, 이러한 블록들의 상대적 위치 관계를 정밀히 추적한다.
- 파워 블록들의 정렬(alignment) 과 간격(gap) 을 분석함으로써, 가능한 정수 지수 (i)의 범위를 유한하게 제한하고, 결국 전체 해 집합을 위에서 말한 (\alpha w^{i}\beta) 형태의 유한 합으로 압축한다.
이러한 분석을 통해 얻은 최종 결과는, 입력 방정식의 길이가 (n)일 때 알고리즘이 (O(n^{3})) 시간 안에 모든 해를 정확히 열거할 수 있음을 보인다. 또한, 앞서 언급한 대로 해의 집합은 (O(n^{2})) 개 이하의 ({,\alpha w^{i}\beta,}) 형태의 집합들로만 이루어져 있다는 구조적 한계도 동시에 증명된다.
요약하면, 우리는 자유군에서 한 변수만을 포함하는 일반적인 단어 방정식에 대해, 기존의 고차 다항식 시간 알고리즘을 대체할 세제곱 시간 알고리즘을 제시하였다. 이 알고리즘은 단순한 조합론적·군론적 원리만을 이용해 기술될 수 있지만, 그 정확한 복잡도 분석은 단어 내부에서 발생하는 거듭제곱 구조의 미세한 조합적 특성을 면밀히 조사함으로써 이루어진다. 결과적으로, 해의 전체 구조가 이차적으로 제한된 형태로 표현될 수 있음을 보였으며, 이는 향후 더 큰 규모의 방정식이나 다변수 일반화에 대한 효율적인 접근법을 설계하는 데 중요한 이론적 기반을 제공한다.