An Extended Magic Sets Strategy for a Rule. Paulo J Azevedo. Departamento de Informatica Braga, Portugal.

Size: px
Start display at page:

Download "An Extended Magic Sets Strategy for a Rule. Paulo J Azevedo. Departamento de Informatica Braga, Portugal."

Transcription

1 An Extended Magic Sets Strategy for a Rule language with Updates and Transactions Paulo J Azevedo Departamento de Informatica Universidade do Minho, Campus de Gualtar 4700 Braga, Portugal pja@diuminhopt Danilo Montesi y Knowldge Systems Group Department of Computer Systems and Telematics The University of Trondheim N-7034, Trondheim, Norway danilo@idtunitno Abstract Deductive databases with updates in rule bodies do not allow to use bottom-up execution model This is due to the introduction of control in rule bodies induced by update sequences However, bottom-up strategies are very important due to the set oriented query-answering process of database systems In [7] an extended rule language was proposed that allows to accommodate updates and support transactions while avoiding the above drawback In this paper we present an extension of the Magic Sets transformation and the Semi-Naive strategy for eciently evaluating the extended rule language This new transformation enables the collection of updates during the query-answering process performed by the Semi-Naive strategy The collected updates are executed as transactions at the end of the evaluation, provided that they are consistent This strategy turns out to be as ecient as in the case without updates The use of trie structures [12] to store the collected updates justies this claim Trie structures enable the operations of inserting a new update, checking an update and consistency checking among updates to be performed in the same pass These collapsed operations have a linear cost with respect to the number of collected updates The work of this author has been supported by Junta Nacional de Investigac~ao Cientca e Tecnologica - Programa, PRAXIS XXI, grant number BD/2832/94 y The work of this author has been supported by the ERCIM fellowship Information and Knowledge Systems

2 1 Introduction Database languages have been deeply inuenced by the introduction of logic languages Indeed, the database community has realized that rule languages are the most natural tool for uniformly modeling several database concepts such as: data, views, constraints and queries Due to the nature of data, the update language should be integrated with the query language In many cases, data to be modied are determined by issuing queries Moreover, updates should be collected into atomic execution units which are executed in a all-or-nothing style, that is, as transactions Transactions are a crucial functionality, since data integrity is a major requirement for database applications In [7] a language based on a new approach to smoothly integrate a declarative query language with an update language was introduced Such integration is achieved by taking into account the transactional behavior The resulting language, called U-Datalog, provides both update and query capabilities and has a formal semantics U-Datalog databases are based on a two phases computation In the rst phase updates are collected and their consistency is checked In the second phase the updates are executed together modeling a transactional behavior The formal semantics is given in [6], while two optimization techniques are presented in [3, 5] and an object oriented extension was proposed in [4] In this paper we describe an extended Magic Sets strategy for the ecient evaluation of U-Datalog databases The strategy is based on the Semi-Naive procedure [8] combined with a renement of the Magic Sets transformation [9] which handles the processes of queryanswering and the collection of updates, characteristic of U-Datalog Collecting an update is computationally equivalent to deriving a new tuple Checking consistency among updates is embedded into the collection process These two characteristics are obtained by inserting updates into tries data-structures (introduced in [12]), as they are collected during the evaluation process The remainder of this paper is organized as follows Section 2 introduces the rule language and some examples Section 3 presents the bottom-up strategy based on the Extended Magic Sets for U-Datalog Finally, Section 4 concludes the work 2 U-Datalog A Datalog program consists of a set of base relations (EDB) and a set of rules (IDB) Many extensions to Datalog have been proposed to express updates (see [1] for a survey) In the following we summarize our approach based on non-immediate update semantics Update- Datalog (U-Datalog) is a rule language which allows declarative specication of updates in program rules The execution model of U-Datalog consist of two phases, the marking phase and the update phase [13] The rst phase collects the updates found during the evaluation process without, however, executing them During the update phase they are executed altogether only if they are consistent If the set of updates is not consistent, the query is aborted and no update in the set is performed The notion of consistency is an important one, in that it prevents a set of updates containing both an insertion and a deletion of the same fact to be executed By contrast in DLP and LDL, updates are executed as soon as they are evaluated (in sequence), that is, they are executed as side eect of the derivation process In this section we recall some basic notions on the syntax and the semantics of U- Datalog, which are dened by means of an instance of constraint logic programming schema (CLP) [10] called CLP (AD) [7]

3 Updates in U-Datalog are in rule bodies Updates to base relations are expressed as a set of special atoms prexed by or?, denoting insertion and deletion The relations can be either extensional or intensional The current version of our language allows only updates to extensional relations Denition 21 (Extensional database) The EDB is a set of ground (ie, without variables) relations A state EDB 2 S is a (possibly empty) set of ground relations S denotes the set of all possible database states In the following we denote with EDB i ; i = 1; : : :; n the possible extensional databases Denition 22 (Intensional database) The intensional database IDB is a set of rules of the form H U 1 ; : : :; U s ; B 1 ; : : :; B t : where B 1 ; : : :; B t (as in Datalog) is the query part and U 1 ; : : :; U s is the update part update and query parts cannot be both empty The The intuitive meaning of a rule is: \if B 1 ; : : :; B t is true and the updates U 1 ; : : :; U s are consistent, then H is true" The notion of consistency is given informally Intuitively, the updates p(x);?p(x), ie complementary updates, are not consistent The updates p(y );?p(x) could be consistent if the related bindings were for example X=tom; Y =bob By contrast with the bindings X=tom; Y =tom, p(y );?p(x) are not consistent We will consider only intensional databases that are range-restricted That is, the variables of the head and of the updates in a rule appear in the query part of the rule itself Denition 23 (Query) A query (or simple query) is a rule with no head of the form U 1 ; : : :; U s ; B 1 ; : : :; B t where B 0 i s and U 0 j s are as in Denition 22 and B 1; : : :; B t cannot be empty The condition that B 1 ; : : :; B t cannot be empty is due to the fact that the update phase must always follow the marking phase Therefore, before updating a database, it must be queried, by means of a query in order to compute the bindings for the variables of the language We refer to a query also as a simple transaction, to stress the transactional behavior of a query Following the tradition in the examples we always prex a query with the symbol `?' A complex transaction T is a sequence of transaction T 1 ; : : :; T n In the following the words query, goal, update query, and transaction are synonymous Denition 24 (U-Datalog) An U-Datalog program (or database) DB = IDB [ EDB consists of the extensional database EDB and of the intensional database IDB The following examples provide the intended semantics of an U-Datalog database Example 21 Consider EDB i = q(b) and IDB = p(x)?q(x); q(x): r(x) s(x) t(x); p(x): t(x):

4 The user transaction T 1 =?r(x) evaluated in EDB i [ IDB computes the binding X=b and collects the updates?q(b); t(b) Note that such updates form a transaction Informally the new extensional database EDB i1 = t(b) is the result of the application of these updates to EDB i The transaction T 2 =?s(x) evaluated in EDB i1 [IDB computes the binding X=b and does not compute any update, thus the new extensional database is still EDB i1 The transaction T 3 =? q(x); s(x) evaluated in EDB i1 [ IDB computes the binding X=b and collect the update q(b), thus the new extensional database is EDB i2 = t(b); q(b) The transaction T 4 =? q(x); p(x) computes the binding X=b, and collects the updates q(b);?q(b) They are not consistent and therefore T 4 aborts The semantics of an U-Datalog program is given in three steps The rst step semantics models the marking phase The second step provides the transactional behavior, modeling the update phase; the updates collected by the marking phase are executed with a transactional mechanism, ie with an all-or-nothing style If the collected updates are consistent, the new database state is computed and the transaction commits, otherwise the transaction aborts Note that in such a way we model a transactional behavior Transactions are evaluated by the same mechanisms as queries The third step semantics is related to complex transactions, formed from simple ones Obviously, the abort of a simple transaction in a sequence results in the abort of the entire sequence The formal semantics is in [6] Finally note that due to the special range-restricted condition, the collected updates are always ground 3 A Bottom-up Strategy for evaluating U-Datalog Several evaluation strategies have been proposed for rule languages [2] We will extend the Magic Sets transformation introduced in [9] in conjunction with the Semi-Naive strategy [8] to provide an ecient strategy for U-Datalog language This choice lead to an ecient query evaluation free of redundant computations The basic idea is to compute both the bindings for the query and to collect updates in the same evaluation process We will transform the original rules with updates of the intensional part of the database using the Magic Sets rewriting The rules are transformed in such a way that in the same step of the Semi-Naive strategy both new tuples as well as updates can be derived Finally a further step is added to incrementally check the consistency among updates as soon as a new update is derived 31 Transformation for the U-Datalog rules As we have seen in the previous section the basic idea of U-Datalog is: updates, instead of being executed as soon as they are derived, are rst collected and later executed in a allor-nothing style This implements the transaction execution model To store the collected updates we need a special structure which will enable an ecient checking of consistency among them We refer to this structure as the collect structure Our aim is to provide a transformation that enables a derivation of updates in the same way as new tuples are derived in a Semi-Naive evaluation step Consider the following rule of an intensional database p(~x) u 1 (~x 1 ); :::; u m (~x m ); b 1 (~y 1 ); :::; b n (~y n )

5 Applying the Magic Sets transformation the rule becomes: p(~x) u 1 (~x 1 ); :::; u m (~x m ); b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) Note that, as mentioned in [9], we do not apply neither adornments nor derive magic rules from the update literals since they are not part of the IDB database The intensional part of the database requires the magic sets transformation to obtain a goal-oriented evaluation, deriving only relevant tuples in relation to a query The intuitive reading of the above rule is: if b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) are true and u 1 (~x 1 ); :::; u m (~x m ) are consistent then we collect u 1 (~x 1 ); :::; u m (~x m ) and derived p(~x) As described before, our execution model consists of two phases: The marking phase and the update phase To implement the marking phase, where the updates are collected without being executed, the intensional U-Datalog database is transformed and split into the following way: The rule introduced above yields and I) p(~x) b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) II) u 1 (~x 1 ); :::; u m (~x m ) b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) The set of clauses composed of rules type I) also includes the normal magic rules obtained from the magic rewriting For instance, if b j belongs to the IDB then the following magic rule is generated: mag b j (~x) b 1 (~y 1 ); :::; b j?1 (~y j?1 ); mag p(~x) The rule II) is equivalent to the following set of rules: III) u 1 (~x 1 ) b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) u m (~x m ) b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) As we have said, since these rules are range-restricted, only ground updates are derived We recall that range-restriction is the standard restriction in the Magic Sets strategy (also called well-formedness condition in [9]) In this form, rules of type III) yield duplication of work since the same conjunction of literals appears in the body of dierent rules Thus, some \joins" are repeated To avoid this

6 duplication, we will follow the idea introduced in [9] for Supplementary Magic Sets using an additional relation to store the intermediate results associated with the common conjunction of literals Hence, the rules become: IV) extra(~y) b 1 (~y 1 ); :::; b n (~y n ); mag p(~x) u 1 (~x 1 ) u m (~x m ) extra(~y) extra(~y) The Semi-Naive strategy is applied in the standard way to the sets of rules of types I) and IV) ie to the database IDB I) [ IDB IV ) [ EDB From IDB I) [ EDB the semi-naive strategy derives new tuples to answer the initial query whereas from IDB IV ) [ EDB derives the updates The latter corresponds to the marking phase Formally, one has only one Semi-Naive derivation step but in each step both new tuples and updates are derived In summary, the algorithm for the Extended Magic Sets Strategy for U-Datalog is: 1 Apply the magic sets transformation to the rules, as described in [9] This will generate the transformed rules and the magic rules 2 Split the rules according to transformation I) and II) 3 Create rules of type III) for the derivation of updates 4 Create rules type IV) to avoid duplication of work 5 Apply the Semi-Naive Strategy [8] to the database IDB I) [ IDB IV ) [ EDB 6 Execute the updates (modeling a transactional behavior) In step 5, the evaluation process terminates if one of the following two cases holds: inconsistency among the updates is detected In this case the collected updates are not executed and the transaction aborts a xpoint is reached and the updates stored in the trie structures are executed at step 6 In this case the transaction commits Step 1 of the algorithm is the standard application of the Magic Sets transformation The second and third steps create the rules that enables the derivation of updates by the Semi-Naive strategy The fourth step avoids the possible recomputation obtained from the duplication of the same conjunction of literals in the body of the rules type III) Note that step 6 performs the execution phase Step 5 is where the real evaluation occurs and where the bindings and updates are derived This step also includes the consistency checking process that will be introduced in the next section

7 p/2 a/1 b/1 a/1 a/1 b/1 - Figure 1: The Trie structure after the collection of p(a; a),?p(b; a) and p(b; b) 32 Checking update consistency As we have seen, the collected updates must be consistent There are two complementary ways to check consistency: incrementally whenever a new update is collected or at the end when all the updates are available The former approach detects an inconsistency as early as possible and consequently is more ecient if complementary updates are derived during evaluation The latter detects at the end of the query-answer process these cases and potentially performs redundant computations For this reason we will consider the former approach Note that, as referred before, by considering only range-restricted rules we guarantee groundness among updates Thus, checking for groundness is substituted by checking for range-restrictness among the rules of the database This process is performed at compile-time In the sequel we will substantiate the advantages of our approach by proposing an ecient procedure to check consistency This procedure contributes to an overall ecient evaluation of U-Datalog databases In [12] a trie-like structure was used to eciently store answers to a call in tabulated topdown proof procedure The major advantages of these structures is that it gives a collapsed check/insert operation Thus, checking the existence of an answer and inserting a new answer requires only one visit to the structure where the answers are stored Since all updates must be ground, following the conditions of range-restriction, checking consistency can be reduced to the referred collapsed operation This reduction is obtained by checking for the complement of an update atom using the same techniques that are performed for checking/inserting new answers in a tabulated top-down proof procedure We use tries to store updates as they are derived during the Semi-Naive evaluation These are our collect structures The symbol that indicates the type of update is included at the end of the path dening the atom This allows the collapsing of the following operations: inserting a new update, checking duplicates and checking for complementer updates in the trie structure ie consistency checking For instance, if we derive p(a) and?p(a) already exists in the trie structure then the operations of inserting, checking duplication of the same update and consistency are performed with only one term traversal (atom examination) Figure 1 describes the state of the trie after the updates p(a; a);?p(b; a) and p(b; b) had been inserted If after these three updates?p(a; a) is inserted inconsistency is detected since the trie is followed along the path that denes p(a; a) nding at the end the terminal symbol Figure 2 illustrates this situation

8 a/1 a/1 - INCONSISTENCY!! p/2 new update previous updates b/1 a/1 b/1 - Figure 2: Detecting an inconsistency 33 Examples Consider the Example 21 where the following database was introduced with EDB 1 = q(b) and IDB = p(x)?q(x); q(x): r(x) s(x) t(x); p(x): t(x): and the user transaction T 1 =? q(a); r(b) evaluated in EDB 1 [ IDB Applying step 1) of the Extended Magic Sets strategy algorithm, we obtain: IDB mag = p(x)?q(x); q(x); mag p(x): r(x) t(x); p(x); mag r(x): s(x) t(x); mag s(x): mag p(x) mag r(x): mag r(b): Step 2 of the algorithm yields rules of type I) and III) which are: I) mag r(b): p(x) q(x); mag p(x) mag p(x) mag r(x): r(x) p(x); mag r(x) s(x) t(x); mag s(x) and III)?q(X) t(x) q(x); mag p(x) p(x); mag r(x)

9 a/1 q/1 b/1 t/1 b/1 - Figure 3: The structures for storing the collected updates q/1 b/1 - Inconsistency!! Figure 4: Detecting inconsistency with q(b) and?q(b) We do not apply step 3 since no duplication of literals exists in the body of the rules type III) The Semi-Naive evaluation trace in this database for the T 1 transaction, including the collected updates, is: I 1 = fmag r(b)g, C 1 = fq(a)g I 2 = I 1 [ fmag p(b)g, C 2 = C 1 I 3 = I 2 [ fp(b)g, C 3 = C 2 [ f?q(b)g I 4 = I 3 [ fr(b)g, C 4 = C 3 [ ft(b)g I i represents the derived facts in each iteration i and C i the collected updates in iteration i Note that each collected update is inserted in the correspondent trie The trie structures where the collected updates are stored are pictorially represented in Figure 3 In this example the transaction commits, following the second case in step 5 of the algorithm Consider another user transaction that is T 2 =? q(b); p(b) Evaluated in EDB 1 [ IDB yields: I 1 = fmag p(b)g I 2 = I 1 [ fp(b)g C 1 = fq(b)g C 2 = C 1 [ f?q(b)g In this example, evaluation terminates due to the rst case in step 5 of the algorithm Thus, at iteration I 2 inconsistency is detected and consequently the transaction is aborted according to the informal semantics of U-Datalog Figure 4 shows the trie mechanism when it detects inconsistency between?q(b) and q(b) 4 Conclusions and future work We have seen an extended Magic Sets strategy for U-Datalog that uses a familiar transformation technique This strategy has a computational cost that is higher then the traditional

10 one for Datalog The additional cost is due to the collection of updates The price paid in this collection is reduced to the price of inserting/checking updates into the trie structure Checking consistency among updates is negligible because it is embedded into the collapsed operations of checking and inserting new updates Since U-Datalog has been extended with the object oriented paradigm [4] and integrity constraints [11] the above strategy is promising also for these cases References [1] S Abiteboul Updates, a New Frontier In M Gyssens, JParedaens, and D Van Gucht, editors, ProcSecond Int'l Conf on Database Theory, Vol 326 of Lecture Notes in Computer Science, pages 1{18, Springer-Verlag, Berlin, 1988 [2] F Bancilhon and R Ramakrishnan An Amateur's Introduction to Recursive Query Processing Strategies In Proc Int'l Conf ACM on Management of Data, pages 16{52, 1986 [3] E Bertino, B Catania, G Guerrini and D Montesi Static Analysis of Transactional Intensional Databases Proc Second ICLP-Workshop on Deductive Databases and Logic Programming of International Conference on Logic Programming, pages 57-73, Genova, 1994 [4] E Bertino, G Guerrini and D Montesi Deductive Object Databases, Proc Eighth European Conference on Object Oriented Programming, Vol 821 of Lecture Notes in Computer Science, pages , Springer -Verlag, Bologna, 1994 [5] E Bertino, B Catania, G Guerrini, and D Montesi Transaction Optimization in Rule Databases 1993 Fourth IEEE Research Issues in Data Engineering: Active Database Systems (RIDE-ADS'94), IEEE Computer Society Press, pages 137{145, 1994 [6] E Bertino, M Martelli, and D Montesi An Incremental Semantics for CLP(AD) In A Marchetti, Spaccamela, P Mentrasti, and M Venturini Zilli, editors, Proc Fourth Italian Conference on Theoretical Computer Science, pages 53{67 World Scientic, 1992 [7] E Bertino, M Martelli, and D Montesi Modeling Database Updates with Constraint Logic Programming In U W Lipeck and B Thalheim, editors, Proc Fourth Int'l Work on Foundations of Models and Languages for Data and Objects, pages 120{132, 1992 [8] I Balbin, K Ramamohanarao A Generalization of the Dierential Approach to Recursive Query Evaluation in Journal of Logic Programming, Vol 4, pag , 1987 [9] C Beeri, R Ramakrishnan On the Power of Magic in Journal of Logic Programming, pag , Vol 10, 1991 [10] J Jaar and J-L Lassez Constraint Logic Programming In Proc Fourteenth Annual ACM Symp on Principles of Programming Languages, pages 111{119 ACM, New York, USA, 1987 [11] D Montesi and F Turini Knowledge Evolution in Deductive Databases Proc International Symposium on Knowledge Retrieval, Use and Storage for Eciency, Santa Cruz, 1995, To appear [12] P Rao, I Ramakrishnan, T Swift, DS Warren Dynamic Argument Reduction for the In- Memory Data Queries in Proc Second ICLP-Workshop on Deductive Databases and Logic Programming of International Conference on Logic Programming, pag , Genova, 1994 [13] M Zloof Query-by-example: a Data Base Language IBM Systems Journal, 16(4):324{343, 1977

Lecture 9: Datalog with Negation

Lecture 9: Datalog with Negation CS 784: Foundations of Data Management Spring 2017 Instructor: Paris Koutris Lecture 9: Datalog with Negation In this lecture we will study the addition of negation to Datalog. We start with an example.

More information

Datalog Evaluation. Linh Anh Nguyen. Institute of Informatics University of Warsaw

Datalog Evaluation. Linh Anh Nguyen. Institute of Informatics University of Warsaw Datalog Evaluation Linh Anh Nguyen Institute of Informatics University of Warsaw Outline Simple Evaluation Methods Query-Subquery Recursive Magic-Set Technique Query-Subquery Nets [2/64] Linh Anh Nguyen

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

}Optimization Formalisms for recursive queries. Module 11: Optimization of Recursive Queries. Module Outline Datalog

}Optimization Formalisms for recursive queries. Module 11: Optimization of Recursive Queries. Module Outline Datalog Module 11: Optimization of Recursive Queries 11.1 Formalisms for recursive queries Examples for problems requiring recursion: Module Outline 11.1 Formalisms for recursive queries 11.2 Computing recursive

More information

}Optimization. Module 11: Optimization of Recursive Queries. Module Outline

}Optimization. Module 11: Optimization of Recursive Queries. Module Outline Module 11: Optimization of Recursive Queries Module Outline 11.1 Formalisms for recursive queries 11.2 Computing recursive queries 11.3 Partial transitive closures User Query Transformation & Optimization

More information

Encyclopedia of Database Systems, Editors-in-chief: Özsu, M. Tamer; Liu, Ling, Springer, MAINTENANCE OF RECURSIVE VIEWS. Suzanne W.

Encyclopedia of Database Systems, Editors-in-chief: Özsu, M. Tamer; Liu, Ling, Springer, MAINTENANCE OF RECURSIVE VIEWS. Suzanne W. Encyclopedia of Database Systems, Editors-in-chief: Özsu, M. Tamer; Liu, Ling, Springer, 2009. MAINTENANCE OF RECURSIVE VIEWS Suzanne W. Dietrich Arizona State University http://www.public.asu.edu/~dietrich

More information

the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the

the application rule M : x:a: B N : A M N : (x:a: B) N and the reduction rule (x: A: B) N! Bfx := Ng. Their algorithm is not fully satisfactory in the The Semi-Full Closure of Pure Type Systems? Gilles Barthe Institutionen for Datavetenskap, Chalmers Tekniska Hogskola, Goteborg, Sweden Departamento de Informatica, Universidade do Minho, Braga, Portugal

More information

contribution of this paper is to demonstrate that rule orderings can also improve eciency by reducing the number of rule applications. In eect, since

contribution of this paper is to demonstrate that rule orderings can also improve eciency by reducing the number of rule applications. In eect, since Rule Ordering in Bottom-Up Fixpoint Evaluation of Logic Programs Raghu Ramakrishnan Divesh Srivastava S. Sudarshan y Computer Sciences Department, University of Wisconsin-Madison, WI 53706, U.S.A. Abstract

More information

DATABASE THEORY. Lecture 12: Evaluation of Datalog (2) TU Dresden, 30 June Markus Krötzsch

DATABASE THEORY. Lecture 12: Evaluation of Datalog (2) TU Dresden, 30 June Markus Krötzsch DATABASE THEORY Lecture 12: Evaluation of Datalog (2) Markus Krötzsch TU Dresden, 30 June 2016 Overview 1. Introduction Relational data model 2. First-order queries 3. Complexity of query answering 4.

More information

DATABASE THEORY. Lecture 15: Datalog Evaluation (2) TU Dresden, 26th June Markus Krötzsch Knowledge-Based Systems

DATABASE THEORY. Lecture 15: Datalog Evaluation (2) TU Dresden, 26th June Markus Krötzsch Knowledge-Based Systems DATABASE THEORY Lecture 15: Datalog Evaluation (2) Markus Krötzsch Knowledge-Based Systems TU Dresden, 26th June 2018 Review: Datalog Evaluation A rule-based recursive query language father(alice, bob)

More information

I. Khalil Ibrahim, V. Dignum, W. Winiwarter, E. Weippl, Logic Based Approach to Semantic Query Transformation for Knowledge Management Applications,

I. Khalil Ibrahim, V. Dignum, W. Winiwarter, E. Weippl, Logic Based Approach to Semantic Query Transformation for Knowledge Management Applications, I. Khalil Ibrahim, V. Dignum, W. Winiwarter, E. Weippl, Logic Based Approach to Semantic Query Transformation for Knowledge Management Applications, Proc. of the International Conference on Knowledge Management

More information

A taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA

A taxonomy of race. D. P. Helmbold, C. E. McDowell. September 28, University of California, Santa Cruz. Santa Cruz, CA A taxonomy of race conditions. D. P. Helmbold, C. E. McDowell UCSC-CRL-94-34 September 28, 1994 Board of Studies in Computer and Information Sciences University of California, Santa Cruz Santa Cruz, CA

More information

Logic As a Query Language. Datalog. A Logical Rule. Anatomy of a Rule. sub-goals Are Atoms. Anatomy of a Rule

Logic As a Query Language. Datalog. A Logical Rule. Anatomy of a Rule. sub-goals Are Atoms. Anatomy of a Rule Logic As a Query Language Datalog Logical Rules Recursion SQL-99 Recursion 1 If-then logical rules have been used in many systems. Most important today: EII (Enterprise Information Integration). Nonrecursive

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

to automatically generate parallel code for many applications that periodically update shared data structures using commuting operations and/or manipu

to automatically generate parallel code for many applications that periodically update shared data structures using commuting operations and/or manipu Semantic Foundations of Commutativity Analysis Martin C. Rinard y and Pedro C. Diniz z Department of Computer Science University of California, Santa Barbara Santa Barbara, CA 93106 fmartin,pedrog@cs.ucsb.edu

More information

DATABASE THEORY. Lecture 11: Introduction to Datalog. TU Dresden, 12th June Markus Krötzsch Knowledge-Based Systems

DATABASE THEORY. Lecture 11: Introduction to Datalog. TU Dresden, 12th June Markus Krötzsch Knowledge-Based Systems DATABASE THEORY Lecture 11: Introduction to Datalog Markus Krötzsch Knowledge-Based Systems TU Dresden, 12th June 2018 Announcement All lectures and the exercise on 19 June 2018 will be in room APB 1004

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

Global Storing Mechanisms for Tabled Evaluation

Global Storing Mechanisms for Tabled Evaluation Global Storing Mechanisms for Tabled Evaluation Jorge Costa and Ricardo Rocha DCC-FC & CRACS University of Porto, Portugal c060700@alunos.dcc.fc.up.pt ricroc@dcc.fc.up.pt Abstract. Arguably, the most successful

More information

evaluation using Magic Sets optimization has time complexity less than or equal to a particular

evaluation using Magic Sets optimization has time complexity less than or equal to a particular Top-Down vs. Bottom-Up Revisited Raghu Ramakrishnan and S. Sudarshan University of Wisconsin-Madison Madison, WI 53706, USA fraghu,sudarshag@cs.wisc.edu Abstract Ullman ([Ull89a, Ull89b]) has shown that

More information

An Efficient Design and Implementation of a Heterogeneous Deductive Object-Oriented Database System

An Efficient Design and Implementation of a Heterogeneous Deductive Object-Oriented Database System An Efficient Design and Implementation of a Heterogeneous Deductive Object-Oriented Database System Cyril S. Ku Department of Computer Science William Paterson University Wayne, NJ 07470, USA Suk-Chung

More information

A Logic Database System with Extended Functionality 1

A Logic Database System with Extended Functionality 1 A Logic Database System with Extended Functionality 1 Sang-goo Lee Dong-Hoon Choi Sang-Ho Lee Dept. of Computer Science Dept. of Computer Science School of Computing Seoul National University Dongduk Women

More information

Enhancing Datalog with Epistemic Operators to Reason About Systems Knowledge in

Enhancing Datalog with Epistemic Operators to Reason About Systems Knowledge in Enhancing Datalog with Epistemic Operators to Enhancing ReasonDatalog About Knowledge with Epistemic in Distributed Operators to Reason About Systems Knowledge in Distributed (Extended abstract) Systems

More information

On Computing the Minimal Labels in Time. Point Algebra Networks. IRST { Istituto per la Ricerca Scientica e Tecnologica. I Povo, Trento Italy

On Computing the Minimal Labels in Time. Point Algebra Networks. IRST { Istituto per la Ricerca Scientica e Tecnologica. I Povo, Trento Italy To appear in Computational Intelligence Journal On Computing the Minimal Labels in Time Point Algebra Networks Alfonso Gerevini 1;2 and Lenhart Schubert 2 1 IRST { Istituto per la Ricerca Scientica e Tecnologica

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

Plan of the lecture. G53RDB: Theory of Relational Databases Lecture 14. Example. Datalog syntax: rules. Datalog query. Meaning of Datalog rules

Plan of the lecture. G53RDB: Theory of Relational Databases Lecture 14. Example. Datalog syntax: rules. Datalog query. Meaning of Datalog rules Plan of the lecture G53RDB: Theory of Relational Databases Lecture 14 Natasha Alechina School of Computer Science & IT nza@cs.nott.ac.uk More Datalog: Safe queries Datalog and relational algebra Recursive

More information

Logical Query Languages. Motivation: 1. Logical rules extend more naturally to. recursive queries than does relational algebra. Used in SQL recursion.

Logical Query Languages. Motivation: 1. Logical rules extend more naturally to. recursive queries than does relational algebra. Used in SQL recursion. Logical Query Languages Motivation: 1. Logical rules extend more naturally to recursive queries than does relational algebra. Used in SQL recursion. 2. Logical rules form the basis for many information-integration

More information

Program Analysis in Datalog

Program Analysis in Datalog CS 510/08 Program Analysis in Datalog Majority of the slides compiled from John Whaley s Outline Challenges Essential Background Using the Tools Developing Advanced Analyses Challenges Most DF analyses

More information

10.3 Recursive Programming in Datalog. While relational algebra can express many useful operations on relations, there

10.3 Recursive Programming in Datalog. While relational algebra can express many useful operations on relations, there 1 10.3 Recursive Programming in Datalog While relational algebra can express many useful operations on relations, there are some computations that cannot be written as an expression of relational algebra.

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

THE DEVELOPMENT OF PARALLEL RESOLUTION ALGORITHMS USING THE GRAPH REPRESENTATION. Andrey Averin, Vadim Vagin

THE DEVELOPMENT OF PARALLEL RESOLUTION ALGORITHMS USING THE GRAPH REPRESENTATION. Andrey Averin, Vadim Vagin International Journal "Information Theories & Applications" Vol.13 263 THE DEVELOPMENT OF PARALLEL RESOLUTION ALGORITHMS USING THE GRAPH REPRESENTATION Andrey Averin, Vadim Vagin Abstract. The parallel

More information

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES

FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES FOUNDATIONS OF SEMANTIC WEB TECHNOLOGIES RDFS Rule-based Reasoning Sebastian Rudolph Dresden, 16 April 2013 Content Overview & XML 9 APR DS2 Hypertableau II 7 JUN DS5 Introduction into RDF 9 APR DS3 Tutorial

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

has to choose. Important questions are: which relations should be dened intensionally,

has to choose. Important questions are: which relations should be dened intensionally, Automated Design of Deductive Databases (Extended abstract) Hendrik Blockeel and Luc De Raedt Department of Computer Science, Katholieke Universiteit Leuven Celestijnenlaan 200A B-3001 Heverlee, Belgium

More information

Semantic Query Optimization for Bottom-Up. Evaluation. fgodfrey, jarek, University of Maryland at College Park

Semantic Query Optimization for Bottom-Up. Evaluation. fgodfrey, jarek, University of Maryland at College Park Appears in the Proceedings of the 9th International Symposium on Methodologies for Intelligent Systems (ISMIS), Zakopane, Poland, June 1996. Semantic Query Optimization for Bottom-Up Evaluation P. Godfrey

More information

Heap-on-Top Priority Queues. March Abstract. We introduce the heap-on-top (hot) priority queue data structure that combines the

Heap-on-Top Priority Queues. March Abstract. We introduce the heap-on-top (hot) priority queue data structure that combines the Heap-on-Top Priority Queues Boris V. Cherkassky Central Economics and Mathematics Institute Krasikova St. 32 117418, Moscow, Russia cher@cemi.msk.su Andrew V. Goldberg NEC Research Institute 4 Independence

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

A Simplied NP-complete MAXSAT Problem. Abstract. It is shown that the MAX2SAT problem is NP-complete even if every variable

A Simplied NP-complete MAXSAT Problem. Abstract. It is shown that the MAX2SAT problem is NP-complete even if every variable A Simplied NP-complete MAXSAT Problem Venkatesh Raman 1, B. Ravikumar 2 and S. Srinivasa Rao 1 1 The Institute of Mathematical Sciences, C. I. T. Campus, Chennai 600 113. India 2 Department of Computer

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

Optimization of logical query plans Eliminating redundant joins

Optimization of logical query plans Eliminating redundant joins Optimization of logical query plans Eliminating redundant joins 66 Optimization of logical query plans Query Compiler Execution Engine SQL Translation Logical query plan "Intermediate code" Logical plan

More information

Towards Vague Query Answering in Logic Programming for Logic-based Information Retrieval

Towards Vague Query Answering in Logic Programming for Logic-based Information Retrieval Towards Vague Query Answering in Logic Programming for Logic-based Information Retrieval Umberto Straccia ISTI - CNR, Pisa, ITALY straccia@isti.cnr.it Abstract. We address a novel issue for logic programming,

More information

Recursive Queries. Ke Wang. National University of Singapore. Weining Zhang. University of Lethbridge.

Recursive Queries. Ke Wang. National University of Singapore.   Weining Zhang. University of Lethbridge. Indexed Step-Wise Semi-Naive Evaluation for Recursive Queries Ke Wang Department of Information Systems and Computer Science National University of Singapore Lower Kent Ridge Road, Singapore, 0511 Email:

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

Programming with Logical Queries, Bulk Updates and. Hypothetical Reasoning. Weidong Chen. Southern Methodist University. Dallas, Texas

Programming with Logical Queries, Bulk Updates and. Hypothetical Reasoning. Weidong Chen. Southern Methodist University. Dallas, Texas Programming with Logical Queries, Bulk Updates and Hypothetical Reasoning Weidong Chen Computer Science and Engineering Southern Methodist University Dallas, Texas 75275-0122 wchen@seas.smu.edu July 11,

More information

INCONSISTENT DATABASES

INCONSISTENT DATABASES INCONSISTENT DATABASES Leopoldo Bertossi Carleton University, http://www.scs.carleton.ca/ bertossi SYNONYMS None DEFINITION An inconsistent database is a database instance that does not satisfy those integrity

More information

Query Evaluation on Probabilistic Databases

Query Evaluation on Probabilistic Databases Query Evaluation on Probabilistic Databases Christopher Ré, Nilesh Dalvi and Dan Suciu University of Washington 1 The Probabilistic Data In this paper we consider the query evaluation problem: how can

More information

A Game-Theoretic Approach to Constraint Satisfaction

A Game-Theoretic Approach to Constraint Satisfaction A Game-Theoretic Approach to Constraint Satisfaction Phokion G. Kolaitis Computer Science Department University of California, Santa Cruz Santa Cruz, CA 95064 kolaitis@cse.ucsc.edu www.cse.ucsc.edu/ kolaitis

More information

Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages , August Timed automata have been proposed in [1, 8] to model nite-s

Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages , August Timed automata have been proposed in [1, 8] to model nite-s Proc. XVIII Conf. Latinoamericana de Informatica, PANEL'92, pages 1243 1250, August 1992 1 Compiling Timed Algebras into Timed Automata Sergio Yovine VERIMAG Centre Equation, 2 Ave de Vignate, 38610 Gieres,

More information

Departamento de Informatica y Sistemas, Universidad de Murcia, Campus de Espinardo Espinardo, Murcia,

Departamento de Informatica y Sistemas, Universidad de Murcia, Campus de Espinardo Espinardo, Murcia, A Formal Model of Views for Object-Oriented Database Systems Giovanna Guerrini* Dipartimento di Informatica e Scienze dell'informazione, Universita degli Studi di Genova, Via Dodecaneso, 35-16146 Genova,

More information

SAMOS: an Active Object{Oriented Database System. Stella Gatziu, Klaus R. Dittrich. Database Technology Research Group

SAMOS: an Active Object{Oriented Database System. Stella Gatziu, Klaus R. Dittrich. Database Technology Research Group SAMOS: an Active Object{Oriented Database System Stella Gatziu, Klaus R. Dittrich Database Technology Research Group Institut fur Informatik, Universitat Zurich fgatziu, dittrichg@ifi.unizh.ch to appear

More information

FB(9,3) Figure 1(a). A 4-by-4 Benes network. Figure 1(b). An FB(4, 2) network. Figure 2. An FB(27, 3) network

FB(9,3) Figure 1(a). A 4-by-4 Benes network. Figure 1(b). An FB(4, 2) network. Figure 2. An FB(27, 3) network Congestion-free Routing of Streaming Multimedia Content in BMIN-based Parallel Systems Harish Sethu Department of Electrical and Computer Engineering Drexel University Philadelphia, PA 19104, USA sethu@ece.drexel.edu

More information

Incompatibility Dimensions and Integration of Atomic Commit Protocols

Incompatibility Dimensions and Integration of Atomic Commit Protocols The International Arab Journal of Information Technology, Vol. 5, No. 4, October 2008 381 Incompatibility Dimensions and Integration of Atomic Commit Protocols Yousef Al-Houmaily Department of Computer

More information

Valmir C. Barbosa. Programa de Engenharia de Sistemas e Computac~ao, COPPE. Caixa Postal Abstract

Valmir C. Barbosa. Programa de Engenharia de Sistemas e Computac~ao, COPPE. Caixa Postal Abstract The Interleaved Multichromatic Number of a Graph Valmir C. Barbosa Universidade Federal do Rio de Janeiro Programa de Engenharia de Sistemas e Computac~ao, COPPE Caixa Postal 685 2945-970 Rio de Janeiro

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

Inconsistency-tolerant logics

Inconsistency-tolerant logics Inconsistency-tolerant logics CS 157 Computational Logic Autumn 2010 Inconsistent logical theories T 1 = { p(a), p(a) } T 2 = { x(p(x) q(x)), p(a), q(a) } Definition: A theory T is inconsistent if T has

More information

16 Greedy Algorithms

16 Greedy Algorithms 16 Greedy Algorithms Optimization algorithms typically go through a sequence of steps, with a set of choices at each For many optimization problems, using dynamic programming to determine the best choices

More information

Transparent Access to Legacy Data in Java. Olivier Gruber. IBM Almaden Research Center. San Jose, CA Abstract

Transparent Access to Legacy Data in Java. Olivier Gruber. IBM Almaden Research Center. San Jose, CA Abstract Transparent Access to Legacy Data in Java Olivier Gruber IBM Almaden Research Center San Jose, CA 95120 Abstract We propose in this paper an extension to PJava in order to provide a transparent access

More information

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA

Thunks (continued) Olivier Danvy, John Hatcli. Department of Computing and Information Sciences. Kansas State University. Manhattan, Kansas 66506, USA Thunks (continued) Olivier Danvy, John Hatcli Department of Computing and Information Sciences Kansas State University Manhattan, Kansas 66506, USA e-mail: (danvy, hatcli)@cis.ksu.edu Abstract: Call-by-name

More information

Relational Knowledge Discovery in Databases Heverlee. fhendrik.blockeel,

Relational Knowledge Discovery in Databases Heverlee.   fhendrik.blockeel, Relational Knowledge Discovery in Databases Hendrik Blockeel and Luc De Raedt Katholieke Universiteit Leuven Department of Computer Science Celestijnenlaan 200A 3001 Heverlee e-mail: fhendrik.blockeel,

More information

A technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects

A technique for adding range restrictions to. August 30, Abstract. In a generalized searching problem, a set S of n colored geometric objects A technique for adding range restrictions to generalized searching problems Prosenjit Gupta Ravi Janardan y Michiel Smid z August 30, 1996 Abstract In a generalized searching problem, a set S of n colored

More information

Foundations of Databases

Foundations of Databases Foundations of Databases Free University of Bozen Bolzano, 2004 2005 Thomas Eiter Institut für Informationssysteme Arbeitsbereich Wissensbasierte Systeme (184/3) Technische Universität Wien http://www.kr.tuwien.ac.at/staff/eiter

More information

Query Evaluation on Probabilistic Databases

Query Evaluation on Probabilistic Databases Query Evaluation on Probabilistic Databases Christopher Ré, Nilesh Dalvi and Dan Suciu University of Washington 1 The Probabilistic Data In this paper we consider the query evaluation problem: how can

More information

when a process of the form if be then p else q is executed and also when an output action is performed. 1. Unnecessary substitution: Let p = c!25 c?x:

when a process of the form if be then p else q is executed and also when an output action is performed. 1. Unnecessary substitution: Let p = c!25 c?x: URL: http://www.elsevier.nl/locate/entcs/volume27.html 7 pages Towards Veried Lazy Implementation of Concurrent Value-Passing Languages (Abstract) Anna Ingolfsdottir (annai@cs.auc.dk) BRICS, Dept. of Computer

More information

CMPS 277 Principles of Database Systems. https://courses.soe.ucsc.edu/courses/cmps277/fall11/01. Lecture #11

CMPS 277 Principles of Database Systems. https://courses.soe.ucsc.edu/courses/cmps277/fall11/01. Lecture #11 CMPS 277 Principles of Database Systems https://courses.soe.ucsc.edu/courses/cmps277/fall11/01 Lecture #11 1 Limitations of Relational Algebra & Relational Calculus Outline: Relational Algebra and Relational

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

On Meaning Preservation of a Calculus of Records

On Meaning Preservation of a Calculus of Records On Meaning Preservation of a Calculus of Records Emily Christiansen and Elena Machkasova Computer Science Discipline University of Minnesota, Morris Morris, MN 56267 chri1101, elenam@morris.umn.edu Abstract

More information

Pushing Semantics inside Recursion: A General Framework for. Semantic Optimization of Recursive Queries

Pushing Semantics inside Recursion: A General Framework for. Semantic Optimization of Recursive Queries Appears in: ICDE'95. Pushing Semantics inside Recursion: A General Framework for Semantic Optimization of Recursive Queries Laks V.S. Lakshmanan Dept. of Comp. Sci. Concordia University Montreal, Canada

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

Reconciling Dierent Semantics for Concept Denition (Extended Abstract) Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Universita di Ro

Reconciling Dierent Semantics for Concept Denition (Extended Abstract) Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Universita di Ro Reconciling Dierent Semantics for Concept Denition (Extended Abstract) Giuseppe De Giacomo Dipartimento di Informatica e Sistemistica Universita di Roma \La Sapienza" Via Salaria 113, 00198 Roma, Italia

More information

The underlying idea for the proposed proof procedure is to transform a formula into a Shannon graph and compile this graph into Horn clauses When run

The underlying idea for the proposed proof procedure is to transform a formula into a Shannon graph and compile this graph into Horn clauses When run Towards First-order Deduction Based on Shannon Graphs Joachim Posegga & Bertram Ludascher Universitat Karlsruhe Institut fur Logik, Komplexitat und Deduktionssysteme Am Fasanengarten 5, 75 Karlsruhe, Germany

More information

(i.e., produced only a subset of the possible answers). We describe the novel class

(i.e., produced only a subset of the possible answers). We describe the novel class Recursive Query Plans for Data Integration Oliver M. Duschka Michael R. Genesereth Department of Computer Science, Stanford University, Stanford, CA 94305, USA Alon Y. Levy 1 Department of Computer Science

More information

1 A Tale of Two Lovers

1 A Tale of Two Lovers CS 120/ E-177: Introduction to Cryptography Salil Vadhan and Alon Rosen Dec. 12, 2006 Lecture Notes 19 (expanded): Secure Two-Party Computation Recommended Reading. Goldreich Volume II 7.2.2, 7.3.2, 7.3.3.

More information

and therefore the system throughput in a distributed database system [, 1]. Vertical fragmentation further enhances the performance of database transa

and therefore the system throughput in a distributed database system [, 1]. Vertical fragmentation further enhances the performance of database transa Vertical Fragmentation and Allocation in Distributed Deductive Database Systems Seung-Jin Lim Yiu-Kai Ng Department of Computer Science Brigham Young University Provo, Utah 80, U.S.A. Email: fsjlim,ngg@cs.byu.edu

More information

The Resolution Principle

The Resolution Principle Summary Introduction [Chang-Lee Ch. 5.1] for Propositional Logic [Chang-Lee Ch. 5.2] Herbrand's orem and refutation procedures Satisability procedures We can build refutation procedures building on Herbrand's

More information

Database Theory: Beyond FO

Database Theory: Beyond FO Database Theory: Beyond FO CS 645 Feb 11, 2010 Some slide content based on materials of Dan Suciu, Ullman/Widom 1 TODAY: Coming lectures Limited expressiveness of FO Adding recursion (Datalog) Expressiveness

More information

An Efficient Staging Algorithm for Binding-Time Analysis

An Efficient Staging Algorithm for Binding-Time Analysis An Efficient Staging Algorithm for Binding-Time Analysis Takuma Murakami 1, Zhenjiang Hu 1,2, Kazuhiko Kakehi 1, and Masato Takeichi 1 1 Department of Mathematical Informatics, Graduate School of Information

More information

Finding a winning strategy in variations of Kayles

Finding a winning strategy in variations of Kayles Finding a winning strategy in variations of Kayles Simon Prins ICA-3582809 Utrecht University, The Netherlands July 15, 2015 Abstract Kayles is a two player game played on a graph. The game can be dened

More information

ABSTRACT Finding a cut or nding a matching in a graph are so simple problems that hardly are considered problems at all. Finding a cut whose split edg

ABSTRACT Finding a cut or nding a matching in a graph are so simple problems that hardly are considered problems at all. Finding a cut whose split edg R O M A TRE DIA Universita degli Studi di Roma Tre Dipartimento di Informatica e Automazione Via della Vasca Navale, 79 { 00146 Roma, Italy The Complexity of the Matching-Cut Problem Maurizio Patrignani

More information

A Retrospective on Datalog 1.0

A Retrospective on Datalog 1.0 A Retrospective on Datalog 1.0 Phokion G. Kolaitis UC Santa Cruz and IBM Research - Almaden Datalog 2.0 Vienna, September 2012 2 / 79 A Brief History of Datalog In the beginning of time, there was E.F.

More information

Cooperating Languages - Core Language

Cooperating Languages - Core Language Cooperating Languages - Core Language Hesam Samimi (advised by Alan Borning) VPRI Memo M-2012-004 Viewpoints Research Institute, 1209 Grand Central Avenue, Glendale, CA 91201 t: (818) 332-3001 f: (818)

More information

A Boolean Expression. Reachability Analysis or Bisimulation. Equation Solver. Boolean. equations.

A Boolean Expression. Reachability Analysis or Bisimulation. Equation Solver. Boolean. equations. A Framework for Embedded Real-time System Design? Jin-Young Choi 1, Hee-Hwan Kwak 2, and Insup Lee 2 1 Department of Computer Science and Engineering, Korea Univerity choi@formal.korea.ac.kr 2 Department

More information

Datalog. Susan B. Davidson. CIS 700: Advanced Topics in Databases MW 1:30-3 Towne 309

Datalog. Susan B. Davidson.  CIS 700: Advanced Topics in Databases MW 1:30-3 Towne 309 Datalog Susan B. Davidson CIS 700: Advanced Topics in Databases MW 1:30-3 Towne 309 http://www.cis.upenn.edu/~susan/cis700/homepage.html 2017 A. Alawini, S. Davidson References Textbooks Ramakrishnan and

More information

time using O( n log n ) processors on the EREW PRAM. Thus, our algorithm improves on the previous results, either in time complexity or in the model o

time using O( n log n ) processors on the EREW PRAM. Thus, our algorithm improves on the previous results, either in time complexity or in the model o Reconstructing a Binary Tree from its Traversals in Doubly-Logarithmic CREW Time Stephan Olariu Michael Overstreet Department of Computer Science, Old Dominion University, Norfolk, VA 23529 Zhaofang Wen

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

Synchronization Expressions: Characterization Results and. Implementation. Kai Salomaa y Sheng Yu y. Abstract

Synchronization Expressions: Characterization Results and. Implementation. Kai Salomaa y Sheng Yu y. Abstract Synchronization Expressions: Characterization Results and Implementation Kai Salomaa y Sheng Yu y Abstract Synchronization expressions are dened as restricted regular expressions that specify synchronization

More information

Semantic Query Optimization for Bottom-Up. Evaluation 3. fgodfrey, jarek, University of Maryland, College Park, Maryland 20742

Semantic Query Optimization for Bottom-Up. Evaluation 3. fgodfrey, jarek, University of Maryland, College Park, Maryland 20742 Semantic Query Optimization for Bottom-Up Evaluation 3 P. Godfrey 1, J. Gryz 1, J. Minker 1;2 fgodfrey, jarek, minkerg@cs.umd.edu Department of Computer Science 1 and Institute for Advanced Computer Studies

More information

Query Rewriting Using Views in the Presence of Inclusion Dependencies

Query Rewriting Using Views in the Presence of Inclusion Dependencies Query Rewriting Using Views in the Presence of Inclusion Dependencies Qingyuan Bai Jun Hong Michael F. McTear School of Computing and Mathematics, University of Ulster at Jordanstown, Newtownabbey, Co.

More information

Condition Using Constraints. Stratication conditions for logic programs aim to ensure a two-valued semantics

Condition Using Constraints. Stratication conditions for logic programs aim to ensure a two-valued semantics A Syntactic Stratication Condition Using Constraints Kenneth A. Ross Department of Computer Science Columbia University New York, NY 10027 kar@cs.columbia.edu Abstract Stratication conditions for logic

More information

XI International PhD Workshop OWD 2009, October Fuzzy Sets as Metasets

XI International PhD Workshop OWD 2009, October Fuzzy Sets as Metasets XI International PhD Workshop OWD 2009, 17 20 October 2009 Fuzzy Sets as Metasets Bartłomiej Starosta, Polsko-Japońska WyŜsza Szkoła Technik Komputerowych (24.01.2008, prof. Witold Kosiński, Polsko-Japońska

More information

Two Problems - Two Solutions: One System - ECLiPSe. Mark Wallace and Andre Veron. April 1993

Two Problems - Two Solutions: One System - ECLiPSe. Mark Wallace and Andre Veron. April 1993 Two Problems - Two Solutions: One System - ECLiPSe Mark Wallace and Andre Veron April 1993 1 Introduction The constraint logic programming system ECL i PS e [4] is the successor to the CHIP system [1].

More information

Joint Entity Resolution

Joint Entity Resolution Joint Entity Resolution Steven Euijong Whang, Hector Garcia-Molina Computer Science Department, Stanford University 353 Serra Mall, Stanford, CA 94305, USA {swhang, hector}@cs.stanford.edu No Institute

More information

COMP2411 Lecture 20: Logic Programming Examples. (This material not in the book)

COMP2411 Lecture 20: Logic Programming Examples. (This material not in the book) COMP2411 Lecture 20: Logic Programming Examples (This material not in the book) There are several distinct but often equivalent ways to think about logic programs 1. As computing logical consequences of

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

Foundations of Schema Mapping Management

Foundations of Schema Mapping Management Foundations of Schema Mapping Management Marcelo Arenas Jorge Pérez Juan Reutter Cristian Riveros PUC Chile PUC Chile University of Edinburgh Oxford University marenas@ing.puc.cl jperez@ing.puc.cl juan.reutter@ed.ac.uk

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

6.001 Notes: Section 6.1

6.001 Notes: Section 6.1 6.001 Notes: Section 6.1 Slide 6.1.1 When we first starting talking about Scheme expressions, you may recall we said that (almost) every Scheme expression had three components, a syntax (legal ways of

More information

Logical Query Languages. Motivation: 1. Logical rules extend more naturally to. recursive queries than does relational algebra.

Logical Query Languages. Motivation: 1. Logical rules extend more naturally to. recursive queries than does relational algebra. Logical Query Languages Motivation: 1. Logical rules extend more naturally to recursive queries than does relational algebra. Used in SQL3 recursion. 2. Logical rules form the basis for many information-integration

More information

Estimating the Quality of Databases

Estimating the Quality of Databases Estimating the Quality of Databases Ami Motro Igor Rakov George Mason University May 1998 1 Outline: 1. Introduction 2. Simple quality estimation 3. Refined quality estimation 4. Computing the quality

More information

Datalog Evaluation. Serge Abiteboul. 5 mai 2009 INRIA. Serge Abiteboul (INRIA) Datalog Evaluation 5 mai / 1

Datalog Evaluation. Serge Abiteboul. 5 mai 2009 INRIA. Serge Abiteboul (INRIA) Datalog Evaluation 5 mai / 1 Datalog Evaluation Serge Abiteboul INRIA 5 mai 2009 Serge Abiteboul (INRIA) Datalog Evaluation 5 mai 2009 1 / 1 Datalog READ CHAPTER 13 lots of research in the late 80 th top-down or bottom-up evaluation

More information

User Interface Modelling Based on the Graph Transformations of Conceptual Data Model

User Interface Modelling Based on the Graph Transformations of Conceptual Data Model User Interface Modelling Based on the Graph Transformations of Conceptual Data Model Martin Molhanec Department of e-technology, Faculty of Electrical Engineering Czech Technical University in Prague Technická

More information

Lecture 7 February 26, 2010

Lecture 7 February 26, 2010 6.85: Advanced Data Structures Spring Prof. Andre Schulz Lecture 7 February 6, Scribe: Mark Chen Overview In this lecture, we consider the string matching problem - finding all places in a text where some

More information