Syntactic Conditions for Antichain Property in CR-Prolog

Similar documents
Loop Formulas for Disjunctive Logic Programs

Two-Valued Logic Programs

Nested Epistemic Logic Programs

Elementary Sets for Logic Programs

A Theory of Forgetting in Logic Programming

Disjunctive Signed Logic Programs

On Elementary Loops of Logic Programs

Guarded resolution for Answer Set Programming

Elementary Sets for Logic Programs

Splitting a Default Theory. Hudson Turner. University of Texas at Austin.

Reducts of propositional theories, satisfiability relations, and generalizations of semantics of logic programs

Fuzzy Answer Set semantics for Residuated Logic programs

Epistemic Reasoning in Logic Programs

On the Relationship between P-log and LP MLN

Characterizing Causal Action Theories and Their Implementations in Answer Set Programming: Action Languages B, C and Beyond

On the Stable Model Semantics for Intensional Functions

Combining Answer Sets of Nonmonotonic Logic Programs

Trichotomy Results on the Complexity of Reasoning with Disjunctive Logic Programs

Semantic forgetting in answer set programming. Author. Published. Journal Title DOI. Copyright Statement. Downloaded from. Griffith Research Online

INVESTIGATING AND EXTENDING P-LOG. by Evgenii Balai, Dipl.-Ing. A Dissertation in COMPUTER SCIENCE

Loop Formulas for Circumscription

A Unified Framework for Representing Logic Program Updates

The AAA Architecture: An Overview

Propositional Logic: Models and Proofs

Advanced Topics in LP and FP

Notions of Strong Equivalence for Logic Programs with Ordered Disjunction

Lloyd-Topor Completion and General Stable Models

Resolving Conflicts in Action Descriptions

The natural numbers. Definition. Let X be any inductive set. We define the set of natural numbers as N = C(X).

On Elementary Loops and Proper Loops for Disjunctive Logic Programs

Declarative Semantics for Active Integrity Constraints

Stable Models and Difference Logic

rules strictly includes the class of extended disjunctive programs. Interestingly, once not appears positively as above, the principle of minimality d

Argumentative Characterisations of Non-monotonic Inference in Preferred Subtheories: Stable Equals Preferred

Combining Logical and Probabilistic Reasoning

Artificial Intelligence Chapter 7: Logical Agents

Active Integrity Constraints and Revision Programming

Knowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system):

Comparisons and Computation of Well-founded Semantics for Disjunctive Logic Programs

Resolving Conflicts in Action Descriptions

Logic Programs with Abstract Constraint Atoms: The Role of Computations

On the Relationship of Defeasible Argumentation and Answer Set Programming

arxiv: v1 [cs.lo] 8 Jan 2013

Technical R e p o r t. Merging in the Horn Fragment DBAI-TR Adrian Haret, Stefan Rümmele, Stefan Woltran. Artificial Intelligence

CR-Prolog: Logic Programs with CR-Rules. Consistency-Restoring Rules

Truth-Functional Logic

Proofs. Joe Patten August 10, 2018

Action Language BC: Preliminary Report

Introduction to Metalogic

Semantic Forcing in Disjunctive Logic Programs

Extending Logic Programs with Description Logic Expressions for the Semantic Web

Propositional Calculus - Soundness & Completeness of H

COMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning

A theory of modular and dynamic knowledge representation

Propositional Resolution Part 1. Short Review Professor Anita Wasilewska CSE 352 Artificial Intelligence

Pearl s Causality In a Logical Setting

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

Applied Logic. Lecture 1 - Propositional logic. Marcin Szczuka. Institute of Informatics, The University of Warsaw

Forgetting and Conflict Resolving in Disjunctive Logic Programming

Conflict-Based Belief Revision Operators in Possibilistic Logic

TE C H N I C A L R E P O R T. Model-Based Recasting in Answer-Set Programming INSTITUT FÜR INFORMATIONSSYSTEME DBAI-TR

INTRODUCTION TO NONMONOTONIC REASONING

Elementary Loops Revisited

A Schema for Generating Update Semantics

Integrating Answer Set Programming and Satisfiability Modulo Theories

Simplified Reduct for Choice Rules in ASP

Yet Another Proof of the Strong Equivalence Between Propositional Theories and Logic Programs

Propositional Logics and their Algebraic Equivalents

A transition system for AC language algorithms

Propositional and Predicate Logic - II

Chapter 3: Propositional Calculus: Deductive Systems. September 19, 2008

3 Propositional Logic

Description Logics. Foundations of Propositional Logic. franconi. Enrico Franconi

Comparisons and Computation of Well-founded Semantics for Disjunctive Logic Programs

Non-monotonic Logic I

Pairing Transitive Closure and Reduction to Efficiently Reason about Partially Ordered Events

COMP219: Artificial Intelligence. Lecture 19: Logic for KR

Preference, Choice and Utility

A MODEL-THEORETIC PROOF OF HILBERT S NULLSTELLENSATZ

Logic: Propositional Logic (Part I)

COMP219: Artificial Intelligence. Lecture 19: Logic for KR

Artificial Intelligence

Propositional Resolution Introduction

CSC Discrete Math I, Spring Propositional Logic

(A 3 ) (A 1 ) (1) COMPUTING CIRCUMSCRIPTION. Vladimir Lifschitz. Department of Computer Science Stanford University Stanford, CA

Infinitary Equilibrium Logic and Strong Equivalence

2 Transition Systems Denition 1 An action signature consists of three nonempty sets: a set V of value names, a set F of uent names, and a set A of act

Uniform Equivalence of Logic Programs under the Stable Model Semantics

Computational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)

02 Propositional Logic

Logic programs with monotone abstract constraint atoms

Computing Loops With at Most One External Support Rule

: 9 ; < = = 4 < < 7 7

[3] R.M. Colomb and C.Y.C. Chung. Very fast decision table execution of propositional

Syntactic Characterisations in Model Theory

KRIPKE S THEORY OF TRUTH 1. INTRODUCTION

Equivalence for the G 3-stable models semantics

Overview. Knowledge-Based Agents. Introduction. COMP219: Artificial Intelligence. Lecture 19: Logic for KR

Propositional Logic: Part II - Syntax & Proofs 0-0

CHAPTER 10. Gentzen Style Proof Systems for Classical Logic

Transcription:

This version: 2017/05/21 Revising my paper before submitting for publication. Syntactic Conditions for Antichain Property in CR-Prolog Vu Phan Texas Tech University Abstract We study syntactic conditions which guarantee when a Consistency Restoring Prolog program has antichain property (no answer set is a proper subset of another). A notable such condition is that the program s dependency graph being acyclic and having no directed path from one cr-rule head literal to another. Contents 1 Introduction 1 2 CR-Prolog 2 2.1 Syntax...................................... 2 2.2 Semantics.................................... 3 3 Preliminary Results 4 3.1 Up to One CR-Rule............................... 4 3.2 Unique CR-Literals............................... 5 4 Main Results 7 4.1 Dependency Graphs.............................. 7 4.2 Same Abductive Support Heads........................ 8 4.3 CR-Independence and Acyclicity....................... 10 5 Conclusion 15 6 Acknowledgment 15 1 Introduction Answer Set Prolog (A-Prolog) is a programming language for knowledge representation and reasoning (Gelfond and Lifschitz [1988]). An A-Prolog program comprises rules which determine the sets of beliefs that a logical agent can hold. A-Prolog relies on the stable model semantics of logic programs with negation. Page 1 of 16

Consistency Restoring Prolog (CR-Prolog) extends A-Prolog with cr-rules (Balduccini and Gelfond [2003]). The cr-rules apply only when the regular rules alone result in a contradiction. These cr-rules are meant to represent exceptions which are very rare but still possible. A-Prolog and its extension CR-Prolog have been applied to solve problems in various fields (Erdem et al. [2016]). For instance, a logic program was used to guide multiple robots to collaboratively tidy up a house. Also, a tourism application suggested trips based on user preferences. In this paper, we investigate the antichain property that a logic program might have: no answer set is a proper subset of another. Every A-Prolog program has antichain property. However, there exist CR-Prolog programs without antichain property. We look at some syntactic conditions guaranteeing that a CR-Prolog program has this desired semantic property. Such conditions are specified in Theorem 4.3.14 (most notable) as well as Theorem 3.1.4, Corollary 3.1.7, and Propositions 3.2.10 & 4.2.12. 2 CR-Prolog The complete specifications of A-Prolog and CR-Prolog can be found in [Gelfond and Kahl, 2014, Sections 2.1 & 2.2 & 5.5]. 2.1 Syntax Definition 2.1.1. An atom represents a boolean value. A literal is either an atom a or its classical-negation a. An extended literal is either a literal l or its default-negation not l. Definition 2.1.2 (Regular Rule). A regular rule r has the form: l 1 or... or l k l k+1,..., l m, not l m+1,..., not l n. Each l i above is a literal and 1 k m n. 1 The head of r is the disjunction of literals before. The body of r is the conjunction of extended literals after. Definition 2.1.3 (CR-Rule). Similar to a regular rule, a cr-rule has the form: 1 If k = m = n, then the rule can be shortened to: l 0 + l1,..., l m, not l m+1,..., not l n. l 1 or... or l k. Page 2 of 16

Definition 2.1.4 (A-Prolog Program). An A-Prolog program is a finite set of regular rules. Definition 2.1.5 (CR-Prolog Program). A CR-Prolog program is a finite set of regular rules and cr-rules. Notations: Π reg and Π cr denote the corresponding subsets of regular rules and cr-rules. Definition 2.1.6 (Applications of CR-Rules). Let r be a cr-rule. Then the application α(r) is the regular rule obtained from r by replacing + with. If R is a set of cr-rules, then let α(r) = {α(r) : r R}. When R is a subset of a CR-Prolog program Π, let Π R = Π reg α(r). 2.2 Semantics Definition 2.2.1 (Context). Literals l and l are complementary if l = l. A set S of literals is a context if S contains no pair of complementary literals. Definition 2.2.2 (Satisfiability). A context S satisfies: 1. a literal l if l S 2. an extended literal not l if l / S 3. a disjunction l 1 or... or l k if some l i S 4. a conjunction l k+1,..., l m, not l m+1,..., not l n if S satisfies all conjuncts (which are extended literals) 5. a rule r if S satisfies the head of r whenever S satisfies the body of r Definition 2.2.3 (A-Prolog Answer Set). Definition 2.2.4 (CR-Prolog Answer Set). We study the CR-Prolog variant in which minimality of abductive supports is based on cardinality. Definition 2.2.5 (Antichain Property). Let Π be a CR-Prolog program. We say Π has antichain property if: for all answer sets S 1 and S 2 of Π, we have S 1 S 2 S 1 = S 2. Example 2.2.6 (CR-Prolog Program without Antichain Property). Consider the following program: a. a not b, not c. b c. b +. (r 1 ) c +. (r 2 ) This program has answer sets S 1 = {a, b} and S 2 = {a, b, c}. Observe that S 1 S 2 (proper subset). The corresponding abductive supports are R 1 = {r 1 } and R 2 = {r 2 }. Page 3 of 16

3 Preliminary Results 3.1 Up to One CR-Rule Remark 3.1.1. Every inconsistent CR-Prolog program vacuously has antichain property. So only consistent programs are of interest. Definition 3.1.2 (Reduct). Let R be a set of regular rules and S be a context. We write R S for the reduct of R wrt S. Lemma 3.1.3. Let Π be an A-Prolog program. Let S 1 and S 2 be consistent sets of literals. If S 1 S 2, then Π S 2 ΠS 1. Proof. Assume Π S 2 The corresponding rule in Π is: has an arbitrary rule r: l 1 or... or l k l k+1,..., l m. l 1 or... or l k l k+1,..., l m, not l m+1,..., not l n. For each i in {m + 1,..., n}, we have l i / S 2, so l i / S 1 (as S 1 S 2 ). Therefore, r is also a rule in Π S 1. Theorem 3.1.4 (Antichain Property of A-Prolog Programs, proved by Dr. Michael Gelfond). Let Π be an A-Prolog program. Let S 1 S 2 be answer sets of Π. Then S 1 = S 2. Proof. We will show S 2 S 1. 1. First, S 2 is an answer set of Π S 2. So S 2 is a minimal (wrt set inclusion) context which satisfies Π S 2. We shall prove S 2 S 1 by showing S 1 also satisfies Π S 2. 2. By 3.1.3, we have Π S 2 ΠS 1. Because S 1 satisfies Π S 1, we know S 1 also satisfies Π S 2. Definition 3.1.5 (Equivalence of CR-Prolog Programs). Let Π 1 and Π 2 be CR-Prolog programs. We say Π 1 and Π 2 are equivalent, denoted by Π 1 Π 2, when S is an answer set of Π 1 iff S is an answer set of Π 2 for every context S. Remark 3.1.6. Let Π be a CR-Prolog program. If Π reg is consistent, then Π is equivalent to Π reg, which has antichain property due to Theorem 3.1.4. The interesting case is when Π reg is inconsistent. Corollary 3.1.7. Let Π be a CR-Prolog program where Π reg is inconsistent. If Π has only one cr-rule, then Π has antichain property. Proof. Assume Π cr = {r} for some cr-rule r. Then Π is equivalent to the A-Prolog program Π {r} = Π reg α({r}). Simply apply Theorem 3.1.4 to Π {r}. Page 4 of 16

3.2 Unique CR-Literals Definition 3.2.1 (Useless Regular Rule). Let Π be an A-Prolog program containing some rule r. For an answer set S of Π, we say r is useless wrt S if S is an answer set of Π \ {r}. Definition 3.2.2 (Regular Rule Firing). Given a regular rule r and a context S, we say r fires wrt S if S satisfies the body of r. Lemma 3.2.3. Let r be a regular rule and S be a context. Assume {r} S = {r } for some default-negation-free rule r. Then r fires iff r fires, wrt S. Proof. The two rules are: l 1 or... or l k l k+1,..., l m, not l m+1,..., not l n. (r) l 1 or... or l k l k+1,..., l m. (r ) By construction of r from r, we know l i S for all i {m + 1,..., n}. Then r fires wrt S iff l i S for all i {k + 1,..., m} iff r fires wrt S. Remark 3.2.4. Let r be a regular default-negation-free rule and S 1 S 2 be contexts. If r fires wrt S 1, then r fires wrt S 2. Lemma 3.2.5. Let Π be an A-Prolog program containing some rule r. Let S be an answer set of Π. If r does not fire, then r is useless, wrt S. Proof. Let Π 1 = Π S and Π 2 = (Π \ {r}) S. We know S is an answer set of Π 1. We will prove S is an answer set of Π 2. 1. First, S satisfies Π 1. Notice Π 2 Π 1. Then S satisfies Π 2. 2. Assume some context S S also satisfies Π 2. We shall show S = S. 2.1. Case 1 of 2: {r} S =. Then Π 1 = Π 2, so S satisfies Π 1. 2.2. Case 2 of 2: {r} S = {r } for some default-negation-free rule r. Recall that we hypothesized r does not fire wrt S. By Lemma 3.2.3, we know r does not fire wrt S. Since S S, using the contrapositive of Remark 3.2.4, we deduce that r does not fire wrt S. Then S vacuously satisfies r. So S satisfies Π 1 = Π 2 {r }. In both cases, S satisfies Π 1. As S is an answer set of Π 1, due to minimality, we know S S. Since we assumed S S, we can now conclude that S = S. 3. We have shown that S is a minimal consistent set of literals which satisfies Π 2. Hence, S is an answer set of Π 2. Page 5 of 16

Lemma 3.2.6. Let Π be a CR-Prolog program. Let S be an answer set of Π and R be a corresponding abductive support. Let cr-rule r R. Then α(r) is not useless wrt S. Proof. By way of contradiction, assume α(r) is useless wrt S. Let Π R = Π reg α(r). Then S is an answer set of Π R \ {α(r)}, whereas this program is precisely Π R = Π reg α(r ) with R = R \ {r}. So Π R is consistent. Since R is a minimal (wrt cardinality) set of cr-rules whose applications make Π consistent, we have R R. However, R = R 1 (recall R = R \ {r}), contradiction. Lemma 3.2.7. Let Π be a CR-Prolog program. Let S be an answer set of Π and R be a corresponding abductive support. Let cr-rule r R. Then the application α(r) fires wrt S. Proof. First, S is an answer set of Π R = Π reg α(r). By way of contradiction, assume there exists some cr-rule r R such that α(r) does not fire wrt S. By Lemma 3.2.5, α(r) is useless wrt S. However, by 3.2.6, α(r) is not useless wrt S, contradiction. Definition 3.2.8 (Head). If r is a rule, then let head(r) denotes the set of literals which appear in the head of r. If R is a set of rules, then let head(r) = r R head(r). Definition 3.2.9 (Supported Literal). Let r be a regular rule, l be a literal, and S be a context. We say l is supported by r wrt S if all of the following hold: 1. r fires wrt S 2. head(r) S = {l} [Gelfond and Kahl, 2014, page 43, Proposition 2.2.1] Proposition 3.2.10. Let Π be a CR-Prolog program. If the literal in the head of each cr-rule does not appear in the head of any other rule, then Π has antichain property. Proof. Let S 1 and S 2 be answer sets of Π. Assume S 1 S 2. We will show S 1 = S 2. 1. Let R 1 and R 2 respectively be abductive supports for S 1 and S 2. We first prove R 1 R 2. Let r be an arbitrary cr-rule in R 1. By Lemma 3.2.7, r fires wrt S 1, and S 1 satisfies head(r) = {l} where l is a literal. So l S 1, then l S 2 (as S 1 S 2 ). By the hypothesized syntactic condition, r is the sole rule in Π whose head contains l. Then only r can support l wrt S 2. So r R 2. 2. Now that we showed R 1 R 2, recall R 1 = R 2, as both are abductive supports. Then R 1 = R 2, since they are finite sets. Consequently, Π R1 = Π reg α(r 1 ) equals Π R2 = Π reg α(r 2 ). So S 1 and S 2 are answer sets of the same A-Prolog program. By Theorem 3.1.4, S 1 = S 2. Page 6 of 16

4 Main Results 4.1 Dependency Graphs Definition 4.1.1 (Positive Body of Rule). Let r be a rule. The positive body of r, denoted by body + (r), is the set of literals in the body of r which are default-negation-free. Definition 4.1.2 (Dependency Graph). Let Π be a CR-Prolog program. Let G Π be a graph whose vertices are literals of Π. For each pair of vertices l 1 and l 2 of G Π, there is a directed edge to l 1 from l 2 if Π has some rule r where l 1 head(r) and l 2 body + (r). We say G Π is the dependency graph of Π. Note: a self-loop forms a directed cycle. Remark 4.1.3 (Answer Set of Acyclic Program). Let Π be an acyclic A-Prolog program and S be a context. Then S is an answer set of Π iff every literal in S is supported by a rule in Π wrt S [Ben-Eliyahu and Dechter, 1994, page 58, Theorem 2.7]. Example 4.1.4 (Self-Loop Forming Cycle). To the contrary, assume a self-loop does not form a cycle. Consider this A-Prolog program: l l. (r) Let S = {l}. Notice that l is supported by r wrt S. However, S is not an answer set of Π. Then Remark 4.1.3 is wrong, contradiction. Definition 4.1.5 (Head-Cycle). Let Π be a CR-Prolog program with dependency graph G Π. Let C be a cycle in G Π. Assume: 1. vertices l 1 and l 2 are in C 2. there exists r Π where l 1 and l 2 are in head(r) Then C is a head-cycle in Π. Definition 4.1.6 (Dependent Literals). Let Π be a CR-Prolog program with dependency graph G Π. Let l 1 and l 2 be two literals appearing in Π. We say l 1 depends on l 2 if G Π has a directed path to l 1 from l 2. Definition 4.1.7 (CR-Literal). Let Π be CR-Prolog program with cr-rule r where head(r) = {l}. We say l is a cr-literal of Π. Definition 4.1.8 (CR-Independence). Let Π be a CR-Prolog program. Then Π is cr-independent if l 1 does not depend on l 2 for all cr-literals l 1 and l 2. Page 7 of 16

4.2 Same Abductive Support Heads Remark 4.2.1. Let Π be a CR-Prolog program with some answer set S. Then S head(π). Remark 4.2.2. Let r be a regular rule and S be a consistent set of literals. If r fires wrt S, then {r} S. Remark 4.2.3. Let Π be a CR-Prolog program with some answer set S and a corresponding abductive support R. Let cr-rule r R. Then {α(r)} S. (Use Lemma 3.2.7 and Remark 4.2.2.) Example 4.2.4. Consider an inconsistent A-Prolog program Π: l not l. Let S = {l}. Notice S is a minimal context which satisfies Π. However, S is not an answer set of Π, because S nonminimally satisfies Π S =. (Note that S = satisfies neither Π nor Π S = {l.}.) Example 4.2.5. Consider a consistent CR-Prolog program Π: not l 1, not l 2. l 1 + not l2. (r) Then R = {r} is an abductive support of Π. Indeed, let Π R = Π reg α(r), then S = {l 1 } is an answer set of Π R S = {l 1 }. Notice S = {l 2 } satisfies Π R, but l 1 S. Lemma 4.2.6. Let Π be a nondisjunctive default-negation-free A-Prolog program. If contexts S 1 and S 2 satisfy Π, then S 0 = S 1 S 2 also satisfies Π. Proof. Let r be a rule in Π. Assume r fires wrt S 0. Then r also fires wrt S 1 and S 2 (as Π is default-negation-free). So S 1 and S 2 satisfy head(r) = {l} (since Π is nondisjunctive). Thus l is in S 1, S 2, and S 0. Lemma 4.2.7 (Proved by Dr. Michael Gelfond). Let Π be a nondisjunctive default-negation-free A-Prolog program. Assume Π has rules r 1 r 2 such that head(r 1 ) = head(r 2 ). Let Π 0 = Π \ {r 1, r 2 }, Π 1 = Π 0 {r 1 }, and Π 2 = Π 0 {r 2 }. If S is an answer set of Π, then S is also an answer set of either Π 1 or Π 2. Proof. To the contrary, assume S is an answer set of neither Π 1 nor Π 2. Still, S satisfies both Π 1 and Π 2 (as S satisfies Π). So there exist two proper subsets of S, say S 1 and S 2, which respectively satisfy Π 1 and Π 2 (the programs are default-negation-free). Page 8 of 16

1. Case 1 of 2: either r 1 fires wrt S 1, or r 2 fires wrt S 2. WOLOG, assume the former. Then S 1 satisfies head(r 1 ) = head(r 2 ). So S 1 also satisfies both the rule r 2 and the program Π = Π 1 {r 2 }. Recall that S is an answer set of Π whereas S 1 S, contradiction. 2. Case 2 of 2: neither r 1 fires wrt S 1, nor r 2 fires wrt S 2. So neither r 1 nor r 2 fires wrt S 0 = S 1 S 2 (the rules are default-negation-free). Then S 0 vacuously satisfies r 1 and r 2. Because S 1 and S 2 satisfy Π 0, by 4.2.6, S 0 satisfies Π 0 too. Therefore, S 0 satisfies Π = Π 0 {r 1, r 2 }. But S is an answer set of Π, and S 0 S, contradiction. Lemma 4.2.8. Let Π be a nondisjunctive CR-Prolog program with some abductive support R. Then for all cr-rules r 1 and r 2 in R, we have head(r 1 ) = head(r 2 ) r 1 = r 2. Proof. By way of contradiction, assume there exist cr-rules r 1 r 2 in R where head(r 1 ) = head(r 2 ). Some notations: 1. Let R 1 = R \ {r 2 } and R 2 = R \ {r 1 }. 2. Let Π 1 = Π reg α(r 1 ) and Π 2 = Π reg α(r 2 ). 3. Let S be an answer set of Π wrt R. 4. Let Π a = Π 1 S and Π b = Π 2 S. Note that by 4.2.3, {α(r 1 )} S = {r 1 } and {α(r 2 )} S = {r 2 } for some default-negation-free rules r 1 and r 2. By 4.2.7, S is an answer set of either Π a or Π b. WOLOG, assume the former. Then S is an answer set of Π 1. So R 1 is an abductive support of Π, but R 1 < R, contradiction. Lemma 4.2.9. Let Π be an acyclic CR-Prolog program having some answer set S wrt an abductive support R. Let cr-rule r R where head(r) = {l}. Then α(r) is the only rule in Π R = Π reg α(r) which supports l wrt S. Proof. By way of contradiction, assume l is also supported by a rule r α(r) in Π R. Let R = R \ {r} and Π = Π reg α(r ). We will prove S is an answer set of Π : 1. First, S satisfies Π Π R. 2. Let l be an arbitrary literal in S. We show l is supported wrt S by some rule in Π. Recall that S is an answer set of Π R. By 4.1.3, l is supported wrt S by some rule r 0 in Π R. 2.1. Case 1 of 2: r 0 = α(r). Recall head(r) = {l}. Then l = l. Notice r also supports l wrt S, and r Π. Page 9 of 16

2.2. Case 2 of 2: r 0 α(r). Then r 0 Π. So Π is consistent, and R is an abductive support of Π. But R < R, contradiction. Definition 4.2.10 (Factified Rule). Let r be a regular rule. Let φ(r) denote the factified rule obtained from r by dropping its body. If R is a set of rules, then let φ(r) = {φ(r) : r R}. Lemma 4.2.11. Let Π be a CR-Prolog program with answer set S and corresponding abductive support R. Then S is an answer set of Π = Π reg φ(α(r)). Proof. We prove S is a minimal context which satisfies Π S : 1. Let Π R = Π reg α(r). Note that head(r) S as S is an answer set of Π R. Then S satisfies Π S = (Π reg ) S φ(α(r)). 2. Assume some S S also satisfies Π S. We know head(r) S. Then S satisfies (Π R ) S = (Π reg ) S (α(r)) S. So S S (as S is an answer set of Π R ). Therefore S = S. Proposition 4.2.12. Let Π be a CR-Prolog program. Then Π has antichain property if head(r 1 ) = head(r 2 ) for all abductive supports R 1 and R 2 of Π. Proof. Let S 1 and S 2 be arbitrary answer sets of Π corresponding to some abductive supports R 1 and R 2. By 4.2.11, S 1 and S 2 are respectively answer sets of Π reg φ(α(r 1 )) and Π reg φ(α(r 2 )), which are the same A-Prolog program because head(r 1 ) = head(r 2 ). By Theorem 3.1.4, S 1 S 2 S 1 = S 2. 4.3 CR-Independence and Acyclicity Definition 4.3.1 (Proof of Literal). Let Π be an A-Prolog program, S be a context, and l be a literal. A proof of l wrt S in Π is a nonempty sequence of rules p = r 1,..., r n in Π such that: 1. for each rule r i, there is a (sole) literal l supported by r wrt S; let h S (r) denote l 2. l = h S (r n ) 3. body + (r 1 ) = 2 2 Their original definition states: r 1 is a fact. However, there is an error in their Lemma B.5 on page 83. Consider an acyclic A-Prolog program {a not b.} with answer set {a}. Page 10 of 16

4. for each rule r i, every literal in body + (r i ) is h S (r j ) for some j < i [Ben-Eliyahu and Dechter, 1994, page 57] Definition 4.3.2. Additional notations: 1. P (l, S, Π) denotes the set of all proofs p of l wrt S in Π 2. h S (p) denotes {h S (r) : r p} 3. body + (p) denotes {body + (r) : r p} Remark 4.3.3. Let p = r 1,..., r n P (l, S, Π). We adopt the convention that the rules in p are pairwise distinct. Indeed, if there were r i = r j where i < j, then p = r 1,..., r j 1, r j+1,..., r n P (l, S, Π), so r j would be redundant. Remark 4.3.4. Let Π be a head-cycle-free A-Prolog program with answer set S. Then each literal in S has a proof wrt S in Π [Ben-Eliyahu and Dechter, 1994, page 57]. Definition 4.3.5 (Rank of Literal). Let Π be a head-cycle-free A-Prolog program and S be a context. The rank of a literal l wrt S in Π, denoted by rank(l, S, Π), is min{ p : p P (l, S, Π)}. Definition 4.3.6 (Ranking Function). Let: 1. Π be a head-cycle-free A-Prolog program 2. S be an answer set of Π 3. function f : S N Then f is the ranking function wrt S in Π if f(l) = rank(l, S, Π) for all l S. Definition 4.3.7 (Normal Proof of Literal). Let: 1. Π be a head-cycle-free A-Prolog program 2. S be an answer set of Π 3. l S 4. p P (l, S, Π) 5. f be the ranking function wrt S in Π We say p is a normal proof if for all r p and l body + (r), we have f(l ) < f(h S (r)). Remark 4.3.8. Let: Page 11 of 16

1. Π be a head-cycle-free A-Prolog program 2. S be an answer set of Π 3. f be the ranking function wrt S in Π 4. l S 5. normal p = r 1,..., r n P (l, S, Π) 6. r i p 7. l i body + (r i ). Then: 1. f(l i ) < f(l) 2. r 1,..., r i is a normal proof of h S (r i ) Example 4.3.9 (Nonminimal Subproof of Minimal Proof). Consider this acylic A-Prolog program Π: a b, c. (1) b c1x. (2) c c1x. (3) c1x c1y. (4) c1y. (5) c c2. (6) c2. (7) The sole answer set of Π is S = {a, b, c, c1x, c1y, c2}. The only minimal proofs of literal a wrt S in Π are the two sequences of rules < 5, 4, 3, 2, 1 > and < 5, 4, 2, 3, 1 >. In both these proofs, the subproof of c is < 5, 4, 3 >, which is nonminimal. (The minimal proof of c wrt S in Π is < 7, 6 >.) Lemma 4.3.10. Let: 1. Π 1 and Π 2 be head-cycle-free A-Prolog programs with corresponding answer sets S 1 S 2 2. l S 2 \ S 1 Then for each normal p = r 1,..., r n P (l, S 2, Π 2 ), there exists r p such that r Π 2 \ Π 1. Page 12 of 16

Proof. Let f be the ranking function wrt S 2 in Π 2. We employ induction on f(l). 1. Base step: f(l) = min{f(l ) : l S 2 \ S 1 }. 1.1. To the contrary, assume for every r p, we have r Π 1 Π 2. 1.2. Then r n Π 1. 1.3. As p is normal, for each l body + (r n ), we have f(l ) < f(l), so l S 1. 1.4. Then r n fires wrt S 1. 1.5. As S 1 is an answer set of Π 1, we know S 1 satisfies head(r n ). 1.6. Let l head(r n ). 1.6.1. Case 1 of 2: l = l. We already assumed l S 2 \ S 1. 1.6.2. Case 2 of 2: l l. We have l S 2, so l S 1. 1.7. So S 1 does not satisfy head(r n ), contradiction. 2. Induction step: f(l) max{f(l ) : l S 2 \ S 1 }. 2.1. Induction hypothesis: for each l S 2 \ S 1, let normal p P (l, S 2, Π 2 ), if f(l ) < f(l), then there exists r p such that r Π 2 \ Π 1. 2.2. To the contrary, assume for every r p, we have r Π 1 Π 2. 2.2.1. Case 1 of 2: there exists l body + (r n ) where l S 2 \ S 1. 2.2.1.1. Choose some 1 m n where h S2 (r m ) = l. 2.2.1.2. As p is normal, p = r 1,..., r m is a normal proof of l wrt S 2 in Π 2. 2.2.1.3. Notice f(l ) < f(l). 2.2.1.4. By the induction hypothesis, p contains some r Π 2 \ Π 1. 2.2.1.5. So p also contains r. 2.2.1.6. By our assumption, r Π 1 Π 2, contradiction. 2.2.2. Case 2 of 2: for every l body + (r n ), we have l S 1. 2.2.2.1. Then r n fires wrt S 1. 2.2.2.2. By our assumption, r n Π 1. 2.2.2.3. As S 1 is an answer set of Π 1, we know S 1 satisfies head(r n ). 2.2.2.4. But head(r n ) S 1 =, contradiction. Remark 4.3.11. Let p = r 1,..., r n P (l, S, Π). If p is minimal, then: 1. p is normal 2. l depends on h S (r i ) for all i < n Page 13 of 16

Lemma 4.3.12. Let Π be a nondisjunctive acyclic CR-Prolog program. If Π has answer sets S 1 S 2, then there exist literals l 1 and l 2 in head(π cr ) such that l 1 depends on l 2. Proof. Notations: 1. By the contrapositive of Proposition 4.2.12, there exist abductive supports R 1 and R 2 of Π where head(r 1 ) head(r 2 ). 2. Let R 1 = φ(α(r 1 )) and R 2 = φ(α(r 2 )). 3. Let Π 1 = Π reg R 1 and Π 2 = Π reg R 2. By Lemma 4.2.11, S 1 and S 2 are respectively answer sets of Π 1 and Π 2. We follow these steps: 1. By Lemma 4.2.8, since Π is nondisjunctive, we have R 1 = R 1 and R 2 = R 2. 2. Notice R 1 = R 2 > 0. 3. Then R 1 = R 2 > 0. 4. Observe head(r 1 ) = R 1 and head(r 2 ) = R 2. 5. Thus head(r 1 ) = head(r 2 ) > 0. 6. Recall head(r 1 ) = head(r 1 ) head(r 2 ) = head(r 2 ). 7. Then head(r 1 ) \ head(r 2 ). 8. Select some l 1 head(r 1 ) \ head(r 2 ). 9. Let r 1 be the fact (l 1.) in R 1 \ R 2. 10. Since S 1 is an answer set of Π 1, we have l 1 S 1. 11. Recall S 1 S 2. Then l 1 S 2. 12. As S 2 is an answer set of Π 2, there exists r Π 2 which supports l 1 wrt S 2. 12.1. Case 1 of 2: there exists l body + (r) where l S 2 \ S 1. 12.1.1. Let minimal p P (l, S 2, Π 2 ). 12.1.2. By Lemma 4.3.10, there exists r 2 p where r 2 Π 2 \ Π 1. 12.1.3. Then r 2 R 2 \ R 1 α(π cr ). 12.1.4. Let h S2 (r 2 ) = l 2 head(π cr ). 12.1.5. As p is minimal, l depends on l 2. 12.1.6. Recall l 1 depends on l in r. Page 14 of 16

12.1.7. By transitivity, l 1 depends on l 2. 12.2. Case 2 of 2: body + (r) S 1. We show this case is impossible. 12.2.1. Subcase 1 of 2: r Π 1 Π 2. 12.2.1.1. Notice r supports l 1 wrt S 1. 12.2.1.2. By Lemma 4.2.9, since Π is acyclic, we have r = r 1. 12.2.1.3. However, r Π 2 whereas r 1 Π 1 \ Π 2, contradiction. 12.2.2. Subcase 2 of 2: r Π 2 \ Π 1. 12.2.2.1. So r R 2 \ R 1. 12.2.2.2. Then r is the fact (l 1.), which is exactly r 1. 12.2.2.3. However, we selected r 1 from R 1 \ R 2 while r R 2, contradiction. Remark 4.3.13. If a CR-Prolog program Π is acyclic, then there exists a nondisjunctive acyclic CR-Prolog program Π equivalent to Π [Ben-Eliyahu and Dechter, 1994, page 73, Theorem 4.17]. Theorem 4.3.14 (Antichain Property of CR-Independent Acyclic CR-Prolog Programs). Let Π be an acyclic CR-Prolog program. If Π is cr-independent, then Π has antichain property. Proof. By Remark 4.3.13, there exists a nondisjunctive acyclic CR-Prolog Π equivalent to Π. By the contrapositive of Lemma 4.3.12, Π has antichain property. Therefore, Π has antichain property too. 5 Conclusion We have found a reasonably weak syntactic condition which guarantees that a CR-Prolog program has antichain property: the program being acyclic and cr-independent. The future goal is to further relax this sufficient condition to extend the class of CR-Prolog programs known to have this desired semantic property. 6 Acknowledgment We sincerely appreciate the significant guidance of Dr. Michael Gelfond. This paper includes his proofs of Theorem 3.1.4 and Lemma 4.2.7. We also thank Evgenii Balai for the informative discussions. Page 15 of 16

References Marcello Balduccini and Michael Gelfond. Logic programs with consistency-restoring rules. In International Symposium on Logical Formalization of Commonsense Reasoning, AAAI 2003 Spring Symposium Series, volume 102, 2003. Rachel Ben-Eliyahu and Rina Dechter. Propositional semantics for disjunctive logic programs. Annals of Mathematics and Artificial intelligence, 12(1):53 87, 1994. Esra Erdem, Michael Gelfond, and Nicola Leone. Applications of answer set programming. AI Magazine, 37(3):53 68, 2016. Michael Gelfond and Yulia Kahl. Knowledge representation, reasoning, and the design of intelligent agents: The answer-set programming approach. Cambridge University Press, 2014. Michael Gelfond and Vladimir Lifschitz. The stable model semantics for logic programming. In ICLP/SLP, volume 88, pages 1070 1080, 1988. Page 16 of 16