<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Bringing Order to Data</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Heidar</forename><surname>Davoudi</surname></persName>
							<email>hdavoudi@uwaterloo.ca</email>
							<affiliation key="aff0">
								<orgName type="institution">University of Waterloo</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Parke</forename><surname>Godfrey</surname></persName>
							<email>godfrey@yorku.ca</email>
							<affiliation key="aff1">
								<orgName type="institution">York University</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Lukasz</forename><surname>Golab</surname></persName>
							<email>lgolab@uwaterloo.ca</email>
							<affiliation key="aff0">
								<orgName type="institution">University of Waterloo</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Mehdi</forename><surname>Kargar</surname></persName>
							<email>kargar@ryerson.ca</email>
							<affiliation key="aff2">
								<orgName type="department">Ted Rogers School of Management</orgName>
								<orgName type="institution">Ryerson University</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Divesh</forename><surname>Srivastava</surname></persName>
							<email>divesh@research.att.com</email>
							<affiliation key="aff3">
								<orgName type="institution">AT&amp;T Labs-Research</orgName>
								<address>
									<country key="US">USA</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jaroslaw</forename><surname>Szlichta</surname></persName>
							<email>szlichta@uoit.ca</email>
							<affiliation key="aff4">
								<orgName type="institution">University of Ontario Institute of Technology</orgName>
								<address>
									<country key="CA">Canada</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Bringing Order to Data</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">4A67CF795F1572AAB99A78A8C02EEEDC</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-25T02:45+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<textClass>
				<keywords>
					<term>Integrity constraints</term>
					<term>Order Dependency</term>
					<term>Axiomatization</term>
				</keywords>
			</textClass>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Integrity constraints (ICs) are widely used in business intelligence to express and enforce application semantics. However, finding ICs manually is time consuming, requires the involvement of domain experts, and is prone to human error. Thus, techniques have been proposed to automatically find a variety of ICs. We propose an algorithm to automatically discover order dependencies (ODs). Prior work on OD discovery has factorial complexity, is not complete, and is not concise. We propose an algorithm that finds a complete set of ODs with exponential worst-case time complexity in the number of attributes and linear complexity in the number of tuples. We experimentally show that our algorithm is orders of magnitude faster than the prior state-of-the-art.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>Ordered attributes, such as timestamps and numbers, are common in business data. Order Dependencies (ODs) capture monotonic relationships among such attributes. For instance, Table <ref type="table" target="#tab_0">1</ref> shows employee tax records in which tax is calculated as a percentage (perc) of salary (sal). The OD sal orders perc holds: if we sort the table by salary, it is also sorted by percentage. Similarly, sal orders grp, subg: if we sort the table by salary, it is also sorted by group with ties broken by subgroup. With interest in data analytics at an all-time high, ODs can improve the consistency dimension of data quality and query optimization <ref type="bibr" target="#b3">[4,</ref><ref type="bibr" target="#b6">[7]</ref><ref type="bibr" target="#b7">[8]</ref><ref type="bibr" target="#b8">[9]</ref>. ODs can describe business rules (data profiling); and their violations can point out possible data errors. Furthermore, query optimizers can use ODs to eliminate costly operators such as joins and sorts: ordered streams between query operators can exploit available indexes, enable pipelining, and eliminate intermediate partitioning steps. Finally, ODs subsume Function Dependencies (FDs) as any FD can be mapped to an equivalent OD by prefixing the left-hand-side attributes onto the right-hand-side <ref type="bibr" target="#b5">[6]</ref>.</p><p>It is time consuming to specify integrity constraints manually, motivating the need for their automatic discovery. However, since ODs are naturally expressed with lists rather than sets of attributes (as in the example above), existing solutions have factorial worst-case time complexity in the number of attributes <ref type="bibr" target="#b3">[4]</ref>. We describe a more efficient algorithm to discover ODs from data. First, we show that ODs can be expressed with sets of attributes via a polynomial mapping into an equivalent set-based canonical form. Then, we introduce sound and complete axioms for set-based canonical ODs, We say that two tuples, s and t, are equivalent with respect to an attribute set X if s X = t X . Any attribute set X partitions tuples into equivalence classes <ref type="bibr" target="#b2">[3]</ref>. We denote the equivalence class of a tuple t ∈ r with respect to a given set X by E(t X ); i.e., E(t</p><formula xml:id="formula_0">X ) = {s ∈ r | s X = t X }. A partition of r over X is the set of equivalence classes, Π X = {E(t X ) | t ∈ r}. For instance, in Table 1, E(t1 {year} ) = E(t2 {year} ) = E(t3 {year} ) = {t1,</formula><p>t2, t3} and Π year = {{t1, t2, t3}, {t4, t5, t6}}.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.2">Canonical Mapping and Axioms</head><p>Expressing ODs in a natural way relies on lists of attributes; e.g., in Table <ref type="table" target="#tab_0">1</ref>, sal → grp, subg is not the same as sal → subg, grp. In contrast, the order of attributes in an FD does not matter. However, the list representation leads to high complexity when discovering ODs <ref type="bibr" target="#b3">[4]</ref>. Thus, we provide a polynomial mapping of list-based ODs into equivalent set-based canonical ODs <ref type="bibr" target="#b4">[5,</ref><ref type="bibr" target="#b5">6,</ref><ref type="bibr" target="#b9">10]</ref>. The mapping allows us to develop an efficient OD discovery algorithm that traverses a much smaller set-containment lattice rather than the list-containment lattice used in <ref type="bibr" target="#b3">[4]</ref>.</p><p>The mapping presented in Theorem 1 (below) converts a list-based OD into canonical set-based ODs of two types. First, an attribute A is a constant within each equivalence class with respect to a set of attributes X , denoted as X : [ ] → A, if X → X A for any permutation X of X (note that X functionally determines Y iff X → XY, for any list X over the attributes of X and any list Y over the attributes of Y <ref type="bibr" target="#b5">[6]</ref>). Second, two attributes, A and B, are order-compatible within each equivalence class with respect to the set of attributes X , denoted as X : A ∼ B, if X A ∼ X B. The set X is called a context. For example, in Table <ref type="table" target="#tab_0">1</ref>, bin is a constant in the context of pos, written as {pos}: We present a sound and complete set-based axiomatization for ODs in Fig. <ref type="figure" target="#fig_0">2</ref> [6]. The set-based axioms allow us to design effective pruning rules for our OD discovery algorithm. For example, OD X ] → A is trivial if A ∈ X by Reflexivity (see also Example 2).</p><formula xml:id="formula_1">1. Reflexivity X : [ ] → A, ∀A ∈ X 2. Identity X : A ∼ A 3. Commutativity X : A ∼ B X : B ∼ A 4. Strengthen X :[ ] → A X A:[ ] → B X :[ ] → B 5. Propagate X :[ ] → A X : A ∼ B 6. Augmentation-I X :[ ] → A ZX :[ ] → A 7. Augmentation-II X : A ∼ B ZX : A ∼ B 8. Chain X : A ∼ B1 ∀ i∈[1,n−1] ,X : Bi ∼ Bi+1 X : Bn ∼ C ∀ i∈[1,n] ,X Bi : A ∼ C X : A ∼ C</formula><p>Theorem 2. The axiomatization for canonical ODs in Fig. <ref type="figure" target="#fig_0">2</ref> is sound and complete.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2.3">Discovery Algorithm</head><p>Given the mapping of a list-based OD into equivalent set-based ODs, we present an algorithm, named FASTOD, that efficiently discovers a complete and minimal set of set-based ODs over a given relation instance. In contrast, the OD discovery algorithm from <ref type="bibr" target="#b3">[4]</ref> traverses a lattice of all possible lists of attributes, which leads to factorial time complexity. FASTOD starts the search from singleton sets of attributes and works its way to larger attribute sets through a set-containment lattice (as in Figure <ref type="figure">1</ref>), level by level (l = 0, 1, . . . ). When the algorithm is processing an attribute set X , it verifies ODs of the form X \ A:[ ] → A (let X \ A be shorthand for X \ {A}, where A ∈ X ) and X \ {A, B}: A ∼ B, where A, B ∈ X and A = B. Furthermore, an OD X \</p><formula xml:id="formula_2">A:[ ] → A should be minimal, that is, Y ⊂ X such that Y \ A:[ ] → A is valid.</formula><p>The algorithm maintains information about minimal ODs, in the form of X \A:[ ] → A, in the candidate set C + c (X ) <ref type="bibr" target="#b2">[3]</ref> (as ODs subsume FDs <ref type="bibr" target="#b6">[7,</ref><ref type="bibr" target="#b8">9]</ref>), where</p><formula xml:id="formula_3">C + c (X ) = {A ∈ R | ∀ B∈X X \ {A, B}:[ ] → B does not hold}. Similarly, it stores information about minimal ODs in the form of X \ {A, B}: A ∼ B, in the candidate set C + s (X ), where C + s (X ) = {{A, B} ∈ X 2 | A = B and ∀ C∈X X \ {A, B, C}: A ∼ B does not hold, and ∀ C∈X X \ {A, B, C}:[ ] → C does not hold}.</formula><p>The following lemmas can be used to prune the search space:</p><formula xml:id="formula_4">Lemma 1. An OD X \ A:[ ] → A, where A ∈ X , is minimal iff ∀ B∈X A ∈ C + c (X \ B). Lemma 2. An OD X \ {A, B}: A ∼ B, where A, B ∈ X and A = B, is minimal iff ∀ C∈X \{A,B} {A, B} ∈ C + s (X \ C), and A ∈ C + c (X \ B) and B ∈ C + c (X \ A).</formula><p>According to Lemma 1, we do not need to check</p><formula xml:id="formula_5">X \ A:[ ] → A if A / ∈ X B∈X C + c (X \ B)</formula><p>, and based on Lemma 2, we do not need to consider X \ {A, B}:</p><formula xml:id="formula_6">A ∼ B if A / ∈ C + c (X \ B) or B / ∈ C + c (X \ A).</formula><p>Moreover, according to Lemma 3, we can delete nodes from the lattice under the following conditions: Note that while we provide theoretical guarantees for FASTOD to find a complete set of ODs, the ORDER algorithm <ref type="bibr" target="#b3">[4]</ref> is not complete. Theorem 3. The FASTOD algorithm computes a complete and minimal set of ODs.</p><p>In <ref type="bibr" target="#b9">[10]</ref>, we extend our algorithm to discover bidirectional ODs, which allow a mix of ascending and descending (desc) orders. For example, a student with an alphabetically lower letter grade has a higher percentage grade than another student. We develop additional pruning rules and show that efficiency of discovery of bidirectional ODs remains the same as for one-directional ODs.</p><p>We experimentally compare FASTOD with previous approaches ( ORDER <ref type="bibr" target="#b3">[4]</ref>). Our algorithm can be orders of magnitude faster. For instance, on the flight dataset from http://metanome.de with 1K tuples and 20 attributes, FASTOD finishes the computation in less than 1 second, whereas ORDER did not terminate after 5 hours. Moreover, FASTOD's candidate sets do not increase in size during the execution of the algorithm (unlike ORDER) because of the concise candidate representation (e.g., many ODs that are considered minimal by ORDER are found to be redundant by our algorithm).</p><p>Finally, in <ref type="bibr" target="#b1">[2]</ref>, we show that a recent approach to OD discovery called OCDDIS-COVER in Consonni et al. <ref type="bibr" target="#b0">[1]</ref> is incorrect. We show that their claim of completeness of OD discovery is not true. Built upon their incorrect claim, OCDDISCOVER's pruning rules are overly aggressive, and prune parts of the search space that contain legitimate ODs. This is the reason their approach appears to be "faster" in practice than our FAS-TOD discovery algorithm despite being significantly worse in asymptotic complexity. Finally, we show that Consonni et al. <ref type="bibr" target="#b0">[1]</ref> misinterpret our set-based canonical form for ODs, leading to an incorrect claim that our FASTOD implementation has an error.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Conclusions</head><p>We presented an efficient algorithm for discovering ODs. The technical innovation that made our algorithm possible is a novel mapping into a set-based canonical form and an axiomatization for set-based canonical ODs. In future work, we plan to study conditional ODs that hold over portions of data.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 2 :</head><label>2</label><figDesc>Fig. 2: Set-based axiomatization for canonical ODs.[ ]→ bin since E(t1 {pos} ) |= [ ] → bin, E(t2 {pos} ) |= [ ] → bin and E(t3 {pos} ) |= [ ] → bin. Also, {year}: bin ∼ salary because E(t1 {year} ) |= bin ∼ salary and E(t4 {year} ) |= bin ∼ salary. Theorem 1. X → Y iff ∀j, X :[ ] → Y j and ∀i, j, {X 1 , .., X i−1 , Y 1 , .., Y j−1 }: X i ∼ Y j .Example 1. The OD [AB] → [CD] is mapped into the following set of canonical ODs: {A, B}:[ ] → C, {A, B}:[ ] → D, {}: A ∼ C, {A}: B ∼ C, {C}: A ∼ D, {A, C}: B ∼ D.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Lemma 3 .Example 2 .</head><label>32</label><figDesc>Deleting node X from the l th lattice level, where l ≥ 2, has no effect on the output set of minimal ODs ifC + c (X ) = {} and C + s (X ) = {}. Let A:[ ] → B, B:[ ] → A and {}: A ∼ B. Since C + c ({A, B}) = {} and C +s ({A, B}) as well as l = 2, by the pruning levels rule (Lemma 3), the node {A, B} is deleted and the node {A, B, C} is not considered (see Figure1). This is justified as {AB}:[ ] → C is not minimal by the Strengthen axiom, {AC}:[ ] → B is not minimal by Augmentation-I, {BC}:[ ] → A is not minimal by Augmentation-I, {C}: A ∼ B is not minimal by Augmentation-II, {A}: B ∼ C is not minimal by Propagate, and {B}: A ∼ C is not minimal by Propagate.</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head>Table 1 :</head><label>1</label><figDesc>Employee salary data</figDesc><table><row><cell>#</cell><cell>ID</cell><cell>yr</cell><cell>pos</cell><cell>bin</cell><cell>sal</cell><cell>perc tax</cell><cell cols="2">grp subg</cell><cell></cell><cell>{ }</cell><cell></cell></row><row><cell>t1</cell><cell>1</cell><cell>16</cell><cell>sec</cell><cell>1</cell><cell>5K</cell><cell>20% 1K</cell><cell>A</cell><cell>III</cell><cell></cell><cell></cell><cell></cell></row><row><cell>t2</cell><cell>2</cell><cell>16</cell><cell>dev</cell><cell>2</cell><cell>8K</cell><cell>25% 2K</cell><cell>C</cell><cell>II</cell><cell>{A}</cell><cell>{B}</cell><cell>{C}</cell></row><row><cell>t3</cell><cell>3</cell><cell>16</cell><cell>dir</cell><cell>3</cell><cell cols="2">10K 30% 3K</cell><cell>D</cell><cell>I</cell><cell></cell><cell></cell><cell></cell></row><row><cell>t4</cell><cell>1</cell><cell>15</cell><cell>sec</cell><cell>1</cell><cell>4K</cell><cell cols="2">20% 0.8K A</cell><cell>III</cell><cell>{A,B}</cell><cell>{A,C}</cell><cell>{B,C}</cell></row><row><cell>t5</cell><cell>2</cell><cell>15</cell><cell>dev</cell><cell>2</cell><cell>6K</cell><cell cols="2">25% 1.5K C</cell><cell>I</cell><cell></cell><cell></cell><cell></cell></row><row><cell>t6</cell><cell>3</cell><cell>15</cell><cell>dir</cell><cell>3</cell><cell>8K</cell><cell>25% 2K</cell><cell>C</cell><cell>II</cell><cell></cell><cell>{A,B,C}</cell><cell></cell></row><row><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell cols="3">Fig. 1: A set lattice for attributes A, B, C.</cell></row><row><cell cols="12">which lead to optimizations of the OD discovery algorithm by avoiding redundant com-</cell></row><row><cell cols="12">putation. This allows us to design a fast and effective OD discovery algorithm that has</cell></row><row><cell cols="12">exponential worst-case complexity, O(2 |R| ), in the number of attributes |R|, and linear</cell></row><row><cell cols="12">complexity in the number of tuples. We note that this short paper is a summary of our</cell></row><row><cell cols="7">published results in [5, 6, 10].</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell cols="9">2 Order Dependency Discovery</cell><cell></cell><cell></cell><cell></cell></row><row><cell cols="5">2.1 Preliminaries</cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell><cell></cell></row><row><cell cols="12">Order dependencies (ODs) describe relationships among lexicographical orderings of</cell></row><row><cell cols="12">sets of tuples, as in the SQL order by statement. Let X = [A | T] be a list of attributes,</cell></row></table><note>where the attribute A is the head of the list, and the list T is the tail. For two tuples s and t, we write s X t iff s A &lt; t A or (s A = t A and (T = [ ] or s T t)). Given two lists of attributes, X and Y, X → Y denotes an OD, read as X orders Y. Table r satisfies X → Y iff, for all s, t ∈ r, s X t implies s Y t. Moreover, X and Y are order compatible, denoted as X ∼ Y iff XY ↔ YX. (For example, month and week of the year in the calendar are order compatible.)</note></figure>
		</body>
		<back>
			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Discovering Order Dependencies through Order Compatibility</title>
		<author>
			<persName><forename type="first">C</forename><surname>Consonni</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Sottovia</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Montresor</surname></persName>
		</author>
		<author>
			<persName><forename type="first">Y</forename><surname>Velegrakis</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">EDBT</title>
				<imprint>
			<date type="published" when="2019">2019</date>
			<biblScope unit="page" from="409" to="420" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<monogr>
		<title level="m" type="main">Errata note: Discovering order dependencies through order compatibility</title>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Golab</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Kargar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Srivastava</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
		<ptr target="https://arxiv.org/abs/1905.02010" />
		<imprint>
			<date type="published" when="2019">2019</date>
		</imprint>
	</monogr>
	<note type="report_type">Technical Report</note>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">Efficient Discovery of Functional and Approximate Dependencies Using Partitions</title>
		<author>
			<persName><forename type="first">Y</forename><surname>Huhtala</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Karkkainen</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Porkka</surname></persName>
		</author>
		<author>
			<persName><forename type="first">H</forename><surname>Toivonen</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ICDE</title>
				<imprint>
			<date type="published" when="1998">1998</date>
			<biblScope unit="page" from="392" to="401" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Efficient order dependency detection</title>
		<author>
			<persName><forename type="first">P</forename><surname>Langer</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Naumann</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">VLDB J</title>
		<imprint>
			<biblScope unit="volume">25</biblScope>
			<biblScope unit="issue">2</biblScope>
			<biblScope unit="page" from="223" to="241" />
			<date type="published" when="2016">2016</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">FASTOD: bringing order to data</title>
		<author>
			<persName><forename type="first">A</forename><surname>Mihaylov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Golab</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Kargar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Srivastava</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">IEEE 34th International Conference on Data Engineering (ICDE)</title>
				<imprint>
			<publisher>IEEE</publisher>
			<date type="published" when="2018">2018. 2018</date>
			<biblScope unit="page" from="1561" to="1564" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Effective and Complete Discovery of Order Dependencies via Set-based Axiomatization</title>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Golab</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Kargar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Srivastava</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">PVLDB</title>
		<imprint>
			<biblScope unit="volume">10</biblScope>
			<biblScope unit="issue">7</biblScope>
			<biblScope unit="page" from="721" to="732" />
			<date type="published" when="2017">2017</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<analytic>
		<title level="a" type="main">Fundamentals of Order Dependencies</title>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Gryz</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">PVLDB</title>
		<imprint>
			<biblScope unit="volume">5</biblScope>
			<biblScope unit="issue">11</biblScope>
			<biblScope unit="page" from="1220" to="1231" />
			<date type="published" when="2012">2012</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Business-Intelligence Queries with Order Dependencies in DB2</title>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Gryz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Ma</surname></persName>
		</author>
		<author>
			<persName><forename type="first">W</forename><surname>Qiu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Zuzarte</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">EDBT</title>
		<imprint>
			<biblScope unit="page" from="750" to="761" />
			<date type="published" when="2014">2014</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Expressiveness and Complexity of Order Dependencies</title>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Gryz</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Zuzarte</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">PVLDB</title>
		<imprint>
			<biblScope unit="volume">6</biblScope>
			<biblScope unit="issue">14</biblScope>
			<biblScope unit="page" from="1858" to="1869" />
			<date type="published" when="2013">2013</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b9">
	<analytic>
		<title level="a" type="main">Effective and complete discovery of bidirectional order dependencies via set-based axioms</title>
		<author>
			<persName><forename type="first">J</forename><surname>Szlichta</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Godfrey</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Golab</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Kargar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Srivastava</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="j">The VLDB Journal</title>
		<imprint>
			<biblScope unit="volume">27</biblScope>
			<biblScope unit="issue">4</biblScope>
			<biblScope unit="page" from="573" to="591" />
			<date type="published" when="2018">2018</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
