Meskipun versi non-halting dari tag siklik mungkin menarik minat khusus untuk automata seluler, sistem tag siklik juga dapat dirancang untuk mensimulasikan mesin Turing universal sedemikian rupa sehingga menghentikan iff TM berhenti, menampilkan kata output yang mengkode output mesin:
Simulasikan TM dengan sistem 2-tag yang mengkodekan semua konfigurasi instan TM, menggunakan "output alphabet" yang terpisah untuk menyandikan segala konfigurasi yang terhenti, sehingga sistem tag berhenti (dengan menghapus kata ini huruf per huruf) jika TM berhenti. ( Makalah ini menunjukkan secara rinci bagaimana hal ini dapat dilakukan dengan menggunakan formulasi mesin Wang dari TMs.)
Simulasikan sistem 2 tag dengan sistem tag siklik seperti yang dijelaskan di bagian sistem tag siklik artikel Wikipedia . Karena setiap huruf dalam alfabet keluaran 2-tag memiliki string kosong sebagai pelengkapnya (menyebabkan simulasi 2-tag terhenti), sistem tag siklik akan memiliki perilaku penghentian / keluaran yang sama.
Kunci dalam pendekatan ini adalah bahwa alfabet keluaran yang ditunjuk, katakan , memungkinkan setiap hurufnya memiliki string kosong sebagai pelengkapnya ( ), menyebabkan simulasi untuk menghapus kata data dan berhenti.{αi}αi→ϵ
NB : Untuk ketiga jenis sistem (TM, tag, tag siklik), identifikasi output yang jelas dapat dipastikan dengan menggunakan alfabet output yang ditentukan, dan ini dapat dilakukan untuk varietas baik yang menghentikan maupun yang tidak menghentikan sistem ini. (Mengingat bahwa "standar" TM adalah jenis penghentian, ironisnya bahwa mesin komputasi asli Turing adalah varietas non-penghenti dengan alfabet keluaran .){0,1}
Dengan pendekatan yang sama, kita juga dapat langsung membangun sistem 2-tag sederhana untuk menghapus s dari string biner, kemudian mensimulasikannya dengan tag siklik. Perhitungan dengan cepat menjadi membosankan, jadi kami hanya akan menerapkannya pada string input , terputus dengan string output . (Simbol akan menunjukkan string kosong.)010111-
2-tag
input alphabet {a,b}, output alphabet {c}
input encoding:
<0> = aa
<1> = bb
input = <101> = bbaabb
output decoding: <cc> = 1
produksi:
a -> -
b -> cc
c -> -
komputasi:
bbaabb <-- input word <101>
aabbcc
bbcc
cccc <-- output word <11>
cc
-
tag siklik
pengodean alfabet 2-tag:
<a> = 100
<b> = 010
<c> = 001
cyclic tag system = [-,001001,-,-,-,-]
cyclic tag input = <bbaabb> = 010010100100010010
komputasi:
appendant dataword
--------- ---------------------------------------------------------------
- 010010100100010010 <-- input word <bbaabb> = <<101>>
001001 10010100100010010
- 0010100100010010001001
- 010100100010010001001
- 10100100010010001001
- 0100100010010001001
- 100100010010001001
001001 00100010010001001
- 0100010010001001
- 100010010001001
- 00010010001001
- 0010010001001
- 010010001001
001001 10010001001
- 0010001001001001
- 010001001001001
- 10001001001001
- 0001001001001
- 001001001001 <-- output word <cccc> = <<11>>
001001 01001001001
- 1001001001
- 001001001
- 01001001
- 1001001
- 001001
001001 01001
- 1001
- 001
- 01
- 1
- -