Suche senden
Hochladen
自動定理証明の紹介
•
16 gefällt mir
•
8,401 views
Masahiro Sakai
Folgen
2011-09-25 に行われた ProofSummit でのLTの発表資料。
Weniger lesen
Mehr lesen
Bildung
Melden
Teilen
Melden
Teilen
1 von 23
Jetzt herunterladen
Downloaden Sie, um offline zu lesen
Empfohlen
Rolling hash
Rolling hash
HCPC: 北海道大学競技プログラミングサークル
平面グラフと交通ネットワークのアルゴリズム
平面グラフと交通ネットワークのアルゴリズム
Takuya Akiba
定理証明支援系Coqについて
定理証明支援系Coqについて
Yoshihiro Mizoguchi
高速な倍精度指数関数expの実装
高速な倍精度指数関数expの実装
MITSUNARI Shigeo
指数時間アルゴリズム入門
指数時間アルゴリズム入門
Yoichi Iwata
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
Takuya Akiba
Marp Tutorial
Marp Tutorial
Rui Watanabe
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法
Takuya Akiba
Empfohlen
Rolling hash
Rolling hash
HCPC: 北海道大学競技プログラミングサークル
平面グラフと交通ネットワークのアルゴリズム
平面グラフと交通ネットワークのアルゴリズム
Takuya Akiba
定理証明支援系Coqについて
定理証明支援系Coqについて
Yoshihiro Mizoguchi
高速な倍精度指数関数expの実装
高速な倍精度指数関数expの実装
MITSUNARI Shigeo
指数時間アルゴリズム入門
指数時間アルゴリズム入門
Yoichi Iwata
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
プログラミングコンテストでのデータ構造 2 ~平衡二分探索木編~
Takuya Akiba
Marp Tutorial
Marp Tutorial
Rui Watanabe
プログラミングコンテストでの動的計画法
プログラミングコンテストでの動的計画法
Takuya Akiba
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
Masahiro Sakai
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
図と実装で理解する『木構造入門』
図と実装で理解する『木構造入門』
Proktmr
パターン認識と機械学習入門
パターン認識と機械学習入門
Momoko Hayamizu
ホモトピー型理論入門
ホモトピー型理論入門
k h
明日使えないすごいビット演算
明日使えないすごいビット演算
京大 マイコンクラブ
最小カットを使って「燃やす埋める問題」を解く
最小カットを使って「燃やす埋める問題」を解く
shindannin
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
Takuya Akiba
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造
Takuya Akiba
Rolling Hashを殺す話
Rolling Hashを殺す話
Nagisa Eto
ウェーブレット木の世界
ウェーブレット木の世界
Preferred Networks
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
Kazuhide Okamura
直交領域探索
直交領域探索
okuraofvegetable
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
Shota Imai
最適輸送の解き方
最適輸送の解き方
joisino
充足可能性問題のいろいろ
充足可能性問題のいろいろ
Hiroshi Yamashita
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
Ken'ichi Matsui
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
Takuya Akiba
Union find(素集合データ構造)
Union find(素集合データ構造)
AtCoder Inc.
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
Deep Learning JP
プログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とは
Yuto Takei
RClassify: Classifying Race Conditions in Web Applications via Deterministic ...
RClassify: Classifying Race Conditions in Web Applications via Deterministic ...
Masahiro Sakai
Weitere ähnliche Inhalte
Was ist angesagt?
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
Masahiro Sakai
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
図と実装で理解する『木構造入門』
図と実装で理解する『木構造入門』
Proktmr
パターン認識と機械学習入門
パターン認識と機械学習入門
Momoko Hayamizu
ホモトピー型理論入門
ホモトピー型理論入門
k h
明日使えないすごいビット演算
明日使えないすごいビット演算
京大 マイコンクラブ
最小カットを使って「燃やす埋める問題」を解く
最小カットを使って「燃やす埋める問題」を解く
shindannin
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
Takuya Akiba
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造
Takuya Akiba
Rolling Hashを殺す話
Rolling Hashを殺す話
Nagisa Eto
ウェーブレット木の世界
ウェーブレット木の世界
Preferred Networks
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
Kazuhide Okamura
直交領域探索
直交領域探索
okuraofvegetable
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
Shota Imai
最適輸送の解き方
最適輸送の解き方
joisino
充足可能性問題のいろいろ
充足可能性問題のいろいろ
Hiroshi Yamashita
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
Ken'ichi Matsui
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
Takuya Akiba
Union find(素集合データ構造)
Union find(素集合データ構造)
AtCoder Inc.
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
Deep Learning JP
Was ist angesagt?
(20)
SAT/SMTソルバの仕組み
SAT/SMTソルバの仕組み
プログラムを高速化する話
プログラムを高速化する話
図と実装で理解する『木構造入門』
図と実装で理解する『木構造入門』
パターン認識と機械学習入門
パターン認識と機械学習入門
ホモトピー型理論入門
ホモトピー型理論入門
明日使えないすごいビット演算
明日使えないすごいビット演算
最小カットを使って「燃やす埋める問題」を解く
最小カットを使って「燃やす埋める問題」を解く
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造 2 ~動的木編~
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造
Rolling Hashを殺す話
Rolling Hashを殺す話
ウェーブレット木の世界
ウェーブレット木の世界
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
直交領域探索
直交領域探索
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
強化学習の基礎と深層強化学習(東京大学 松尾研究室 深層強化学習サマースクール講義資料)
最適輸送の解き方
最適輸送の解き方
充足可能性問題のいろいろ
充足可能性問題のいろいろ
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
数学カフェ 確率・統計・機械学習回 「速習 確率・統計」
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
Union find(素集合データ構造)
Union find(素集合データ構造)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
【DL輪読会】SimCSE: Simple Contrastive Learning of Sentence Embeddings (EMNLP 2021)
Andere mochten auch
プログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とは
Yuto Takei
RClassify: Classifying Race Conditions in Web Applications via Deterministic ...
RClassify: Classifying Race Conditions in Web Applications via Deterministic ...
Masahiro Sakai
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Masahiro Sakai
自然言語をラムダ式で解釈する体系PTQのHaskell実装
自然言語をラムダ式で解釈する体系PTQのHaskell実装
Masahiro Sakai
ゼロピッチ: MOOC
ゼロピッチ: MOOC
Masahiro Sakai
SAT/SMT solving in Haskell
SAT/SMT solving in Haskell
Masahiro Sakai
Writing a SAT solver as a hobby project
Writing a SAT solver as a hobby project
Masahiro Sakai
ディープラーニングの産業応用とそれを支える技術
ディープラーニングの産業応用とそれを支える技術
Shohei Hido
機械学習モデルフォーマットの話:さようならPMML、こんにちはPFA
機械学習モデルフォーマットの話:さようならPMML、こんにちはPFA
Shohei Hido
Andere mochten auch
(9)
プログラマ目線で見た “The DAO事件” とは
プログラマ目線で見た “The DAO事件” とは
RClassify: Classifying Race Conditions in Web Applications via Deterministic ...
RClassify: Classifying Race Conditions in Web Applications via Deterministic ...
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
Run-time Code Generation and Modal-ML の紹介@PLDIr#2
自然言語をラムダ式で解釈する体系PTQのHaskell実装
自然言語をラムダ式で解釈する体系PTQのHaskell実装
ゼロピッチ: MOOC
ゼロピッチ: MOOC
SAT/SMT solving in Haskell
SAT/SMT solving in Haskell
Writing a SAT solver as a hobby project
Writing a SAT solver as a hobby project
ディープラーニングの産業応用とそれを支える技術
ディープラーニングの産業応用とそれを支える技術
機械学習モデルフォーマットの話:さようならPMML、こんにちはPFA
機械学習モデルフォーマットの話:さようならPMML、こんにちはPFA
Ähnlich wie 自動定理証明の紹介
NLPforml5
NLPforml5
Hidekazu Oiwa
JOIss2020 発表資料
JOIss2020 発表資料
mdkcpp 1015
純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門
Kimikazu Kato
圏論のモナドとHaskellのモナド
圏論のモナドとHaskellのモナド
Yoshihiro Mizoguchi
つくってあそぼ ラムダ計算インタプリタ
つくってあそぼ ラムダ計算インタプリタ
京大 マイコンクラブ
これからの「言語」の話をしよう ―― 未来を生きるためのツール
これからの「言語」の話をしよう ―― 未来を生きるためのツール
Nobuhisa Koizumi
Introduction to Categorical Programming
Introduction to Categorical Programming
Masahiro Sakai
第5章 拡張モデル(前半)
第5章 拡張モデル(前半)
Akito Nakano
Proof summit2014mizar
Proof summit2014mizar
Alcor80UMa
JSIAM_2019_9_4
JSIAM_2019_9_4
KoutaFunakoshi
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
Takeshi Arabiki
Introduction to Categorical Programming (Revised)
Introduction to Categorical Programming (Revised)
Masahiro Sakai
公開鍵暗号2: NP困難性
公開鍵暗号2: NP困難性
Joe Suzuki
topology of musical data
topology of musical data
Tatsuki SHIMIZU
第4回MachineLearningのための数学塾資料(浅川)
第4回MachineLearningのための数学塾資料(浅川)
Shin Asakawa
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
Hiromi Ishii
PRML 第14章
PRML 第14章
Akira Miyazawa
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysis
Tatsuki SHIMIZU
マルコフモデル,隠れマルコフモデルとコネクショニスト時系列分類法
マルコフモデル,隠れマルコフモデルとコネクショニスト時系列分類法
Shuhei Sowa
何もないところから数を作る
何もないところから数を作る
Taketo Sano
Ähnlich wie 自動定理証明の紹介
(20)
NLPforml5
NLPforml5
JOIss2020 発表資料
JOIss2020 発表資料
純粋関数型アルゴリズム入門
純粋関数型アルゴリズム入門
圏論のモナドとHaskellのモナド
圏論のモナドとHaskellのモナド
つくってあそぼ ラムダ計算インタプリタ
つくってあそぼ ラムダ計算インタプリタ
これからの「言語」の話をしよう ―― 未来を生きるためのツール
これからの「言語」の話をしよう ―― 未来を生きるためのツール
Introduction to Categorical Programming
Introduction to Categorical Programming
第5章 拡張モデル(前半)
第5章 拡張モデル(前半)
Proof summit2014mizar
Proof summit2014mizar
JSIAM_2019_9_4
JSIAM_2019_9_4
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
文字列カーネルによる辞書なしツイート分類 〜文字列カーネル入門〜
Introduction to Categorical Programming (Revised)
Introduction to Categorical Programming (Revised)
公開鍵暗号2: NP困難性
公開鍵暗号2: NP困難性
topology of musical data
topology of musical data
第4回MachineLearningのための数学塾資料(浅川)
第4回MachineLearningのための数学塾資料(浅川)
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
How wonderful to be (statically) typed 〜型が付くってスバラシイ〜
PRML 第14章
PRML 第14章
introductino to persistent homology and topological data analysis
introductino to persistent homology and topological data analysis
マルコフモデル,隠れマルコフモデルとコネクショニスト時系列分類法
マルコフモデル,隠れマルコフモデルとコネクショニスト時系列分類法
何もないところから数を作る
何もないところから数を作る
Mehr von Masahiro Sakai
DeepXplore: Automated Whitebox Testing of Deep Learning
DeepXplore: Automated Whitebox Testing of Deep Learning
Masahiro Sakai
Towards formal verification of neural networks
Towards formal verification of neural networks
Masahiro Sakai
関数プログラマから見たPythonと機械学習
関数プログラマから見たPythonと機械学習
Masahiro Sakai
Introduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT Evaluation
Masahiro Sakai
Aluminum: Principled Scenario Exploration through Minimality
Aluminum: Principled Scenario Exploration through Minimality
Masahiro Sakai
代数的実数とCADの実装紹介
代数的実数とCADの実装紹介
Masahiro Sakai
How a CDCL SAT solver works
How a CDCL SAT solver works
Masahiro Sakai
Omega test and beyond
Omega test and beyond
Masahiro Sakai
萩野服部研究室 スキー合宿 2012 自己紹介(酒井)
萩野服部研究室 スキー合宿 2012 自己紹介(酒井)
Masahiro Sakai
“Adoption and Focus: Practical Linear Types for Imperative Programming”他の紹介@P...
“Adoption and Focus: Practical Linear Types for Imperative Programming”他の紹介@P...
Masahiro Sakai
“Design and Implementation of Generics for the .NET Common Language Runtime”他...
“Design and Implementation of Generics for the .NET Common Language Runtime”他...
Masahiro Sakai
Relaxed Dependency Analysis
Relaxed Dependency Analysis
Masahiro Sakai
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
Masahiro Sakai
Whole Program Paths 等の紹介@PLDIr#3
Whole Program Paths 等の紹介@PLDIr#3
Masahiro Sakai
融合変換による最適化の理論的基盤と正当性 (2006-06-27)
融合変換による最適化の理論的基盤と正当性 (2006-06-27)
Masahiro Sakai
融合変換による最適化の理論的基盤と正当性 (2006-06-20)
融合変換による最適化の理論的基盤と正当性 (2006-06-20)
Masahiro Sakai
Ruby-GNOME2におけるGC問題
Ruby-GNOME2におけるGC問題
Masahiro Sakai
LLW2004 その場でどう書く - Haskell
LLW2004 その場でどう書く - Haskell
Masahiro Sakai
非正格関数に対して適用可能な融合変換
非正格関数に対して適用可能な融合変換
Masahiro Sakai
Haskell - LLRing2006 Language Update
Haskell - LLRing2006 Language Update
Masahiro Sakai
Mehr von Masahiro Sakai
(20)
DeepXplore: Automated Whitebox Testing of Deep Learning
DeepXplore: Automated Whitebox Testing of Deep Learning
Towards formal verification of neural networks
Towards formal verification of neural networks
関数プログラマから見たPythonと機械学習
関数プログラマから見たPythonと機械学習
Introduction to Max-SAT and Max-SAT Evaluation
Introduction to Max-SAT and Max-SAT Evaluation
Aluminum: Principled Scenario Exploration through Minimality
Aluminum: Principled Scenario Exploration through Minimality
代数的実数とCADの実装紹介
代数的実数とCADの実装紹介
How a CDCL SAT solver works
How a CDCL SAT solver works
Omega test and beyond
Omega test and beyond
萩野服部研究室 スキー合宿 2012 自己紹介(酒井)
萩野服部研究室 スキー合宿 2012 自己紹介(酒井)
“Adoption and Focus: Practical Linear Types for Imperative Programming”他の紹介@P...
“Adoption and Focus: Practical Linear Types for Imperative Programming”他の紹介@P...
“Design and Implementation of Generics for the .NET Common Language Runtime”他...
“Design and Implementation of Generics for the .NET Common Language Runtime”他...
Relaxed Dependency Analysis
Relaxed Dependency Analysis
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
“Symbolic bounds analysis of pointers, array indices, and accessed memory reg...
Whole Program Paths 等の紹介@PLDIr#3
Whole Program Paths 等の紹介@PLDIr#3
融合変換による最適化の理論的基盤と正当性 (2006-06-27)
融合変換による最適化の理論的基盤と正当性 (2006-06-27)
融合変換による最適化の理論的基盤と正当性 (2006-06-20)
融合変換による最適化の理論的基盤と正当性 (2006-06-20)
Ruby-GNOME2におけるGC問題
Ruby-GNOME2におけるGC問題
LLW2004 その場でどう書く - Haskell
LLW2004 その場でどう書く - Haskell
非正格関数に対して適用可能な融合変換
非正格関数に対して適用可能な融合変換
Haskell - LLRing2006 Language Update
Haskell - LLRing2006 Language Update
Kürzlich hochgeladen
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ssusere0a682
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
Tokyo Institute of Technology
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
Takayuki Itoh
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
koheioishi1
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ssusere0a682
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
yuitoakatsukijp
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
YukiTerazawa
Kürzlich hochgeladen
(7)
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
生成AIの回答内容の修正を課題としたレポートについて:お茶の水女子大学「授業・研究における生成系AIの活用事例」での講演資料
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習106 -価格の交渉ゲーム-#ゲーム理論 #gametheory #数学
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
自動定理証明の紹介
1.
⾃動定理証明の紹介 〜Proof Summit〜 2011-09-25
酒井 政裕
2.
⾃⼰紹介
酒井 政裕 • Blog: ヒビルテ • Twitter: @masahiro_sakai • Haskeller • Agda: Agda1のころ遊んでた • Coq: 最近⼊⾨ • 最近、Alloyの本を翻訳
3.
Alloy本 『抽象によるソフトウェア設計 Alloyではじめる形式⼿法』 • オーム社より
好評発売中!
4.
このLTの趣旨 CoqとかAgda の話ばかりで ツマラン ので、息抜きにちょっとは違う話を
5.
話したかったこと • ⾃動定理証明 –Automated
Theorem Proving • モデル発⾒ • ⾊々な Decision procedure • SAT/SMT
6.
CoqやAgdaへのイチャモン • ⾃分が考えた証明を形式化し、
正しさを確認したり、 リファクタリングしたりには便利 • だけど、何かを証明したいときに、 本当に⽀援になるのか?
7.
CoqやAgdaへのイチャモン
そもそも 機械に分からせるために、 細部まで証明を書くなど 機械の奴隷 では?
8.
対話的定理証明
vs ⾃動定理証明 対話的定理証明 ⾃動定理証明 ツール Coq, Agda, … E, SPASS, Otter, … ⾃動化 ⼈間が証明を書 ツールが証明を き、それをツー 探索。⼈間はそ ルが検査。 れをガイド 古典論理? 直観主義論理 古典論理 ⾼階/⼀階 ⾼階 ⼀階
9.
多分この辺り Comparing mathematical provers (by
Freek Wiedijk, 2003) より
10.
•数学的な表現⼒は弱い •が、その分⾃動化され ている!
11.
⾃動定理証明器 • Otter
– ⾃動定理証明器が有名になるきっかけになった 証明器 • SPASS – 様相論理などもサポート • E – The E Equational Theorem Prover (eprover) • 他にも沢⼭ – Prover9, Vampire, Waldmeister, …
12.
簡単な例: ソクラテスは死ぬ
(SPASS) begin_problem(Sokrates1). 公理 list_of_formulae(axioms). list_of_descriptions. ヘッダ formula(Human(sokrates)). name({*Sokrates*}). formula(forall([x],implies(Human(x),M author({*Christoph Weidenbach*}). ortal(x)))). status(unsatisfiable). end_of_list. description({* Sokrates is mortal and since all humans are mortal, he is 証明したいゴール mortal too. *}). list_of_formulae(conjectures). end_of_list. formula(Mortal(sokrates)). end_of_list. list_of_symbols. functions[(sokrates,0)]. end_problem. predicates[(Human,1),(Mortal,1)]. end_of_list. 関数・述語とアリティの宣⾔
13.
簡単な例: ソクラテスは死ぬ
(SPASS) % SPASS -DocProof Socrate.dfg (中略) Here is a proof with depth 1, length 5 : 1[0:Inp] || -> Human(sokrates)*. 2[0:Inp] || Mortal(sokrates)* -> . 3[0:Inp] Human(U) || -> Mortal(U)*. 4[0:Res:3.1,2.0] Human(sokrates) || -> . 5[0:MRR:4.0,1.0] || -> . Formulae used in the proof : axiom0 conjecture0 axiom1
14.
簡単な例: ソクラテスは死ぬ
(SPASS) Human(U) || -> Mortal(U)*. || Mortal(sokrates)* -> 公理2 ゴールの否定 Res Human(sokrates) || -> || -> Human(sokrates)* 公理1 MRR || -> ⽭盾
15.
表現⼒の弱さ • 有限個の公理のみ &
⼀階 • たとえば、数学的帰納法は公理化不能: P(n) ∧ (∀n. P(n)→P(s(n))) → ∀n. P(n) • 各述語Pに対して公理がひとつ必要 • ⾼階なら ∀P : N→Prop. 〜 として、 単⼀の公理で公理化できる
16.
例: ⾃然数の加算の結合性
(E / TPTP) fof( plus_z, axiom, ![X] : plus(X,z)=X ). fof( plus_s, axiom, ![X,Y] : plus(X,s(Y))=s(plus(X,Y)) ). fof( plusAssocP_def, axiom, ![X,Y,Z] : ( !は∀ plusAssocP(X,Y,Z) <=> (plus(plus(X,Y),Z)=plus(X,plus(Y,Z))) 帰納法の ) ). インスタンスを fof( plusAssocP_ind, axiom, ![X,Y] : ( (plusAssocP(X,Y,z) & 明⽰的に公理に (![Z] : plusAssocP(X,Y,Z) => plusAssocP(X,Y,s(Z)))) => ![Z] : plusAssocP(X,Y,Z) ) ). fof( plus_assoc, conjecture, ![X,Y,Z] : plus(plus(X,Y),Z) = plus(X,plus(Y,Z)) ). eprover -l 2 --tptp3-format nat1.tptp
17.
TPTP • Thousands of
Problems for Theorem Provers – http://www.cs.miami.edu/~tptp/ • ATP向けの諸々を提供 – 問題セット – ⼊⼒ファイルフォーマット – 各種ユーティリティ • 証明を⾒やすく表⽰したり、他のツール⽤に変換したり といったツールもあった気がするが、忘れた • SATLIB, SMTLIB, MIPLIB等のATP版
18.
応⽤: プログラム検証Jahob
19.
チャレンジ
Seven Trees 問題 • 関数記号: +, ×, T • 公理: 半環の公理 + {T = 1 + T2} • ゴール: T = T7 • あなたの使っている定理証明系は、 こういうのを解くのを⽀援してくれる?
20.
⾃動定理証明器に
解かせてみた (1) fof( coprod_comm, axiom, ![X,Y] : coprod(X,Y) = coprod(Y,X) ). fof( coprod_assoc, axiom, ![X,Y,Z] : coprod(X,coprod(Y,Z)) = coprod(coprod(X,Y),Z) ). fof( prod_comm, axiom, ![X,Y] : prod(X,Y) = prod(Y,X) ). 爆発 fof( prod_assoc, axiom, ![X,Y,Z] : prod(X,prod(Y,Z)) = prod(prod(X,Y),Z) ). fof( dist, axiom, ![X,Y,Z] : prod(X,coprod(Y,Z)) = coprod(prod(X,Y),prod(X,Z)) ). fof( prod_unit, axiom, ![X] : prod(one, X) = X ). fof( t, axiom, t = coprod(one, prod(t, t)) ). fof( seven_trees, conjecture, t = prod(t,prod(t,prod(t,prod(t,prod(t,prod(t,t)))))) ).
21.
⾃動定理証明器に
解かせてみた (2) fof( comm, axiom, ![X,Y] : coprod(X,Y) = coprod(Y,X) ). fof( assoc, axiom, ![X,Y,Z] : coprod(X,coprod(Y,Z)) = coprod(coprod(X,Y),Z) ). fof( t1, axiom, t1 = coprod(t0, t2) ). fof( t2, axiom, t2 = coprod(t1, t3) ). 解けた fof( t3, axiom, t3 = coprod(t2, t4) ). fof( t4, axiom, t4 = coprod(t3, t5) ). fof( t5, axiom, t5 = coprod(t4, t6) ). fof( t6, axiom, t6 = coprod(t5, t7) ). fof( t7, axiom, t7 = coprod(t6, t8) ). fof( t8, axiom, t8 = coprod(t7, t9) ). fof( seven_trees, conjecture, t1 = t7 ).
22.
チャレンジ:
Otterが有名になった例 • Two inverter problem – 3⼊⼒3出⼒の組み合わせ回路で、各出⼒が対応す る⼊⼒の否定になっているものを作れ – ただし、andとorは何個使ってもよいが、notは2 個しか使えない • OtterはPrologのメタ述語のような機能を 持っていて、それを利⽤して解いた – (今の⼀般的な定理証明系では使えない) • あなたの使っている定理証明系は、 こういうのを解くのを⽀援してくれる?
23.
CASC •
The CADE ATP System Competition – http://www.cs.miami.edu/~tptp/CASC/ – CADE(the Conference on Automated Deduction)で毎年やってるコンペ • CASC-23 (2011) の勝者: THF: Satallax 2.1 CNF: E 1.4pre TFA: SPASS+T 2.2.14 EPR: iProver 0.9 FOF: Vampire 0.6 UEQ: Waldmeister 710 FNT: Paradox 3.0 LTB: Vampire-LTB 1.8
Jetzt herunterladen