0
$\begingroup$

This a question concerning Exercise 18.1.4 from Optimization Theory by Jongen, Meer, Triesch.

Let $\Sigma_1$ and $\Sigma_2$ be finite alphabets with cardinalities at least 2. (Let $\Sigma_1^*$ be the set of words over $\Sigma_1$.) Show that there is an injective function $\phi: \Sigma_2^* \to \Sigma_1^*$ such that $\forall \omega \in \Sigma_2^*: |\phi(\omega)|\leq C \cdot |\omega|$, where $C$ is the ceiling of $\log_{|\Sigma_1|}(|\Sigma_2|)$.

In a later pararaph, it states

[...] one can thus think about computability theory over finite alphabets as the theory of computing functions from $\mathbb{N}^n\to\mathbb{N}^m$(actually, by using a further coding, from $\mathbb{N}\to\mathbb{N}$) where any natural number is coded over the finite alphabet $\{0,1\}$ using its binary representation.

This statement gave me an idea to define the function $\phi$. The only difficulty I have is to prove the inequality with the logarithmic upper bound.

I will restrict myself to a concrete example in order to explain my idea. We can construct a one to one correspondence between the sets $\Sigma_2:=\{a_1, a_2,...,a_n\}$ and $\mathbb{N}^n$. For instance, let $\Sigma_2:=\{a_1, a_2, a_3\}$, then we represent the word $\omega:=a_1a_2a_1a_3$ by $((1010),(0100),(0001))$. The $i$-th digit in $1010$ is $1$ iff the $i$-th letter in $\omega$ is $a_1$.

Now let $\Sigma_1:=\{x_1, x_2, x_3, x_4\}$. Then we define the image of $\omega$ under $\phi$ as $((100),(010),(100),(001))$. The process is: we complete the vector in $\mathbb{N}^4$ by taking $(1010)$ and distributing it in $((),(),(),())$ to obtain $((1),(0),(1),(0))$. Then we take $(0100)$ and distribute it in $((1),(0),(1),(0))$ to obtain $((10),(01),(10),(00))$ etc.

In have tried with several examples and the inequality always held. Is this the correct approach to define the function $\phi$? If yes, how can I prove the upper bound inequality and do you have an idea how to formulate this in a neat way?

  • 1
    What's the rule to go from $((100),(010),(100),(001))$ to a string in $\Sigma_1^*$? You cannot reverse the process that mapped $a_1a_2a_1a_3$ to $((1010),(0100),(0001))$: what would be the first letter of $\phi(\omega)$, $x_1$ or $x_3$?2017-01-28
  • 0
    You are right, there is an ambiguity. Do you have a different idea?2017-01-28
  • 1
    You can try encoding each symbol of $\Sigma_2$ with $\lceil\log_2|\Sigma_2|\rceil$ bits. This gives you an injective function from $\Sigma_2^*$ to $\{0,1\}^*$.2017-01-28

0 Answers 0