answer set programming in a nutshell
play

Answer Set Programming in a Nutshell Torsten Schaub University of - PowerPoint PPT Presentation

Answer Set Programming in a Nutshell Torsten Schaub University of Potsdam Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 1 / 31 Outline 1 Introduction 2 Foundations 3 Modeling 4 Algorithms and Systems 5 Potassco 6 Summary


  1. Answer Set Programming in a Nutshell Torsten Schaub University of Potsdam Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 1 / 31

  2. Outline 1 Introduction 2 Foundations 3 Modeling 4 Algorithms and Systems 5 Potassco 6 Summary Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 2 / 31

  3. Introduction Outline 1 Introduction 2 Foundations 3 Modeling 4 Algorithms and Systems 5 Potassco 6 Summary Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 3 / 31

  4. Introduction Answer Set Programming (ASP) ASP is an approach to declarative problem solving describe the problem, not how to solve it ASP allows for solving hard search and optimization problems Systems Biology Product Configuration Linux Package Configuration Robotics Music Composition . . . All search-problems in NP (and NP NP ) are expressible Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 4 / 31

  5. Introduction Answer Set Programming (ASP) ASP is an approach to declarative problem solving describe the problem, not how to solve it ASP allows for solving hard search and optimization problems Systems Biology Product Configuration Linux Package Configuration Robotics Music Composition . . . All search-problems in NP (and NP NP ) are expressible Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 4 / 31

  6. Introduction Answer Set Programming (ASP) ASP is an approach to declarative problem solving describe the problem, not how to solve it ASP allows for solving hard search and optimization problems Systems Biology Product Configuration Linux Package Configuration Robotics Music Composition . . . All search-problems in NP (and NP NP ) are expressible Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 4 / 31

  7. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  8. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  9. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  10. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  11. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  12. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  13. Introduction The ASP Solving Process First-Order Stable Logic Program Models Propositional Grounder Solver Logic Program Expressive modeling language Powerful grounding and solving tools Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 5 / 31

  14. Foundations Outline 1 Introduction 2 Foundations 3 Modeling 4 Algorithms and Systems 5 Potassco 6 Summary Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 6 / 31

  15. Foundations Propositional Normal Logic Programs A logic program Π is a set of rules of the form ← b 1 , . . . , b m , ∼ c 1 , . . . , ∼ c n a ���� � �� � head body a and all b i , c j are atoms (propositional variables) ← , , , ∼ denote if, and, and default negation intuitive reading: head must be true if body holds Semantics given by stable models, informally, sets X of atoms such that X is a (classical) model of Π and each atom in X is justified by some rule in Π Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 7 / 31

  16. Foundations Logic Programs A logic program Π is a set of rules of the form ← b 1 , . . . , b m , ∼ c 1 , . . . , ∼ c n a ���� � �� � head body a and all b i , c j are atoms (propositional variables) ← , , , ∼ denote if, and, and default negation intuitive reading: head must be true if body holds Semantics given by stable models, informally, sets X of atoms such that X is a (classical) model of Π and each atom in X is justified by some rule in Π Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 7 / 31

  17. Foundations Logic Programs A logic program Π is a set of rules of the form ← b 1 , . . . , b m , ∼ c 1 , . . . , ∼ c n a ���� � �� � head body a and all b i , c j are atoms (propositional variables) ← , , , ∼ denote if, and, and default negation intuitive reading: head must be true if body holds Semantics given by stable models, informally, sets X of atoms such that X is a (classical) model of Π and each atom in X is justified by some rule in Π Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 7 / 31

  18. Foundations Logic Programs as Propositional Formulas � � Π = a ← ∼ b b ← ∼ a x ← a , ∼ c x ← y y ← x , b � � CF (Π)= a ← ¬ b b ← ¬ a x ← ( a ∧ ¬ c ) ∨ y y ← x ∧ b � � ∪ c ↔ ⊥ � � LF (Π) = ( x ∨ y ) → a ∧ ¬ c Classical models of CF (Π): { b } , { b , c } , { b , x , y } , { b , c , x , y } , { a , c } , { a , b , c } , { a , x } , { a , c , x } , { a , x , y } , { a , c , x , y } , { a , b , x , y } , { a , b , c , x , y } Unsupported atoms Unfounded atoms Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 8 / 31

  19. Foundations Logic Programs as Propositional Formulas � � Π = a ← ∼ b b ← ∼ a x ← a , ∼ c x ← y y ← x , b � � RF (Π)= a ← ¬ b b ← ¬ a x ← ( a ∧ ¬ c ) ∨ y y ← x ∧ b � � ∪ c ↔ ⊥ � � LF (Π) = ( x ∨ y ) → a ∧ ¬ c Classical models of RF (Π): (only true atoms shown) { b } , { b , c } , { b , x , y } , { b , c , x , y } , { a , c } , { a , b , c } , { a , x } , { a , c , x } , { a , x , y } , { a , c , x , y } , { a , b , x , y } , { a , b , c , x , y } Unsupported atoms Unfounded atoms Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 8 / 31

  20. Foundations Logic Programs as Propositional Formulas � � Π = a ← ∼ b b ← ∼ a x ← a , ∼ c x ← y y ← x , b � � RF (Π)= a ← ¬ b b ← ¬ a x ← ( a ∧ ¬ c ) ∨ y y ← x ∧ b � � ∪ c ↔ ⊥ � � LF (Π) = ( x ∨ y ) → a ∧ ¬ c Classical models of RF (Π): { b } , { b , c } , { b , x , y } , { b , c , x , y } , { a , c } , { a , b , c } , { a , x } , { a , c , x } , { a , x , y } , { a , c , x , y } , { a , b , x , y } , { a , b , c , x , y } Unsupported atoms Unfounded atoms Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 8 / 31

  21. Foundations Logic Programs as Propositional Formulas � � Π = a ← ∼ b b ← ∼ a x ← a , ∼ c x ← y y ← x , b � � CF (Π)= a ↔ ¬ b b ↔ ¬ a x ↔ ( a ∧ ¬ c ) ∨ y y ↔ x ∧ b � � ∪ c ↔ ⊥ � � LF (Π) = ( x ∨ y ) → a ∧ ¬ c Classical models of RF (Π): { b } , { b , c } , { b , x , y } , { b , c , x , y } , { a , c } , { a , b , c } , { a , x } , { a , c , x } , { a , x , y } , { a , c , x , y } , { a , b , x , y } , { a , b , c , x , y } Unsupported atoms Unfounded atoms Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 8 / 31

  22. Foundations Logic Programs as Propositional Formulas � � Π = a ← ∼ b b ← ∼ a x ← a , ∼ c x ← y y ← x , b � � CF (Π)= a ↔ ¬ b b ↔ ¬ a x ↔ ( a ∧ ¬ c ) ∨ y y ↔ x ∧ b � � ∪ c ↔ ⊥ � � LF (Π) = ( x ∨ y ) → a ∧ ¬ c Classical models of CF (Π): { b } , { b , c } , { b , x , y } , { b , c , x , y } , { a , c } , { a , b , c } , { a , x } , { a , c , x } , { a , x , y } , { a , c , x , y } , { a , b , x , y } , { a , b , c , x , y } Unsupported atoms Unfounded atoms Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 8 / 31

  23. Foundations Logic Programs as Propositional Formulas � � Π = a ← ∼ b b ← ∼ a x ← a , ∼ c x ← y y ← x , b � � CF (Π)= a ↔ ¬ b b ↔ ¬ a x ↔ ( a ∧ ¬ c ) ∨ y y ↔ x ∧ b � � ∪ c ↔ ⊥ � � LF (Π) = ( x ∨ y ) → a ∧ ¬ c Classical models of CF (Π): { b } , { b , c } , { b , x , y } , { b , c , x , y } , { a , c } , { a , b , c } , { a , x } , { a , c , x } , { a , x , y } , { a , c , x , y } , { a , b , x , y } , { a , b , c , x , y } Unsupported atoms Unfounded atoms Torsten Schaub (KRR@UP) Answer Set Programming in a Nutshell 8 / 31

Recommend


More recommend