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
Hirokazu Maruta
November 24, 2021
Science
70
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
わかった気になるチューリングマシン
Hirokazu Maruta
November 24, 2021
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
130
Elementary algorithm
mochisuna
0
34
ssh-dynamic-forward
mochisuna
0
71
ServerlessFramework-Trello
mochisuna
0
38
TechBash Slack Reaction Award
mochisuna
0
51
techbash-clasp
mochisuna
0
100
vuejs-night-publish
mochisuna
0
1.2k
surprise-lt-for-intern-vol-2
mochisuna
0
60
docker-multi-stage-build
mochisuna
0
180
Other Decks in Science
See All in Science
Inside the Mind of an LLM
baggiponte
0
200
データベース04: SQL (1/3) 単純質問 & 集約演算
trycycle
PRO
0
1.5k
[第67回 CV勉強会@関東] CV × Scientific Figures / kantoCV 67th CVPR 2026
lychee1223
0
130
因果推論と機械学習
sshimizu2006
1
1.2k
機械学習 - DBSCAN
trycycle
PRO
0
1.9k
Cross-Media Technologies, Information Science and Human-Information Interaction
signer
PRO
3
32k
ハミルトン・ヤコビ方程式の解の性質と物理的意味
enakai00
0
800
データベース01: データベースを使わない世界
trycycle
PRO
1
1.3k
TypeScript で WebAssembly を用いた 型安全なプラグイン設計
nagano
2
570
チュートリアル:世界モデル
hf149
0
1.9k
なぜエネルギーは保存する? 〜自由落下でわかる“対称性”とネーターの定理〜
syotasasaki593876
0
210
SpatialRDDパッケージによる空間回帰不連続デザイン
saltcooky12
0
270
Featured
See All Featured
First, design no harm
axbom
PRO
2
1.2k
Ethics towards AI in product and experience design
skipperchong
2
330
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
240
エンジニアに許された特別な時間の終わり
watany
108
250k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Tell your own story through comics
letsgokoyo
1
990
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
220
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
Ruling the World: When Life Gets Gamed
codingconduct
0
280
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ͷ໘ന͍͚Ͳ ͕͢͞ʹ͕࣌ؒͳ͍ͷͰ ࠓճεΩοϓ
ࠓճͷ༰ • νϡʔϦϯάϚγϯ • ·ͣͳΜͰ͜ΕબΜͩΜʁ • ֓ • νϡʔϦϯάϚγϯͷݪ •
நػց • νϡʔϦϯάશ • ܭࢉෳࡶੑ