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
0
38
わかった気になるチューリングマシン
Hirokazu Maruta
November 24, 2021
Tweet
Share
More Decks by Hirokazu Maruta
See All by Hirokazu Maruta
encryption
mochisuna
0
97
Elementary algorithm
mochisuna
0
19
ssh-dynamic-forward
mochisuna
0
47
ServerlessFramework-Trello
mochisuna
0
26
TechBash Slack Reaction Award
mochisuna
0
43
techbash-clasp
mochisuna
0
66
vuejs-night-publish
mochisuna
0
880
surprise-lt-for-intern-vol-2
mochisuna
0
50
docker-multi-stage-build
mochisuna
0
150
Other Decks in Science
See All in Science
LIMEを用いた判断根拠の可視化
kentaitakura
0
420
学術講演会中央大学学員会大分支部
tagtag
0
110
マクロ経済学の視点で、財政健全化は必要か
ryo18cm
2
120
論文紹介: PEFA: Parameter-Free Adapters for Large-scale Embedding-based Retrieval Models (WSDM 2024)
ynakano
0
200
【健康&筋肉と生産性向上の関連性】 【Google Cloudを企業で運用する際の知識】 をお届け
yasumuusan
0
430
ガウス過程回帰とベイズ最適化
nearme_tech
PRO
1
130
はじめてのバックドア基準:あるいは、重回帰分析の偏回帰係数を因果効果の推定値として解釈してよいのか問題
takehikoihayashi
2
1.2k
小杉考司(専修大学)
kosugitti
2
590
はじめての「相関と因果とエビデンス」入門:“動機づけられた推論” に抗うために
takehikoihayashi
17
7.2k
テンソル分解を用いた教師なし学習による変数選択法のシングルセルマルチオミックスデータ解析への応用
tagtag
1
120
地表面抽出の方法であるSMRFについて紹介
kentaitakura
1
200
白金鉱業Meetup Vol.16_数理最適化案件のはじめかた・すすめかた
brainpadpr
3
1.3k
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Gamification - CAS2011
davidbonilla
80
5.1k
Adopting Sorbet at Scale
ufuk
74
9.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Rails Girls Zürich Keynote
gr2m
94
13k
Scaling GitHub
holman
459
140k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
27
1.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
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ͷ໘ന͍͚Ͳ ͕͢͞ʹ͕࣌ؒͳ͍ͷͰ ࠓճεΩοϓ
ࠓճͷ༰ • νϡʔϦϯάϚγϯ • ·ͣͳΜͰ͜ΕબΜͩΜʁ • ֓ • νϡʔϦϯάϚγϯͷݪ •
நػց • νϡʔϦϯάશ • ܭࢉෳࡶੑ