Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
aa:pcp [2019/10/17 08:04]
pdmatei
aa:pcp [2021/01/17 22:48] (current)
cata.chiru
Line 24: Line 24:
   * for this proof, we consider that Turing Machines have only two final states $math[F=\{s_{yes},​s_{no}\}],​ which model the output of $math[0/1]. It is straightforward how one can take an arbitrary Turing Machine an turn it into a //​yes/​no//​-Turing Machine.   * for this proof, we consider that Turing Machines have only two final states $math[F=\{s_{yes},​s_{no}\}],​ which model the output of $math[0/1]. It is straightforward how one can take an arbitrary Turing Machine an turn it into a //​yes/​no//​-Turing Machine.
   * We require that the execution of $math[M] on $math[w] never moves the head to the left of the first symbol of the word. Making sure this happens is a little more technically involved, however algorithmically possible. We shall skip these details.   * We require that the execution of $math[M] on $math[w] never moves the head to the left of the first symbol of the word. Making sure this happens is a little more technically involved, however algorithmically possible. We shall skip these details.
-  * We require that the word $w\neq \epsilon$, hence we do not allow simulations of the empty word. To accommodate for this, we can easily add a new symbol to the alphabet, which is used specifically for encoding the empty word.+  * We require that the word $ w \neq \epsilon $, hence we do not allow simulations of the empty word. To accommodate for this, we can easily add a new symbol to the alphabet, which is used specifically for encoding the empty word.
  
  
Line 150: Line 150:
 We prove the construction is correct. Direction "​$math[\Rightarrow]"​. Suppose there is a matching of FTPCP starting with the first tile and continuing with $math[a_2,​\ldots,​a_k]. Then choose the pair $math[\left(\begin{array}{l} \lhd \alpha_1 \\ \lhd \beta_1 \rhd \end{array}\right)],​ and continue with the pairs $math[a_2=\left(\begin{array}{l} \lhd \alpha_{a_2} \\ \beta_{a_2} \rhd \end{array}\right)] up to $math[a_k], which will constitute a matching. We prove the construction is correct. Direction "​$math[\Rightarrow]"​. Suppose there is a matching of FTPCP starting with the first tile and continuing with $math[a_2,​\ldots,​a_k]. Then choose the pair $math[\left(\begin{array}{l} \lhd \alpha_1 \\ \lhd \beta_1 \rhd \end{array}\right)],​ and continue with the pairs $math[a_2=\left(\begin{array}{l} \lhd \alpha_{a_2} \\ \beta_{a_2} \rhd \end{array}\right)] up to $math[a_k], which will constitute a matching.
  
-===== PCP is undecidable (old) ===== +Direction "$math[\Leftarrow]"Suppose we have a matching in our constructed ​PCP instance. ​Since $math[*] ​can only appear between other symbols from $math[\Sigma], ​it follows that any matching ​can only start with the pair $math[\left(\begin{array}{l} \lhd \alpha_1 ​\\ \lhd \beta_1 ​\rhd \end{array}\right)], and must continue with pairs $math[\left(\begin{array}{l} \lhd \alpha_i \\ \beta_i \rhd \end{array}\right)], ​from which we can immediately construct a matching in FTPCP.
- +
-We prove PCP is undecidable via a reduction: PCP $math[\leq_TFTPCP. +
- +
-Let $math[ \left\{\left(\begin{array}{l} \alpha_i \\ \beta_i \end{array}\right)\right\}_{ 1 \leq i \leq n}] be an instance of PCP. We build an instance ​of FTPCP as follows. +
- +
-First, consider an arbitrary word $math[w=c_1\ldots c_k] over alphabet $math[\Sigma]. We define: +
-  * $math[\lhd w = *c_1*c_2* \ldots ​*c_k] +
-  * $math[w \rhd = c_1*c_2* \ldots *c_k*] +
-  * $math[\lhd w \rhd = *c_1*c_2* \ldots *c_k*] +
-where the symbol $math[*] does not occur in $math[\Sigma]+
- +
-Using our word constructionswe can construct ​the following instance of FTPCP: +
-$math[ ​\left\{\left(\begin{array}{l} \lhd \alpha_i ​\\ \lhd \beta_i ​\rhd \end{array}\right)\right\} \cup \left\{\left(\begin{array}{l} \lhd \alpha_i \\ \beta_i \rhd \end{array}\right)\right\}_{ 1 \leq i \leq n} \cup \left\{\left(\begin{array}{l} \lhd @ \\ @ \end{array}\right)\right\}] +
- +
-where $math[*] and $math[@] are symbols outside of the alphabet of the PCP instance. The intuition of the construction is as follows: +
- +
-  * since $math[*] cannot appear in any word, any matching must start with the first pair (all others are incompatible) +
-  * any matching attempt will leave a trailing $math[*], which can be solved by adding the final tile. +
- +
-It is straightforward that our instance of FTPCP is //​matchable//​ iff PCP is //​matchable//​. +
- +
- +
- +