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
Coqの紹介 #w8lt
Search
Shohei Yasutake
July 29, 2015
Programming
0
350
Coqの紹介 #w8lt
w8ltでCoqの紹介をしました
Shohei Yasutake
July 29, 2015
Tweet
Share
More Decks by Shohei Yasutake
See All by Shohei Yasutake
Erlang 事例紹介: メディアストリーム中継システム
amutake
0
480
Haskell の型クラスと Typeclassopedia の紹介 #w8lt
amutake
0
530
部屋のメトリクス可視化
amutake
0
760
Actario: A Framework for Reasoning About Actor Systems
amutake
0
780
🍣 #w8lt
amutake
2
530
代数的データ型について #w8lt
amutake
6
2.5k
Coq で証明付き Web アプリを作る #adf2015
amutake
2
920
FLL
amutake
1
1.4k
Other Decks in Programming
See All in Programming
More Approvers for Greater OSS and Japan Community
tkikuc
1
110
プロポーザル駆動学習 / Proposal-Driven Learning
mackey0225
1
280
🔨 小さなビルドシステムを作る
momeemt
3
640
兎に角、コードレビュー
mitohato14
0
170
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
370
AIコーディングAgentとの向き合い方
eycjur
0
250
Jakarta EE Core Profile and Helidon - Speed, Simplicity, and AI Integration
ivargrimstad
0
300
Rancher と Terraform
fufuhu
2
180
私の後悔をAWS DMSで解決した話
hiramax
4
180
複雑なドメインに挑む.pdf
yukisakai1225
5
910
Google I/O recap web編 大分Web祭り2025
kponda
0
2.9k
時間軸から考えるTerraformを使う理由と留意点
fufuhu
8
3.7k
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Music & Morning Musume
bryan
46
6.8k
4 Signs Your Business is Dying
shpigford
184
22k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
GitHub's CSS Performance
jonrohan
1032
460k
How to train your dragon (web standard)
notwaldorf
96
6.2k
A better future with KSS
kneath
239
17k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Navigating Team Friction
lara
189
15k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Transcript
Coqͷհ W8LT @amutake_s
Coq • ఆཧূ໌ࢧԉܥͷͻͱͭ • ֶతͳ໋ͷূ໌ɾϓϩάϥϜͷ࣋ͭੑ࣭ ͷূ໌ͳͲʹ͑Δ
ఆཧূ໌ࢧԉܥ • ਓ͕ؒূ໌Λॻ͘ͷΛखॿ͚ͯ͘͠ΕΔ • ݱࡏͷূ໌ͷঢ়ଶɺԿΛࣔ͞ͳ͚Ε͍͚ͳ͍ͷ͔ɺ ͳͲͳͲΛදࣔͯ͘͠ΕΔ • ͪΐͬͱ͚ͩࣗಈূ໌ • ਖ਼͍͠ূ໌͔Ͳ͏͔ΛνΣοΫͯ͘͠ΕΔ
• ࢴͷ্ͷূ໌ͩͱຊʹਖ਼͍͠ͷ͔Θ͔Βͳ͍͜ͱ ͋Δ
ఆཧূ໌ࢧԉܥͷॏཁੑ • ʮͦͷূ໌ຊʹਖ਼͍͠ͷʁʯʮͦͷϓϩάϥϜຊʹ όάͳ͍ͷʁʯ • ࠷ۙͰɺग़ͯ͘ΔఆཧΛࢴ্Ͱͳ͘ఆཧূ໌ࢧԉܥ Λͬͯܗࣜతʹূ໌͍ͯ͠Δจ͕૿͖͍͑ͯͯΔ • ఆཧূ໌ࢧԉܥͷ͕ࣝڭཆʹͳΔͱ͖͕དྷΔ͔ •
จ͡Όͳ͍͖ͯ͘ͳΓূ໌Λ͚͛ͭΒΕΔ͜ͱ ͕͋ΔΒ͍͠… https://twitter.com/xuwei_k/status/409797442284969984
ఆཧূ໌ࢧԉܥ (Coq) ͷ࣮ྫ • CompCert • CoqͰॻ͔ΕͨCίϯύΠϥɻ࠷దԽͷաఔͰϓϩάϥϜͷҙຯΛม͑ͳ͍͜ͱͷূ໌ͳ Ͳ • ࢛৭ఆཧ
• ༗໊ͳఆཧɻCoqʹΑΔূ໌Ҏલʹূ໌͕͋ͬͨɺෳࡶ͗ͯ͢ຊʹਖ਼͍͔͠Ͳ͏ ͔Θ͔Βͳ͔ͬͨ • Verdi • ࠷ۙಡΜͰ͍͢͝ͱࢥͬͨࢄγεςϜ༻ͷCoqͷϑϨʔϜϫʔΫ (PLDI2015) • Coq্Ͱॻ͍ͨোੑ͕ͳ͍ࢄγεςϜͷίʔυΛɺ͋Δোʹରͯ͠ੑ͕͋Δ ͷʹมͯ͘͠ΕΔ (มޙͷϓϩάϥϜ͕োੑΛ࣋ͭ͜ͱূ໌ࡁΈ)ɻ࣮ߦՄೳ
Coqͷ͍ํ (งғؾ͚ͩ) • ϥΠϒূ໌͠·͢
Ͳ͏ͯ͠ূ໌͕Ͱ͖Δͷʁ • ΧϦʔϋϫʔυಉܕରԠʹجͮ͘ • ໋Λද͢ܕͷΛ࡞Δ͜ͱ͕Ͱ͖ΕͦΕ͕ͦ ͷ໋ͷূ໌ʹͳΔ ཧ ϓϩάϥϜ ໋1 ܕ1
໋1ͷূ໌ ܕ1ͷ ໋1㱺2 1ˠ2 ؔͷܕ ໋1a2 1 2ͷܕ ໋1a2 1 2ͷੵܕ
ূ໌߲ • Print ͨ͠ΒͣΒͣΒ Ͱͯ͘Δ͕ͭূ໌ • λΫςΟΫͷΈ߹ ΘͤʹΑΓূ໌߲͕ ࡞ΒΕΔ •
proof term ͱ͔ evidence ͱ͔ݺ Ε·͢
·ͱΊ • ఆཧূ໌ࢧԉܥʹ͍ͭͯઆ໌͠·ͨ͠ • Coqͷ͍ํʹ͍ͭͯσϞΛߦ͍·ͨ͠ • Ͳ͏ͯ͠ূ໌ͳΜͯ͜ͱ͕Ͱ͖Δ͔ʹ͍ͭͯઆ໌͠·͠ ͨ • Coqʹ͍ͭͯͳΜͱͳ͘Θ͔ͬͯΒ͑ͨΒخ͍͠Ͱ͢