Automated Reasoning SS08 Christoph Weidenbach TexPoint fonts used in EMF. Read the TexPoint manual...
Transcript of Automated Reasoning SS08 Christoph Weidenbach TexPoint fonts used in EMF. Read the TexPoint manual...
Automated Reasoning SS08
Christoph Weidenbach
Christoph Weidenbach Automated Reasoning SS08
Content
Propositional Logic DPLL 2-Watch, Learning
Propositional Logic+
TheoriesDPLL(T) Coupling
First-Order Logic SuperpositionIndexing, Sharing,
Filtering
First-Order Logic+
TheoriesSUP(T) Coupling
LinearArithmetic
Logic Calculus Algorithms
Christoph Weidenbach Automated Reasoning SS08
Propositional Logic
&
&
1
1PQ
R
Christoph Weidenbach Automated Reasoning SS08
Hardware
• Industrial Processor Verification: 14-cycle Model Checking
• 1Mio Variables, 10 Mio Literals, 4 Mio Clauses
• 3 hours run time (2004)
Christoph Weidenbach Automated Reasoning SS08
SUDOKU
1 2 3 4 5 6 7 8 9
1
2
3
4
5
6
7
8
9
Christoph Weidenbach Automated Reasoning SS08
Summary
• propositional logic is suitable to represent finite domains
• software: restrict all variables to finite domain
• hardware: restrict number of cycles
• suitable to test problems with thousands of variables
• Limits: infinite domains or “calculations”, i.e.,
mathematical structure
Christoph Weidenbach Automated Reasoning SS08
Propositional Logic + T
Christoph Weidenbach Automated Reasoning SS08
Dutch Soccer League
• if Eindhoven and Amsterdam play on the same day the TV income is x
• If Eindhoven and Amsterdam play on two different days, the income is 2x
• if a team plays on Wednesday champions league it doesn’t play on Friday
• there are at most 3 plays on Friday
• ….. in sum several thousand constraints over LP and Boolean variables
• League is modelled by the Barcelogic tool
Christoph Weidenbach Automated Reasoning SS08
Transition Systems
Christoph Weidenbach Automated Reasoning SS08
Summary
• propositional logic + T can also represent aspects of infinite theories
• for the “meta algorithm” for the theory often “nice” properties are needed
• bottleneck often the solver for T
• Limits: quantification and “free” structures beyond boolean combinations
Christoph Weidenbach Automated Reasoning SS08
First-Order Logic
All professors love squeezing all students.Chris is a professor.
Christoph Weidenbach Automated Reasoning SS08
SUDOKU
2, 3, 4
95
1, 4, 6, 8
7
Christoph Weidenbach Automated Reasoning SS08
SUDOKU
Christoph Weidenbach Automated Reasoning SS08
SUDOKU
7
1 2 3 4 5 6 7 8 9
1
2
3
4
5
6
7
8
9
Christoph Weidenbach Automated Reasoning SS08
SUDOKU
7
1 2 3 4 5 6 7 8 9
1
2
3
4
5
6
7
8
9
Christoph Weidenbach Automated Reasoning SS08
LAN Router
Sent(epacket(incoming-net, router-mac, src-mac, e-ip,ippacket(ip-src, ip-dst, ip-proto, ip-data))))
RouteEntry(route(router,dst-netmask,dst-net-addr,outgoing-net))ipand(ip-dst,dst-netmask) dst-net-addr
Sent(epacket(outgoing-net, dst-mac, src-mac, e-ip,ippacket(ip-src, ip-dst, ip-proto, ip-data)))
Christoph Weidenbach Automated Reasoning SS08
Summary
• first-order logic can model freely defined infinite theories
• inductive theories are out of scope
• incredible expressiveness
• full quantification
• Limits: undecidable (take serious), some important theories can not be
(finitely) represented
Christoph Weidenbach Automated Reasoning SS08
First-Order Logic + T
All professors above 50 love squeezing all students.Chris is a professor below 50.
Christoph Weidenbach Automated Reasoning SS08
Hybrid Automata
Christoph Weidenbach Automated Reasoning SS08
Summary
• first-order logic + T can also model aspects involving inductive theories
• adequately represent many aspects of software, hardware
• incredible incredible expressiveness
• quantification over theory variables potentially limited
• Limits: very undecidable (take serious), in general not compact, and any
calculus not complete
Christoph Weidenbach Automated Reasoning SS08
The End: Let’s Start
Propositional Logic DPLL 2-Watch, Learning
Propositional Logic+
TheoriesDPLL(T) Coupling
First-Order Logic SuperpositionIndexing, Sharing,
Filtering
First-Order Logic+
TheoriesSUP(T) Coupling
LinearArithmetic
Logic Calculus Algorithms