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
130
サンタさんからのすてきなプレゼント / Lovely Christmas Present from Santa
チューリングマシンをくれるやさしいサンタさんのお話。
remeta
December 10, 2022
Tweet
Share
More Decks by remeta
See All by remeta
またね、サンタさん / Goodbye, Santa
000meta
0
250
素朴に計算可能性を考える / An Introduction to Computability
000meta
0
420
Other Decks in Science
See All in Science
小杉考司(専修大学)
kosugitti
2
600
ICRA2024 速報
rpc
3
5.9k
学術講演会中央大学学員会いわき支部
tagtag
0
130
240510 COGNAC LabChat
kazh
0
180
ベイズ最適化をゼロから
brainpadpr
2
1.1k
化学におけるAI・シミュレーション活用のトレンドと 汎用原子レベルシミュレーター: Matlantisを使った素材開発
matlantis
0
430
LIMEを用いた判断根拠の可視化
kentaitakura
0
430
Trend Classification of InSAR Displacement Time Series Using SAE–CNN
satai
2
130
Transformers are Universal in Context Learners
gpeyre
0
710
06_浅井雄一郎_株式会社浅井農園代表取締役社長_紹介資料.pdf
sip3ristex
0
120
非同期コミュニケーションの構造 -チャットツールを用いた組織における情報の流れの設計について-
koisono
0
210
トラブルがあったコンペに学ぶデータ分析
tereka114
2
1.4k
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Become a Pro
speakerdeck
PRO
26
5.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
630
Site-Speed That Sticks
csswizardry
4
380
YesSQL, Process and Tooling at Scale
rocio
172
14k
The Cult of Friendly URLs
andyhume
78
6.2k
How GitHub (no longer) Works
holman
314
140k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
RailsConf 2023
tenderlove
29
1k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
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