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
470
Haskell の型クラスと Typeclassopedia の紹介 #w8lt
amutake
0
530
部屋のメトリクス可視化
amutake
0
750
Actario: A Framework for Reasoning About Actor Systems
amutake
0
770
🍣 #w8lt
amutake
2
530
代数的データ型について #w8lt
amutake
6
2.4k
Coq で証明付き Web アプリを作る #adf2015
amutake
2
910
FLL
amutake
1
1.4k
Other Decks in Programming
See All in Programming
脱Riverpod?fqueryで考える、TanStack Queryライクなアーキテクチャの可能性
ostk0069
0
340
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
220
PHPでWebSocketサーバーを実装しよう2025
kubotak
0
310
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
140
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
140
型で語るカタ
irof
0
530
Result型で“失敗”を型にするPHPコードの書き方
kajitack
5
980
MCPを使ってイベントソーシングのAIコーディングを効率化する / Streamlining Event Sourcing AI Coding with MCP
tomohisa
0
160
すべてのコンテキストを、 ユーザー価値に変える
applism118
4
1.4k
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
970
効率的な開発手段として VRTを活用する
ishkawa
0
150
顧客の画像データをテラバイト単位で配信する 画像サーバを WebP にした際に起こった課題と その対応策 ~継続的な取り組みを添えて~
takutakahashi
1
310
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
[RailsConf 2023] Rails as a piece of cake
palkan
55
5.7k
GraphQLとの向き合い方2022年版
quramy
49
14k
The World Runs on Bad Software
bkeepers
PRO
69
11k
A Modern Web Designer's Workflow
chriscoyier
695
190k
Done Done
chrislema
184
16k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
YesSQL, Process and Tooling at Scale
rocio
173
14k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Facilitating Awesome Meetings
lara
54
6.5k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
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ʹ͍ͭͯͳΜͱͳ͘Θ͔ͬͯΒ͑ͨΒخ͍͠Ͱ͢