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
150
サンタさんからのすてきなプレゼント / Lovely Christmas Present from Santa
チューリングマシンをくれるやさしいサンタさんのお話。
remeta
December 10, 2022
Tweet
Share
More Decks by remeta
See All by remeta
またね、サンタさん / Goodbye, Santa
000meta
0
270
素朴に計算可能性を考える / An Introduction to Computability
000meta
0
460
Other Decks in Science
See All in Science
05_山中真也_室蘭工業大学大学院工学研究科教授_だてプロの挑戦.pdf
sip3ristex
0
520
機械学習 - ニューラルネットワーク入門
trycycle
PRO
0
820
データベース08: 実体関連モデルとは?
trycycle
PRO
0
740
サイゼミ用因果推論
lw
1
7.4k
深層学習を用いた根菜類の個数カウントによる収量推定法の開発
kentaitakura
0
170
学術講演会中央大学学員会府中支部
tagtag
0
280
創薬における機械学習技術について
kanojikajino
16
5.3k
白金鉱業Meetup Vol.16_数理最適化案件のはじめかた・すすめかた
brainpadpr
4
1.8k
実力評価性能を考慮した弓道高校生全国大会の大会制度設計の提案 / (konakalab presentation at MSS 2025.03)
konakalab
2
180
動的トリートメント・レジームを推定するDynTxRegimeパッケージ
saltcooky12
0
160
データベース11: 正規化(1/2) - 望ましくない関係スキーマ
trycycle
PRO
0
700
Symfony Console Facelift
chalasr
2
460
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
GraphQLとの向き合い方2022年版
quramy
49
14k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
It's Worth the Effort
3n
185
28k
Raft: Consensus for Rubyists
vanstee
140
7k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Making Projects Easy
brettharned
116
6.3k
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