In this section we present the idea on which both main proofs of the chapter are based. First we recall a definition from [GeffertGeffert1988].
We want to show that for any recursively enumerable language we can construct a standard Watson-Crick EDT0L system, a standard Watson-Crick E0L system, and also a standard Watson-Crick eco-grammar system, such that the generated language of the systems is . The constructions have the same idea, which is based on the following theorem presented in [GeffertGeffert1988]:
We note here that Definition 6.2 remains correct and Theorem 6.3 remains true if we suppose that the words and are over instead of for and . This modification is important from our point of view because it makes our construction simpler, so we will use this version of the EPC and Theorem 6.3.
We can consider the words and as numbers in base three notation and therefore we can speak about their values. From this point of view, Theorem 6.3 says that a word is in if and only if there exist indices , such that and the values of the two words and are equal.
Using this fact, we will generate words of a recursively enumerable language in three phases in the following way. By the end of the first phase we generate a sentential form representing the values of the words and . By the end of the second phase we will have a sentential form which represents the word and the values of the words and .
The construction used in these phases guarantees that all sentential forms representing the values of a pair in the form of and the corresponding word can be generated in this way.
In the third phase we check the condition presented above: the equality of the values of the two words and . The corresponding word is accepted if and only if this checking is successful. Therefore only those words can be generated for which there exist indices , such that and .
Now we describe how we can represent values of words in the sentential form. Besides the letters from alph, we have additional letters in the sentential form: and ; the number of 's represents the value of the word , the number of 's represents the value of the other word .
The derivation proceeds in the following way. In the first phase we increase the number of 's and 's according to the concatenation of the pairs . Hence by the end of this phase the sentential form represents the values of the words and .
In the second phase we put letters into the sentential form and at the same time increase the number of letters according to the value of the corresponding word . Thus by the end of this phase the sentential form contains a word and represents the two values of the words and .
In the third phase we check whether the number of 's and 's are equal. If the answer is positive, then all symbols but the ones representing the word are deleted and the word is generated. Otherwise the derivation is blocked and never results in a terminal word.
We use this same idea in both main constructions of the chapter, the difference between the two proofs lies in the techniques used for coordinating the derivation.