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
わかった気になるチューリングマシン
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Hirokazu Maruta
November 24, 2021
Science
0
48
わかった気になるチューリングマシン
Hirokazu Maruta
November 24, 2021
Tweet
Share
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
120
Elementary algorithm
mochisuna
0
27
ssh-dynamic-forward
mochisuna
0
61
ServerlessFramework-Trello
mochisuna
0
30
TechBash Slack Reaction Award
mochisuna
0
45
techbash-clasp
mochisuna
0
91
vuejs-night-publish
mochisuna
0
1.1k
surprise-lt-for-intern-vol-2
mochisuna
0
55
docker-multi-stage-build
mochisuna
0
170
Other Decks in Science
See All in Science
白金鉱業Vol.21【初学者向け発表枠】身近な例から学ぶ数理最適化の基礎 / Learning the Basics of Mathematical Optimization Through Everyday Examples
brainpadpr
1
600
力学系から見た現代的な機械学習
hanbao
3
3.9k
データマイニング - ウェブとグラフ
trycycle
PRO
0
240
SpatialRDDパッケージによる空間回帰不連続デザイン
saltcooky12
0
160
Navigating Weather and Climate Data
rabernat
0
110
ド文系だった私が、 KaggleのNCAAコンペでソロ金取れるまで
wakamatsu_takumu
2
1.9k
安心・効率的な医療現場の実現へ ~オンプレAI & ノーコードワークフローで進める業務改革~
siyoo
0
450
良書紹介04_生命科学の実験デザイン
bunnchinn3
0
120
Vibecoding for Product Managers
ibknadedeji
0
130
会社でMLモデルを作るとは @電気通信大学 データアントレプレナーフェロープログラム
yuto16
1
530
NASの容量不足のお悩み解決!災害対策も兼ねた「Wasabi Cloud NAS」はここがスゴイ
climbteam
1
340
データから見る勝敗の法則 / The principle of victory discovered by science (open lecture in NSSU)
konakalab
1
270
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Statistics for Hackers
jakevdp
799
230k
First, design no harm
axbom
PRO
2
1.1k
Navigating Team Friction
lara
192
16k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
77
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Thoughts on Productivity
jonyablonski
74
5k
Embracing the Ebb and Flow
colly
88
5k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3k
Navigating Weather and Climate Data
rabernat
0
110
Producing Creativity
orderedlist
PRO
348
40k
Transcript
Θ͔ͬͨؾʹͳΔ νϡʔϦϯάϚγϯ ߹ಉձࣾMaruhiro Lab. ·Δͨ
·ͣ͊͞ ʢݴ͍༁λΠϜʣ
࠷ॳʹ͓͍͍ͯͨλΠτϧ
Θ͔ͬͨؾʹͳΔ ܭࢉػՊֶ ߹ಉձࣾMaruhiro Lab. ·Δͨ
ҙؾ༲ʑͱ࡞Γ࢝Ίͨͷͷ
ͦͷൣғ
None
None
ແཧ
վΊͯࠓճͷ༰
Θ͔ͬͨؾʹͳΔ νϡʔϦϯάϚγϯ ߹ಉձࣾMaruhiro Lab. ·Δͨ
ࣗݾհ https://github.com/mochisuna • ؙాʢ·ΔͨͻΖ͔ͣʣ • Twitter: @mochi_suna • ओʹαʔόʔαΠυΤϯδχΞ •
झຯɿϐΞϊɺϘυήɺΞΠίϯ࡞ʢΧούʣɺϓϨθϯ • ࣗಈԽେ͖ɻख࡞ۀ͖Β͍ • githubɿ @mochisuna
ٕज़໘
ʮνϡʔϦϯάϚγϯʯ
ͳΜ͔͏ ͢ͰʹϜζ͍
ӕ͕ଟͯ͘ ʮΘ͔ͬͨؾʹͳΔʯ Λඪʹઆ໌
ࠓճͷ༰ • νϡʔϦϯάϚγϯ • ·ͣͳΜͰ͜ΕબΜͩΜʁ • ֓ • νϡʔϦϯάϚγϯͷݪ •
நػց • νϡʔϦϯάશ • ܭࢉෳࡶੑ
·ͣͳΜͰ͜ΕબΜͩΜʁ
͋ΔษڧձͰͷ͜ͱ
ʮνϡʔϦϯάશʯ
ʮνϡʔϦϯάʯ ʮશʯ
🤔
֓
νϡʔϦϯάϚγϯ֓ νϡʔϦϯάϚγϯͷݪ νϡʔϦϯάશ நػց
νϡʔϦϯάϚγϯ֓ νϡʔϦϯάϚγϯͷݪ νϡʔϦϯάશ நػց
νϡʔϦϯάϚγϯͷݪ • ݩʑֶͷఆΛߟ͑ΔͨΊʹߟҊ • μϑΟοτɾώϧϕϧτʢ1862~1943ʣ • ֶͬͯΊͬͪΌ͍͢͝Αͳʁ • ʮσΟΦϑΝϯτεํఔࣜʹղ͕ ͋Δ͔ʯͬͯύοͱผͰ͖ͦ͏
͡ΌͶʁ
νϡʔϦϯάϚγϯͷݪ ΞϥϯɾνϡʔϦϯάʢ1912~1954ʣ • ʮܭࢉՄೳੑʯͷٞʹͯఏࣔ • ݱࡏͷίϯϐϡʔλͷݪܕ
νϡʔϦϯάϚγϯͷݪ ΞϥϯɾνϡʔϦϯάʢ1912~1954ʣ • ʮܭࢉՄೳੑʯͷٞʹͯఏࣔ • ݱࡏͷίϯϐϡʔλͷݪܕ • ୯७ͳػߏΛ࣋ͬͨநػց
νϡʔϦϯάϚγϯͷݪ ΞϥϯɾνϡʔϦϯάʢ1912~1954ʣ • ʮܭࢉՄೳੑʯͷٞʹͯఏࣔ • ݱࡏͷίϯϐϡʔλͷݪܕ • ୯७ͳػߏΛ࣋ͬͨநػց • ͪͳΈʹੈքॳͷి1963
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ b` b ` b` b` ೖྗ
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ b` b ` b` b` ೖྗ
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ b`͕ೖྗ ͞Ε·ͨ͠
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ b `͕ೖྗ ͞Ε·ͨ͠ b`͕ೖྗ
͞Ε·ͨ͠
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ b `͕ೖྗ ͞Ε·ͨ͠ b`͕ೖྗ
͞Ε·ͨ͠ b`͕ೖྗ ͞Ε·ͨ͠
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ b `͕ೖྗ ͞Ε·ͨ͠ b`͕ೖྗ
͞Ε·ͨ͠ b`͕ೖྗ ͞Ε·ͨ͠ b`͕ೖྗ ͞Ε·ͨ͠
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ ೖྗʹର͠ :&4/0ͷఆΛ͢Δͷʹ ͱͯ߹͕͍͍
νϡʔϦϯάϚγϯͷݪ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ ೖྗʹର͠ :&4/0ͷఆΛ͢Δͷʹ ͱͯ߹͕͍͍ நػց
νϡʔϦϯάϚγϯ֓ νϡʔϦϯάϚγϯͷݪ νϡʔϦϯάશ நػց
νϡʔϦϯάϚγϯͷݪʢ࠶ܝʣ • ਓؒͷܭࢉͷखॱΛ฿͢ΔػցʹͤΑ͏ →ϓϩάϥϜΛॻ͘ͷͱ΄΅ಉٛ • ೖྗʹର͠ʮػցͷ෦ঢ়ଶʯͰධՁ ೖྗʹର͠ :&4/0ͷఆΛ͢Δͷʹ ͱͯ߹͕͍͍
• ʮຊͷػցͷΑ͏ʹʯಈֶ͘తϞσϧ • ্هͷఆٛ௨ΓʹࣗతʹܭࢉΛ࣮ߦ ෦ ػೳ ৼΔ͍ͷϧʔϧ நػց
நػցͷछྨʢͷҰ෦ʣ • ༗ݶΦʔτϚτϯ • ϓογϡμϯΦʔτϚτϯ • νϡʔϦϯάϚγϯ Լʹߦ͘΄ͲෳࡶͰଟػೳ
நػցͷछྨʢͷҰ෦ʣ • ༗ݶΦʔτϚτϯ • ϓογϡμϯΦʔτϚτϯ • νϡʔϦϯάϚγϯ Լʹߦ͘΄ͲෳࡶͰଟػೳ
༗ݶΦʔτϚτϯ • Automatonʢࣗಈਓܗʣ • ༗ݶݸͷঢ়ଶΛ࣋ͭʮৼΔ͍Ϟσϧʯ • Ԡ༻ใͱ͔Ͱग़͕ͪ ʦग़ɿฏ21य़ʗAPޕલ3ʧ
༗ݶΦʔτϚτϯ • ॳظঢ়ଶͱडཧঢ়ଶͰධՁ • Input͕݅ʹҰக͢Δ͔͠ͳ͍͔Λఆ →ఆ B C D 0
0 1 0 1 1
༗ݶΦʔτϚτϯ • ຊདྷ͔ͳΓݫີͳఆ͕ٛ͋Δ
༗ݶΦʔτϚτϯ • ຊདྷ͔ͳΓݫີͳఆ͕ٛ͋Δ • େֶͰतۀΛड͚͍ͯͩ͘͞
༗ݶΦʔτϚτϯ • جຊߏ 1. ༗ݶঢ়ଶ੍ޚ෦ 2. ಡΈऔΓϔομ 3. ςʔϓʢ֎෦هԱʣ ʜ
ʜ
ʜ ʜ ༗ݶΦʔτϚτϯʢಈ࡞ʣ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`B`
ʜ ʜ ༗ݶΦʔτϚτϯʢಈ࡞ʣ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`C`
ʜ ʜ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`D` ༗ݶΦʔτϚτϯʢಈ࡞ʣ
ʜ ʜ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`C` ༗ݶΦʔτϚτϯʢಈ࡞ʣ
ʜ ʜ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`D` ༗ݶΦʔτϚτϯʢಈ࡞ʣ
ʜ ʜ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`D` ༗ݶΦʔτϚτϯʢಈ࡞ʣ
ʜ ʜ ݱঢ়ଶ
B B C C B D D C D B C D 0 0 1 0 1 1 ࠷ऴঢ়ଶ͕`D` ͳͷͰ डཧ ༗ݶΦʔτϚτϯʢಈ࡞ʣ
நػցͷछྨʢͷҰ෦ʣ • ༗ݶΦʔτϚτϯ • ϓογϡμϯΦʔτϚτϯ • νϡʔϦϯάϚγϯ Լʹߦ͘΄ͲෳࡶͰଟػೳ
ϓογϡμϯΦʔτϚτϯ • ༗ݶΦʔτϚτϯͰࠔΔέʔε͕͋Δ • จ຺ࣗ༝จ๏ S S S a a
a b b b
ϓογϡμϯΦʔτϚτϯ • ༗ݶΦʔτϚτϯͰࠔΔέʔε͕͋Δ • จ຺ࣗ༝จ๏ S S S a a
a b b b " a " " a # b # # b ɾɾɾ a b ε ε ε
ϓογϡμϯΦʔτϚτϯ • ༗ݶΦʔτϚτϯͰࠔΔέʔε͕͋Δ • จ຺ࣗ༝จ๏ • ༗ݶΦʔτϚτϯͰදݱͰ͖ͳ͍ S S S
a a a b b b " a " " a # b # # b ɾɾɾ a b ε ε ε
ϓογϡμϯΦʔτϚτϯ • ༗ݶΦʔτϚτϯͰࠔΔέʔε͕͋Δ • จ຺ࣗ༝จ๏ • ༗ݶΦʔτϚτϯͰදݱͰ͖ͳ͍ • ੍ޚػߏΛ֦ுͨ͠ϞσϧΛఆٛ S
S S a a a b b b " a " " a # b # # b ɾɾɾ a b ε ε ε
ϓογϡμϯΦʔτϚτϯ • جຊߏ 1. ༗ݶঢ়ଶ੍ޚ෦ 2. ಡΈऔΓϔομ 3. ςʔϓʢ֎෦هԱʣ 4.
ελοΫػߏ ʜ ʜ
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ; ݅ʹΑΒͣ ελοΫ;
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ; ݅ʹΑΒͣ ελοΫ ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`C`
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ; ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`C` ݅ʹΑΒͣ ελοΫ
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ; ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`D` ελοΫઌ಄ ͳͷͰ ઌ಄ΛQPQ
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ; ೖྗʹ`` ͳͷͰ ঢ়ଶʹ`D` ελοΫઌ಄ ͳͷͰ ઌ಄ΛQPQ
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ελοΫઌ಄; ͳͷͰ ઌ಄ΛQPQ
ʜ ʜ B C D ϓογϡμϯΦʔτϚτϯʢಈ࡞ʣ
ε, ε→Z0 0, ε→0 E 1, 0→ε 1, 0→ε ε, Z0 →ε L={ 0n1n | n ≧ 0 } ࠷ऴঢ়ଶ͕`E` ͳͷͰ डཧ
நػցͷछྨʢͷҰ෦ʣ • ༗ݶΦʔτϚτϯ • ϓογϡμϯΦʔτϚτϯ • νϡʔϦϯάϚγϯ Լʹߦ͘΄ͲෳࡶͰଟػೳ
νϡʔϦϯάϚγϯ • Α͏͘ຊ • ༗ݶΦʔτϚτϯʹಡΈॻ͖ΛڐՄ • ςʔϓͷ༰ʹ߹ΘͤͯࠨӈʹγʔΫ ࠨӈҠಈ ಡΈऔΓ ॻ͖ࠐΈ
νϡʔϦϯάϚγϯ • جຊߏ 1. ༗ݶঢ়ଶ੍ޚ෦ 2. ಡΈॻ͖ϔομ 3. ςʔϓʢ֎෦هԱʣ ʜ
ʜ ࠨӈҠಈ ಡΈऔΓ ॻ͖ࠐΈ Ͱ͖Δ͜ͱ
ྑ͍࣮Λݟͨํ͕͍͍ • Doodle: Alan Turing’s 100th Birthday • https://www.google.com/doodles/alan-turings-100th-birthday
ྑ͍࣮Λݟͨํ͕͍͍ • Doodle: Alan Turing’s 100th Birthday • https://www.google.com/doodles/alan-turings-100th-birthday •
ͪͳΈʹGithubͰެ։͞ΕͯΔ • https://github.com/google/turing-doodle
νϡʔϦϯάϚγϯΛߟ͑Δ νϡʔϦϯάϚγϯʢTMʣΛఆٛ͢Δҙٛ நతͳʮܭࢉػʯͱͯ͠ධՁͰ͖Δ
நతͳܭࢉػʁʁʁ • ੈͷதʹࢁͷʮܭࢉػʯ͕͋Δ • ಛఆͷنଇͰܭࢉ͞ΕΔͳΒɺͦΕܭࢉػ ܭࢉػ ೖྗ ग़ྗ
நతͳܭࢉػʁʁʁ • ੈͷதʹࢁͷʮܭࢉػʯ͕͋Δ • ಛఆͷنଇͰܭࢉ͞ΕΔͳΒɺͦΕܭࢉػ
நతͳܭࢉػʁʁʁ TMͰղ͚Δ / ղ͚ͳ͍ʹΞϧΰϦζϜͷ༗ແ • TMͰղ͚Δɿೖྗʹର͠TM͕ఀࢭ͢Δ • TM͕ఀࢭ͠ͳ͍ɿղ͕ଘࡏ͠ͳ͍ ʮΑΓෳࡶͳΛղܾͰ͖Δ͔ʯͷఆ
νϡʔϦϯάϚγϯ֓ νϡʔϦϯάϚγϯͷݪ νϡʔϦϯάશ நػց
νϡʔϦϯάશͷલʹ • ಛఆͷنଇͰܭࢉ͞ΕΔͳΒɺͦΕܭࢉػ ܭࢉػ ೖྗ ग़ྗ
νϡʔϦϯάશͷલʹ • ಛఆͷنଇͰܭࢉ͞ΕΔͳΒɺͦΕܭࢉػ • TMͷܭࢉϧʔϧTMຖʹఆ͍͍ٛͯ͠ ʜ
ʜ
TMͷϧʔϧTMຖʹʁʁʁ • ॲཧϧʔϧ͑͋͞ΕҙͷTM͕࡞ΕΔ ೖྗ0ຒΊTM ϥΠϑήʔϜTM ೖྗసTM
TMͷϧʔϧTMຖʹʁʁʁ • ॲཧϧʔϧ͑͋͞ΕҙͷTM͕࡞ΕΔ ೖྗ0ຒΊTM ϥΠϑήʔϜTM ೖྗసTM ͲΜͳTMͷܭࢉ฿Ͱ͖ΔTM
TMͷϧʔϧTMຖʹʁʁʁ • ॲཧϧʔϧ͑͋͞ΕҙͷTM͕࡞ΕΔ ೖྗ0ຒΊTM ϥΠϑήʔϜTM ೖྗసTM ສೳνϡʔϦϯάϚγϯ
ສೳνϡʔϦϯάϚγϯ ʮܭࢉΛ฿ʯ • TMͷೖྗɾܭࢉ݁ՌΛղऍ • ܭࢉΛʮ࠶ݱʯ͢Δ͜ͱ͕Ͱ͖ΔTM
ສೳνϡʔϦϯάϚγϯ ʮܭࢉΛ฿ʯ • TMͷೖྗɾܭࢉ݁ՌΛղऍ • ܭࢉΛʮ࠶ݱʯ͢Δ͜ͱ͕Ͱ͖ΔTM ʢͳΜΒ͔ͷܭࢉػͰʣ ܭࢉͰ͖ΔͷͳΜͰܭࢉͰ͖Δܭࢉػ
ສೳνϡʔϦϯάϚγϯ ʮܭࢉΛ฿ʯ • TMͷೖྗɾܭࢉ݁ՌΛղऍ • ܭࢉΛʮ࠶ݱʯ͢Δ͜ͱ͕Ͱ͖ΔTM ʮνϡʔϦϯάશʯͳܭࢉػ
νϡʔϦϯάશੑ νϡʔϦϯάશͳγεςϜͷྫ • ΄ͱΜͲͷϓϩάϥϛϯάݴޠ • MySQL • ϥΠϑήʔϜ • ϧʔϧ110ʢ1࣍ݩηϧΦʔτϚτϯʣ
͜ΕΒ͕දݱͰ͖Δ͜ͱͱ Ձͳ͜ͱ͕࣮ݱͰ͖Ε ʮνϡʔϦϯάશͳγεςϜʯ
͏͔ͬΓνϡʔϦϯάશʹͳͬͨ࿈த
ࠓճͷ༰ • νϡʔϦϯάϚγϯ • ·ͣͳΜͰ͜ΕબΜͩΜʁ • ֓ • νϡʔϦϯάϚγϯͷݪ •
நػց • νϡʔϦϯάશ • ܭࢉෳࡶੑ
ܭࢉෳࡶੑ
ܭࢉෳࡶੑ • ͋Δ͕Ͳͷ͘Β͍͍͠ͷ͔ʁͷࢦඪ
ܭࢉෳࡶੑ • ͋Δ͕Ͳͷ͘Β͍͍͠ͷ͔ʁͷࢦඪ →ܾఆੑTMΛղ͘ͷ͕ͲΕ͘Β͍େม͔
ܭࢉෳࡶੑ • ͋Δ͕Ͳͷ͘Β͍͍͠ͷ͔ʁͷࢦඪ →ܾఆੑTMΛղ͘ͷ͕ͲΕ͘Β͍େม͔ →ղΛग़͢ͷʹͲΕ͘Β͍͕͔͔࣌ؒΔ͔
ܭࢉෳࡶੑ • ͋Δ͕Ͳͷ͘Β͍͍͠ͷ͔ʁͷࢦඪ →ܾఆੑTMΛղ͘ͷ͕ͲΕ͘Β͍େม͔ →ղΛग़͢ͷʹͲΕ͘Β͍͕͔͔࣌ؒΔ͔ ೖྗ ग़ྗ 100ʂ
қతʹम࢜1૬
ӕϚγϚγͰղઆ
ܭࢉྔΦʔμʔ • Ͳͷ͘Β͍ܭࢉ͕͍͔͠ͷه๏
ܭࢉྔΦʔμʔ • Ͳͷ͘Β͍ܭࢉ͕͍͔͠ͷه๏ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 1. ాத͘ΜΧούͰ͔͢ʁ
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 1. ాத͘ΜΧούͰ͔͢ʁ print(member('ాத').is_kappa)
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 1. ాத͘ΜΧούͰ͔͢ʁ →ਓ͕૿͑ͯ͜ͷ1ॲཧ= O(1)
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 2. എͷॱͰฒͨ࣌ɺాத܅ͷޙΖஉࢠʁ
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 2. എͷॱͰฒͨ࣌ɺాத܅ͷޙΖஉࢠʁ →ೋ୳ࡧ= O(logN)
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 3. ͜ͷΫϥεʹాத܅͍·͔͢ʁ
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 3. ͜ͷΫϥεʹాத܅͍·͔͢ʁ for i in range(N): if
member[i].name == 'ాத': print('͍ͦͭΧούͩ')
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 3. ͜ͷΫϥεʹాத܅͍·͔͢ʁ →1ॏͷforจ= O(N)
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 4. ͜ͷΫϥεʹΧού2ਓ͍·͔͢ʁ
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 4. ͜ͷΫϥεʹΧού2ਓ͍·͔͢ʁ for i in range(N): for
j in range(i+1,N): if member[i].is_kappa && member[j].is_kappa: print('ͳΜͰ2ඖ͍ΜͶ')
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 4. ͜ͷΫϥεʹΧού2ਓ͍·͔͢ʁ →2ॏͷforจ= O(N2)
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 5. ྑ͠ಉ࢜Λ͚ͳ͍Α͏ʹΫϥε͚
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 5. ྑ͠ಉ࢜Λ͚ͳ͍Α͏ʹΫϥε͚ →શһʹର͠૯ͨΓ= O(2N)
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 6. ΨιϦϯΛڅ༉͠ͳ͍ͰશһͷՈఉ๚ͯ͠ ֶߍʹΔ
ܭࢉྔΦʔμʔ • ྫɿஉঁ߹Θͤͯ30ਓͷΫϥε 6. ΨιϦϯΛڅ༉͠ͳ͍ͰશһͷՈఉ๚ͯ͠ ֶߍʹΔ →TSP= O(N!)
ܭࢉྔΦʔμʔ • Ͳͷ͘Β͍ܭࢉ͕͍͔͠ Φʔμʔ /ͷ߹ ాதJTΧού O(1) എͷॱ O(logN)
Χού୳͠ O(N) Χούਓ O(N2) Ϋϥε͚ O(2N) Ոఉ๚ O(N!) º
ܭࢉྔΦʔμʔ ܾఆੑTMͰܭࢉͷ͠͞ΛఆٛͰ͖Δ • TMͷൃݟ͕ͨΒͨ͜͠ͱ • PCͰ༏Εͨղ๏ΛߟҊ͢Δͷʹߩݙ
P vs NP • Pɿ݁ߏ؆୯ • NPɿ͔ͳΓ͍͠ • NPશɿͬͱ͍͠ •
NPࠔɿ࠷ڧ NPࠔ P NP NPશ ͜͏͍͏ͷఆٛͰ͖ΔΑ͏ʹͳͬͨ
NPͷ໘ന͍͚Ͳ ͕͢͞ʹ͕࣌ؒͳ͍ͷͰ ࠓճεΩοϓ
ࠓճͷ༰ • νϡʔϦϯάϚγϯ • ·ͣͳΜͰ͜ΕબΜͩΜʁ • ֓ • νϡʔϦϯάϚγϯͷݪ •
நػց • νϡʔϦϯάશ • ܭࢉෳࡶੑ