SlideShare a Scribd company logo
OTTER
(Organized Techniques
for Theorem-proving and Effective Research)
Heuristics computing
2017/12/03 9:25 – 11:00
Keio University, SFC
■Organized Techniques for Theorem-proving and Effective
Research
■Otter is designed to prove theorems stated in first-order
logic with equality
OTTER
Install
# apt-get install otter
# wget http://www.mcs.anl.gov/research/projects/AR/otter/dist33/otter-3.3f.tar.gz
# tar zxvf otter-3.3f.tar.gz; cd otter-3.3f; ./configure; make; make install
Argonne National Laboratory the largest national laboratory by size and
scope in the Midwest. Argonne was initially formed to carry out Enrico
Fermi's work on nuclear reactors as part of the Manhattan Project.
Larry Wos is a mathematician, a researcher in the Mathematics and
Computer Science Division of Argonne National Laboratories.
Prolog(1972)
C(1973)
LISP(1953)
1950 200019801970 1990 2010
JAVA(1995)
Ocaml(04)
ML(1973)
Type Inference
Isabelle(1986)
OTTER(96)
Haskell(1986)
gcc(1985)
Google
MapReduce(04)
scala(03)
Coq(1984)
Proverif(2003)
Python(199
1)
SQL86(86)
Shift-Reduce
Imperative
Proof Assistant
Higher order
Automated
reasoning
lamda
Unification
Compiler
Database
Mainframe Object orientedProgramming Data mining BigData(AI2)Algorithm(A1)
PopField(1982)
Boltzman
Machine(85)
BackProp(19
86)
SOM(81) SVM(91)
Deep
Learning(2012)
B: Imperative
Thermodynamics
(熱力学)
Proof Assistant Kernel
Autoencoder
Boosting(04)
2015
Graph
Computation
Pig(09)
pthread
Redis(09)
multicore
Proof Assistant
with heuristics
SledgeHummer
(03)
GPU
A: declarative
C: reasoning
D: heuristics
Deep learning
λ calculus
turing machine
π calculus
optimization
resolution
propagation
recursion
OTTER and Four computing paradigms
World war II
Natural dedution
Puzzles and programs
Truth tellers and liars
Tower of Hanoi
Two inverter puzzle
Ferrying problem15 puzzle
N-coins balance puzzle
#apt-get install otter git
#git clone https://github.com/RuoAndo/otter-book
Self-replicating
robots
Tarski parallel
axiom
Strategies
Restriction Strategies
Set of Support
Weighting
Direction Strategies
Ratio
Resonance
Look-ahead Strategies
Hot List
Redundancy control
Subsumption
DemodulationParamodulation
Dynamic Hot List
Subtautology
Resonance restriction
Level SaturationRecursive Tail
Hints
First-in Last-out
Proof checking filter
http://www.mcs.anl.gov/research/projects/AR/strategies.html
Set of Support
Imperative
Declarative
Automated reasoning
Loop
Lambda / Monad
Primitive recursive function ?
State Machine
Recursion
TAPE
CLOCK
ATOM
LIST
RECURSION
HEAT
RESOANCE
Leibniz
Spinoza
?
Example 1: Truth tellers and liars
http://jinavie.tumblr.com/post/38901128124/truth-and-lies#.WiOmGEpl91s
On the fabled Island of Knights and Knaves, we
meet two people, A and B, one of whom is a knight
and one a knave. The knight always tells the truth,
the knave always lies.
A says: "C is a knave."
B says: "A is a knight."
Who is the knight, who the knave, and who the spy?
%assign(max_proofs,-1).
set(hyper_res).
set(print_lists_at_end).
assign(stats_level,0).
list(usable).
-P(T(x)) | -P(Says(x,y)) | P(y).
-P(L(x)) | -P(Says(x,y)) | -P(y).
P(T(x)) | P(L(x)).
-P(T(x)) | -P(L(x)).
end_of_list.
list(sos).
P(Says(A, L(A))).
end_of_list.
https://github.com/RuoAndo/otter-book/tree/master/takefuji-lab/2017
configuration rule fact
Usable Set+
+
++
+
-
-
lightest
+
-
EMPTY
Usable Set
SoS Set
SoS Set
--
prg2-4.out.lined
-----> EMPTY CLAUSE at 0.00 sec
--> 8 [hyper,7,4,6] $F.
Size of Usable set (nonliear)
Main Loop
A
B
C
C ⊃ B
B ⊃ A
There exists
A[i] where
B∪¬A → Ф
(empty)
A’
Clause Sets and representation
SoS
(Set of Support)
Demodulators
Usable
Passive
Term
Rewriting
Resolution
and paramodulation
conflict
a b
a b c
a b
c
IF A THEN B : -A | B
IF A & B THEN B : -A | -B | C
IF A THEN B or C : -A | B | C
Example 2: Truth tellers, liars and spy
On the fabled Island of Knights and Knaves, we meet three people, A, B, and C, one of whom
is a knight, one a knave, and one a spy. The knight always tells the truth, the knave always
lies, and the spy can either lie or tell the truth.
A says: "C is a knave."
B says: "A is a knight."
C says: "I am the spy."
Who is the knight, who the knave,
and who the spy?
set(hyper_res).
list(usable).
-P(T(x)) | -P(Says(x,y)) | P(y).
-P(L(x)) | -P(Says(x,y)) | -P(y).
P(T(x)) | P(L(x)) | P(N(x)).
-P(T(x)) | -P(L(x)).
-P(T(x)) | -P(N(x)).
-P(L(x)) | -P(N(x)).
-P(T(x)) | P(L(x)) | P(N(x)).
-P(L(x)) | P(T(x)) | P(N(x)).
end_of_list.
list(sos).
P(Says(A,L(C))).
P(Says(B,T(A))).
P(Says(C,N(C))).
end_of_list.
Always true (恒
真)
Always false(恒
偽)
Satisfiable(証明可能) Unsatisfiable(証明不可
能)
私は正直者だと言っているスパイ
私は嘘つきだと言っているスパイ
https://github.com/RuoAndo/otter-book/tree/master/takefuji-lab/2017
Generalization: consistency is non-deterministic
(∃y) (x) ~ Dem (x, y) ⊃ (x) ~ Dem(x, sub(n, A, n))
Dem(x,y) : yの言っていることをxが確かめる。
Island is consistent if there are only truth tellers and liars.
島に正直者と嘘つきしかいない場合、確かめる事のできない言明がある。
その言明とは、「私は嘘好きである」というものである。
(∃y) (x) ~ Dem (x, y)
Dem(x, sub(n,A,n)): 自分について言っていること(sub(n,A,n)をxが確かめることができる。
If the island is consistent, no one in the island know if there are some spy.
「私は嘘つきである」という言明を確かめることができない場合、誰も島にスパイがいることを発見できない。
しかし、OTTERは発見できる。
15 puzzle
set(para_into).
list(usable).
EQUAL(l(hole,l(n(x),y)),l(n(x),l(hole,y))).
EQUAL(l(hole,l(x,l(y,l(z,l(u,l(n(w),v)))))),l(n(w), l(x,l(y,l(z,l(u,l(hole,v))))))).
-STATE(l(n(1),l(n(2),l(n(3),l(n(4),l(end,l(n(5), l(n(6),l(n(7),l(n(8),l(end,l(n(9),l(n(10),l(n(11),
l(n(12),l(end,l(n(13),l(n(14),l(n(15), l(hole,end)))))))))))))))))))).
end_of_list.
list(sos).
STATE(l(n(1),l(n(6),l(n(2),l(n(4),l(end,l(n(5), l(hole,l(n(3),l(n(8),l(end,l(n(9),l(n(10),l(n(7),
l(n(11),l(end,l(n(13),l(n(14),l(n(15), l(n(12),end)))))))))))))))))))).
end_of_list.
Complexity of 15 puzzle
1 6 2 4
5 3 8
9 10 7 11
13 14 15 12
Prg4-8.in : SCORE 437
1 6 2 4
5 3 8
9 10 7 11
13 14 15 12
Prg4-8-7.in : SCORE 891
11 2 6 9
4 14 3 5
1 12 7 15
13 10 6
Prg4-8-2.in : SCORE ????
https://github.com/RuoAndo/otter-book/tree/master/15puzzle
# cd otter-book
# git pull
Paramodulation Usable List: list(usable)
SoS List: list(list)
Paramodulation
1 |set(para_into).
2 |assign(stats_level,1).
3 |
4 |list(usable).
5 | father(ken)=jim.
6 | mother(jim)=fay.
7 |end_of_list.
8 |
9 |list(sos).
10 | Grandmother(mother(father(x)),x).
11 |end_of_list.
Grandmother
Fay
Jim
Ken
Jim
father
mother
SoS List:
list(list)
Usable List:
list(usable)

More Related Content

What's hot

C3 test
C3 testC3 test
C3 test
toni dimella
 
Lecture5
Lecture5Lecture5
Lecture5
Muhammad Zubair
 
確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward
Yuta Kashino
 
Pycon2017
Pycon2017Pycon2017
Pycon2017
Yuta Kashino
 
Stack linked list
Stack linked listStack linked list
Stack linked list
bhargav0077
 
Imagining the future of real time kr tconf 2011
Imagining the future of real time   kr tconf 2011Imagining the future of real time   kr tconf 2011
Imagining the future of real time kr tconf 2011
Jack Moffitt
 
150970116028 2140705
150970116028 2140705150970116028 2140705
150970116028 2140705
Manoj Shahu
 
MEngine Overview
MEngine OverviewMEngine Overview
MEngine Overview
euming
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計
Yuta Kashino
 
An adaptive algorithm for detection of duplicate records
An adaptive algorithm for detection of duplicate recordsAn adaptive algorithm for detection of duplicate records
An adaptive algorithm for detection of duplicate records
Likan Patra
 
Stacks and queues
Stacks and queuesStacks and queues
Stacks and queues
Trupti Agrawal
 
OCamlOScope: a New OCaml API Search
OCamlOScope: a New OCaml API SearchOCamlOScope: a New OCaml API Search
OCamlOScope: a New OCaml API Search
Jun Furuse
 

What's hot (12)

C3 test
C3 testC3 test
C3 test
 
Lecture5
Lecture5Lecture5
Lecture5
 
確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward確率的プログラミングライブラリEdward
確率的プログラミングライブラリEdward
 
Pycon2017
Pycon2017Pycon2017
Pycon2017
 
Stack linked list
Stack linked listStack linked list
Stack linked list
 
Imagining the future of real time kr tconf 2011
Imagining the future of real time   kr tconf 2011Imagining the future of real time   kr tconf 2011
Imagining the future of real time kr tconf 2011
 
150970116028 2140705
150970116028 2140705150970116028 2140705
150970116028 2140705
 
MEngine Overview
MEngine OverviewMEngine Overview
MEngine Overview
 
深層学習とベイズ統計
深層学習とベイズ統計深層学習とベイズ統計
深層学習とベイズ統計
 
An adaptive algorithm for detection of duplicate records
An adaptive algorithm for detection of duplicate recordsAn adaptive algorithm for detection of duplicate records
An adaptive algorithm for detection of duplicate records
 
Stacks and queues
Stacks and queuesStacks and queues
Stacks and queues
 
OCamlOScope: a New OCaml API Search
OCamlOScope: a New OCaml API SearchOCamlOScope: a New OCaml API Search
OCamlOScope: a New OCaml API Search
 

Similar to OTTER 2017-12-03

Otter 2016-11-28-01-ss
Otter 2016-11-28-01-ssOtter 2016-11-28-01-ss
Otter 2016-11-28-01-ss
Ruo Ando
 
Otter 2014-12-22-01-slideshare
Otter 2014-12-22-01-slideshareOtter 2014-12-22-01-slideshare
Otter 2014-12-22-01-slideshare
Ruo Ando
 
Scala as a Declarative Language
Scala as a Declarative LanguageScala as a Declarative Language
Scala as a Declarative Language
vsssuresh
 
Otter 2017-12-18-01-ss
Otter 2017-12-18-01-ssOtter 2017-12-18-01-ss
Otter 2017-12-18-01-ss
Ruo Ando
 
Reading Seminar (140515) Spectral Learning of L-PCFGs
Reading Seminar (140515) Spectral Learning of L-PCFGsReading Seminar (140515) Spectral Learning of L-PCFGs
Reading Seminar (140515) Spectral Learning of L-PCFGs
Keisuke OTAKI
 
Otter 2014-12-01-01-slideshare-2
Otter 2014-12-01-01-slideshare-2Otter 2014-12-01-01-slideshare-2
Otter 2014-12-01-01-slideshare-2
Ruo Ando
 
FUZZY LOGIC
FUZZY LOGICFUZZY LOGIC
FUZZY LOGIC
Sri vidhya k
 
Finding similar items in high dimensional spaces locality sensitive hashing
Finding similar items in high dimensional spaces  locality sensitive hashingFinding similar items in high dimensional spaces  locality sensitive hashing
Finding similar items in high dimensional spaces locality sensitive hashing
Dmitriy Selivanov
 
Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...
Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...
Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...
Mail.ru Group
 
Alastair Butler - 2015 - Round trips with meaning stopovers
Alastair Butler - 2015 - Round trips with meaning stopoversAlastair Butler - 2015 - Round trips with meaning stopovers
Alastair Butler - 2015 - Round trips with meaning stopovers
Association for Computational Linguistics
 
Q
QQ
Classification
ClassificationClassification
Classification
Arthur Charpentier
 
SPIE Conference V3.0
SPIE Conference V3.0SPIE Conference V3.0
SPIE Conference V3.0
Robert Fry
 
Class 28: Entropy
Class 28: EntropyClass 28: Entropy
Class 28: Entropy
David Evans
 
TENSOR DECOMPOSITION WITH PYTHON
TENSOR DECOMPOSITION WITH PYTHONTENSOR DECOMPOSITION WITH PYTHON
TENSOR DECOMPOSITION WITH PYTHON
André Panisson
 
Tutorial_2.pdf
Tutorial_2.pdfTutorial_2.pdf
Tutorial_2.pdf
mayooran1987v
 
Real Time Big Data Management
Real Time Big Data ManagementReal Time Big Data Management
Real Time Big Data Management
Albert Bifet
 
Data exploration and graphics with R
Data exploration and graphics with RData exploration and graphics with R
Data exploration and graphics with R
Alberto Labarga
 
PTSP PPT.pdf
PTSP PPT.pdfPTSP PPT.pdf
PTSP PPT.pdf
goutamkrsahoo
 
Exploring temporal graph data with Python: 
a study on tensor decomposition o...
Exploring temporal graph data with Python: 
a study on tensor decomposition o...Exploring temporal graph data with Python: 
a study on tensor decomposition o...
Exploring temporal graph data with Python: 
a study on tensor decomposition o...
André Panisson
 

Similar to OTTER 2017-12-03 (20)

Otter 2016-11-28-01-ss
Otter 2016-11-28-01-ssOtter 2016-11-28-01-ss
Otter 2016-11-28-01-ss
 
Otter 2014-12-22-01-slideshare
Otter 2014-12-22-01-slideshareOtter 2014-12-22-01-slideshare
Otter 2014-12-22-01-slideshare
 
Scala as a Declarative Language
Scala as a Declarative LanguageScala as a Declarative Language
Scala as a Declarative Language
 
Otter 2017-12-18-01-ss
Otter 2017-12-18-01-ssOtter 2017-12-18-01-ss
Otter 2017-12-18-01-ss
 
Reading Seminar (140515) Spectral Learning of L-PCFGs
Reading Seminar (140515) Spectral Learning of L-PCFGsReading Seminar (140515) Spectral Learning of L-PCFGs
Reading Seminar (140515) Spectral Learning of L-PCFGs
 
Otter 2014-12-01-01-slideshare-2
Otter 2014-12-01-01-slideshare-2Otter 2014-12-01-01-slideshare-2
Otter 2014-12-01-01-slideshare-2
 
FUZZY LOGIC
FUZZY LOGICFUZZY LOGIC
FUZZY LOGIC
 
Finding similar items in high dimensional spaces locality sensitive hashing
Finding similar items in high dimensional spaces  locality sensitive hashingFinding similar items in high dimensional spaces  locality sensitive hashing
Finding similar items in high dimensional spaces locality sensitive hashing
 
Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...
Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...
Дмитрий Селиванов, OK.RU. Finding Similar Items in high-dimensional spaces: L...
 
Alastair Butler - 2015 - Round trips with meaning stopovers
Alastair Butler - 2015 - Round trips with meaning stopoversAlastair Butler - 2015 - Round trips with meaning stopovers
Alastair Butler - 2015 - Round trips with meaning stopovers
 
Q
QQ
Q
 
Classification
ClassificationClassification
Classification
 
SPIE Conference V3.0
SPIE Conference V3.0SPIE Conference V3.0
SPIE Conference V3.0
 
Class 28: Entropy
Class 28: EntropyClass 28: Entropy
Class 28: Entropy
 
TENSOR DECOMPOSITION WITH PYTHON
TENSOR DECOMPOSITION WITH PYTHONTENSOR DECOMPOSITION WITH PYTHON
TENSOR DECOMPOSITION WITH PYTHON
 
Tutorial_2.pdf
Tutorial_2.pdfTutorial_2.pdf
Tutorial_2.pdf
 
Real Time Big Data Management
Real Time Big Data ManagementReal Time Big Data Management
Real Time Big Data Management
 
Data exploration and graphics with R
Data exploration and graphics with RData exploration and graphics with R
Data exploration and graphics with R
 
PTSP PPT.pdf
PTSP PPT.pdfPTSP PPT.pdf
PTSP PPT.pdf
 
Exploring temporal graph data with Python: 
a study on tensor decomposition o...
Exploring temporal graph data with Python: 
a study on tensor decomposition o...Exploring temporal graph data with Python: 
a study on tensor decomposition o...
Exploring temporal graph data with Python: 
a study on tensor decomposition o...
 

More from Ruo Ando

KISTI-NII Joint Security Workshop 2023.pdf
KISTI-NII Joint Security Workshop 2023.pdfKISTI-NII Joint Security Workshop 2023.pdf
KISTI-NII Joint Security Workshop 2023.pdf
Ruo Ando
 
Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤
Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤
Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤
Ruo Ando
 
解説#86 決定木 - ss.pdf
解説#86 決定木 - ss.pdf解説#86 決定木 - ss.pdf
解説#86 決定木 - ss.pdf
Ruo Ando
 
SaaSアカデミー for バックオフィス アイドルと学ぶDX講座 ~アイドル戦略に見るDXを専門家が徹底解説~
SaaSアカデミー for バックオフィス アイドルと学ぶDX講座  ~アイドル戦略に見るDXを専門家が徹底解説~SaaSアカデミー for バックオフィス アイドルと学ぶDX講座  ~アイドル戦略に見るDXを専門家が徹底解説~
SaaSアカデミー for バックオフィス アイドルと学ぶDX講座 ~アイドル戦略に見るDXを専門家が徹底解説~
Ruo Ando
 
解説#83 情報エントロピー
解説#83 情報エントロピー解説#83 情報エントロピー
解説#83 情報エントロピー
Ruo Ando
 
解説#82 記号論理学
解説#82 記号論理学解説#82 記号論理学
解説#82 記号論理学
Ruo Ando
 
解説#81 ロジスティック回帰
解説#81 ロジスティック回帰解説#81 ロジスティック回帰
解説#81 ロジスティック回帰
Ruo Ando
 
解説#74 連結リスト
解説#74 連結リスト解説#74 連結リスト
解説#74 連結リスト
Ruo Ando
 
解説#76 福岡正信
解説#76 福岡正信解説#76 福岡正信
解説#76 福岡正信
Ruo Ando
 
解説#77 非加算無限
解説#77 非加算無限解説#77 非加算無限
解説#77 非加算無限
Ruo Ando
 
解説#1 C言語ポインタとアドレス
解説#1 C言語ポインタとアドレス解説#1 C言語ポインタとアドレス
解説#1 C言語ポインタとアドレス
Ruo Ando
 
解説#78 誤差逆伝播
解説#78 誤差逆伝播解説#78 誤差逆伝播
解説#78 誤差逆伝播
Ruo Ando
 
解説#73 ハフマン符号
解説#73 ハフマン符号解説#73 ハフマン符号
解説#73 ハフマン符号
Ruo Ando
 
【技術解説20】 ミニバッチ確率的勾配降下法
【技術解説20】 ミニバッチ確率的勾配降下法【技術解説20】 ミニバッチ確率的勾配降下法
【技術解説20】 ミニバッチ確率的勾配降下法
Ruo Ando
 
【技術解説4】assertion failureとuse after-free
【技術解説4】assertion failureとuse after-free【技術解説4】assertion failureとuse after-free
【技術解説4】assertion failureとuse after-free
Ruo Ando
 
ITmedia Security Week 2021 講演資料
ITmedia Security Week 2021 講演資料 ITmedia Security Week 2021 講演資料
ITmedia Security Week 2021 講演資料
Ruo Ando
 
ファジングの解説
ファジングの解説ファジングの解説
ファジングの解説
Ruo Ando
 
AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月
AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月
AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月
Ruo Ando
 
【AI実装4】TensorFlowのプログラムを読む2 非線形回帰
【AI実装4】TensorFlowのプログラムを読む2 非線形回帰【AI実装4】TensorFlowのプログラムを読む2 非線形回帰
【AI実装4】TensorFlowのプログラムを読む2 非線形回帰
Ruo Ando
 
Intel Trusted Computing Group 1st Workshop
Intel Trusted Computing Group 1st WorkshopIntel Trusted Computing Group 1st Workshop
Intel Trusted Computing Group 1st Workshop
Ruo Ando
 

More from Ruo Ando (20)

KISTI-NII Joint Security Workshop 2023.pdf
KISTI-NII Joint Security Workshop 2023.pdfKISTI-NII Joint Security Workshop 2023.pdf
KISTI-NII Joint Security Workshop 2023.pdf
 
Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤
Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤
Gartner 「セキュリティ&リスクマネジメントサミット 2019」- 安藤
 
解説#86 決定木 - ss.pdf
解説#86 決定木 - ss.pdf解説#86 決定木 - ss.pdf
解説#86 決定木 - ss.pdf
 
SaaSアカデミー for バックオフィス アイドルと学ぶDX講座 ~アイドル戦略に見るDXを専門家が徹底解説~
SaaSアカデミー for バックオフィス アイドルと学ぶDX講座  ~アイドル戦略に見るDXを専門家が徹底解説~SaaSアカデミー for バックオフィス アイドルと学ぶDX講座  ~アイドル戦略に見るDXを専門家が徹底解説~
SaaSアカデミー for バックオフィス アイドルと学ぶDX講座 ~アイドル戦略に見るDXを専門家が徹底解説~
 
解説#83 情報エントロピー
解説#83 情報エントロピー解説#83 情報エントロピー
解説#83 情報エントロピー
 
解説#82 記号論理学
解説#82 記号論理学解説#82 記号論理学
解説#82 記号論理学
 
解説#81 ロジスティック回帰
解説#81 ロジスティック回帰解説#81 ロジスティック回帰
解説#81 ロジスティック回帰
 
解説#74 連結リスト
解説#74 連結リスト解説#74 連結リスト
解説#74 連結リスト
 
解説#76 福岡正信
解説#76 福岡正信解説#76 福岡正信
解説#76 福岡正信
 
解説#77 非加算無限
解説#77 非加算無限解説#77 非加算無限
解説#77 非加算無限
 
解説#1 C言語ポインタとアドレス
解説#1 C言語ポインタとアドレス解説#1 C言語ポインタとアドレス
解説#1 C言語ポインタとアドレス
 
解説#78 誤差逆伝播
解説#78 誤差逆伝播解説#78 誤差逆伝播
解説#78 誤差逆伝播
 
解説#73 ハフマン符号
解説#73 ハフマン符号解説#73 ハフマン符号
解説#73 ハフマン符号
 
【技術解説20】 ミニバッチ確率的勾配降下法
【技術解説20】 ミニバッチ確率的勾配降下法【技術解説20】 ミニバッチ確率的勾配降下法
【技術解説20】 ミニバッチ確率的勾配降下法
 
【技術解説4】assertion failureとuse after-free
【技術解説4】assertion failureとuse after-free【技術解説4】assertion failureとuse after-free
【技術解説4】assertion failureとuse after-free
 
ITmedia Security Week 2021 講演資料
ITmedia Security Week 2021 講演資料 ITmedia Security Week 2021 講演資料
ITmedia Security Week 2021 講演資料
 
ファジングの解説
ファジングの解説ファジングの解説
ファジングの解説
 
AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月
AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月
AI(機械学習・深層学習)との協働スキルとOperational AIの事例紹介 @ ビジネス+ITセミナー 2020年11月
 
【AI実装4】TensorFlowのプログラムを読む2 非線形回帰
【AI実装4】TensorFlowのプログラムを読む2 非線形回帰【AI実装4】TensorFlowのプログラムを読む2 非線形回帰
【AI実装4】TensorFlowのプログラムを読む2 非線形回帰
 
Intel Trusted Computing Group 1st Workshop
Intel Trusted Computing Group 1st WorkshopIntel Trusted Computing Group 1st Workshop
Intel Trusted Computing Group 1st Workshop
 

Recently uploaded

Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
National Information Standards Organization (NISO)
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
heathfieldcps1
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
Celine George
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
Nicholas Montgomery
 
How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17
Celine George
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
siemaillard
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
Dr. Mulla Adam Ali
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
Katrina Pritchard
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
GeorgeMilliken2
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
Nguyen Thanh Tu Collection
 
Chapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptxChapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptx
Denish Jangid
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
amberjdewit93
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
eBook.com.bd (প্রয়োজনীয় বাংলা বই)
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptxPengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Fajar Baskoro
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
adhitya5119
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
Colégio Santa Teresinha
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Excellence Foundation for South Sudan
 
Liberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdfLiberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdf
WaniBasim
 

Recently uploaded (20)

Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
Pollock and Snow "DEIA in the Scholarly Landscape, Session One: Setting Expec...
 
The basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptxThe basics of sentences session 6pptx.pptx
The basics of sentences session 6pptx.pptx
 
How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17How to Make a Field Mandatory in Odoo 17
How to Make a Field Mandatory in Odoo 17
 
Film vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movieFilm vocab for eal 3 students: Australia the movie
Film vocab for eal 3 students: Australia the movie
 
How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17How to Fix the Import Error in the Odoo 17
How to Fix the Import Error in the Odoo 17
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
 
Hindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdfHindi varnamala | hindi alphabet PPT.pdf
Hindi varnamala | hindi alphabet PPT.pdf
 
BBR 2024 Summer Sessions Interview Training
BBR  2024 Summer Sessions Interview TrainingBBR  2024 Summer Sessions Interview Training
BBR 2024 Summer Sessions Interview Training
 
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
What is Digital Literacy? A guest blog from Andy McLaughlin, University of Ab...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
 
Chapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptxChapter wise All Notes of First year Basic Civil Engineering.pptx
Chapter wise All Notes of First year Basic Civil Engineering.pptx
 
Digital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental DesignDigital Artefact 1 - Tiny Home Environmental Design
Digital Artefact 1 - Tiny Home Environmental Design
 
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdfবাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
বাংলাদেশ অর্থনৈতিক সমীক্ষা (Economic Review) ২০২৪ UJS App.pdf
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptxPengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptx
 
Main Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docxMain Java[All of the Base Concepts}.docx
Main Java[All of the Base Concepts}.docx
 
MARY JANE WILSON, A “BOA MÃE” .
MARY JANE WILSON, A “BOA MÃE”           .MARY JANE WILSON, A “BOA MÃE”           .
MARY JANE WILSON, A “BOA MÃE” .
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
Your Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective UpskillingYour Skill Boost Masterclass: Strategies for Effective Upskilling
Your Skill Boost Masterclass: Strategies for Effective Upskilling
 
Liberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdfLiberal Approach to the Study of Indian Politics.pdf
Liberal Approach to the Study of Indian Politics.pdf
 

OTTER 2017-12-03

  • 1. OTTER (Organized Techniques for Theorem-proving and Effective Research) Heuristics computing 2017/12/03 9:25 – 11:00 Keio University, SFC
  • 2. ■Organized Techniques for Theorem-proving and Effective Research ■Otter is designed to prove theorems stated in first-order logic with equality OTTER Install # apt-get install otter # wget http://www.mcs.anl.gov/research/projects/AR/otter/dist33/otter-3.3f.tar.gz # tar zxvf otter-3.3f.tar.gz; cd otter-3.3f; ./configure; make; make install Argonne National Laboratory the largest national laboratory by size and scope in the Midwest. Argonne was initially formed to carry out Enrico Fermi's work on nuclear reactors as part of the Manhattan Project. Larry Wos is a mathematician, a researcher in the Mathematics and Computer Science Division of Argonne National Laboratories.
  • 3. Prolog(1972) C(1973) LISP(1953) 1950 200019801970 1990 2010 JAVA(1995) Ocaml(04) ML(1973) Type Inference Isabelle(1986) OTTER(96) Haskell(1986) gcc(1985) Google MapReduce(04) scala(03) Coq(1984) Proverif(2003) Python(199 1) SQL86(86) Shift-Reduce Imperative Proof Assistant Higher order Automated reasoning lamda Unification Compiler Database Mainframe Object orientedProgramming Data mining BigData(AI2)Algorithm(A1) PopField(1982) Boltzman Machine(85) BackProp(19 86) SOM(81) SVM(91) Deep Learning(2012) B: Imperative Thermodynamics (熱力学) Proof Assistant Kernel Autoencoder Boosting(04) 2015 Graph Computation Pig(09) pthread Redis(09) multicore Proof Assistant with heuristics SledgeHummer (03) GPU A: declarative C: reasoning D: heuristics Deep learning λ calculus turing machine π calculus optimization resolution propagation recursion OTTER and Four computing paradigms World war II Natural dedution
  • 4. Puzzles and programs Truth tellers and liars Tower of Hanoi Two inverter puzzle Ferrying problem15 puzzle N-coins balance puzzle #apt-get install otter git #git clone https://github.com/RuoAndo/otter-book Self-replicating robots Tarski parallel axiom
  • 5. Strategies Restriction Strategies Set of Support Weighting Direction Strategies Ratio Resonance Look-ahead Strategies Hot List Redundancy control Subsumption DemodulationParamodulation Dynamic Hot List Subtautology Resonance restriction Level SaturationRecursive Tail Hints First-in Last-out Proof checking filter http://www.mcs.anl.gov/research/projects/AR/strategies.html Set of Support
  • 6. Imperative Declarative Automated reasoning Loop Lambda / Monad Primitive recursive function ? State Machine Recursion TAPE CLOCK ATOM LIST RECURSION HEAT RESOANCE Leibniz Spinoza ?
  • 7. Example 1: Truth tellers and liars http://jinavie.tumblr.com/post/38901128124/truth-and-lies#.WiOmGEpl91s On the fabled Island of Knights and Knaves, we meet two people, A and B, one of whom is a knight and one a knave. The knight always tells the truth, the knave always lies. A says: "C is a knave." B says: "A is a knight." Who is the knight, who the knave, and who the spy? %assign(max_proofs,-1). set(hyper_res). set(print_lists_at_end). assign(stats_level,0). list(usable). -P(T(x)) | -P(Says(x,y)) | P(y). -P(L(x)) | -P(Says(x,y)) | -P(y). P(T(x)) | P(L(x)). -P(T(x)) | -P(L(x)). end_of_list. list(sos). P(Says(A, L(A))). end_of_list. https://github.com/RuoAndo/otter-book/tree/master/takefuji-lab/2017 configuration rule fact
  • 8. Usable Set+ + ++ + - - lightest + - EMPTY Usable Set SoS Set SoS Set -- prg2-4.out.lined -----> EMPTY CLAUSE at 0.00 sec --> 8 [hyper,7,4,6] $F. Size of Usable set (nonliear) Main Loop A B C C ⊃ B B ⊃ A There exists A[i] where B∪¬A → Ф (empty) A’
  • 9. Clause Sets and representation SoS (Set of Support) Demodulators Usable Passive Term Rewriting Resolution and paramodulation conflict a b a b c a b c IF A THEN B : -A | B IF A & B THEN B : -A | -B | C IF A THEN B or C : -A | B | C
  • 10. Example 2: Truth tellers, liars and spy On the fabled Island of Knights and Knaves, we meet three people, A, B, and C, one of whom is a knight, one a knave, and one a spy. The knight always tells the truth, the knave always lies, and the spy can either lie or tell the truth. A says: "C is a knave." B says: "A is a knight." C says: "I am the spy." Who is the knight, who the knave, and who the spy? set(hyper_res). list(usable). -P(T(x)) | -P(Says(x,y)) | P(y). -P(L(x)) | -P(Says(x,y)) | -P(y). P(T(x)) | P(L(x)) | P(N(x)). -P(T(x)) | -P(L(x)). -P(T(x)) | -P(N(x)). -P(L(x)) | -P(N(x)). -P(T(x)) | P(L(x)) | P(N(x)). -P(L(x)) | P(T(x)) | P(N(x)). end_of_list. list(sos). P(Says(A,L(C))). P(Says(B,T(A))). P(Says(C,N(C))). end_of_list. Always true (恒 真) Always false(恒 偽) Satisfiable(証明可能) Unsatisfiable(証明不可 能) 私は正直者だと言っているスパイ 私は嘘つきだと言っているスパイ https://github.com/RuoAndo/otter-book/tree/master/takefuji-lab/2017
  • 11. Generalization: consistency is non-deterministic (∃y) (x) ~ Dem (x, y) ⊃ (x) ~ Dem(x, sub(n, A, n)) Dem(x,y) : yの言っていることをxが確かめる。 Island is consistent if there are only truth tellers and liars. 島に正直者と嘘つきしかいない場合、確かめる事のできない言明がある。 その言明とは、「私は嘘好きである」というものである。 (∃y) (x) ~ Dem (x, y) Dem(x, sub(n,A,n)): 自分について言っていること(sub(n,A,n)をxが確かめることができる。 If the island is consistent, no one in the island know if there are some spy. 「私は嘘つきである」という言明を確かめることができない場合、誰も島にスパイがいることを発見できない。 しかし、OTTERは発見できる。
  • 12. 15 puzzle set(para_into). list(usable). EQUAL(l(hole,l(n(x),y)),l(n(x),l(hole,y))). EQUAL(l(hole,l(x,l(y,l(z,l(u,l(n(w),v)))))),l(n(w), l(x,l(y,l(z,l(u,l(hole,v))))))). -STATE(l(n(1),l(n(2),l(n(3),l(n(4),l(end,l(n(5), l(n(6),l(n(7),l(n(8),l(end,l(n(9),l(n(10),l(n(11), l(n(12),l(end,l(n(13),l(n(14),l(n(15), l(hole,end)))))))))))))))))))). end_of_list. list(sos). STATE(l(n(1),l(n(6),l(n(2),l(n(4),l(end,l(n(5), l(hole,l(n(3),l(n(8),l(end,l(n(9),l(n(10),l(n(7), l(n(11),l(end,l(n(13),l(n(14),l(n(15), l(n(12),end)))))))))))))))))))). end_of_list.
  • 13. Complexity of 15 puzzle 1 6 2 4 5 3 8 9 10 7 11 13 14 15 12 Prg4-8.in : SCORE 437 1 6 2 4 5 3 8 9 10 7 11 13 14 15 12 Prg4-8-7.in : SCORE 891 11 2 6 9 4 14 3 5 1 12 7 15 13 10 6 Prg4-8-2.in : SCORE ???? https://github.com/RuoAndo/otter-book/tree/master/15puzzle # cd otter-book # git pull
  • 14. Paramodulation Usable List: list(usable) SoS List: list(list)
  • 15. Paramodulation 1 |set(para_into). 2 |assign(stats_level,1). 3 | 4 |list(usable). 5 | father(ken)=jim. 6 | mother(jim)=fay. 7 |end_of_list. 8 | 9 |list(sos). 10 | Grandmother(mother(father(x)),x). 11 |end_of_list. Grandmother Fay Jim Ken Jim father mother SoS List: list(list) Usable List: list(usable)