An Implementation of the IFF Procedure in DALI

Size: px
Start display at page:

Download "An Implementation of the IFF Procedure in DALI"

Transcription

1 An Implementation of the IFF Procedure in DALI Stefania Costantini, Emiliano Sebastiani, Arianna Tocchio 1 Introduction Abductive Logic Programming (ALP) [11] [12] has found broad application as a powerful tool for hypothetical reasoning with incomplete knowledge, as it combines: abduction, that operates by labeling some pieces of information as abducibles, i.e. as possible hypotheses which can be assumed to hold, provided that they are consistent with the given knowledge base; and logic programming, enriched with integrity constraints to further restrict the range of possible hypotheses. In recent years, a variety of proof procedures for ALP have been proposed. A very important one is the IFF procedure of Fung and Kowalski [8]. Among the other proposals, the ACLP procedure [13] integrates abductive reasoning with constraint solving. Some recent procedures are explicitly aimed at improving the IFF. The CIFF [7] procedure is aimed at providing increasing generality on the kind of constraints that can be expressed, also in view of the definition of logical agents and multi-agent systems. On the same line, in the SCIFF procedure [1] abducibles represent hypotheses about agent behaviour; SCIFF deals with the concept of fulfillment, i.e., the correspondence of abduced atoms with events (that a logical agent has perceived) recorded in a history. All these procedures are sound, but have problems with completeness, which is not achieved for the general case. In this paper, we present a novel implementation of the IFF proof procedure. The approach of this paper is indebted to [6], that proposes some abstract argumentationbased proof procedures for assumption-based reasoning (of which abduction is an instance) building on the stable model semantics of [9]. We overcome completeness problems and obtain a correct and complete implementation by adopting a completely different novel approach. Rather that re-implementing the procedure in fact, we translate an ALP program into other formalisms, of which we exploit the inference engines. In particular, our proposal relies upon: Answer Set Programming (ASP), which is a new logic programming paradigm [14] the Answer Set (or equivalently Stable Model) semantics [9]; and the new logic programming language DALI [3] [16], which provides special proactive features, so that one can specify conditions that are to be automatically checked. Precisely, a given ALP program is (automatically) translated into: (i) an ASP program, that generates a superset of the abductive explanations (that are the expected results of the ALP program) and (ii) a DALI program that rules out incorrect solutions. Due to the proactive features of DALI, there is no need of defining a meta-interpreter: rather, the different conditions of each IFF rule are checked concurrently (and, potentially, in parallel) by means of the special DALI mechanism of internal events. 1

2 The advantages of our proposal are: (i) the implementation is correct and complete, relies on available tools (i.e., Answer Set solvers and the DALI interpreter) (ii) it can easily be extended to encompass new features, such as probability of explanations. The limits of our proposal are: (a) we consider only ALP programs that can be transposed into DATALOG programs (on which the Answer Set semantics is defined), i.e., no function symbols are allowed; (b) constraints are limited to those that can be expressed in ASP; (c) we interpret classical negation as negation-as-failure; (d) we disallow disjunction in the definition of constraints. 2 Abductive Logic Programming An abductive logic program is a pair (Th, IC) consisting of a theory Th and a finite set of integrity constraints IC. A theory is a set of so-called iff-definitions: p(x 1,...,X k ) D 1,..., D n The predicate symbol p must not be a special predicate (constraint predicates, =, and ) and there can be at most one iff-definition for every predicate symbol. Each of the disjuncts D i is a conjunction of literals. Negative literals are written as implications (e.g. q(x,y) ). The variables X 1,..., X k are implicitly universally quantified with the scope being the entire definition. Any other variable is implicitly existentially quantified, with the scope being the disjunct in which it occurs. Any predicate that is neither defined nor special is called an abducible. The integrity constraints in the set IC are implications of the following form: L 1... L m A 1... A n. Each of the L i must be a literal (with negative literals again being written in implication form); each of the A i must be an atom. Any variables are understood to be implicitly universally quantified with the scope being the entire implication. A query Q is a conjunction of literals. Variables occurring in Q are implicitly existentially quantified. A theory provides definitions for certain predicates and integrity constraints restrict the range of possible interpretations. A query may be regarded as an observation against the background of the world knowledge encoded in a given abductive logic program. An answer to such a query would then provide an explanation for this observation: it would specify which instances of the abducible predicates have to be assumed to hold for the observation to hold as well. In addition, such an explanation should also validate the integrity constraints. This intuitive account of the semantics of ALP may be formalized as follows. A correct answer to a query Q with respect to an abductive logic program (Th, IC) is a pair (,σ), where is a finite set of ground abducible atoms and σ is a substitution for the free variables in Q, such that: Th Comp( ) = IC Qσ A suitable interpretation of the entailment operator = would the usual consequence relation of first-order logic with the restriction that constraint predicates have to be interpreted according to the semantics of the chosen constraint system and equalities evaluate to true whenever their two arguments are unifiable. Comp( ) stands for the completion of the set of abducibles in, i.e. any ground abducible atom not occurring in is assumed to be false. An ALP program may have no correct answer. In the following, we take abductive explanations to be minimal correct answers, i.e., those such that no subset is a correct answer. 2

3 3 Answer Set Programming Answer Set Programming (ASP) is an emergent paradigm of logic programming [14] based on the Answer Set (or equivalently Stable Model) semantics [9] [10]: each solution to a problem is represented by an Answer Set (also called a Stable Model) of a deductive database/function free logic program encoding the problem itself. The Answer Set semantics is a view of logic programs as sets of inference rules (more precisely, default inference rules). Alternatively, one can see a program as a set of constraints on the solution of a problem, where each answer set represents a solution compatible with the constraints expressed by the program. Consider for instance the simple program {q : not p. p: not q.}: the first rule is read as assuming that p is false, we can conclude that q is true. Vice versa, the second rule is read as assuming that q is false, we can conclude that p is true. This program has two answer sets. In the first one, q is true whereas p is false; in the second one, p is true whereas q is false. Notice that the above program represents an even cycle, i.e. each atom depends indirectly (and via negation) upon itself, through an even number of dependencies, corresponding to an even number of rules. Then, in ASP we are able to manage cyclic negative dependencies that represent incomplete knowledge or denote the possibility of different alternatives, by representing each consistent choice by means of an Answer Set. Unlike with other semantics, a program may have several answer sets (as before), or may have no answer set, because conclusions are included in an answer set only if they can be justified. The following program has no answer set: {a : notb. b : notc. c: nota.} The reason is that in every minimal model of this program there is a true atom that depends (in the program) on the negation of another true atom. Whenever a program has no answer sets, one says that the program is inconsistent. Correspondingly, checking for consistency means checking for the existence of answer sets. To solve a problem using ASP means to write a logic program whose answer sets correspond to solutions, and then find a solution using an Answer Set solver. The basic approach to writing such a program is known as the generate-and-test strategy. First one writes a group of rules for defining the search space of potential solutions i.e., an easy-to-describe superset of the set of solutions. Then one adds a constraints (rules with empty head) that suitably prune the set solutions. The search space is often generated by using even cycles of the form described above. For each proposition a that can be either true or false, one introduces a new atom, say no a, and adds to the program the cycle {a : notno a. no a: nota.}. This generates two candidate answer sets, one where a is true and the other one where a is false (and no a true), namely {a} and {no a}. Analogously, with any even number of atoms, say a 1,...,a n with n even: the even cycle a 1 : notno a 1,no a 1 : nota 2,..., a n : notno a n,no a n : nota 1 has two answer sets, namely {a 1,...,a n } and {no a 1,...,no a n }. In the rest of the paper, when saying an even cycle involving a 1,...,a n we mean an even cycle with these structure, and these answer sets. The two partial answer sets of all the even cycles are then combined in all possible ways, thus generating the whole search space. ASP solvers take as input the ground instantiation of given program. Then, in program rules each variable must be directly or indirectly characterized by domain 3

4 predicates that define ranges of constants. Given for instance rule p(x) : q(x), one must actually write it in the form p(x) : dom(x),q(x) where the simplest option is that dom(x) defines exhaustively all constants occurring in the program. The reader may refer to the web site [17] for many examples about ASP and for references to the existing solvers. 4 The DALI language The DALI language is mainly aimed at modeling Agents and Multi-Agent systems in computational logic [3] [4] [16]. In the proposed implementation of the IFF procedure we use DALI instead of prolog for defining a filter program that verifies the correctness of a candidate abductive hypothesis because, in the line of [12] [7] [1] and many others, we want to be able to define logical agents capable of abductive reasoning. DALI is an Active Logic Programming that enhances prolog-like logic programming by means of patterns for reactivity, proactivity and memory. The formalization models these concepts by introducing different kinds of events, with a suitable treatment. There are in particular the classes of external, present, past and internal events. Events are managed by special rules, called reactive rules. Proactivity, i.e., the ability of activating inference processes without user intervention according to suitable (predefined though customizable) conditions is what makes the language active, and is based on the mechanism of internal events. Any atomic proposition occurring in the head of a rule can be designated to be treated as an internal event, by means of a specific directive to the language interpreter. Then, the interpreter will repeatedly try to prove the proposition, according to the frequency of attempts and the terminating conditions specified in the directive. As soon as the proof succeeds, the proposition is interpreted as a stimulus for triggering further inference, i.e., as an event that, rather that coming form the outside, has been originated internally in the program. This further inference is understood as a reaction to this event, and specified in the body of a reactive rule, that is intended to be executed when its head (the internal event) is true. The internal event mechanism then implies then definition of two rules. The first one contains the conditions that must be true so that the reaction (in the second rule) may happen. For the sake of readability, in the second rule the internal event is indicated with postfix I, and the new connective :> is adopted to indicate that the body is attempted whenever the head has been proved. IntEvent: Conditions IntEvent I :> Body If the reactive rule is omitted, then it is implicitly of the form IntEvent I :> true, i.e., it does nothing. Consider the following simple example, where the program concludes that it is late if it runs after midnight and, if so, decides (as a reaction) to go home. late: after midnight. late:> go home. 4

5 After reaction, every event eis recorded as a past event with syntax ep : timestamp where the timestamp can be omitted whenever not needed. In the example, after reaction the program will contain the new fact latep : t. Past events and are kept (and then possibly removed) according to user indication. Apart from event management, DALI is close in syntax and semantics to the plain Hornclause language. The DALI inference engine is based on an extended resolution [3] corresponding to an operational model [16]. The language semantics is defined as an evolutionary semantics [5]. Namely, the semantics of a given DALI program P is defined in terms of a modified program Ps, where reactive and proactive rules are reinterpreted in terms of standard Horn Clause rules. The reception of each kind of event is formalized as a suitable program transformation step. Then, one will have an initial program P 0 = Ps which, according to these programtransformation steps (each one transforming P i into P i+1 ), gives rise to a Program Evolution Sequence PE = [P 0,...,P n ]. The program evolution sequence will have a corresponding Semantic Evolution Sequence ME = [M 0,...,M n ] where M i is the semantic account of P i. In the case of DALI, this is either the least Herbrand model or the well-founded model if one uses negation-as-failure (the reader may refer for instance to [15] for definitions). The couple P E; M E is the Evolutionary Semantics of program P, corresponding to the particular sequence of events that has happened, and to the order in which they have been considered. Whenever an internal event a becomes true in the semantics of P j, the related program transformation step will asserted a as a new fact, thus deriving P j+1. There, the new fact will allow reaction to be triggered, and a to be then asserted as a past event ap. 5 An ASP+DALI implementation of the IFF Procedure In this section we present the proposed implementation of the IFF procedure. We make the simplifying assumption that each integrity constraint in IC has an atom as its head,i.e., that it is of the form L 1... L m A where A is an atom. Also, we assume to restrict constraint predicates occurring in both iff rules and IC constraints (equalities, inequalities, etc.) to those that are coped with by Answer Set solvers. As a running example, we consider the following variation of a well-known example proposed by R. A. Kowalski. Example 5.1 The theory T says that grass can be wet whenever (if and only if) either it rained, or the sprinkler had been activated, or there is dew on it. Then, it is stated that the weather is cold. The integrity constraint part IC state that rain is possible only if the weather is cloudy, dow requires cold wet weather, and that, actually, it was not cloudy. Finally, the abducibles part Ab state which are the fact that we can assume to be true to account for the given situation, assuming that a consistent explanation is possible. T: grass-is-wet rain-last-night sprinkler-was-on night-dew. cold-weather. IC: cloudy-last-night rain-last-night. 5

6 night-dew cold-weather, wet-weather. false cloudy-last-night. Ab: rain-last-night, sprinkler-was-on, cloudy-last-night, wet-weather Q: grass-is-wet In this case, the weather not being cloudy rules out rain. {sprinkler was on} and {wet weather, dew} are instead abductive explanations, i.e., minimal correct answers. Given ALP program P, we do the following: 1. Translate (in a standard way) P into: an ASP program P and a DALI program P. This involves a preliminary pre-processing of P into an intermediate form P i as described below. 2. Let S be the set M 1,ldots,M n of the answer sets of P, obtained by means of an answer set solver. As we will see, S corresponds to a superset of the abductive explanations of P. Then for each M i : (a) Get rid of some of the auxiliary predicates, so as to restrict the remaining atoms to be ground instances of abducibles and then we assert these atoms as facts (unit clauses) in P. (b) Run P augmented with the new facts. As we will see, P accepts only if M i corresponds to an abductive explanation. (c) If P accepts, obtain the abductive explanation E Mi corresponding to M i by a final simple post-processing. The pre-processing step is defined as follows: Definition 5.1 The intermediate form P i If an abducible predicate p occurs in more than one rule of T, say in a number s of rules, it is renamed into p 1, p 2,...p s so that the rules do not interfere. If s is odd, we also conventionally add p s+1 so as to obtain an even number of versions of p. Each rule of T, of the form p(x 1,...,X k ) D 1,..., D n is rewritten into the set of rules: p(x 1,...,X k ) d 1 (X 1,...,X k ),..., d n (X 1,...,X k ) d i (X 1,...,X k ) D i, i n where the d i s are new atoms. The advantages of the intermediate form are that of: having atomic conditions on the right-hand-side of the iff rules; making iff rules independent of each other by standardizing abducibles apart. Clearly, later on it will be necessary to relate renamed abducibles, in that if an abductive explanations contains, e.g., p 1 (Args) it must contain also p 2 (Args), etc. for each renamed version. 6

7 5.1 The ASP program P Definition 5.2 Given an ALP program P, the corresponding ASP program P is obtained as follows from the intermediate version P i of P : 1. Every iff rule of the form p(x 1,...,X k ) d 1 (X 1,...,X k ),..., d n (X 1,...,X k ) is rewritten as the set of rules p(x 1,...,X k ) : d 1 (X 1,...,X k ). p(x 1,...,X k ) : d n (X 1,...,X k ). 2. Integrity constraints of IC, which are of the form H Body, are rewritten as H : Body. 3. For each abducible atom p(x 1,...,X m ) Ab: (a) if p has not been renamed, add the even cycle involving p; (b) if p has been renamed into p 1,..., p r add the even cycle involving p 1,..., p r. 4. Given query Q in P, add rules: query : Q. : query. where query is a fresh auxiliary predicate. 5. In all the above rules, for each variable X occurring therein add in the body of the rule the subgoal dom(x) and, for each constant c occurring in P, add the unit clause dom(c) where dom is a fresh auxiliary predicate. Each answer set M of P (if any) corresponds to a candidate abductive explanation E M of P by selecting only the atoms corresponding to abducible predicates and collapsing each tuple of atoms p1(args),..., p r (args) corresponding to renamed abducible predicates (if any) into the single atom p(args). Then, the answer sets M 1,ldots,M n of P correspond to a set of candidate abductive explanations E = {E M1,ldots,E Mn }. Example 5.2 Below is the program P corresponding to our running example (where for brevity the predicate names are shortened in an obvious way). Since the program is propositional, no domain predicate is needed. The pre-processing phase in this case changes nothing. grasswet : rain. grasswet : sprinkler. grasswet : dew. cold. cloudy : rain. dew : wet, cold. 7

8 : cloudy. cloudy : not nocloudy. nocloudy : not cloudy. rain : not norain. norain : not rain. sprinkler : not nosprinkler. nosprinkler : not sprinkler. wet : not nowet. nowet : not wet. query : grasswet. : not query. Its answer sets are the following: M 1 = {query,grasswet, dew, wet, nosprinkler, norain, nocloudy, cold} M 2 = {query,grasswet, sprinkler, nowet, nodew, norain, nocloudy, cold} M 3 = {query,grasswet, sprinkler, wet, dew, norain, nocloudy, cold} Notice that in all of them we have norain and nocloudy because of the integrity constraints in IC that rule out cloudy and consequently rain. These answer sets correspond to candidate abductive explanations: E M1 = {wet,dew} E M2 = {sprinkler} E M3 = {sprinkler,wet,dew} where E M1 and E M2 are abductive explanations as they are minimal. Theorem 5.1 For every abductive explanation E of P, E E. Proof 1 (Sketch) All the iff rules of P are represented in the if direction, and all the integrity constraints are represented as such. The ASP constraint : query forces the given query Q to be true in all the answer sets, which requires selecting suitable combinations of (ground versions of) the abducibles. These combinations are made available by the even cycles, provided that the even cycle involving any renamed abducible predicates p guarantees that if p i (args) is assumed, all the sibling versions p1(args),..., p r (args) are coherently assumed, and can then be collapsed into one. This proves the hypothesis. Clearly however, splitting iff rules into one rule for each disjunct means relaxing the minimality assumption, and then there will some E Mj which are not minimal as redundant assumptions are made. 5.2 The DALI program P Definition 5.3 Given an ALP program P, the corresponding DALI program P is obtained as follows from the intermediate version P i of P, assuming that the component Th of P contains a number r of iff rules: 1. The t-th iff rule occurring in Th (t r), of the form p(x 1,...,X k ) d 1 (X 1,...,X k ),..., d n (X 1,...,X k ) is rewritten as the rule: 8

9 ifft : p(x 1,...,X k ). where ifft is designated to be an internal event, plus a set of n rules, where for j k the first rule has the form: p(x 1,..., X k ) : d 1 (X 1,..., X k ), not d 2 (X 1,..., X k ),..., not d n (X 1,..., X k ). and the j-th rule has the form: p(x 1,..., X k ) : d j (X 1,..., X k ), not d 1 (X 1,..., X k ),..., not d j 1 (X 1,..., X k ), not d j+1 (X 1,...,X k ),..., not d n (X 1,...,X k ). 2. Each rule of the form H Body defining the d i s is rewritten as H : Body. 3. The two following rules are finally added: iff : iff1p,...,iffrp. iffi :> accepta. where accepta is an action, that communicates a positive result to the environment where the program will be situated (in the simplest case, the program can print something). Definition 5.4 (Minimality Check) Given a candidate abductive explanation E Mi returned by P, the corresponding minimality check is performed by: (i) extracting from M i all atoms A corresponding to abducible predicates (so that all versions of renamed abductive predicates remain distinct, and thus the different iff clauses are independent); (ii) adding them as unit clause to P ; (iii) running P. The minimality check is successfully if P accepts, i.e., executes the accepta action. Example 5.3 Below is the program P corresponding to our running example. iff1 : grasswet. grasswet : rain, not sprinkler, not dew. grasswet : sprinkler, not rain, not dew. grasswet : dew, not rain, not sprinkler. iff1 : cold. cold. iff : iff1p,iff2p. iffi :> accepta. Predicates iff1, iff2 and iff are internal events, i.e., they are repeatedly attempted concurrently. Assume to add any of the candidate abductive explanations E Mi to the program (by adding its atoms as unit clauses). Each of the iff1 and iff2 checks minimality of the corresponding iff rule by checking that only one disjunct holds. Whenever they succeed, there is no reaction but they become past events, with syntax iff1p, iff2p. If they both succeed, the internal event iff, which has the role of collecting the outcome 9

10 of all the iff rules, will succeed as well. The reaction to this internal event will be that of accepting, thus certifying minimality of the candidate explanation which is being examined. Clearly, E M3 will not be accepted as both sprinkler and dew hold. We have not provided an explicit rejection since, in the view of agents reasoning within resource bounds, a candidate explanation is assumed to be rejected whenever it is not accepted within a given time limit. Theorem 5.2 Given a candidate explanation E, DALI program P accepts if and only if E it is an abductive explanation. Proof 2 (Sketch) Trivially, program P checks that only one disjunct of each iff rule holds. This relies upon the fact that abducibles that occur in several rules are renamed, though they are coherently generated together by P. Corollary The implementation P + P is a complete and a correct implementation of IFF procedure. The advantages of the DALI implementation upon a prolog implementation are at least the following: Program P can be part of a wider agent program. In an agent context we may not have a whole candidate abductive explanation given from the start; rather, its elements can reach the agent at different times: the mechanism of internal events that are repeatedly attempted guarantees that each iff rule can be processed as soon as the related abductive assumptions become known (though some limited modifications to the above program are needed, to rule out other alternatives as soon as one is verified). We can state a limit time threshold for acceptance by simply making it explicit in the directive related to the internal event iff. 5.3 Concluding Remarks In conclusion, we observe that our implementation copes with the IFF proof procedure with simplifications and analysis of general cases, corresponding (with some simplifying assumptions) to the formulation of Fung and Kowalski. We have basically exploited logical equivalences for rewriting of iff clauses into other logic languages. This is the key of our procedure, and has allowed us to obtain soundness and completeness. We have overcome the most difficult part of previous formulations, i.e., the individuation of general cases, thus excluding every ambiguity that can exist in choosing a reduction rule instead of another one. We are experimenting possible improvements, such as a declarative definition of the probability (or weight) of alternative explanations or preferences among abducibles. To this aim, we can either exploit existing features of ASP, or take profit from extensions like for instance LPODS [2] where one can write expressions such as A B, where the new connective stands for ordered disjunction. The expression intuitively stands for: if possible A, but if A is impossible then (at least) B. If there are several disjuncts, the first one represents the best preferred option, the second one represents the second best option, etc. 10

11 References [1] Marco Alberti, Marco Gavanelli, Evelina Lamma, Paola Mello, and Paolo Torroni. The SCIFF abductive proof-procedure. In Stefania Bandini and Sara Manzoni (eds), AI*IA 2005: Advances in Artificial Intelligence: Proceedings of the 9th Congress of the Italian Association for Artificial Intelligence. LNAI 3673, pp , Springer Verlag, Berlin, [2] G. Brewka. Logic Programming with Ordered Disjunction, In Proceedings of AAAI-02, Edmonton, Canada, [3] S. Costantini and A. Tocchio. A Logic Programming Language for Multi-agent Systems. In S. Flesca, S. Greco, N. Leone, G. Ianni (eds.), Logics in Artificial Intelligence, Proceedings of the 8th European Conference, JELIA LNAI 2424, Springer-Verlag, Berlin, [4] S. Costantini, A. Tocchio, The DALI Logic Programming Agent-Oriented Language. In J. J. Alferese and J. Leite(eds.), Logics in Artificial Intelligence, Proceedings of the 9th European Conference, Jelia LNAI 3229, Springer- Verlag, Berlin, [5] S. Costantini, A. Tocchio. About declarative semantics of logic-based agent languages. In M. Baldoni and P. Torroni (eds.), Declarative Agent Languages and Technologies, Post-Proceedings of DALT LNAI 3229, Springer-Verlag, Germany, [6] P.M. Dung, P. Mancarella, and F. Toni. Argumentation-based proof procedures for credulous and sceptical non-monotonic reasoning. In A.C. Kakas and F. Sadri (eds.), Computational Logic: Logic Programming and Beyond Essays in Honour of Robert A. Kowalski, pp LNAI 2408, Springer Verlag, Berlin, [7] U. Endriss P. Mancarella F. Sadri G. Terreni F. Toni. The CIFF Proof Procedure for Abductive Logic Programming with Constraints. In J. J. Alferese and J. Leite(eds.), Logics in Artificial Intelligence, Proceedings of the 9th European Conference, Jelia LNAI 3229, Springer-Verlag, Berlin, [8] T. H. Fung and R. A. Kowalski. The IFF proof procedure for abductive logic programming. Journal of Logic Programming, 33(2): , [9] M. Gelfond and V. Lifschitz. The stable model semantics for logic programming. in: Proceedings of 5th JICSLP conference, pp The MIT Press, [10] M. Gelfond and V. Lifschitz. Classical negation in logic programs and disjunctive databases. New Generation Computing, pp , [11] A. C. Kakas, R. A. Kowalski, and F. Toni. Abductive logic programming. Journal of Logic and Computation, 2(6), pp , [12] A. C. Kakas, R. A. Kowalski, and F. Toni. The role of abduction in logic programming. In Handbook of Logic in Artificial Intelligence and Logic Programming, volume 5, pages Oxford University Press,

12 [13] A. C. Kakas, A. Michael, and C. Mourlas. ACLP: Abductive constraint logic programming. Journal of Logic Programming, 44, pp , [14] V. Lifschitz. Answer Set Planning. in: D. De Schreye (ed.) Proceedings of the 1999 International Conference on Logic Programming ICLP 99 (invited talk), pp The MIT Press, [15] H. Przymusinska and T. C. Przymusinski. Semantic issues in deductive databases and logic programs. in: R.B. Banerji (eds.) Formal Techniques in Artificial Intelligence, a Sourcebook, Elsevier Sc. Publ. B.V. (North Holland), [16] A. Tocchio. Multi-Agent sistems in computational logic, Ph.D. Thesis, Dipartimento di Informatica, Universitá degli Studi di L Aquila, [17] WASP Teaching ASP Website. By the Working Group on Answer Set Programming (WASP), URL: 12

The CIFF Proof Procedure for Abductive Logic Programming with Constraints

The CIFF Proof Procedure for Abductive Logic Programming with Constraints The CIFF Proof Procedure for Abductive Logic Programming with Constraints U. Endriss 1, P. Mancarella 2, F. Sadri 1, G. Terreni 2, and F. Toni 1,2 1 Department of Computing, Imperial College London Email:

More information

An Experimental CLP Platform for Integrity Constraints and Abduction

An Experimental CLP Platform for Integrity Constraints and Abduction An Experimental CLP Platform for Integrity Constraints and Abduction Slim Abdennadher and Henning Christiansen Computer Science Department, University of Munich Oettingenstr. 67, 80538 München, Germany

More information

Answer Sets and the Language of Answer Set Programming. Vladimir Lifschitz

Answer Sets and the Language of Answer Set Programming. Vladimir Lifschitz Answer Sets and the Language of Answer Set Programming Vladimir Lifschitz Answer set programming is a declarative programming paradigm based on the answer set semantics of logic programs. This introductory

More information

Interpreting Abduction in CLP

Interpreting Abduction in CLP Interpreting Abduction in CLP M. Gavanelli 1, E. Lamma 1, P. Mello 2, M. Milano 2, and P. Torroni 2 1 Dip. di Ingegneria, Università di Ferrara Via Saragat 1, 44100 Ferrara, Italy {mgavanelli, elamma}@ing.unife.it

More information

Integration of abductive reasoning and constraint optimization in SCIFF

Integration of abductive reasoning and constraint optimization in SCIFF Integration of abductive reasoning and constraint optimization in SCIFF Marco Gavanelli, Marco Alberti, and Evelina Lamma ENDIF, University of Ferrara, CENTRIA, Universidade Nova de Lisboa, WWW: http://www.ing.unife.it/docenti/marcogavanelli

More information

Choice Logic Programs and Nash Equilibria in Strategic Games

Choice Logic Programs and Nash Equilibria in Strategic Games Choice Logic Programs and Nash Equilibria in Strategic Games Marina De Vos and Dirk Vermeir Dept. of Computer Science Free University of Brussels, VUB Pleinlaan 2, Brussels 1050, Belgium Tel: +32 2 6293308

More information

Constraint Solving. Systems and Internet Infrastructure Security

Constraint Solving. Systems and Internet Infrastructure Security Systems and Internet Infrastructure Security Network and Security Research Center Department of Computer Science and Engineering Pennsylvania State University, University Park PA Constraint Solving Systems

More information

Context-Based Commonsense Reasoning in the DALI Logic Programming Language

Context-Based Commonsense Reasoning in the DALI Logic Programming Language Context-Based Commonsense Reasoning in the DALI Logic Programming Language Stefania Costantini and Arianna Tocchio Università degli Studi di L Aquila Dipartimento di Informatica Via Vetoio, Loc. Coppito,

More information

Logic Programming and Reasoning about Actions

Logic Programming and Reasoning about Actions Chapter 4 Logic Programming and Reasoning about Actions [Chitta Baral & Michael Gelfond] In this chapter we discuss how recent advances in logic programming can be used to represent and reason about actions

More information

HANDBOOK OF LOGIC IN ARTIFICIAL INTELLIGENCE AND LOGIC PROGRAMMING

HANDBOOK OF LOGIC IN ARTIFICIAL INTELLIGENCE AND LOGIC PROGRAMMING HANDBOOK OF LOGIC IN ARTIFICIAL INTELLIGENCE AND LOGIC PROGRAMMING Volume 5 Logic Programming Edited by DOV M. GABBAY and C. J. HOGGER Imperial College of Science, Technology and Medicine London and J.

More information

An Experimental CLP Platform for Integrity Constraints and Abduction

An Experimental CLP Platform for Integrity Constraints and Abduction An Experimental CLP Platform for Integrity Constraints and Abduction Slim Abdennadher ½ and Henning Christiansen ¾ ½ ¾ Computer Science Department, University of Munich Oettingenstr. 67, 80538 München,

More information

Part I Logic programming paradigm

Part I Logic programming paradigm Part I Logic programming paradigm 1 Logic programming and pure Prolog 1.1 Introduction 3 1.2 Syntax 4 1.3 The meaning of a program 7 1.4 Computing with equations 9 1.5 Prolog: the first steps 15 1.6 Two

More information

Propositional Theories are Strongly Equivalent to Logic Programs

Propositional Theories are Strongly Equivalent to Logic Programs Under consideration for publication in Theory and Practice of Logic Programming 1 Propositional Theories are Strongly Equivalent to Logic Programs Pedro Cabalar Department of Computer Science, University

More information

Integrity Constraints (Chapter 7.3) Overview. Bottom-Up. Top-Down. Integrity Constraint. Disjunctive & Negative Knowledge. Proof by Refutation

Integrity Constraints (Chapter 7.3) Overview. Bottom-Up. Top-Down. Integrity Constraint. Disjunctive & Negative Knowledge. Proof by Refutation CSE560 Class 10: 1 c P. Heeman, 2010 Integrity Constraints Overview Disjunctive & Negative Knowledge Resolution Rule Bottom-Up Proof by Refutation Top-Down CSE560 Class 10: 2 c P. Heeman, 2010 Integrity

More information

An Abductive Framework for General Logic Programs and other Nonmonotonic Systems

An Abductive Framework for General Logic Programs and other Nonmonotonic Systems An Abductive Framework for General Logic Programs and other Nonmonotonic Systems Gerhard Brewka Kurt Konolige GMD, Postfach 12 40 SRI International 5205 Sankt Augustin, Germany 333 Ravenswood Ave Menlo

More information

Foundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution

Foundations of AI. 9. Predicate Logic. Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Foundations of AI 9. Predicate Logic Syntax and Semantics, Normal Forms, Herbrand Expansion, Resolution Wolfram Burgard, Andreas Karwath, Bernhard Nebel, and Martin Riedmiller 09/1 Contents Motivation

More information

Infinite Derivations as Failures

Infinite Derivations as Failures Infinite Derivations as Failures Andrea Corradi and Federico Frassetto DIBRIS, Università di Genova, Italy name.surname@dibris.unige.it Abstract. When operating on cyclic data, programmers have to take

More information

Forcing in disjunctive logic programs

Forcing in disjunctive logic programs Forcing in disjunctive logic programs Marina De Vos Free University of Brussels, VUB marinadv@tinf1vubacbe Dirk Vermeir Free University of Brussels, VUB dvermeir@vubacbe Abstract We propose a semantics

More information

COMP4418 Knowledge Representation and Reasoning

COMP4418 Knowledge Representation and Reasoning COMP4418 Knowledge Representation and Reasoning Week 3 Practical Reasoning David Rajaratnam Click to edit Present s Name Practical Reasoning - My Interests Cognitive Robotics. Connect high level cognition

More information

A Labelling Based Justification Status of Arguments

A Labelling Based Justification Status of Arguments A Labelling Based Justification Status of Arguments Yining Wu Faculty of Sciences, Technology and Communication University of Luxembourg, Luxembourg Abstract. In this paper, we define a labelling based

More information

An Algorithm for Computing Semi-Stable Semantics

An Algorithm for Computing Semi-Stable Semantics An Algorithm for Computing Semi-Stable Semantics Martin Caminada Department of Information and Computing Sciences, Utrecht University Technical Report UU-CS-2007-010 www.cs.uu.nl ISSN: 0924-3275 An Algorithm

More information

A proof-producing CSP solver: A proof supplement

A proof-producing CSP solver: A proof supplement A proof-producing CSP solver: A proof supplement Report IE/IS-2010-02 Michael Veksler Ofer Strichman mveksler@tx.technion.ac.il ofers@ie.technion.ac.il Technion Institute of Technology April 12, 2010 Abstract

More information

Logical reconstruction of RDF and ontology languages

Logical reconstruction of RDF and ontology languages Logical reconstruction of RDF and ontology languages Jos de Bruijn 1, Enrico Franconi 2, and Sergio Tessaris 2 1 Digital Enterprise Research Institute, University of Innsbruck, Austria jos.debruijn@deri.org

More information

Order and Negation as Failure

Order and Negation as Failure Order and Negation as Failure Davy Van Nieuwenborgh and Dirk Vermeir Dept of Computer Science Vrije Universiteit Brussel, VUB dvnieuwe,dvermeir @vubacbe Abstract We equip ordered logic programs with negation

More information

Module 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur

Module 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur Module 6 Knowledge Representation and Logic (First Order Logic) 6.1 Instructional Objective Students should understand the advantages of first order logic as a knowledge representation language Students

More information

Reasoning in Attempto Controlled English: Non-Monotonicity

Reasoning in Attempto Controlled English: Non-Monotonicity Reasoning in Attempto Controlled English: Non-Monotonicity Norbert E. Fuchs Department of Informatics & Institute of Computational Linguistics University of Zurich fuchs@ifi.uzh.ch http://attempto.ifi.uzh.ch/

More information

Formal Predicate Calculus. Michael Meyling

Formal Predicate Calculus. Michael Meyling Formal Predicate Calculus Michael Meyling May 24, 2013 2 The source for this document can be found here: http://www.qedeq.org/0_04_07/doc/math/qedeq_formal_logic_v1.xml Copyright by the authors. All rights

More information

Towards a Logical Reconstruction of Relational Database Theory

Towards a Logical Reconstruction of Relational Database Theory Towards a Logical Reconstruction of Relational Database Theory On Conceptual Modelling, Lecture Notes in Computer Science. 1984 Raymond Reiter Summary by C. Rey November 27, 2008-1 / 63 Foreword DB: 2

More information

nfn2dlp: A Normal Form Nested Programs Compiler

nfn2dlp: A Normal Form Nested Programs Compiler nfn2dlp: A Normal Form Nested Programs Compiler Annamaria Bria, Wolfgang Faber, and Nicola Leone Department of Mathematics, University of Calabria, 87036 Rende (CS), Italy {a.bria,faber,leone}@mat.unical.it

More information

Exploiting Unfounded Sets for HEX-Program Evaluation

Exploiting Unfounded Sets for HEX-Program Evaluation Exploiting Unfounded Sets for HEX-Program Evaluation Thomas Eiter, Michael Fink, Thomas Krennwallner, Christoph Redl, Peter Schller redl@kr.tuwien.ac.at September 27, 2012 Redl C. (TU Vienna) HEX-Programs

More information

CS 512, Spring 2017: Take-Home End-of-Term Examination

CS 512, Spring 2017: Take-Home End-of-Term Examination CS 512, Spring 2017: Take-Home End-of-Term Examination Out: Tuesday, 9 May 2017, 12:00 noon Due: Wednesday, 10 May 2017, by 11:59 am Turn in your solutions electronically, as a single PDF file, by placing

More information

Preferred Arguments are Harder to Compute than Stable Extensions

Preferred Arguments are Harder to Compute than Stable Extensions Preferred Arguments are Harder to Compute than Stable Extensions Yannis Dimopoulos Bernhard Nebel Francesca Toni University of Cyprus Universitat Freiburg Imperial College Dept. of Computer Science Institut

More information

Essential Gringo (Draft)

Essential Gringo (Draft) Essential Gringo (Draft) Vladimir Lifschitz, University of Texas 1 Introduction The designers of the Abstract Gringo language AG [Gebser et al., 2015a] aimed at creating a relatively simple mathematical

More information

Range Restriction for General Formulas

Range Restriction for General Formulas Range Restriction for General Formulas 1 Range Restriction for General Formulas Stefan Brass Martin-Luther-Universität Halle-Wittenberg Germany Range Restriction for General Formulas 2 Motivation Deductive

More information

Qualitative constraint enforcement in advanced policy specification

Qualitative constraint enforcement in advanced policy specification Qualitative constraint enforcement in advanced policy specification Alessandra Mileo 1 and Torsten Schaub 2 1 Dipartimento di Informatica e Comunicazione, Universitá degli Studi di Milano-Bicocca Lab.

More information

CSL105: Discrete Mathematical Structures. Ragesh Jaiswal, CSE, IIT Delhi

CSL105: Discrete Mathematical Structures. Ragesh Jaiswal, CSE, IIT Delhi is another way of showing that an argument is correct. Definitions: Literal: A variable or a negation of a variable is called a literal. Sum and Product: A disjunction of literals is called a sum and a

More information

Declarative Programming. 2: theoretical backgrounds

Declarative Programming. 2: theoretical backgrounds Declarative Programming 2: theoretical backgrounds 1 Logic Systems: structure and meta-theoretical properties logic system syntax semantics proof theory defines which sentences are legal in the logical

More information

A Model-Theoretic Counterpart of Loop Formulas

A Model-Theoretic Counterpart of Loop Formulas A Model-Theoretic Counterpart of Loop Formulas Joohyung Lee Department of Computer Sciences The University of Texas at Austin Austin, TX 78712, USA appsmurf@cs.utexas.edu Abstract In an important recent

More information

Logic Programming and Resolution Lecture notes for INF3170/4171

Logic Programming and Resolution Lecture notes for INF3170/4171 Logic Programming and Resolution Lecture notes for INF3170/4171 Leif Harald Karlsen Autumn 2015 1 Introduction This note will explain the connection between logic and computer programming using Horn Clauses

More information

Model checking for nonmonotonic logics: algorithms and complexity

Model checking for nonmonotonic logics: algorithms and complexity Model checking for nonmonotonic logics: algorithms and complexity Riccardo Rosati Dipartimento di Informatica e Sisteinistica Universita di Roma "La Sapienza" Via Salaria 113, 00198 Roma, Italy rosati@dis.unirornal.it

More information

DATABASE THEORY. Lecture 18: Dependencies. TU Dresden, 3rd July Markus Krötzsch Knowledge-Based Systems

DATABASE THEORY. Lecture 18: Dependencies. TU Dresden, 3rd July Markus Krötzsch Knowledge-Based Systems DATABASE THEORY Lecture 18: Dependencies Markus Krötzsch Knowledge-Based Systems TU Dresden, 3rd July 2018 Review: Databases and their schemas Lines: Line Type 85 bus 3 tram F1 ferry...... Stops: SID Stop

More information

Semantic Forcing in Disjunctive Logic Programs

Semantic Forcing in Disjunctive Logic Programs Semantic Forcing in Disjunctive Logic Programs Marina De Vos and Dirk Vermeir Dept of Computer Science Free University of Brussels, VUB Pleinlaan 2, Brussels 1050, Belgium Abstract We propose a semantics

More information

Building a Knowledge Base System for an integration of Logic Programming and Classical Logic

Building a Knowledge Base System for an integration of Logic Programming and Classical Logic Building a Knowledge Base System for an integration of Logic Programming and Classical Logic Marc Denecker and Joost Vennekens Department Computer Science, Katholieke Universiteit Leuven Celestijnenlaan

More information

Conflict-driven ASP Solving with External Source Access

Conflict-driven ASP Solving with External Source Access Conflict-driven ASP Solving with External Source Access Thomas Eiter, Michael Fink, Thomas Krennwallner, Christoph Redl redl@krtuwienacat September 05, 2012 Redl C (TU Vienna) HEX-Programs September 05,

More information

8. Negation 8-1. Deductive Databases and Logic Programming. (Sommer 2017) Chapter 8: Negation

8. Negation 8-1. Deductive Databases and Logic Programming. (Sommer 2017) Chapter 8: Negation 8. Negation 8-1 Deductive Databases and Logic Programming (Sommer 2017) Chapter 8: Negation Motivation, Differences to Logical Negation Syntax, Supported Models, Clark s Completion Stratification, Perfect

More information

Programming Languages Third Edition

Programming Languages Third Edition Programming Languages Third Edition Chapter 12 Formal Semantics Objectives Become familiar with a sample small language for the purpose of semantic specification Understand operational semantics Understand

More information

Resolution (14A) Young W. Lim 6/14/14

Resolution (14A) Young W. Lim 6/14/14 Copyright (c) 2013-2014. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free

More information

Operational Semantics

Operational Semantics 15-819K: Logic Programming Lecture 4 Operational Semantics Frank Pfenning September 7, 2006 In this lecture we begin in the quest to formally capture the operational semantics in order to prove properties

More information

Lecture 17 of 41. Clausal (Conjunctive Normal) Form and Resolution Techniques

Lecture 17 of 41. Clausal (Conjunctive Normal) Form and Resolution Techniques Lecture 17 of 41 Clausal (Conjunctive Normal) Form and Resolution Techniques Wednesday, 29 September 2004 William H. Hsu, KSU http://www.kddresearch.org http://www.cis.ksu.edu/~bhsu Reading: Chapter 9,

More information

On the implementation of a multiple output algorithm for defeasible argumentation

On the implementation of a multiple output algorithm for defeasible argumentation On the implementation of a multiple output algorithm for defeasible argumentation Teresa Alsinet 1, Ramón Béjar 1, Lluis Godo 2, and Francesc Guitart 1 1 Department of Computer Science University of Lleida

More information

Lecture 4: January 12, 2015

Lecture 4: January 12, 2015 32002: AI (First Order Predicate Logic, Interpretation and Inferences) Spring 2015 Lecturer: K.R. Chowdhary Lecture 4: January 12, 2015 : Professor of CS (VF) Disclaimer: These notes have not been subjected

More information

Semantics for Dynamic Logic Programming: A Principle-Based Approach

Semantics for Dynamic Logic Programming: A Principle-Based Approach Semantics for Dynamic Logic Programming: A Principle-Based Approach José J. Alferes 1, Federico Banti 1, Antonio Brogi 2, and João A. Leite 1 1 CENTRIA, Universidade Nova de Lisboa, Portugal, {jja,banti,jleite}@di.fct.unl.pt

More information

Data integration lecture 2

Data integration lecture 2 PhD course on View-based query processing Data integration lecture 2 Riccardo Rosati Dipartimento di Informatica e Sistemistica Università di Roma La Sapienza {rosati}@dis.uniroma1.it Corso di Dottorato

More information

Full Clausal Logic - Syntax: clauses

Full Clausal Logic - Syntax: clauses Full Clausal Logic - Syntax: clauses compound terms aggregate objects Add function symbols (functors), with an arity; constants are 0-ary functors. object proposition functor : single word starting with

More information

Aggregates in Recursion: Issues and Solutions

Aggregates in Recursion: Issues and Solutions Aggregates in Recursion: Issues and Solutions Alpen-Adria-Universität Klagenfurt RuleML Webinar, 2018-05-25 Outline 1 2 3 4 Coincidence Results Complexity Results : Aggregates Aggregates facilitate problem

More information

Qualitative Decision Making and Answer Set Programming Extended Abstract

Qualitative Decision Making and Answer Set Programming Extended Abstract Qualitative Decision Making and Answer Set Programming Extended Abstract Gerhard Brewka Universität Leipzig, Institut für Informatik Augustusplatz 10-11, 04109 Leipzig, Germany brewka@informatik.uni-leipzig.de

More information

Programming Systems in Artificial Intelligence Introduction

Programming Systems in Artificial Intelligence Introduction Click to add Text Programming Systems in Artificial Intelligence Introduction Siegfried Nijssen 23/02/16 Discover thediscover world at the Leiden world University at Leiden University Programming Paradigms

More information

RELATIONAL REPRESENTATION OF ALN KNOWLEDGE BASES

RELATIONAL REPRESENTATION OF ALN KNOWLEDGE BASES RELATIONAL REPRESENTATION OF ALN KNOWLEDGE BASES Thomas Studer ABSTRACT The retrieval problem for a knowledge base O and a concept C is to find all individuals a such that O entails C(a). We describe a

More information

Module 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur

Module 6. Knowledge Representation and Logic (First Order Logic) Version 2 CSE IIT, Kharagpur Module 6 Knowledge Representation and Logic (First Order Logic) Lesson 15 Inference in FOL - I 6.2.8 Resolution We have introduced the inference rule Modus Ponens. Now we introduce another inference rule

More information

Chapter 9: Constraint Logic Programming

Chapter 9: Constraint Logic Programming 9. Constraint Logic Programming 9-1 Deductive Databases and Logic Programming (Winter 2007/2008) Chapter 9: Constraint Logic Programming Introduction, Examples Basic Query Evaluation Finite Domain Constraint

More information

STABILITY AND PARADOX IN ALGORITHMIC LOGIC

STABILITY AND PARADOX IN ALGORITHMIC LOGIC STABILITY AND PARADOX IN ALGORITHMIC LOGIC WAYNE AITKEN, JEFFREY A. BARRETT Abstract. Algorithmic logic is the logic of basic statements concerning algorithms and the algorithmic rules of deduction between

More information

Reasoning With Characteristic Models

Reasoning With Characteristic Models This papers appears in the Proceedings of the Eleventh National Conference on Artificial Intelligence (AAAI-93), Washington, D.C., 1993. Reasoning With Characteristic Models Henry A. Kautz, Michael J.

More information

Knowledge Representation and Reasoning Logics for Artificial Intelligence

Knowledge Representation and Reasoning Logics for Artificial Intelligence Knowledge Representation and Reasoning Logics for Artificial Intelligence Stuart C. Shapiro Department of Computer Science and Engineering and Center for Cognitive Science University at Buffalo, The State

More information

Expressing and Verifying Business Contracts with Abductive Logic Programming

Expressing and Verifying Business Contracts with Abductive Logic Programming Expressing and Verifying Business Contracts with Abductive Logic Programming Marco Alberti, Federico Chesani, Marco Gavanelli, Evelina Lamma, Paola Mello, Marco Montali, and Paolo Torroni Abstract: SCIFF

More information

Data Integration: Logic Query Languages

Data Integration: Logic Query Languages Data Integration: Logic Query Languages Jan Chomicki University at Buffalo Datalog Datalog A logic language Datalog programs consist of logical facts and rules Datalog is a subset of Prolog (no data structures)

More information

Knowledge Representation. CS 486/686: Introduction to Artificial Intelligence

Knowledge Representation. CS 486/686: Introduction to Artificial Intelligence Knowledge Representation CS 486/686: Introduction to Artificial Intelligence 1 Outline Knowledge-based agents Logics in general Propositional Logic& Reasoning First Order Logic 2 Introduction So far we

More information

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic

3.4 Deduction and Evaluation: Tools Conditional-Equational Logic 3.4 Deduction and Evaluation: Tools 3.4.1 Conditional-Equational Logic The general definition of a formal specification from above was based on the existence of a precisely defined semantics for the syntax

More information

Lecture 1: Conjunctive Queries

Lecture 1: Conjunctive Queries CS 784: Foundations of Data Management Spring 2017 Instructor: Paris Koutris Lecture 1: Conjunctive Queries A database schema R is a set of relations: we will typically use the symbols R, S, T,... to denote

More information

Extending ASPIDE with User-defined Plugins

Extending ASPIDE with User-defined Plugins Extending ASPIDE with User-defined Plugins Onofrio Febbraro 1, Nicola Leone 2, Kristian Reale 2, and Francesco Ricca 2 1 DLVSystem s.r.l. - P.zza Vermicelli, Polo Tecnologico, 87036 Rende, Italy febbraro@dlvsystem.com

More information

On the automatic verification of interaction protocols using g SCIFF

On the automatic verification of interaction protocols using g SCIFF Università degli Studi di Bologna DEIS On the automatic verification of interaction protocols using g SCIFF Marco Alberti Marco Gavanelli Paola Mello Federico Chesani Evelina Lamma Paolo Torroni November

More information

Lecture Notes on Static and Dynamic Semantics

Lecture Notes on Static and Dynamic Semantics Lecture Notes on Static and Dynamic Semantics 15-312: Foundations of Programming Languages Frank Pfenning Lecture 4 September 9, 2004 In this lecture we illustrate the basic concepts underlying the static

More information

Scalable Web Service Composition with Partial Matches

Scalable Web Service Composition with Partial Matches Scalable Web Service Composition with Partial Matches Adina Sirbu and Jörg Hoffmann Digital Enterprise Research Institute (DERI) University of Innsbruck, Austria firstname.lastname@deri.org Abstract. We

More information

Diagnosis through constrain propagation and dependency recording. 2 ATMS for dependency recording

Diagnosis through constrain propagation and dependency recording. 2 ATMS for dependency recording Diagnosis through constrain propagation and dependency recording 2 ATMS for dependency recording Fundamentals of Truth Maintenance Systems, TMS Motivation (de Kleer): for most search tasks, there is a

More information

3 No-Wait Job Shops with Variable Processing Times

3 No-Wait Job Shops with Variable Processing Times 3 No-Wait Job Shops with Variable Processing Times In this chapter we assume that, on top of the classical no-wait job shop setting, we are given a set of processing times for each operation. We may select

More information

Nonmonotonic Databases and Epistemic Queries*

Nonmonotonic Databases and Epistemic Queries* Nonmonotonic Databases and Epistemic Queries* Vladimir Lifschitz Department of Computer Sciences and Department of Philosophy University of Texas at Austin Austin, TX 78712, U. S. A. Abstract The approach

More information

Leslie Lamport: The Specification Language TLA +

Leslie Lamport: The Specification Language TLA + Leslie Lamport: The Specification Language TLA + This is an addendum to a chapter by Stephan Merz in the book Logics of Specification Languages by Dines Bjørner and Martin C. Henson (Springer, 2008). It

More information

Encryption as an Abstract Datatype:

Encryption as an Abstract Datatype: June 2003 1/18 Outline Encryption as an Abstract Datatype: an extended abstract Dale Miller INRIA/Futurs/Saclay and École polytechnique 1. Security protocols specified using multisets rewriting. 2. Eigenvariables

More information

Proving Theorems with Athena

Proving Theorems with Athena Proving Theorems with Athena David R. Musser Aytekin Vargun August 28, 2003, revised January 26, 2005 Contents 1 Introduction 1 2 Proofs about order relations 2 3 Proofs about natural numbers 7 3.1 Term

More information

Conjunctive queries. Many computational problems are much easier for conjunctive queries than for general first-order queries.

Conjunctive queries. Many computational problems are much easier for conjunctive queries than for general first-order queries. Conjunctive queries Relational calculus queries without negation and disjunction. Conjunctive queries have a normal form: ( y 1 ) ( y n )(p 1 (x 1,..., x m, y 1,..., y n ) p k (x 1,..., x m, y 1,..., y

More information

Inferring preferred extensions by Pstable semantics

Inferring preferred extensions by Pstable semantics Inferring preferred extensions by Pstable semantics Juan Carlos Nieves 1 and Mauricio Osorio 2 1 Universitat Politècnica de Catalunya Software Department (LSI) c/jordi Girona 1-3, E08034, Barcelona, Spain

More information

Introduction to predicate calculus

Introduction to predicate calculus Logic Programming Languages Logic programming systems allow the programmer to state a collection of axioms from which theorems can be proven. Express programs in a form of symbolic logic Use a logical

More information

Handout on Answer Set Programming

Handout on Answer Set Programming Handout on Answer Set Programming Yuliya Lierler Univresity of Nebraska, Omaha Tell me and I forget. Show me and I remember. Involve me and I understand. (Chinese proverb) The Moore method is a deductive

More information

Towards a Logic-based Production System Language

Towards a Logic-based Production System Language Towards a Logic-based Production System Language Robert Kowalski and Fariba Sadri Department of Computing, Imperial College London, 180 Queens Gate, London SW7 2AZ {rak, fs}@doc.ic.ac.uk Abstract. In this

More information

Notes for Chapter 12 Logic Programming. The AI War Basic Concepts of Logic Programming Prolog Review questions

Notes for Chapter 12 Logic Programming. The AI War Basic Concepts of Logic Programming Prolog Review questions Notes for Chapter 12 Logic Programming The AI War Basic Concepts of Logic Programming Prolog Review questions The AI War How machines should learn: inductive or deductive? Deductive: Expert => rules =>

More information

Constructive negation with the well-founded semantics for CLP

Constructive negation with the well-founded semantics for CLP Constructive negation with the well-founded semantics for CLP Włodek Drabent Institute of Computer Science Polish Academy of Sciences, Warszawa, and IDA, Linköping University Jan Maluszynski, Jakob Henriksson

More information

Abduction in Logic Programming

Abduction in Logic Programming Abduction in Logic Programming Marc Denecker 1 and Antonis Kakas 2 1 Department of Computer Science, K.U.Leuven, Celestijnenlaan 200A, B-3001 Heverlee, Belgium. Marc.Denecker@cs.kuleuven.ac.be http://www.cs.kuleuven.ac.be/~marcd

More information

T h e incomplete database

T h e incomplete database T h e incomplete database Karen L. Kwast University of Amsterdam Departments of Mathematics and Computer Science, Plantage Muidergracht 24, 1018 TV, Amsterdam Abstract The introduction of nulls (unknown

More information

WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG

WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES. Introduction. Production rules. Christian de Sainte Marie ILOG WHY WE NEED AN XML STANDARD FOR REPRESENTING BUSINESS RULES Christian de Sainte Marie ILOG Introduction We are interested in the topic of communicating policy decisions to other parties, and, more generally,

More information

Chapter S:II. II. Search Space Representation

Chapter S:II. II. Search Space Representation Chapter S:II II. Search Space Representation Systematic Search Encoding of Problems State-Space Representation Problem-Reduction Representation Choosing a Representation S:II-1 Search Space Representation

More information

A Look at Function Symbols and Planning

A Look at Function Symbols and Planning From: AAAI Technical Report SS-93-03. Compilation copyright 1993, AAAI (www.aaai.org). All rights reserved. A Look at Function Symbols and Planning Eric Jacopin * Laforia, 4 place Jussieu, Bolte 169 France,

More information

Repairing Preference-Based Argumentation Frameworks

Repairing Preference-Based Argumentation Frameworks Repairing Preference-Based Argumentation Frameworks Leila Amgoud IRIT CNRS 118, route de Narbonne 31062, Toulouse Cedex 09 amgoud@irit.fr Srdjan Vesic IRIT CNRS 118, route de Narbonne 31062, Toulouse Cedex

More information

Handout 9: Imperative Programs and State

Handout 9: Imperative Programs and State 06-02552 Princ. of Progr. Languages (and Extended ) The University of Birmingham Spring Semester 2016-17 School of Computer Science c Uday Reddy2016-17 Handout 9: Imperative Programs and State Imperative

More information

Chapter 2 & 3: Representations & Reasoning Systems (2.2)

Chapter 2 & 3: Representations & Reasoning Systems (2.2) Chapter 2 & 3: A Representation & Reasoning System & Using Definite Knowledge Representations & Reasoning Systems (RRS) (2.2) Simplifying Assumptions of the Initial RRS (2.3) Datalog (2.4) Semantics (2.5)

More information

An Axiomatic Account of Formal Argumentation

An Axiomatic Account of Formal Argumentation An Axiomatic Account of Formal Argumentation Martin Caminada Institute of Information and Computing Sciences Universiteit Utrecht, Utrecht Netherlands martinc@cs.uu.nl Leila Amgoud IRIT - CNRS 118, route

More information

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Sections p.

CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Sections p. CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer Science (Arkoudas and Musser) Sections 10.1-10.3 p. 1/106 CSCI.6962/4962 Software Verification Fundamental Proof Methods in Computer

More information

On Reconciling Data Exchange, Data Integration, and Peer Data Management

On Reconciling Data Exchange, Data Integration, and Peer Data Management On Reconciling Data Exchange, Data Integration, and Peer Data Management Giuseppe De Giacomo, Domenico Lembo, Maurizio Lenzerini, and Riccardo Rosati Dipartimento di Informatica e Sistemistica Sapienza

More information

Designing Views to Answer Queries under Set, Bag,and BagSet Semantics

Designing Views to Answer Queries under Set, Bag,and BagSet Semantics Designing Views to Answer Queries under Set, Bag,and BagSet Semantics Rada Chirkova Department of Computer Science, North Carolina State University Raleigh, NC 27695-7535 chirkova@csc.ncsu.edu Foto Afrati

More information

Safe Stratified Datalog With Integer Order Does not Have Syntax

Safe Stratified Datalog With Integer Order Does not Have Syntax Safe Stratified Datalog With Integer Order Does not Have Syntax Alexei P. Stolboushkin Department of Mathematics UCLA Los Angeles, CA 90024-1555 aps@math.ucla.edu Michael A. Taitslin Department of Computer

More information

A reasoning model based on the production of acceptable. arguments

A reasoning model based on the production of acceptable. arguments A reasoning model based on the production of acceptable arguments Leila AMGOUD 1 Claudette CAYROL 2 1 Department of Electronic Engineering, Queen Mary and Westfield College University of London, London

More information

LP attracted two kinds of enthousiasts engineers/programmers \Never had I experienced such ease in getting a complex program coded and running" D.H.D.

LP attracted two kinds of enthousiasts engineers/programmers \Never had I experienced such ease in getting a complex program coded and running D.H.D. Logic Programming Revisited Logic Programs as Inductive Denitions An engineers' view Maurice Bruynooghe Katholieke Universiteit Leuven, Belgium Partly based on work of Marc Denecker In the beginning (1974),

More information