Knowledge

Conjunctive query

Source 📝

1852: 1009:-complete with respect to combined complexity and is therefore even harder under widely held complexity-theoretic assumptions). However, in the usual application scenario, databases are large, while queries are very small, and the data complexity model may be appropriate for studying and describing their difficulty. 445:. To give an example, imagine a relational database for storing information about students, their address, the courses they take and their gender. Finding all male students and their addresses who attend a course that is also attended by a female student is expressed by the following conjunctive query: 853:
While any conjunctive query can be written as a Datalog rule, not every Datalog program can be written as a conjunctive query. In fact, only single rules over extensional predicate symbols can be easily rewritten as an equivalent conjunctive query. The problem of deciding whether for a given Datalog
507:
in which the where-condition uses exclusively conjunctions of atomic equality conditions, i.e. conditions constructed from column names and constants using no comparison operators other than "=", combined using "and". Notably, this excludes the use of aggregation and subqueries. For example, the
206: 1534:
Unrestricted conjunctive queries over tree data (i.e., a relational database consisting of a binary child relation of a tree as well as unary relations for labeling the tree nodes) have polynomial time combined complexity.
448:(student, address) . ∃ (student2, course) . attends(student, course) ∧ gender(student, 'male') ∧ attends(student2, course) ∧ gender(student2, 'female') ∧ lives(student, address) 1402:: a conjunctive query is acyclic if and only if it has hypertree-width 1. For the special case of conjunctive queries in which all relations used are binary, this notion corresponds to the treewidth of the 1375:
for conjunctive queries. In fact, it turns out that the query containment problem for conjunctive queries is exactly the same problem as the query evaluation problem. Since queries tend to be small,
432: 1358: 1865: 314: 360: 259: 1679:
Bagan, Guillaume; Durand, Arnaud; Grandjean, Etienne (2007). Duparc, Jacques; Henzinger, Thomas A. (eds.). "On Acyclic Conjunctive Queries and Constant Delay Enumeration".
1076: 1049: 89: 1436: 1506: 1471: 1360:. The main application of query containment is in query optimization: Deciding whether two queries are equivalent is possible by simply checking mutual containment. 1276: 1249: 1222: 1105: 1300: 1193: 1169: 1149: 1129: 1816: 1788: 863: 1566: 438:. This formula cannot be implemented in the select-project-join fragment of relational algebra, and hence should not be considered a conjunctive query. 1660: 1574: 1836: 1724: 36:
can be expressed in this way. Conjunctive queries also have a number of desirable theoretical properties that larger classes of queries (e.g., the
1832: 451:
Note that since the only entity of interest is the male student and his address, these are the only distinguished variables, while the variables
958:
of evaluating conjunctive queries, two problems have to be distinguished. The first is the problem of evaluating a conjunctive query on a
966:, while the complexity of the problem of evaluating a query on a relational database, where the query is assumed fixed, is called 962:
where both the query and the database are considered part of the input. The complexity of this problem is usually referred to as
1595: 32:
operator. Many first-order queries can be written as conjunctive queries. In particular, a large part of queries issued on
503:(i.e., relational algebra queries that do not use the operations union or difference) and to select-from-where queries in 875: 1379:
here is usually considered acceptable. The query containment problem for conjunctive queries is also equivalent to the
1623: 262: 213: 1700: 1017: 846:
Although there are no quantifiers in this notation, variables appearing in the head of the rule are still implicitly
1398:. Acyclicity of conjunctive queries is a structural property of queries that is defined with respect to the query's 372: 1406:
of the variables in the query (i.e., the graph having the variables of the query as nodes and an undirected edge
1380: 1305: 1741:
Kolaitis, Phokion G.; Vardi, Moshe Y. (2000), "Conjunctive-Query Containment and Constraint Satisfaction",
1524: 1509: 858:(corresponding to a positive relational algebra query, or, equivalently, a formula of positive existential 267: 1866:
Presentation on structural decomposition methods for the efficient evaluation of conjunctive queries (PDF)
1668: 1028:
delay between each solution. Specifically, these are the acyclic conjunctive queries which also satisfy a
1012:
The problem of listing all answers to a non-Boolean conjunctive query has been studied in the context of
319: 218: 850:, while variables only appearing in the body of the rule are still implicitly existentially quantified. 1282:, the query containment problem is the problem of deciding whether for all possible database instances 1005:
strictly subsume the conjunctive queries and are thus at least as hard (in fact, relational algebra is
460: 61: 472: 1606: 475:. Conjunctive queries where all variables are distinguished (and no variables are bound) are called 369:
As an example of why the restriction to domain independent first-order logic is important, consider
1880: 847: 73: 1055: 201:{\displaystyle (x_{1},\ldots ,x_{k}).\exists x_{k+1},\ldots x_{m}.A_{1}\wedge \ldots \wedge A_{r}} 1516: 981:, while the data complexity of conjunctive queries is very low, in the parallel complexity class 1386:
An important class of conjunctive queries that have polynomial-time combined complexity are the
1601: 1581:: Undecidable Boundedness Problems for Datalog Programs. J. Log. Program. 25(2): 163-190 (1995) 955: 1048:
for larger classes of queries are feasible for conjunctive queries. For example, consider the
1819:: Hypertree Decompositions and Tractable Queries. J. Comput. Syst. Sci. 64(3): 579-627 (2002) 1791:(2001). "The complexity of acyclic conjunctive queries". Journal of the ACM 48 (3): 431–498. 1409: 1013: 1476: 1441: 441:
Conjunctive queries can express a large proportion of queries that are frequently issued on
1254: 1227: 933: 1556: 1508:
in the query) and the conjunctive query is acyclic if and only if its dependency graph is
1198: 8: 1570: 1172: 1084: 1045: 978: 959: 480: 442: 57: 33: 29: 1768: 1629: 1364: 1285: 1178: 1154: 1134: 1114: 998: 924: 906: 890: 728:
rules. Many authors in fact prefer the following Datalog notation for the query above:
500: 488: 77: 37: 1696: 1637: 1619: 1079: 910: 902: 859: 435: 49: 25: 1597:
Proceedings of the fourteenth annual ACM symposium on Theory of computing - STOC '82
1792: 1750: 1688: 1656: 1633: 1611: 1519:, which is a measure of how close to acyclic a hypergraph is, analogous to bounded 1403: 949: 76:∀. Each such formula can be rewritten (efficiently) into an equivalent formula in 1720: 1692: 1667:. STOC '77: Proceedings of the ninth annual ACM symposium on Theory of computing 1395: 1376: 1279: 1195:, we write the result relation of evaluating the query on the instance simply as 1108: 1041: 990: 937: 932:
The formal study of all of these extensions is justified by their application in
17: 508:
above query can be written as an SQL query of the conjunctive query fragment as
1591: 1578: 363: 53: 1874: 1861: 1828: 1808: 1780: 1025: 1594:(1982), "The complexity of relational query languages (Extended Abstract)", 1812: 1784: 1755: 1728: 724:
Besides their logical notation, conjunctive queries can also be written as
1796: 1615: 1390:
conjunctive queries. The query evaluation, and thus query containment, is
1372: 1021: 974: 65: 1855:
Information integration using logical views Theoretical Computer Science
1399: 1665:
Optimal Implementation of Conjunctive Queries in Relational Data Bases
499:
Conjunctive queries also correspond to select-project-join queries in
1520: 855: 484: 1771:: Algorithms for Acyclic Database Schemes . Proc. VLDB 1981: 82-94. 1044:
in that many interesting problems that are computationally hard or
986: 897: 886: 69: 994: 725: 48:
The conjunctive queries are the fragment of (domain independent)
1438:
between two variables if and only if there is an atomic formula
1528: 1391: 1006: 471:
Conjunctive queries without distinguished variables are called
1839:: Conjunctive queries over trees. J. ACM 53(2): 238-272 (2006) 862:, or, as a special case, a conjunctive query) is known as the 1020:) of the queries for which enumeration can be performed with 1040:
Conjunctive queries are one of the great success stories of
83:
Thus conjunctive queries are of the following general form:
1553:
Size Bounds for Factorised Representations of Query Results
1515:
An important generalization of acyclicity is the notion of
52:
given by the set of formulae that can be constructed from
1368: 1002: 982: 504: 494: 1479: 1444: 1412: 1308: 1288: 1257: 1230: 1201: 1181: 1157: 1137: 1117: 1087: 1058: 375: 322: 270: 221: 92: 1678: 997:
of conjunctive queries may appear surprising, since
1500: 1465: 1430: 1352: 1294: 1270: 1243: 1216: 1187: 1163: 1143: 1123: 1099: 1070: 426: 354: 308: 253: 200: 1731:: Foundations of Databases. Addison-Wesley, 1995. 1527:. Conjunctive queries of bounded tree-width have 1363:The query containment problem is undecidable for 874:Extensions of conjunctive queries capturing more 1872: 261:being called distinguished variables, and the 1740: 1425: 1413: 491:(when selecting all columns of the result). 427:{\displaystyle x_{1}.\exists x_{2}.R(x_{2})} 80:, thus this form is usually simply assumed. 1353:{\displaystyle Q_{1}(I)\subseteq Q_{2}(I)} 896:conjunctive queries extended by union and 885:, which are equivalent to positive (i.e., 479:, because they are the equivalent, in the 1754: 1605: 316:being called undistinguished variables. 1743:Journal of Computer and System Sciences 1687:. Springer Berlin Heidelberg: 208–222. 1111:if and only if each tuple occurring in 434:, which is not domain independent; see 1873: 1016:, with a characterization (under some 1716: 1714: 1712: 1683:. Lecture Notes in Computer Science. 1590: 495:Relationship to other query languages 309:{\displaystyle x_{k+1},\ldots ,x_{m}} 1035: 355:{\displaystyle A_{1},\ldots ,A_{r}} 254:{\displaystyle x_{1},\ldots ,x_{k}} 13: 1709: 1018:computational hardness assumptions 389: 131: 14: 1892: 1846: 1302:over the input database schema, 1822: 1802: 1381:constraint satisfaction problem 854:program there is an equivalent 1774: 1762: 1734: 1672: 1650: 1584: 1560: 1545: 1495: 1483: 1460: 1448: 1347: 1341: 1325: 1319: 1211: 1205: 421: 408: 125: 93: 1: 1555:, 2015, DOI 10.1145/2656335, 1538: 943: 919:, e.g., arithmetic predicates 883:unions of conjunctive queries 869: 43: 1693:10.1007/978-3-540-74915-8_18 1551:Dan Olteanu, Jakub Závodný, 1071:{\displaystyle R\subseteq S} 866:problem and is undecidable. 466: 7: 473:boolean conjunctive queries 10: 1897: 947: 719: 62:existential quantification 1050:query containment problem 922:conjunctive queries with 915:conjunctive queries with 985:, which is contained in 973:Conjunctive queries are 956:computational complexity 730: 510: 463:, i.e. undistinguished. 461:existentially quantified 74:universal quantification 24:is a restricted form of 1517:bounded hypertree-width 1431:{\displaystyle \{x,y\}} 936:and is in the realm of 40:queries) do not share. 1756:10.1006/jcss.2000.1713 1681:Computer Science Logic 1502: 1501:{\displaystyle R(y,x)} 1467: 1466:{\displaystyle R(x,y)} 1432: 1394:-complete and thus in 1354: 1296: 1272: 1245: 1218: 1189: 1165: 1145: 1125: 1101: 1072: 1014:enumeration algorithms 848:universally quantified 428: 356: 310: 255: 202: 1797:10.1145/382780.382783 1616:10.1145/800070.802186 1531:combined complexity. 1503: 1468: 1433: 1371:but is decidable and 1355: 1297: 1273: 1271:{\displaystyle Q_{2}} 1246: 1244:{\displaystyle Q_{1}} 1219: 1190: 1166: 1146: 1126: 1102: 1073: 954:For the study of the 429: 357: 311: 256: 203: 1857:, 2000, 239, 189-210 1600:, pp. 137–146, 1477: 1442: 1410: 1306: 1286: 1255: 1228: 1224:. Given two queries 1217:{\displaystyle Q(I)} 1199: 1179: 1155: 1135: 1115: 1085: 1056: 934:relational databases 856:nonrecursive program 443:relational databases 373: 320: 268: 219: 90: 34:relational databases 1817:Francesco Scarcello 1789:Francesco Scarcello 1571:Paris C. Kanellakis 1173:relational database 1100:{\displaystyle R,S} 979:combined complexity 964:combined complexity 960:relational database 925:aggregate functions 917:built-in predicates 864:Datalog boundedness 481:relational calculus 30:logical conjunction 1769:Mihalis Yannakakis 1567:Gerd G. Hillebrand 1498: 1463: 1428: 1365:relational algebra 1350: 1292: 1268: 1241: 1214: 1185: 1161: 1141: 1121: 1097: 1080:database relations 1068: 1024:preprocessing and 999:relational algebra 907:relational algebra 891:relational algebra 501:relational algebra 489:relational algebra 424: 352: 306: 251: 198: 78:prenex normal form 38:relational algebra 28:queries using the 1295:{\displaystyle I} 1188:{\displaystyle I} 1164:{\displaystyle Q} 1144:{\displaystyle S} 1124:{\displaystyle R} 1036:Formal properties 911:first-order logic 860:first-order logic 477:equi-join queries 64:∃, but not using 50:first-order logic 22:conjunctive query 1888: 1840: 1826: 1820: 1806: 1800: 1778: 1772: 1766: 1760: 1759: 1758: 1738: 1732: 1718: 1707: 1706: 1676: 1670: 1661:Philip M. Merlin 1657:Ashok K. Chandra 1654: 1648: 1647: 1646: 1645: 1636:, archived from 1609: 1588: 1582: 1575:Harry G. Mairson 1564: 1558: 1549: 1507: 1505: 1504: 1499: 1472: 1470: 1469: 1464: 1437: 1435: 1434: 1429: 1404:dependency graph 1359: 1357: 1356: 1351: 1340: 1339: 1318: 1317: 1301: 1299: 1298: 1293: 1277: 1275: 1274: 1269: 1267: 1266: 1250: 1248: 1247: 1242: 1240: 1239: 1223: 1221: 1220: 1215: 1194: 1192: 1191: 1186: 1170: 1168: 1167: 1162: 1151:. Given a query 1150: 1148: 1147: 1142: 1130: 1128: 1127: 1122: 1106: 1104: 1103: 1098: 1077: 1075: 1074: 1069: 977:with respect to 950:Query evaluation 876:expressive power 842: 839: 836: 833: 830: 827: 824: 821: 818: 815: 812: 809: 806: 803: 800: 797: 794: 791: 788: 785: 782: 779: 776: 773: 770: 767: 764: 761: 758: 755: 752: 749: 746: 743: 740: 737: 734: 715: 712: 711:'female' 709: 706: 703: 700: 697: 694: 691: 688: 685: 682: 679: 676: 673: 670: 667: 664: 661: 658: 655: 652: 649: 646: 643: 640: 637: 634: 631: 628: 625: 622: 619: 616: 613: 610: 607: 604: 601: 598: 595: 592: 589: 586: 583: 580: 577: 574: 571: 568: 565: 562: 559: 556: 553: 550: 547: 544: 541: 538: 535: 532: 529: 526: 523: 520: 517: 514: 458: 454: 433: 431: 430: 425: 420: 419: 401: 400: 385: 384: 361: 359: 358: 353: 351: 350: 332: 331: 315: 313: 312: 307: 305: 304: 286: 285: 260: 258: 257: 252: 250: 249: 231: 230: 207: 205: 204: 199: 197: 196: 178: 177: 165: 164: 149: 148: 124: 123: 105: 104: 1896: 1895: 1891: 1890: 1889: 1887: 1886: 1885: 1881:Database theory 1871: 1870: 1849: 1844: 1843: 1837:Klaus U. Schulz 1827: 1823: 1807: 1803: 1779: 1775: 1767: 1763: 1739: 1735: 1725:Richard B. Hull 1721:Serge Abiteboul 1719: 1710: 1703: 1677: 1673: 1655: 1651: 1643: 1641: 1626: 1607:10.1.1.331.6045 1592:Vardi, Moshe Y. 1589: 1585: 1565: 1561: 1550: 1546: 1541: 1478: 1475: 1474: 1443: 1440: 1439: 1411: 1408: 1407: 1396:polynomial time 1377:NP-completeness 1335: 1331: 1313: 1309: 1307: 1304: 1303: 1287: 1284: 1283: 1280:database schema 1262: 1258: 1256: 1253: 1252: 1235: 1231: 1229: 1226: 1225: 1200: 1197: 1196: 1180: 1177: 1176: 1156: 1153: 1152: 1136: 1133: 1132: 1131:also occurs in 1116: 1113: 1112: 1086: 1083: 1082: 1057: 1054: 1053: 1042:database theory 1038: 991:polynomial time 968:data complexity 952: 946: 938:database theory 872: 844: 843: 840: 837: 834: 831: 828: 825: 822: 819: 816: 813: 810: 807: 804: 801: 798: 795: 792: 789: 786: 783: 780: 777: 774: 771: 768: 765: 762: 759: 756: 753: 750: 747: 744: 741: 738: 735: 732: 722: 717: 716: 713: 710: 707: 704: 701: 698: 695: 692: 689: 686: 683: 680: 677: 674: 671: 668: 665: 662: 659: 656: 653: 650: 647: 644: 641: 638: 635: 632: 629: 626: 623: 620: 617: 614: 611: 608: 605: 602: 599: 596: 593: 590: 587: 584: 581: 578: 575: 572: 569: 566: 563: 560: 557: 554: 551: 548: 545: 542: 539: 536: 533: 530: 527: 524: 521: 518: 515: 512: 497: 487:queries in the 469: 456: 452: 449: 415: 411: 396: 392: 380: 376: 374: 371: 370: 364:atomic formulae 346: 342: 327: 323: 321: 318: 317: 300: 296: 275: 271: 269: 266: 265: 263:bound variables 245: 241: 226: 222: 220: 217: 216: 192: 188: 173: 169: 160: 156: 138: 134: 119: 115: 100: 96: 91: 88: 87: 54:atomic formulae 46: 18:database theory 12: 11: 5: 1894: 1884: 1883: 1869: 1868: 1859: 1853:Ullman, J. D. 1848: 1847:External links 1845: 1842: 1841: 1833:Christoph Koch 1821: 1801: 1773: 1761: 1749:(2): 302–332, 1733: 1708: 1701: 1671: 1649: 1625:978-0897910705 1624: 1583: 1579:Moshe Y. Vardi 1559: 1543: 1542: 1540: 1537: 1497: 1494: 1491: 1488: 1485: 1482: 1462: 1459: 1456: 1453: 1450: 1447: 1427: 1424: 1421: 1418: 1415: 1349: 1346: 1343: 1338: 1334: 1330: 1327: 1324: 1321: 1316: 1312: 1291: 1265: 1261: 1238: 1234: 1213: 1210: 1207: 1204: 1184: 1160: 1140: 1120: 1096: 1093: 1090: 1067: 1064: 1061: 1037: 1034: 948:Main article: 945: 942: 930: 929: 920: 913: 905:correspond to 903:Codd's theorem 893: 871: 868: 731: 721: 718: 693:'male' 511: 496: 493: 468: 465: 447: 436:Codd's theorem 423: 418: 414: 410: 407: 404: 399: 395: 391: 388: 383: 379: 349: 345: 341: 338: 335: 330: 326: 303: 299: 295: 292: 289: 284: 281: 278: 274: 248: 244: 240: 237: 234: 229: 225: 214:free variables 210: 209: 195: 191: 187: 184: 181: 176: 172: 168: 163: 159: 155: 152: 147: 144: 141: 137: 133: 130: 127: 122: 118: 114: 111: 108: 103: 99: 95: 45: 42: 9: 6: 4: 3: 2: 1893: 1882: 1879: 1878: 1876: 1867: 1863: 1862:Georg Gottlob 1860: 1858: 1856: 1851: 1850: 1838: 1834: 1830: 1829:Georg Gottlob 1825: 1818: 1814: 1810: 1809:Georg Gottlob 1805: 1798: 1794: 1790: 1786: 1782: 1781:Georg Gottlob 1777: 1770: 1765: 1757: 1752: 1748: 1744: 1737: 1730: 1726: 1722: 1717: 1715: 1713: 1704: 1702:9783540749158 1698: 1694: 1690: 1686: 1682: 1675: 1669: 1666: 1662: 1658: 1653: 1640:on 2011-08-23 1639: 1635: 1631: 1627: 1621: 1617: 1613: 1608: 1603: 1599: 1598: 1593: 1587: 1580: 1576: 1572: 1568: 1563: 1557: 1554: 1548: 1544: 1536: 1532: 1530: 1526: 1522: 1518: 1513: 1511: 1492: 1489: 1486: 1480: 1457: 1454: 1451: 1445: 1422: 1419: 1416: 1405: 1401: 1397: 1393: 1389: 1384: 1382: 1378: 1374: 1370: 1366: 1361: 1344: 1336: 1332: 1328: 1322: 1314: 1310: 1289: 1281: 1263: 1259: 1236: 1232: 1208: 1202: 1182: 1174: 1158: 1138: 1118: 1110: 1094: 1091: 1088: 1081: 1065: 1062: 1059: 1051: 1047: 1043: 1033: 1031: 1027: 1023: 1019: 1015: 1010: 1008: 1004: 1000: 996: 992: 988: 984: 980: 976: 971: 969: 965: 961: 957: 951: 941: 939: 935: 927: 926: 921: 918: 914: 912: 908: 904: 900: 899: 894: 892: 888: 884: 881: 880: 879: 877: 867: 865: 861: 857: 851: 849: 729: 727: 509: 506: 502: 492: 490: 486: 482: 478: 474: 464: 462: 446: 444: 439: 437: 416: 412: 405: 402: 397: 393: 386: 381: 377: 367: 365: 347: 343: 339: 336: 333: 328: 324: 301: 297: 293: 290: 287: 282: 279: 276: 272: 264: 246: 242: 238: 235: 232: 227: 223: 215: 193: 189: 185: 182: 179: 174: 170: 166: 161: 157: 153: 150: 145: 142: 139: 135: 128: 120: 116: 112: 109: 106: 101: 97: 86: 85: 84: 81: 79: 75: 71: 67: 63: 59: 55: 51: 41: 39: 35: 31: 27: 23: 19: 1854: 1824: 1813:Nicola Leone 1804: 1785:Nicola Leone 1776: 1764: 1746: 1742: 1736: 1729:Victor Vianu 1684: 1680: 1674: 1664: 1652: 1642:, retrieved 1638:the original 1596: 1586: 1562: 1552: 1547: 1533: 1514: 1387: 1385: 1362: 1107:of the same 1039: 1029: 1011: 989:and thus in 972: 967: 963: 953: 931: 923: 916: 895: 882: 873: 852: 845: 723: 498: 476: 470: 450: 440: 368: 211: 82: 60:∧ and 47: 21: 15: 1373:NP-complete 1052:. We write 1046:undecidable 1032:condition. 1030:free-connex 1022:linear time 995:NP-hardness 975:NP-complete 901:, which by 66:disjunction 58:conjunction 26:first-order 1644:2011-05-16 1539:References 1400:hypergraph 944:Complexity 870:Extensions 44:Definition 1602:CiteSeerX 1521:treewidth 1329:⊆ 1175:instance 1063:⊆ 878:include: 485:equi-join 483:, of the 467:Fragments 459:are only 390:∃ 337:… 291:… 236:… 212:with the 186:∧ 183:… 180:∧ 154:… 132:∃ 110:… 68:∨, 1875:Category 1663:, 1977. 1078:for two 1026:constant 987:LOGSPACE 898:negation 887:negation 814:student2 796:student2 457:student2 70:negation 1634:7869248 1510:acyclic 1388:acyclic 889:-free) 838:address 832:student 790:attends 778:student 760:student 754:attends 745:address 739:student 726:Datalog 720:Datalog 651:student 639:student 627:student 615:student 603:student 591:student 558:attends 540:attends 534:address 522:student 1815:, and 1787:, and 1699:  1632:  1622:  1604:  1529:LOGCFL 1525:graphs 1392:LOGCFL 1278:and a 1171:and a 1109:schema 1007:PSPACE 993:. The 820:female 808:gender 802:course 772:gender 766:course 733:result 705:gender 687:gender 675:course 663:course 567:gender 549:gender 513:select 453:course 72:¬, or 56:using 1630:S2CID 826:lives 582:where 576:lives 1697:ISBN 1685:4646 1659:and 1620:ISBN 1367:and 1251:and 1001:and 909:and 784:male 537:from 362:are 20:, a 1793:doi 1751:doi 1689:doi 1612:doi 1523:in 1473:or 1369:SQL 1003:SQL 983:AC0 696:and 678:and 654:and 630:and 606:and 505:SQL 16:In 1877:: 1864:, 1835:, 1831:, 1811:, 1783:, 1747:61 1745:, 1727:, 1723:, 1711:^ 1695:. 1628:, 1618:, 1610:, 1577:, 1573:, 1569:, 1512:. 1383:. 970:. 940:. 841:). 823:), 805:), 787:), 769:), 751::- 699:g2 681:g1 669:a2 657:a1 645:g1 621:g2 609:a2 597:g1 585:a1 570:g2 561:a2 552:g1 543:a1 455:, 366:. 1799:. 1795:: 1753:: 1705:. 1691:: 1614:: 1496:) 1493:x 1490:, 1487:y 1484:( 1481:R 1461:) 1458:y 1455:, 1452:x 1449:( 1446:R 1426:} 1423:y 1420:, 1417:x 1414:{ 1348:) 1345:I 1342:( 1337:2 1333:Q 1326:) 1323:I 1320:( 1315:1 1311:Q 1290:I 1264:2 1260:Q 1237:1 1233:Q 1212:) 1209:I 1206:( 1203:Q 1183:I 1159:Q 1139:S 1119:R 1095:S 1092:, 1089:R 1066:S 1060:R 928:. 835:, 829:( 817:, 811:( 799:, 793:( 781:, 775:( 763:, 757:( 748:) 742:, 736:( 714:; 708:= 702:. 690:= 684:. 672:. 666:= 660:. 648:. 642:= 636:. 633:l 624:. 618:= 612:. 600:. 594:= 588:. 579:l 573:, 564:, 555:, 546:, 531:. 528:l 525:, 519:. 516:l 422:) 417:2 413:x 409:( 406:R 403:. 398:2 394:x 387:. 382:1 378:x 348:r 344:A 340:, 334:, 329:1 325:A 302:m 298:x 294:, 288:, 283:1 280:+ 277:k 273:x 247:k 243:x 239:, 233:, 228:1 224:x 208:, 194:r 190:A 175:1 171:A 167:. 162:m 158:x 151:, 146:1 143:+ 140:k 136:x 129:. 126:) 121:k 117:x 113:, 107:, 102:1 98:x 94:(

Index

database theory
first-order
logical conjunction
relational databases
relational algebra
first-order logic
atomic formulae
conjunction
existential quantification
disjunction
negation
universal quantification
prenex normal form
free variables
bound variables
atomic formulae
Codd's theorem
relational databases
existentially quantified
boolean conjunctive queries
relational calculus
equi-join
relational algebra
relational algebra
SQL
Datalog
universally quantified
nonrecursive program
first-order logic
Datalog boundedness

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.