Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
サンタさんからのすてきなプレゼント / Lovely Christmas Present fr...
Search
remeta
December 10, 2022
Science
0
160
サンタさんからのすてきなプレゼント / Lovely Christmas Present from Santa
チューリングマシンをくれるやさしいサンタさんのお話。
remeta
December 10, 2022
Tweet
Share
More Decks by remeta
See All by remeta
またね、サンタさん / Goodbye, Santa
000meta
0
280
素朴に計算可能性を考える / An Introduction to Computability
000meta
0
480
Other Decks in Science
See All in Science
NASの容量不足のお悩み解決!災害対策も兼ねた「Wasabi Cloud NAS」はここがスゴイ
climbteam
0
130
データから見る勝敗の法則 / The principle of victory discovered by science (open lecture in NSSU)
konakalab
1
150
機械学習 - pandas入門
trycycle
PRO
0
310
局所保存性・相似変換対称性を満たす機械学習モデルによる数値流体力学
yellowshippo
1
310
ランサムウェア対策にも考慮したVMware、Hyper-V、Azure、AWS間のリアルタイムレプリケーション「Zerto」を徹底解説
climbteam
0
110
How To Buy, Verified Venmo Accounts in 2025 This year
usaallshop68
4
280
データベース02: データベースの概念
trycycle
PRO
2
900
Celebrate UTIG: Staff and Student Awards 2025
utig
0
160
データベース04: SQL (1/3) 単純質問 & 集約演算
trycycle
PRO
0
990
KH Coderチュートリアル(スライド版)
koichih
1
46k
データベース05: SQL(2/3) 結合質問
trycycle
PRO
0
800
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
wakamatsu_takumu
2
1.3k
Featured
See All Featured
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Optimizing for Happiness
mojombo
379
70k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
GraphQLの誤解/rethinking-graphql
sonatard
72
11k
Producing Creativity
orderedlist
PRO
347
40k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Writing Fast Ruby
sferik
628
62k
Making Projects Easy
brettharned
117
6.4k
Transcript
チューリングマシンの定義が 分かるようになるスライド remeta これは RICORA Advent Calendar 2022 10 日目の記事です.
1
あっ,サンタさんだ! ホーッホッホッ! サンタさんじゃよ! 今年一年いい子 にしてた君に,とっておきのプレゼントをあげよう! ほう れ,チューリングマシンじゃ! _人人人人人人人人人人人人人人人_ >わあい,チューリングマシンだ! <
 ̄YYYYYYYYYYYYYYY ̄ 2
なにをするか チューリングマシンを定義します.この記事を読んだあ なたは「チューリングマシンの定義を知っている人」にな ります. 最初にブワーーーーと定義を並べ立てますが,あとで解 説します.とりあえずはじめは読み飛ばしてください. 3
用いる記号 チューリングマシンの定義では,次の記号を用います. S0 , S1 , S2 , . .
. , SN ; q1 , q2 , . . . , qM ; R, L 以下では自然数 N, M を固定して議論します.これら記号 の有限列を表現といいます. また,S0 , . . . , SN をアルファベット,q1 , . . . , qM を内部 状態といいます.以後 S0 は B,S1 は 1 と書くことにし ます. 4
4 項系列 次のいずれかの形をした 4 つの記号から成る表現を 4 項 系列といいます. qi Sj
Sk ql qi Sj Rql qi Sj Lql 4 項系列の有限集合 Z で,どの 2 つも最初の 2 つの記号 が異なるものをチューリングマシンといいます. 5
時点表示 ただ 1 つの内部状態を含み,それ以外の記号が全てアル ファベットであるような表現を時点表示といいます. 例えば 1Bq3 1B1B は時点表示です. 6
チューリングマシンの計算 Z をチューリングマシンとします.時点表示 α, β がある アルファベットの有限列 P, Q に対して,次のいずれかを
満たすとき,α → β と書きます. • qi Sj Sk ql ∈ Z で,α が Pqi Sj Q,β が Pql Sk Q の形 をしている. • qi Sj Rql ∈ Z で,α が Pqi Sj Q,β が PSj ql Q の形 をしている. 7
• qi Sk Lql ∈ Z で,α が PSj qi
Q,β が Pql Sj Q の形 をしている. • qi Sk Rql ∈ Z で,α が PSj qi Q,β が PSj Bql の形 をしている. • qi Sk Lql ∈ Z で,α が qi Sk Q,β が ql BSk Q の形を している. 8
終点表示と結果表示 いかなる時点表示 β についても α → β とならないとき, α を
Z の終点表示といいます. 時点表示の列 α1 , α2 , . . . , αp が存在して各 1 < i ≤ p に ついて αi−1 → αi であるとき,αp は Z に関する α1 の結 果表示であるといいます. 9
数字の表し方 n を,1 を n + 1 個並べて書いた表現 11 ·
· · 1 とし,(n1 , . . . , nk ) を ni を B を挟んで並べた表現 n1 Bn2 B · · · Bnk とします.また,時点表示 α に現れる 1 の個数を α とし ます. n = n + 1 です. 10
計算可能な関数 k 変数関数 f : Nk → N が計算可能であるとは,ある チューリングマシン
Z が存在して,Z が任意の (n1 , . . . , nk ) ∈ Nk に対して q1 (n1 , . . . , nk ) が終点表示 α を持ち, α = f(n1 , . . . , nk ) となることをいいます. 11
サンタさん · · · 何言ってるの? 説明します.ごめんなさい.チューリングマシンは,直 感的には次の構成要素から成る機械です. • 文字の書かれた,いくらでも延長できる紙テープ •
紙テープに読み書きのできるヘッド • ヘッドが読み取った文字と内部状態をもとに,ヘッ ドの動きと次の内部状態を決める制御装置 12
チューリングマシンのはたらき 紙テープには記号が書かれています. 1B111B1 B は空白を表す記号です. 例えば上のテープは長さが 7 で, 「1 111
1」と書いてあるわけです. 13
時点表示の意味 紙テープ 1B111B1 の上にチューリングマシンの読み書 きヘッドが置かれた状態を表すのが時点表示です.一番 左の B にチューリングマシンのヘッド q が載っているこ
とを, 1qB111B1 と表しています.ここで q は 1 ではなく B を見ていると いう点に注意してください. 14
内部状態を盛り込む ヘッドの位置 q にチューリングマシンの内部状態 qi の 情報を盛り込むことで,先程定義した時点表示 1qi B111B1 が完成します.時点表示に含まれる内部状態
qi がただ一つ としたのは,チューリングマシンのヘッドが 1 つしかない からだったのです. 15
4 項系列とは チューリングマシンは 4 項系列の有限集合でした.これ は端的に言うと司令のようなものです. 例えば次の 4 項系列 qi
Sj Sk ql は, 「内部状態が qi でヘッドが読んでいる文字が Sj なら, その文字を Sk に書き換え,内部状態を ql に変更せよ」と いう意味の司令です. 16
具体的な司令の内容 最初の 2 文字がその司令を実行する条件で,3 文字目の Sk , R, L のいずれかがヘッドの行う動作,4
文字目が動作 後の内部状態です. Sk が「文字を Sk に書き換える」 ,R または L が「ヘッ ドを 1 文字分右または左に動かす」 という意味の司令です. テープの右端や左端にあるヘッドを更に右や左に動かす ときは,文字 B の書かれたテープをくっつけて伸ばすこと になります. 17
そして計算をする 以上の規則でチューリングマシンは刻々と変化していき ます. 1 を n + 1 回連ねた記号列で n
を表すことにしたのでし た.例えばテープ 1B111B1 には数の 3 つ組 (0, 2, 0) が書 いてあることになります. この記号化した数字の組をチューリングマシンによって 変化させ,やがてそれ以上変化しない状態に落ち着くさま を,チューリングマシンの計算と呼んでいるのです. 18
えっ,ここで終わり? ホーッホッホッ,チューリングマシン自体はもう手元に あるじゃろ.サンタの務めはここまでじゃ.残る 12 月を楽 しむのじゃ若者よ! さらばじゃ! シャンシャンシャン.... え,ちょ,サンタさーん! 19
果たして少年はこの機械で計算が できるのか!? つづく 20
参考文献 M. Davis. 計算の理論. 岩波書店, 1966. 神保町で売ってた(400 円) ,みんな神保町に行こう. 21