Abstract
Preferences in the scope of relational databases allow modeling user wishes by queries with soft constraints. There are different frameworks for database preferences including commercially available systems. They slightly vary in semantics and expressiveness but have in common that preferences induce strict partial orders on a given data set. In the present paper we study the expressiveness of preference operators in the available implementations. Particularly, we search for decompositions of strict partial orders into fundamental preference constructs. We study which preference operators and operands are necessary to express any strict partial order. Finally, we present two decomposition algorithms and show their correctness.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Borzsony, S., Kossmann, D., Stocker, K.: The skyline operator. In: 17th International Conference on Data Engineering, pp. 421–430 (2001)
Eilenberg, S.: Automata, Languages, and Machines, vol. 59. Academic Press, New York (1974)
Exasol: Skyline. In: EXASolution User Manual Version 5.0.0, pp. 239–241. http://tinyurl.com/mob2mfm
Fishburn, P.C.: Utility theory for decision making. Technical report, New York, NY, USA (1970)
Gischer, J.L.: The equational theory of pomsets. Theoret. Comput. Sci. 61(2), 199–224 (1988)
Kießling, W.: Foundations of preferences in database systems. In: VLDB 2002: Proceedings of the 28th International Conference on Very Large Data Bases, pp. 311–322. VLDB, Hong Kong (2002)
Mandl, S., Kozachuk, O., Endres, M., Kießling, W.: Preference analytics in EXASolution. In: 16th Conference on Database Systems for Business, Technology, and Web (2015). http://tinyurl.com/pxco8d4
Möller, B., Roocks, P.: An algebra of layered complex preferences. In: Kahl, W., Griffin, T.G. (eds.) RAMICS 2012. LNCS, vol. 7560, pp. 294–309. Springer, Heidelberg (2012)
Möller, B., Roocks, P.: An algebra of database preferences. J. Logic. Algebraic Methods Program. 84(3), 456–481 (2015)
Möller, B., Roocks, P., Endres, M.: An algebraic calculus of database preferences. In: Gibbons, J., Nogueira, P. (eds.) MPC 2012. LNCS, vol. 7342, pp. 241–262. Springer, Heidelberg (2012)
Roocks, P.: R script containing examples and algorithms from the paper (2015). http://www.p-roocks.de/pref-decomp-mpc.r
Roocks, P.: The rPref package: preferences and skyline computation in R (2015). http://www.p-roocks.de/rpref
Roocks, P., Kießling, W.: R-Pref: rapid prototyping of database preference queries in R. In: DATA 2013, pp. 104–111 (2013)
Schmidt, G., Ströhlein, T.: Relations and Graphs: Discrete Mathematics for Computer Scientists. EATCS Monographs on Theoretical Computer Science. Springer, Heidelberg (1993)
Acknowledgement
I am grateful to Bernhard Möller for proofreading many drafts of the paper, plenty of helpful remarks and very fruitful discussions about this topic. I am also grateful to Carla Harth and Alfons Huhn for proofreading and valuable comments, and to the anonymous referees for their helpful remarks.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
A Unique Tuple Decompositions
A Unique Tuple Decompositions
Given the data set \(r = x_1 + ... + x_4\) and the preference
there is no decomposition into an \(r\)-equivalent preference within \( \mathsf {un}_\mathsf {\{\mathbin { \& },\otimes \}}(r)\). We will show this in the following R-Script, which is a snippet from [11].
The model finder function
extends the temporary preference term
by \(...\,\otimes \,\mathsf {t}(x_i)\) or \( ...\,\mathbin { \& }\,\mathsf {t}(x_i)\) in the recursive step. The term extension at the end is sufficient to get all possible terms, as \( \mathbin { \& }\) and \(\otimes \) are associative operators. The variable
stores those \(x \in r\) which can still be used for \(\mathsf {t}(x)\) without violating the uniqueness of the \(x_i\). Hence
is comparable to the parameter \(s\) in \(\mathsf {un}_\mathsf {\mathsf {op}}(s)\), Definition 3.3.
The comparison w.r.t. \(r\)-equivalency of two preferences (cf. Definition 2.5) is done by comparing the adjacency lists of their Hasse diagrams. Note that we can rely on a predefined sorting (lexicographic) of the adjacency list of a Hasse diagram in the result of
. Hence the equivalency of these adjacency lists imply the \(r\)-equivalency of the corresponding preferences.
Note that this is some kind of a brute-force search. It could be optimized by e.g. exploiting the commutativity of \(\otimes \) and a more efficient \(r\)-equivalence check. We omitted such optimizations to keep the code as simple as possible. The script generates and checks 633 possible terms. On our off-the-shelf computer the execution time of this program is about 8 s. Finally, it returns
, i.e., no decomposition is found.
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Roocks, P. (2015). Preference Decomposition and the Expressiveness of Preference Query Languages. In: Hinze, R., Voigtländer, J. (eds) Mathematics of Program Construction. MPC 2015. Lecture Notes in Computer Science(), vol 9129. Springer, Cham. https://doi.org/10.1007/978-3-319-19797-5_4
Download citation
DOI: https://doi.org/10.1007/978-3-319-19797-5_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-19796-8
Online ISBN: 978-3-319-19797-5
eBook Packages: Computer ScienceComputer Science (R0)