Set-based ASP: A 3-Valued Logic Approach for Combinatorial Search and Decision - Prof. How, Study notes of Engineering

This document, authored by h. A. Blair, j. B. Remmel, and v. W. Marek from syracuse university, ucsd, and the university of kentucky respectively, discusses set-based answer set programming (asp). The authors explain how set-based stable models of set-based datalog programs provide answers to combinatorial search and decision problems in special problem domains. They also discuss why satisfying constraints in specific problem domains can be aided by knowledge specific to the domain. The basics of datalog programs, validity, stable models, and answer-set programming, as well as examples and relationships to intuitionistic propositional logic.

Typology: Study notes

Pre 2010

Uploaded on 08/09/2009

koofers-user-4mn
koofers-user-4mn 🇺🇸

10 documents

1 / 31

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Set-based Answer Set Programming
H. A. Blair1J. B. Remmel2V. W. Marek3
1Syracuse University, EECS Dept.
2UCSD, Mathematics Dept.
3University of Kentucky, CS Dept.
February 19, 2008
Blair, Marek, Remmel Set-based ASP
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f

Partial preview of the text

Download Set-based ASP: A 3-Valued Logic Approach for Combinatorial Search and Decision - Prof. How and more Study notes Engineering in PDF only on Docsity!

Set-based Answer Set Programming

H. A. Blair^1 J. B. Remmel^2 V. W. Marek^3 (^1) Syracuse University, EECS Dept. [email protected] (^2) UCSD, Mathematics Dept. [email protected] (^3) University of Kentucky, CS Dept. [email protected]

February 19, 2008

Overview: what and how

What I: Answer set programs. Stable models of datalog programs provide answers to combinatorial search and decision problems. What II: Set-based answer set programs. Set-based stable models of set-based datalog programs provide answers to combinatorial search and decision problems in special problem ‘domains’. How: By spatially constrained predicate logic - this is applied logic. It is not, at this stage of development, intended to address foundational questions. ——————- Terms to be defined are in dark green.

Plan of the talk

(^1) Some problems (^2) Some results (^3) Datalog programs - We start in with technical details here (^4) Validity, stable models and answer-set programming (^5) The basic move (^6) Set-based datalog programs (^7) Set-based validity, stable models and set-based answer-set programming (^8) Examples (^9) Representing continuous structure (^10) Relation to intuitionistic propositional logic.

(1) Some problems

How does the already understood ”model theory” of answer set programs compare to the set-based setup? Interfacing logic with domain-specific knowledge: how? What can we do with set-based answer set programs? Relationships to all the rest of logic?

(3.1) Datalog programs

The underlying language is that of predicate logic - constant symbols but no other function symbols. A datalog program is a finite set of program clauses partitioned into two subsets: (1) the EDP (extensional database) and (2) the IDB (intensional database). The partition satisfies several constraints. A program clause is a formula

A ← L 1 ∧... ∧ Ln

where A is an atomic formula (atom), and each Li , called a literal, is either an atomic formula or the negation of an atom. A is the head of the clause and L 1 ∧... Ln is the body of the clause. If Li is an atom it is called a positive literal; otherwise it is a negative literal.

(3.2) Datalog programs - the EDB

A formula is called ground iff has no free variable occurrences. A fact is a ground atom. The EDB consists of facts.

(4.1) Validity

The Herbrand base of a language L for predicate logic is the set of all ground atoms of the language. An Herbrand interpretation for L is a subset of the Herbrand base. Remark: An Herbrand interpretation I is a structure in the usual sense: its universe is the set of constants of the language and the true instances of the interpretation of a predicate symbol p are the tuples of constants (a 1 ,... , ak ) for which the corresponding ground atom p(a 1 ,... , ak ) is in I. This determines the ground atoms A valid in I (I |= A). Validity of formulas is extended to all formulas in a standard way. A model of a set of formulas, and, a fortiori, a program, therefore has the usual definition.

(4.2.1) Stable models: preliminaries

The notion of a stable model depends on a property of Horn programs; i.e. programs without negations in their clause bodies: They have a least Herbrand model. (Think of Horn programs as inductive definitions.) An Herbrand model I of a program is supported iff for every ground atom A in I, there is a ground instance A ← L 1 ∧... ∧ Ln of a clause in the program for whose body L 1 ∧... ∧ Ln is valid in I. The least Herbrand model of a Horn program is supported.

(4.2.3) Stable models: The Definition

I is a stable model of P iff I is the least Herbrand model of the Gelfond-Lifschitz transform of P with respect to I.

The idea is to use I to evaluate the negative literals in ground clause bodies to obtain a Horn program. I is a stable model of P iff I is the least model of the resulting Horn program. That a stable model of P is in fact a model requires (an easy) proof. Stable models are minimal supported models. Hence the collection of stable models of P forms an antichain with respect to set inclusion.

(4.2.4) Stable models: An example

p ← ¬q q ← q

{p} and {q}

are the minimal supported models. Only {p} is stable.

(4.3.2) Answer set programming - an example

Graph coloring: Can a directed graph’s vertices be colored such that no two adjacent vertices have the same color?

A ← color_of(X,C) ∧ color_of(Y,C) ∧ color(C) ∧ vertex(X) ∧ vertex(Y) ∧ edge(X,Y) ∧ ¬A

Assuming A is not used differently elsewhere in the program, any stable model of a program containing this clause must falsify

color_of(X,C) ∧ color_of(Y,C) ∧ color(C) ∧ vertex(X) ∧ vertex(Y) ∧ edge(X,Y)

(4.3.3) Answer set programming - an example

color(red) color(green) color(blue) vertex(a) vertex(b) vertex(c) edge(a,b) edge(b,c) color_of(X,red) ← ¬color_of(X,green) ∧ ¬color_of(X,blue) color_of(X,green) ← ¬color_of(X,red) ∧ ¬color_of(X,blue) color_of(X,blue) ← ¬color_of(X,green) ∧ ¬color_of(X,red) A ← color_of(X,red) ∧ color_of(X,green) ∧ ¬A A ← color_of(X,red) ∧ color_of(X,blue) ∧ ¬A A ← color_of(X,green) ∧ color_of(X,blue) ∧ ¬A

(6) Set-based datalog programs:

The difference between ordinary programs and set-based programs is that the underlying language is spatially augmented. A spatially augmented first-order language ( spatial language , for short) L is a triple (L, X , [[·]]), where (^1) L is a language for predicate logic (^2) X is a nonempty (possibly infinite) set, called the interpretation space , and (^3) [[·]] is a mapping from the ground atoms of L to the power set of X , called the sense assignment. If A is a ground atom, then [[A]] is called the sense of A.

(7.1.1) Validity of ground literals

Y |= A iff [[A ]] ⊆ Y , for each member Y of the powerset of X. (strong negation, 3-valued) Y |=s^ ¬A iff Y ∩ [[A ]] = ∅. (weak negation, 2-valued) Y |=w^ ¬A iff [[A ]] 6 ⊆ Y.