Yu. I. Khmelevskii
Unknown
Submitted 1964-01-01 | RussiaRxiv: ru-196401.74182 | Translated from Russian

Full Text

Yu. I. Khmelevskii

THE SOLUTION OF CERTAIN SYSTEMS OF EQUATIONS IN WORDS

(Presented by Academician P. S. Novikov, 16 I 1964)

We shall use the terminology and notation of (¹). Let \(k > 1\), \(n > 0\), and let \(И = (a_1,\ldots,a_k)\), \(X = (x_1,\ldots,x_n)\) be disjoint alphabets.

A system of equalities

\[ \begin{gathered} \Phi_1=\Psi_1\\ \cdots\cdots\cdots\\ \Phi_N=\Psi_N\quad (N\geqslant 1), \end{gathered} \tag{1} \]

where \(\Phi_1,\ldots,\Phi_N,\Psi_1,\ldots,\Psi_N\) are words in the alphabet \(ИX\),* will be called a system of equations in words in \(n\) variables. Let us define the notion of a solution of a system of equations in words.

Let \(\Phi\) be a word in the alphabet \(ИX\), and let \(X_1,\ldots,X_n\) be words in some alphabet. Denote by

\[ S^{x_1,\ldots,x_n}_{X_1,\ldots,X_n}\Phi \tag{2} \]

the result of substituting in the word \(\Phi\), in place of each occurrence of the letter \(x_i\), the word \(X_i\) \((i=1,\ldots,n)\). If \(X_1,\ldots,X_n\) are words in the alphabet \(И\), then (2) is a word in the alphabet \(И\). We shall call the list \(X_1,\ldots,X_n\) of words in the alphabet \(И\) a solution of the system of equations in words in \(n\) variables (1), if in the alphabet \(И\) the equalities

\[ \begin{gathered} S^{x_1,\ldots,x_n}_{X_1,\ldots,X_n}\Phi_1 = S^{x_1,\ldots,x_n}_{X_1,\ldots,X_n}\Psi_1,\\ S^{x_1,\ldots,x_n}_{X_1,\ldots,X_n}\Phi_N = S^{x_1,\ldots,x_n}_{X_1,\ldots,X_n}\Psi_N \end{gathered} \]

hold.

A. A. Markov posed the following problem: “Does there exist an algorithm which, for a given system of equations in words, would recognize whether this system has a solution?” For systems of equations in two variables, the corresponding algorithm was first constructed by A. A. Markov (this result was not published).

In considering systems of equations in words, certain reductions are possible. We shall call a system of equations in words in \(n\) variables a \(W_j\)-system if every equation of the system is an equation in \(j\) variables. It can be shown that, in considering arbitrary systems of equations, it suffices to restrict ourselves to the consideration of \(W_3\)-systems. The idea of such a reduction is shown by the following

Example. The equation \(x_1x_2 = x_3a_1x_4\) has a solution if and only if the system

\[ \begin{aligned} x_1x_2 &= x_5,\\ x_3a_1 &= x_6,\\ x_6x_4 &= x_7,\\ x_5 &= x_7. \end{aligned} \]

has a solution.

* We denote the union of the alphabets \(А, Б\) by the symbol \(АБ\).

Below we formulate a theorem from which the existence of the algorithm mentioned above for \(W_2\)-systems follows. Before proceeding to the formulation of the theorem, let us agree on some conventions and give several definitions.

We denote the length of a word \(P\) by the symbol \([P]^d\).

If \(\Phi\) is a word in the alphabet \(ИX\), and \(m\) is a positive integer, then by \((\Phi)^m\) we shall denote the word
\[ \underbrace{\Phi\ldots\Phi}_{m\text{ times}}. \]

We introduce objects of the form
\[ [A,B,\lambda_1,\ldots,\lambda_k], \tag{3} \]
where \(A,B\) are words in the alphabet \(И\), and \(\lambda_1,\ldots,\lambda_k\) is a sequence of positive integers such that \(k>0\). On the objects (3) we define a function \(F\). Put
\[ \begin{aligned} F(A,B;\lambda_1)&=(A)^{\lambda_1}B,\\ F(A,B,\lambda_1,\lambda_2)&=((A)^{\lambda_1}B)^{\lambda_2}A,\\ F(A,B,\lambda_1,\ldots,\lambda_k)&=(F(A,B,\lambda_1,\ldots,\lambda_{k-1}))^{\lambda_k} F(A,B,\lambda_1,\ldots,\lambda_{k-2}), \end{aligned} \tag{4} \]
if \(k>2\).

The equalities (4) define on the objects (3) a function whose values are words in the alphabet \(И\). From this definition it follows that
\[ [F(A,B,\lambda_1,\ldots,\lambda_k)]^d\ge [AB]^d. \]
With the help of the function \(F\) we define on the objects (3) a function \(G\). The value of the function \(G\) on an object (3) is the word obtained if, from the value of the function \(F\) on this same object, one deletes an end of length \([AB]^d\).

We now pass to the definition of terms. We define variables of three sorts:

a) \(W\)-variables, whose values are words in the alphabet \(И\). We shall assume that these variables form an alphabet \(V\) and that the alphabet \(X\) is contained in the alphabet \(V\).

b) Natural variables, whose values are natural numbers. We shall assume that these variables form an alphabet \(Ч\).

c) Tuple variables, whose values are sequences of positive integers. We shall assume that these variables form an alphabet \(K\).

We shall assume that the alphabets \(V, Ч, K\) have no letters in common. The letters of the alphabet \(VЧK\) will be called variables.

We now define terms. The inductive definition of terms has the following form: 1) If \(T\) is a word in the alphabet \(И\), then \(T\) is a term. 2) If \(T\) is a \(W\)-variable, then \(T\) is a term. 3) If \(A,B\) are words in the alphabet \(И\), and \(h\) is a tuple variable, then \(G(A,B,h)\) is a term. 4) If \(A,B\) are words in the alphabet \(И\), and \(\lambda_1,\ldots,\lambda_k\) is a sequence of positive integers, then \(G(A,B,\lambda_1,\ldots,\lambda_k)\) is a term. 5) If \(T\) is a term and \(\lambda\) is a natural variable, then \((T)^\lambda\) is a term. 6) If \(T\) is a term and \(m\) is a natural number, then \((T)^m\) is a term. 7) If \(T_1,T_2\) are terms, then \(T_1T_2\) is a term. 8) There are no other terms except those defined according to 1)—7).

A term \(T\) will be called constant if no variable occurs in \(T\). If \(T\) is a constant term, then rules 2), 3), 5) do not participate in the construction of \(T\).

We now define inductively the value of a constant term: 1) If the term \(T\) is a word \(P\) in the alphabet \(И\), then the value of the term \(T\) is the word \(P\). 4) If the term \(T\) is \(G(A,B,\lambda_1,\ldots,\lambda_k)\), then the value of the term \(T\) is the value of the function \(G\) on the object \([A,B,\lambda_1,\ldots,\lambda_k]\). 6) If \([T]\) is the value of the term \(T\) and \(m\) is a natural number, then the value of the term \((T)^m\) is the word \(([T])^m\), if \(m>0\), and the empty word if \(m=0\). 7) If \([T_1]\), \([T_2]\) are the values of the terms \(T_1,T_2\), then \([T_1][T_2]\) is the value of the term \(T_1T_2\). From our definition:

it follows that the value of a constant term is a word in the alphabet \(И\). The value of a term \(T\) will henceforth be denoted by \([T]\).

We write \(T(\xi_1,\ldots,\xi_m)\) if the list of variables \(\xi_1,\ldots,\xi_m\) contains all the variables entering into the term \(T\). It is clear that if \(\tilde{\xi}_1,\ldots,\tilde{\xi}_m\) are the values of the variables \(\xi_1,\ldots,\xi_m\), then
\[ S_{\xi_1,\ldots,\xi_m}^{\tilde{\xi}_1,\ldots,\tilde{\xi}_m} T(\xi_1,\ldots,\xi_m) \]
is a constant term.

Let \(\xi_1,\ldots,\xi_m\) be a list of variables, and let \(\mathcal P(\xi_1,\ldots,\xi_m)\) be a predicate. A set \(\tilde{\xi}_1,\ldots,\tilde{\xi}_m\) of values of the variables \(\xi_1,\ldots,\xi_m\) will be called admissible for the predicate \(\mathcal P\) if \(\mathcal P(\tilde{\xi}_1,\ldots,\tilde{\xi}_m)\) is true. The predicate \(\mathcal P(\xi_1,\ldots,\xi_m)\) will be called nonempty if there exists at least one set of values of the variables \(\xi_1,\ldots,\xi_m\) admissible for the predicate \(\mathcal P\). We now formulate the theorem mentioned above.

Theorem 1. Given the \(W_2\)-system (1) in \(n\) variables, one can construct a system \(L\) of sets \((L>0)\):
\[ \begin{aligned} &1)\quad T_1^{(1)}(\xi_1,\ldots,\xi_m),\ldots, T_n^{(1)}(\xi_1,\ldots,\xi_m),\mathcal P_1(\xi_1,\ldots,\xi_m)\\ &\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots\ldots \tag{5}\\ &L)\quad T_1^{(L)}(\xi_1,\ldots,\xi_m),\ldots, T_n^{(L)}(\xi_1,\ldots,\xi_m),\mathcal P_L(\xi_1,\ldots,\xi_m), \end{aligned} \]
where the \(T_i^{(j)}\) are terms, and the \(\mathcal P_i\) are nonempty decidable predicates, such that, if the system (1) has a solution, then:

a) whatever solution \(X_1,\ldots,X_n\) of the system (1) is taken, there exist an integer \(\nu\) \((1\leq \nu\leq L)\) and a set \(\tilde{\xi}_1,\ldots,\tilde{\xi}_m\) of values of the variables \(\xi_1,\ldots,\xi_m\), admissible for the predicate \(\mathcal P_\nu(\xi_1,\ldots,\xi_m)\), such that
\[ X_i=\left[ S_{\xi_1,\ldots,\xi_m}^{\tilde{\xi}_1,\ldots,\tilde{\xi}_m} T_i^{(\nu)}(\xi_1,\ldots,\xi_m) \right]\qquad (i=1,\ldots,n). \tag{6} \]

b) Whatever the integer \(\nu\) \((1\leq \nu\leq L)\) and the set \(\tilde{\xi}_1,\ldots,\tilde{\xi}_m\) of values of the variables \(\xi_1,\ldots,\xi_m\), admissible for the predicate \(\mathcal P_\nu\), the system of words (6) is a solution of the system of equations (1).

Using the possibility of constructing the system of sets (6), the nonemptiness and decidability of the predicates \(\mathcal P_\nu\), it is easy to construct an algorithm which recognizes, for a given \(W_2\)-system in \(n\) variables, whether this system has a solution.

We also note the following theorem, which allows one, when considering systems (1), to restrict oneself to the case \(N=1\).

Theorem 2. Consider the system (1). Let \(N>1\) and let
\[ M=\max\{[\Phi_1]^d,\ldots,[\Phi_N]^d,[\Psi_1]^d,\ldots,[\Psi_N]^d\}. \]
Then the system (1) is equivalent to the equation
\[ \Phi_1(\Omega)^2\Phi_2\cdots(\Omega)^2\Phi_N = \Psi_1(\Omega)^2\Psi_2\cdots(\Omega)^2\Psi_N, \]
where
\[ \Omega=(a_1x_1\cdots x_n)^M a_1\,(a_1x_1\cdots x_n)^M a_2. \]

Received
2 I 1964

CITED LITERATURE

\(^{1}\) A. A. Markov, Tr. Matem. inst. im. V. A. Steklova AN SSSR, 42 (1954).

Submission history

Yu. I. Khmelevskii