cs0503092/corr.tex
1: \documentclass{article}
2: \usepackage{ijcai05}
3: %\usepackage[english]{babel}
4: %\usepackage[latin1]{inputenc}
5: %\usepackage{amsmath}
6: %\usepackage{hhline}
7: %\usepackage{amssymb}
8: \usepackage{latexsym}
9: \usepackage{times}
10: %\usepackage{xspace}
11: %\usepackage{fancybox}
12: %\usepackage{calc}
13: %\usepackage{fancyheadings}
14: %\usepackage{multicol}
15: %\usepackage{pstricks}
16: %\usepackage{pst-node}
17: %\usepackage{pst-plot}
18: %\usepackage{fullpage}
19: \long\def\COMMENT#1\ENDCOMMENT{\message{(Commented text...)}\par}
20: 
21: 
22: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
23: %\tolerance=10000
24: \def\ignore#1{}
25: \def\msg#1{{\bf **** #1 *****}}
26: %\def\sdif{\ominus}
27:  
28: %%%%%%%%%%%%%%%%%%%%
29: \def\beqa{\begin{eqnarray}}
30: \def\eeqa{\end{eqnarray}}
31: %%%%%%%%%%%%%%%%%%%%%
32: 
33: \def\Box{\hspace*{\fill}\framebox{\makebox[\depth]{\ }}}
34: %\def\Box{\framebox{\makebox{\ }}}
35: \def\cala{{\cal A}}
36: \def\calg{{\cal G}}
37: \def\calt{{\cal T}}
38: \def\call{{\cal L}}
39: \def\cals{{\cal S}}
40: \def\calS0{{\cal S}_0}
41: \def\calSn{{\cal S}_N}
42: \def\calf{{\cal F}}
43: \def\calm{{\cal M}}
44: \def\cali{{\cal I}}
45: \def\calr{{\cal R}}
46: \def\cald{{\cal D}}
47: \def\calq{{\cal Q}}
48: \def\Hs{{\cal H}}
49:  
50: %\setlength{\arraycolsep}{0.03in}
51:  
52: \def\bars{\!\! \parallel \!\!}
53:  
54: \newtheorem{definition}{Definition}[section]
55: %\newtheorem{proof}{Proof}
56: \newtheorem{theorem}{Theorem}[section]
57: \newtheorem{algorithm}{Algorithm}
58: \newtheorem{corollary}{Corollary}[section]
59: \newtheorem{proposition}{Proposition}[section]
60: \newtheorem{lemma}{Lemma}[section]
61: \newtheorem{property}{Property}[section]
62: \newtheorem{example}{Example}
63: \newtheorem{remark}{Remark}[section]
64: 
65: \newenvironment{proof}{\noindent{\em Proof.}}{\hfill\Box}
66: 
67: \def\st{\medskip\noindent}
68: \def\stn{\medskip}
69: \def\ni{\noindent}
70: \def\bs{\bigskip}
71: \def\sms{\smallskip}
72: \def\ms{\medskip}
73:  
74: \def\precon{p_1,\ldots ,p_n}
75: \def\Then{\; \hbox{\bf then } \;}
76: \def\Else{\; \hbox{\bf else } \;}
77: \def\after{\; \hbox{\bf after } \;}
78: 
79: 
80: %%%%%%%%%%%%%%PTL macros%%%%%%%%%%%%%%%%%%%%%%%%
81: \def\since#1#2{#1\ \hbox{\rm\bf  since}\ #2}
82: \def\pr{\hbox{\rm\bf  previous}}
83: 
84: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
85: \def\der#1#2#3{#2\ \hbox{\rm\bf der}_{#1}\ #3}
86: 
87: \def\rpref{\ll}
88: \def\pref#1{\preceq_{#1}}
89: \def\epref#1{\sim_{#1}}
90: \def\compl#1{{#1}^c}
91: \def\pdash#1{\vdash_{#1}}
92: \def\wnnw#1{\omega_{#1}}
93: \def\wwnnw#1{\psi_{#1}}
94: \def\rnk#1{\eta_{#1}}
95: \def\tc#1{TC({#1})}
96: \def\union#1#2{{#1}\cup{#2}}
97: \def\prior#1#2{{#1}\rhd{#2}}
98: \def\sdif#1#2{{#1}\ominus{#2}}
99: 
100: %\renewcommand{\baselinestretch}{1.5}
101: 
102: %\renewcommand{\baselinestretch}{1.2}
103: 
104: \title{{\bf Monotonic and Nonmonotonic Preference Revision}
105: \thanks{Research supported by NSF grant IIS-0307434.}
106: }
107: \author{Jan Chomicki \hspace{.5in} Joyce Song\\
108: %Dept. of Computer Science and Engineering\\
109: University at Buffalo\\
110: %Buffalo, NY 14260-2000\\
111: {\tt $\{$chomicki,jsong5$\}$@cse.buffalo.edu}}
112: 
113: 
114: %\date{\today --{\ifnum\timehh<10 0\fi\number\timehh\,:\,\ifnum\timemm<10 0\fi\number\timemm}}
115: 
116: \begin{document}
117: 
118: \maketitle
119: 
120: \begin{abstract}
121: We study here preference revision, considering both the {\em monotonic} case where
122: the original preferences are preserved and the {\em nonmonotonic} case where the new preferences
123: may override the original ones.
124: We use a relational framework in which preferences are represented using binary relations 
125: (not necessarily finite).
126: We identify several classes of revisions that preserve order axioms, 
127: for example the axioms of strict partial or weak orders.
128: We consider applications of our results to preference querying in relational databases.
129: \end{abstract}
130: 
131: \section{Introduction}\label{s:intro}
132: The notion of {\em preference} is common in various contexts involving 
133: decision or choice. Classical utility theory \cite{Fish70} views preferences
134: as {\em binary relations}. A similar view has recently been
135: espoused in database research \cite{ChTODS03,Kie02,KiKo02}, where preference relations
136: are used in formulating {\em preference queries}. In AI, various approaches
137: to compact specification of preferences have been explored \cite{BouetalJAIR04}. The semantics
138: underlying such approaches typically relies on preference relations between worlds.
139: 
140: However, user preferences are rarely static \cite{PuFaTo03}. A database user may be disappointed
141: by the result of a preference query and decide to revise the preferences in the
142: query. In fact, a user may start with a partial or vague concept of her preferences,
143: and subsequently refine that concept.
144: An agent may learn  more about its task domain and consequently revise its preferences.
145: Thus, it is natural to study {\em preference revision}, as we do in the present paper. 
146: 
147: Preference revision shares some of the principles, namely  minimal change and primacy of new information,
148: with classical belief revision \cite{GaRo95}. However, its basic setting  is different.
149: %It is not propositional theories but rather preference relations, which are single
150: %first-order structures satisfying
151: %order axioms, that are being revised with other preference relations.
152: In belief revision, propositional theories are revised with propositional formulas, yielding
153: new theories. In preference revision, binary preference relations are revised with other
154: preference relations, yielding new preference relations.
155: Preference relations are single, finitely representable (though possibly infinite) first-order structures, 
156: satisfying order axioms.
157: 
158: We distinguish between {\em monotonic} and {\em nonmonotonic} preference revision.
159: In the former, the original preference relation is fully incorporated into the revised
160: one. In the latter, the original preference relation may conflict with the revising
161: relation, leading to the necessity of retracting some of the original preferences.
162: We focus on two special cases: {\em refinement} in which both the original and the revising
163: relation are preserved, and {\em overriding revision} in which the revising relation may override
164: the original one. We adopt the notion of minimal change based on symmetric difference between
165: sets of tuples.
166: 
167: The challenges are: (1) to guarantee that suitable order properties,
168: for example the axioms of strict partial orders, are preserved by the
169: revisions, and (2) to obtain unique revisions.  Strict partial orders
170: (and weak orders), apart from being intuitive, enjoy a number of
171: attractive properties in the context of preference queries, as explained later in the
172: paper.  So it is desirable for revisions to
173: preserve such orders.  The uniqueness property is also important from
174: the user's point of view, as the user typically desires to obtain a
175: single revised preference relation. The presence of multiple revision
176: candidates necessitates some form of aggregation of or choice among
177: the candidates.  Fortunately, in the cases studied in this paper
178: there exist least revisions preserving the appropriate order axioms,
179: and thus uniqueness is obtained automatically.
180: 
181: We adopt the preference query framework of \cite{ChTODS03} (a similar model
182: was described in \cite{Kie02}), in which preference relations between tuples are defined by
183: logical formulas. \cite{ChTODS03} proposed a new relational algebra operator called {\em winnow} that
184: selects from its argument relation the {\em most preferred tuples} according
185: to the given preference relation.
186: 
187: \begin{example}\label{ex:car}
188: Consider the relation $Car(Make,Year)$
189: and the following preference relation $\succ_{C_1}$ between {\em Car} tuples:
190: \begin{quote}
191: {\em within each make, prefer a more recent car.}
192: \end{quote}
193: which can be defined as follows:
194: \[(m,y)\succ_{C_1}(m',y') \equiv m=m'\wedge y>y'.\]
195: The winnow operator $\wnnw{C_1}$ returns for every make the most recent car available.
196: Consider the instance $r_1$ of $Car$ in Figure \ref{fig:car}.
197: The set of tuples $\wnnw{C_1}(r_1)$ is shown in Figure \ref{fig:winnow}.
198: 
199: \begin{figure}[htb]
200: \centering
201: \begin{tabular}{|l|l|l|}
202: \hline
203: &{\em Make} &{\em Year} \\\hline
204: $t_1$& VW & 2002\\
205: $t_2$& VW& 1997 \\
206: $t_3$& Kia & 1997\\\hline
207: \end{tabular}
208: \caption{The Car relation}
209: \label{fig:car}
210: \end{figure}
211: 
212: \begin{figure}[htb]
213: \centering
214: \begin{tabular}{|l|l|l|}
215: \hline
216: &{\em Make} &{\em Year} \\\hline
217: $t_1$& VW & 2002\\
218: $t_3$& Kia & 1997\\\hline
219: \end{tabular}
220: \caption{The result of winnow}
221: \label{fig:winnow}
222: \end{figure}
223: \end{example}
224: 
225: \begin{example}\label{ex:car:1}
226: Example \ref{ex:car} provides a motivation for studying preference 
227: revision.
228: Seeing the result of the query $\wnnw{C_1}(r_1)$, a user may realize that the preference 
229: relation $\succ_{C_1}$ is not quite what she had in mind. The result of the query
230: may contain some unexpected or unwanted tuples, for example $t_3$.
231: Thus the preference relation needs to be modified, for example
232: by refining it with the following preference relation $\succ_{C_2}$:
233: \[(m,y)\succ_{C_2}(m',y') \equiv m={\rm ''VW''}\wedge m'\not={\rm ''VW''}\wedge y=y'.\]
234: The resulting refinement will contain both $\succ_{C_1}$ and $\succ_{C_2}$.
235: The tuple $t_3$ is now dominated by $t_2$ and will not be returned to the user.
236: \end{example}
237: 
238: In the terminology used in research on preference reasoning in AI \cite{BouetalJAIR04},
239: a relational database instance corresponds to the set of {\em feasible outcomes}
240: and the winnow operator picks the undominated (best) outcomes from this set, according
241: to the given preferences.
242: A preference setting can be affected by a change in preferences or a modification
243: of the set of possible outcomes. In this research, we address the former problem;
244: the latter one, database update, has been extensively studied in database research.
245: Moreover, we limit ourselves to preference revisions in which new preference 
246: information is combined, perhaps nonmonotonically, with the old one. We assume that the domains of preferences do not
247: change in revisions.
248: 
249: 
250: \ignore{
251: First, we introduce the basic notions of preference relations (based on \cite{ChTODS03}).
252: Then, we define various kinds of preference revision and discuss the preservation
253: of strict partial and weak orders by revisions.
254: Subsequently, we show that even when order axioms
255: are not guaranteed to be preserved, they can still be effectively checked.
256: Next, we show how the results of \cite{ChTODS03}
257: make it possible to incrementally compute preference query results
258: under iterated monotonic revisions.
259: Finally, we discuss related work and draw conclusions.
260: Some proofs are sketched. The remaining results can be proved by exhaustive case analysis.
261: }
262: \section{Basic notions}\label{sec:basic}
263: We are working in the context of the relational model of data.
264: Relation schemas consist of finite sets of attributes.
265: For concreteness, we consider two infinite domains: $\cald$ (uninterpreted constants, for readability shown as strings) and $\calq$ (rational numbers), but our results, except where explicitly indicated,
266: hold also for finite domains.
267: %Other domains could be considered as well without influencing most of the results of the paper.
268: %The result of a query $Q$ in a database instance $r$ is denoted $Q(r)$.
269: We assume that database instances are finite sets of tuples.
270: Additionally,
271: we have the standard built-in predicates.
272: 
273: \subsection{Preference relations}
274: 
275: We adopt here the framework of \cite{ChTODS03}.
276: 
277: \begin{definition}\label{def:prefrel}
278: Given a relation schema $R(A_1 \cdots A_k)$
279: such that $U_i$, $1\leq i\leq k$, is the domain (either $\cald$ or $\calq$)
280: of the attribute $A_i$, a relation $\succ$ is a {\em preference relation over $R$}
281: if it is a subset of $(U_1\times\cdots\times U_k)\times (U_1\times\cdots\times U_k)$.
282: \end{definition}
283: 
284: Although we assume that database instances are finite, in the presence of
285: infinite domains preference relations can be infinite.
286: 
287: %Intuitively, $\succ$ is a binary relation between tuples from the
288: %same (database) relation.
289: %We say that a tuple $t_1$ {\em dominates} a tuple $t_2$
290: %in $\succ$ if $t_1\succ t_2$.
291: 
292: Typical properties of a preference relation $\succ$ include:
293: \begin{itemize}
294: \item {\em irreflexivity}: $\forall x.\ x\not\succ x;$
295: %\item {\em asymmetry}: $\forall x,y.\ x\succ y\Rightarrow y\not\succ x,$
296: \item {\em transitivity}: $\forall x,y,z.\ (x\succ y \wedge y\succ z)\Rightarrow x\succ z;$
297: \item {\em negative transitivity}: $\forall x,y,z.\ (x\not\succ y \wedge y\not\succ z)\Rightarrow x\not\succ z;$
298: \item {\em connectivity}: $\forall x,y.\ x\succ y\vee y\succ x \vee x=y;$
299: \item {\em strict partial order (SPO)} if $\succ$  is
300: irreflexive and transitive;
301: \item {\em weak order} if $\succ$ is a
302: negatively transitive SPO;
303: \item {\em total order} if $\succ$ is
304: a connected SPO.
305: \end{itemize}
306: 
307: 
308: \begin{definition}\label{def:prefformula}
309: A {\em preference formula (pf)} $C(t_1,t_2)$ is a first-order
310: formula defining a preference relation $\succ_C$ in the standard
311: sense, namely
312: \[t_1\succ_C t_2\;{\rm iff}\; C(t_1,t_2).\]
313: An {\em intrinsic preference formula (ipf)} is a preference formula that
314: uses only built-in predicates.
315: \end{definition}
316: 
317: By using the notation $\succ_C$ for a preference relation, we assume that there is
318: an underlying pf $C$.
319: Occasionally, we will limit our attention
320: to ipfs consisting of the following two kinds of atomic formulas
321: (assuming we have two kinds of variables: $\cald$-variables and $\calq$-variables):
322: \begin{itemize}
323: \item {\em equality  constraints}: $x=y$, $x\not=y$, $x=c$, or $x\not= c$, where
324: $x$ and $y$ are $\cald$-variables, and $c$ is an uninterpreted constant;
325: \item {\em rational-order constraints}: $x\theta y$ or $x\theta c$, where
326: \mbox{$\theta\in\{=,\not=,<,>,\leq,\geq\}$,} $x$ and $y$ are $\calq$-variables, and $c$ is a
327: rational number.
328: \end{itemize}
329: An ipf whose all atomic formulas are equality  (resp. rational-order)
330: constraints will be called an {\em equality} (resp. {\em rational-order}) ipf.
331: Clearly, ipfs are a special case of general constraints
332: \cite{CDB00}, and define {\em fixed}, although possibly infinite,
333: relations.
334: 
335: 
336: Every preference relation $\succ$ generates an indifference relation $\sim$:
337: two tuples $t_1$ and $t_2$ are {\em indifferent}
338: ($t_1\sim t_2$) if
339: neither is preferred to the other one, i.e.,
340: $t_1\not\succ t_2$ and $t_2\not\succ t_1$.
341: We will denote by $\sim_C$ the indifference relation generated by $\succ_C$.
342: 
343: Composite preference relations are defined from simpler ones
344: using logical connectives. We focus on two basic ways of composing preference
345: relations: 
346: \begin{itemize}
347: \item {\em union}: 
348: \[t_1\ (\union{\succ_1}{\succ_2})\ t_2\ {\rm iff}\ t_1\succ_1 t_2\vee t_1\succ_2 t_2;\]
349: \item {\em prioritized composition} (where $\sim_1$ is the
350: indifference relation generated by $\succ_1$): 
351: \[t_1\ (\prior{\succ_1}{\succ_2})\ t_2\ {\rm iff}\  t_1\succ_1 t_2 \vee (t_1\sim_1 t_2\wedge t_1\succ_2 t_2).\]
352: %where $\sim_1$ is the
353: %indifference relation generated by $\succ_1$.
354: \end{itemize}
355: 
356: We also consider transitive closure:
357: \begin{definition}\label{def:transitive}
358: The {\em transitive closure} of a  preference relation
359: $\succ$ over a relation schema $R$ is a  preference relation 
360: $TC(\succ)$ over $R$ defined as: 
361: \[(t_1,t_2)\in TC(\succ)\;{\rm iff}\; t_1\succ^n t_2\;
362: {\rm for\; some\;} n> 0,\]
363: %\bigvee_{n\geq 1}\Phi^n(t_1,t_2)\] 
364: where:
365: \[\begin{array}{l}
366: t_1\succ^1 t_2\equiv t_1\succ t_2\\
367: t_1\succ^{n+1}t_2\equiv\exists t_3.\ 
368: t_1\succ t_3\wedge t_3\succ^n t_2.\\
369: %\Phi^1(t_1,t_2)\equiv\Phi(t_1,t_2)\\
370: %\Phi^{n+1}(t_1,t_2)\equiv \exists\bar{z}.
371: %\Phi(t_1,\bar{z})\wedge \Phi^n(\bar{z},t_2).\\
372: \end{array}\]
373: \end{definition}
374: 
375: \ignore{
376: Clearly, in general Definition \ref{def:transitive} leads to infinite formulas.
377: However, as shown in \cite{ChTODS03}, in the cases that we consider in this paper the preference
378: relation $\succ_{C*}$ will in fact be defined by a finite formula
379: (this is because transitive closure can be expressed as a terminating Datalog program).}
380: 
381: \subsection{Winnow}
382: We define now an algebraic operator that picks from a given relation the
383: set of the {\em most preferred tuples}, according to a given preference relation.
384: \begin{definition}\label{def:winnow}{\rm \cite{ChTODS03}}
385: If $R$ is a relation schema and $\succ$ a preference
386: relation over $R$,
387: then the {\em winnow operator} is written as $\wnnw{\succ}(R)$,
388: and for every instance $r$ of $R$:
389: \[\wnnw{\succ}(r)=\{t\in r\mid\neg \exists t'\in r.\ t'\succ t\}.\]
390: \end{definition}
391: If a preference relation is defined using a pf $C$, we write simply $\wnnw{C}$ instead of $\wnnw{\succ_C}$.
392: A {\em preference query} is a relational algebra query containing at least
393: one occurrence of the winnow operator.
394: 
395: \subsection{Preference revision}
396: 
397: %In the following discussion, it is not necessary to assume that preference relations are defined
398: %using logic formulas. Therefore, we talk about arbitrary preference relations, usually satisfying
399: %properties of partial and weak orders.
400: 
401: The basic setting is as follows: We have a preference relation $\succ$ and revise it with a 
402: {\em revising\/} preference relation $\succ_0$ to obtain a {\em revised\/} preference relation $\succ'$.
403: We also call $\succ'$ a {\em revision\/} of $\succ$.
404: We limit ourselves to preference relations over the same schema.
405: 
406: The revisions are characterized by a number of different parameters:
407: \begin{itemize}
408: \item {\em axiom preservation}: what order axioms are preserved in $\succ'$;
409: \item {\em content preservation}: what preference relations are preserved in $\succ'$;
410: \item {\em ordering} (of revisions).
411: \end{itemize}
412: 
413: \begin{definition}
414: A revision $\succ'$ of $\;\succ$ with $\;\succ_0$ is:
415: \begin{itemize}
416: \item a {\em transitive (resp. SPO, a weak order)} revision if $\succ'$ is transitive
417: (resp. an SPO, a weak order);
418: \item a {\em monotonic\/} revision if $\ \succ\, \subseteq\, \succ'$;
419: \item a {\em refinement\/} revision ({\em refinement} for short) if \mbox{$\ \union{\succ}{\succ_0}\, \subseteq\, \succ'$};
420: \item an {\em overriding\/} revision if $\ \prior{\succ_0}{\succ}\, \subseteq\, \succ'$.
421: \end{itemize}
422: \end{definition}
423: 
424: A refinement is monotonic.
425: An overriding revision does not have to be monotonic because it may
426: fail to preserve $\succ$.
427: 
428: We order revisions using the symmetric difference ($\ominus$).
429: 
430: \begin{definition}\label{ref:closeness}
431: Assume $\succ_1$ and $\succ_2$ are two revisions of  a preference relation $\succ$ 
432: with a preference relation $\succ_0$. We say that $\succ_1$ is {\em closer} than $\succ_2$  to $\succ$
433: if $\sdif{\succ_1}{\succ}\, \subset\, \sdif{\succ_2}{\succ}$.
434: \end{definition}
435: \begin{definition}
436: A {\em minimal (resp. least)} revision of $\;\succ$ with $\succ_0$ is a revision 
437: that is minimal 
438: (resp. least) in the closeness
439: order among all revisions of $\;\succ$ with $\succ_0$.
440: \end{definition}
441: 
442: Similarly, we talk about least transitive refinements (or overriding revisions), 
443: least SPO (or  weak order) refinements or overriding revisions etc.
444: It is easy to see that if we consider only refinements or overriding revisions of a fixed
445: preference relation, closeness
446: reduces to set containment.
447: 
448: \begin{example}
449: Consider the  preference relation $\succ=\{(a,b),(b,c),(a,c)\}$
450:  representing the preference order $a\succ b\succ c$,
451: and the following revision of $\succ$, $\succ_1=\{(b,a),(b,c),(a,c)\}$. 
452: %and $\succ_2=\{(c,a),(c,b),(b,a)\}$.
453: The revision $\succ_1$ is the least SPO overriding revision 
454: of $\,\succ$ with $\succ_0=\{(b,a)\}$. It achieves the effect of swapping $a$ and $b$
455: in the preference order.
456: \ignore{
457: Similarly, the revision $\succ_2$ is the least SPO overriding revision 
458: of $\,\succ$ with $\succ_0'=\{(c,a),(c,b),(b,a)\}$, achieving the effect of swapping $a$ and $c$.
459: In this paper we typically order by closeness the revisions of a fixed 
460: $\;\succ$ with a fixed $\;\succ_0$. However, closeness can also serve
461: to compare revisions of the same revised relation with {\em different} revising
462: relations. In the current example, we obtain 
463: that, as expected, $\succ_1$ is closer than $\succ_2$ to $\succ$,
464: because 
465: $\sdif{\succ_1}{\succ}\subset \sdif{\succ_2}{\succ}$.
466: %\{(a,b),(b,a)\}$ is a subset of $\sdif{\succ_2}{\succ}=\{(a,b),(b,a),(b,c),(c,b),(a,c),(c,a)\}$.
467: }
468: \end{example}
469: 
470: To further describe the behavior of revisions, we define {\em preference conflicts}.
471: \begin{definition}
472: A {\em conflict} between a preference relation $\;\succ$  and a preference relation $\;\succ_0$ 
473: is a pair $(t_1,t_2)$ such that \mbox{$t_1\succ_0 t_2$} and \mbox{$t_2\succ t_1$}.
474: A {\em hidden conflict} between $\;\succ$  and $\;\succ_0$ is a pair $(t_1,t_2)$ such that $t_1\succ_0 t_2$ 
475: and there exist $s_1,\ldots s_k$, $k\geq 1$, such that
476: $t_2\succ s_1\succ\cdots\succ s_k\succ t_1$ and $t_1\not\succ_0 s_1 \not\succ_0\cdots\not\succ_0 s_k\not\succ t_2$.
477: \end{definition}
478: A hidden conflict is a conflict (if $\succ$ is an SPO) but not necessarily vice versa.
479: \begin{example}
480: If $\succ_0=\{(a,b)\}$ and $\succ=\{(b,a)\}$, then $(a,b)$ is a conflict which is not hidden. 
481: If we add $(b,c)$ and $(c,a)$ to $\succ$, then the conflict is also a hidden conflict ($s_1=c$).
482: If we further add $(c,b)$ or $(a,c)$ to $\succ_0$, then the conflict is not hidden anymore.
483: \end{example}
484: 
485: In this paper, we focus on refinement and overriding revisions because in our opinion
486: they capture two basic ways of revising preferences. A refinement does not retract
487: any preferences or resolve conflicts: it only adds new preferences necessitated by order properties.
488: So for a refinement to satisfy SPO properties, all conflicts need to be avoided.
489: An overriding revision, on the other hand, can override some of the original preferences
490: if they conflict with the new ones. Overriding can deal with conflicts which are not hidden
491: and solves all of them
492: in the same fashion: it gives higher priority to new preference information (i.e., $\succ_0$). 
493: Both refinement and overriding revisions preserve the revising relation $\succ_0$.
494: 
495: We now characterize those combinations of $\succ$  and $\succ_0$ that avoid all (or only hidden) conflicts.
496: \begin{definition}\label{def:compat}
497: A preference relation $\succ$  is {\em compatible} (resp. {\em semi-compatible}) with a preference relation
498: $\succ_0$  if there are no conflicts (resp. no hidden conflicts) between $\succ$  and $\succ_0$.
499: %for all $t_1$ and $t_2$ such that $t_1\succ_0 t_2$, $t_2\not\succ t_1$.
500: \end{definition}
501: Compatibility is symmetric and  implies semi-compatibility for SPOs. Semi-compatibility is not necessarily symmetric.
502: Examples \ref{ex:car} and \ref{ex:car:1} show a pair
503: of compatible relations. 
504: The compatibility of $\succ$ and $\succ_0$ {\em does not require} the acyclicity of $\succ\cup\succ_0$ or that one of the following hold:
505: $\succ\subseteq\succ_0$, $\succ_0\subseteq \succ$, or $\;\succ\cap\succ_0=\emptyset$.
506: For the former, consider $\succ=\{(a,b),(c,d)\}$ and $\succ_0=\{(b,c),(d,a)\}$.
507: For the latter, consider $\succ=\{(a,b),(b,c),(a,c)\}$ and $\succ_0=\{(a,b),(a,d)\}$.
508: % two SPOs which are compatible.
509: \ignore{
510: A semi-compatible relation may conflict with a given preference relation. However,
511: in each such case, i.e., when $t_1\succ_0 t_2$ and $t_2\succ t_1$, all the ways of deriving  $t_2\succ t_1$
512: by transitivity have at least one pair of tuples in conflict with some pair of tuples in $\succ_0$.
513: %Intuitively, if $t_1\succ_0 t_2$, then all the ways of deriving $t_2\ (\succ_0\rhd\succ)\  t_1$ by transitivity
514: %are blocked by the presence of some pair in $\succ_0$.
515: }
516: 
517: All the properties listed above, including both variants of compatibility, are decidable for
518: equality or rational order ipfs.
519: For example, semi-compatibility is expressed by the condition
520: $\;\succ_0^{-1}\,\cap\, TC(\succ^{-1}\! -\! \succ_0^{-1})=\emptyset$ where $\succ^{-1}$ is the inverse
521: of the preference relation $\succ$.
522: 
523: \section{Preservation of order axioms}\label{sec:preserve}
524: We prove now a number of results that characterize refinement and overriding
525: revisions of 
526: of preference relations. The results are of the form:
527: 
528: \vspace{10pt}
529: \noindent
530: {\em Given that the original preference relation $\succ$ and the revising relation $\succ_0$ satisfy
531: certain order axioms, what kind of order axioms does the revision $\succ'$ satisfy?}
532: 
533: \vspace{10pt}
534: To capture minimal change of preferences, we typically study {\em least} revisions.
535: The revision setting helps to overcome the limitations of {\em preference composition}
536: \cite{ChTODS03} where it is shown that common classes of orders (SPOs, weak orders)
537: are often not closed w.r.t. basic preference composition operators
538: like union or prioritized composition. In the results that follow, we
539: obtain closure under least revisions thanks to (1) restricting $\succ$
540: and $\succ_0$, and (2) guaranteeing transitivity by
541: explicitly applying transitive closure where necessary.
542: 
543: %If the order axioms satisfied by $\succ$ are preserved in $\succ'$,
544: %{\em iterated} revision becomes possible. 
545: %However, axiom preservation cannot always be achieved. The properties of both
546: %$\succ_0$ and $\succ$ play a crucial role here.
547: \ignore{
548: (In the cases when preservation does not hold in general, it may still hold for specific
549: preference relations. Whether the latter is true or not can be effectively determined 
550: for preference relations that are definable using the constraint classes studied in this paper.)}
551: 
552: 
553: \ignore{
554: Our studies have shown that the transitive closure of the union of $\succ$ and $\succ_0$,
555: $TC(\succ\cup\succ_0)$, plays a special role as a refinement. It is the least transitive
556: refinement, so in the cases when it is irreflexive it becomes the least strict partial
557: order refinement. In some cases the union $\succ\cup\succ_0$ is already transitive, and thus
558: $TC(\succ\cup\succ_0)=\succ\cup\succ_0$.
559: }
560: 
561: \subsection{General properties}
562: 
563: \begin{lemma}\label{lem:equiv}
564: For compatible $\succ$ and $\succ_0$, 
565: \[\union{\succ_0}{\succ}=\prior{\succ_0}{\succ}.\]
566: \end{lemma} 
567: 
568: \begin{lemma}\label{lem:basic}
569: The preference relation $\union{\succ}{\succ_0}$ (resp.  $\prior{\succ_0}{\succ}$) is contained in every 
570: refinement (resp. overriding revision) of $\;\succ$ with $\succ_0$ and is, therefore, 
571: the least refinement (resp. least overriding revision) of $\;\succ$ with $\succ_0$.
572: \end{lemma}
573: \begin{lemma}\label{lem:TC}
574: The preference relation $\tc{\union{\succ}{\succ_0}}$ (resp. $\tc{\prior{\succ_0}{\succ}}$)
575: is contained in every transitive refinement (resp. every overriding revision) of $\;\succ$ with $\succ_0$ and is,
576: therefore, the least transitive refinement (resp. least transitive overriding revision) of $\;\succ$ with $\succ_0$.
577: \end{lemma}
578: 
579: \subsection{Strict partial orders}
580: 
581: SPOs have several important properties from the user's point of view, and thus
582: their preservation is desirable. For instance,
583: all the preference relations defined in \cite{Kie02} and the language Preference SQL \cite{KiKo02} are SPOs. 
584: Moreover, if $\succ$ is an SPO, then the winnow $\wnnw{\succ}(r)$ is nonempty 
585: if (a finite) $r$ is nonempty.
586: Also, the fundamental  algorithms for computing winnow require that the preference relation
587: be an SPO \cite{ChTODS03}.
588: 
589: In order to obtain the least SPO revisions, we have to make sure
590: that  $\tc{\union{\succ}{\succ_0}}$ and $\tc{\succ\rhd\succ_0}$ are irreflexive (they are transitive by definition). 
591: 
592: \ignore{
593: We need to impose a number of restrictions on $\succ$ and $\succ_0$.
594: First, we introduce the single-chain property. 
595: Second, we limit possible interactions between
596: those relations. Refinement requires the compatibility of $\succ$ and $\succ_0$, in order to 
597: eliminate the conflicts between $\succ$
598: and $\succ_0$.  Such conflicts, for example $a\succ b$ and $b\succ_0 a$,
599: immediately violate the irreflexivity of $TC(\succ\cup\succ_{0})$. 
600: For dealing with overriding revisions compatibility
601: can be replaced by a less restrictive condition, {\em semi-compatibility}, because prioritized composition
602: already provides a way of resolving some conflicts. In this way, nonmonotonicity of revisions becomes possible.
603: }
604: 
605: \begin{definition}
606: An SPO has the {\em single-chain property} (SCP) if it has at most
607: one maximal chain (maximal totally-ordered subset) having at least two elements.
608: Such a chain is called a {\em superchain}.
609: \end{definition}
610: 
611: The superchain in the above definition does not have to exhaust all the elements of
612: the domain, so an order having SCP does not have to be total or even weak. 
613: 
614: \begin{theorem}\label{th:spo:union}
615: For every compatible preference relations $\succ$ and $\succ_0$ such that
616: both are SPOs and at least one has SCP,
617: the preference relation $\, \tc{\union{\succ}{\succ_0}}$ 
618: is the least SPO refinement of $\;\succ$ with $\succ_0$.
619: \end{theorem}
620: \begin{proof} (sketch)
621: Assume $\succ$ has SCP.
622: If $\, \tc{\union{\succ}{\succ_0}}$ is not irreflexive, then $\union{\succ}{\succ_0}$
623: has a cycle. Consider such cycle of minimum length.
624: It consists of alternating $\succ_0$- and $\succ$-edges (otherwise it can be shortened).
625: If there is more than one $\succ$-edge in the cycle, then one of the
626: assumptions is violated. So the cycle consists of two edges:
627: $t_1\succ_0 t_2$ and $t_2\succ t_1$. But this is a conflict violating
628: compatibility.
629: \end{proof}
630: 
631: \begin{example}\label{ex:car:3}
632: Consider again the preference relation $\succ_{C_1}$:
633: \[(m,y)\succ_{C_1}(m',y') \equiv m=m'\wedge y>y'.\]
634: Suppose that the new preference information is captured as  $\succ_{C_3}$
635: which is a single-chain SPO:
636: \[\begin{array}{lcl}
637: (m,y)\succ_{C_3}(m',y')& \equiv &m={\rm ''VW''}\wedge y=1999\\
638: &\wedge &m'={\rm ''Kia''}\wedge y'=1999.\end{array}\]
639: Then $\tc{\union{\succ_{C_1}}{\succ_{C_3}}}$ is defined as the SPO $\succ_{C_4}$:
640: \[\begin{array}{l}
641: (m,y)\succ_{C_4}(m',y')\equiv m=m'\wedge y>y'\\\vee\
642:  m={\rm ''VW''}\wedge y\geq 1999\wedge m'={\rm ''Kia''}\wedge y'\leq 1999.
643: \end{array}\]
644: \end{example}
645: 
646: One can find examples where SCP or the compatibility
647: of $\succ$ and $\succ_0$ is violated, and a cycle
648: in $\union{\succ}{\succ_0}$ is obtained.
649: % resulting in the absence of an SPO refinement.
650: 
651: \ignore{
652: If the compatibility of $\succ$ and $\succ_0$ is relaxed, then it is easy
653: to obtain a cycle in $TC(\union{\succ}{\succ_0})$ and consequently, no strict partial
654: order refinement. SCP is also essential, as shown below.
655: \begin{theorem}\label{th:spo:greater}
656: There exist compatible preference relations $\succ$ and $\succ_0$ such that
657: (1) $\succ$ is an SPO and (2) $\succ_0$ is an SPO
658: of cardinality two, and 
659: there is no SPO refinement of $\succ$ with $\succ_0$.
660: \end{theorem}
661: \begin{proof}
662: Let a, b, c, and d tuples be in a database, $\succ=\{(a,b),(c,d)\}$ and
663: $\succ_{0}=\{(b,c),(d,a)\}$.
664: In this case, $TC(\union{\succ}{\succ_0})$  contains the tuple $(a,a)$ and thus is 
665: not irreflexive.
666: By Lemma \ref{lem:TC}, we know that  $TC(\union{\succ}{\succ_0})$ is 
667: contained in every transitive refinement. Therefore, every
668: transitive refinement is not irreflexive.
669: \end{proof}
670: }
671: \ignore{
672: Theorem \ref{th:spo:union} implies that if $\succ$ and $\succ_0$ are compatible and one of them
673: contains only one pair, then the least SPO refinement of $\succ$ with $\succ_0$ exists.
674: So what will happen if we break up the preference
675: relation $\succ_{0}$ from the proof of Theorem  
676: \ref{th:spo:greater} into two one-element relations $\succ_1$ and $\succ_2$ and attempt to 
677: apply Theorem \ref{th:spo:union} twice to get the least SPO
678: refinement?
679: Unfortunately, such a ``strategy'' does not work. The second
680: refinement is not possible because the preference relation $\succ_2$
681: is not compatible with the  refinement of $\succ$ with $\succ_1$.
682: }
683: For dealing with overriding revisions compatibility
684: can be replaced by a less restrictive condition, {\em semi-compatibility}, because prioritized composition
685: already provides a way of resolving some conflicts. 
686: %In this way, nonmonotonicity of revisions becomes possible.
687: 
688: \begin{theorem}\label{th:spo:priority}
689: For every preference relations $\succ$ and $\succ_0$ such that
690: both are SPOs, $\succ_0$ has SCP
691: and $\succ$ is semi-compatible with $\succ_0$,
692: the preference relation $\tc{\prior{\succ_0}{\succ}}$ 
693: is the least SPO overriding revision of $\;\succ$ with $\succ_0$.
694: \end{theorem}
695: \begin{proof} (sketch)
696: We assume that $\tc{\prior{\succ_0}{\succ}}$ is not irreflexive and  consider a cycle of minimum length 
697: in $\prior{\succ_0}{\succ}$.
698: This cycle has to consist of an edge $t_1\succ_0 t_2$ and a number of $\succ$-edges
699: $t_2\succ t_3,\ldots,t_{n-1}\succ t_n,t_n\succ t_1$ such that $n>2$.
700: (Here we cannot shorten sequences of consecutive $\succ$-edges because $\succ$
701: is not necessarily preserved in $\prior{\succ_0}{\succ}$.)
702: We have that $t_2\sim_0 t_3,\ldots,t_{n-1}\sim_0 t_n,t_n\sim_0 t_1$.
703: Thus $(t_1,t_2)$ is a hidden conflict violating the semi-compatibility of $\succ$
704: with $\succ_0$.
705: \end{proof}
706: 
707: Again, violating any of the conditions of Theorem \ref{th:spo:priority} may lead
708: to a situation in which no SPO overriding revision exists.
709: \ignore{
710: \begin{theorem}\label{th:spo:greater:priority}
711: There exist preference relations $\succ$ and $\succ_0$ such that
712: (1) $\succ$ is an SPO and (2) $\succ_0$ is an SPO,
713: and there is no SPO overriding revision of $\succ$ with $\succ_0$.
714: \end{theorem}
715: \begin{proof}
716: Consider a relation with three tuples $a$, $b$, and $c$.
717: Let $\succ_0=\{(b,a)\}$ and $\succ=\{(a,c),(c,b),(a,b)\}$.
718: Then there is a cycle in $\prior{\succ_0}{\succ}$.
719: \end{proof}
720: }
721: \begin{proposition}\label{prop:terminate}
722: For the preference relations defined using equality
723: or rational order ipfs,
724: the computation of \mbox{$TC(\union{\succ}{\succ_0})$} and \mbox{$TC(\succ\rhd\succ_0)$} terminates.
725: \end{proposition}
726: \ignore{
727: \begin{proof}
728: As pointed out in \cite{ChTODS03}, this follows from the termination
729: of an appropriate variant of Constraint Datalog \cite{CDB00}.
730: \end{proof}
731: }
732: The computation of transitive closure is done in a completely
733: database-independent way using Constraint Datalog techniques \cite{CDB00}. 
734: \begin{example}\label{ex:car:4}
735: Consider Examples \ref{ex:car} and  \ref{ex:car:3}. 
736: We can infer that
737: \[t_1=({\rm ''VW''},2002)\succ_{C_4} ({\rm ''Kia''},1997)=t_3,\]
738: because 
739: \[({\rm ''VW''},2002)\succ_{C_1}({\rm ''VW''},1999),\]
740: \[({\rm ''VW''},1999)\succ_{C_3}({\rm ''Kia''},1999),\]
741: and 
742: \[({\rm ''Kia''},1999)\succ_{C_1}({\rm ''Kia''},1997).\]
743: The tuples $({\rm ''VW''},1999)$ and $({\rm ''Kia''},1999)$ are {\em not\/} 
744: in the database.
745: \end{example}
746: 
747: 
748: 
749: \subsection{Weak orders}
750: 
751: \ignore{
752: We start by establishing a number of auxiliary results about weak orders.
753: By $\sim$ we denote the indifference relation generated by a preference relation $\succ$.
754: \begin{lemma}\label{lem:weak:1}
755: For every weak order preference relation $\succ$, and every x,y,
756: and z: if x$\sim$y and either x$\succ$z or y$\succ$z, then
757: x$\succ$z and y$\succ$z.
758: \end{lemma}
759: \begin{lemma}\label{lem:weak:2}
760: For every weak order preference relation $\succ$,
761: and every x,y,and
762: z: if x$\sim$y and either x$\not$$\succ$z or 
763: y$\not$$\succ$z, then x$\not$$\succ$z and y$\not$$\succ$z.
764: \end{lemma}
765: }
766: Weak partial orders are practically important because they capture the situation where
767: the domain can be decomposed into layers such that the layers are totally ordered and all the elements in one layer are
768: mutually indifferent. This is the case, for example, if the preference relation can be represented using a numeric
769: utility function.
770: If the preference relation is a weak order, a particularly efficient (essentially single pass)
771: algorithm for computing winnow is applicable \cite{ChCDB04}.
772: 
773: 
774: We first consider combinations of SPOs and weak orders.
775: 
776: \begin{theorem}\label{th:spo:weak}
777: For every compatible preference relations $\succ$ and $\succ_0$ such that
778: one is an SPO and the other
779: a weak order, the preference relation
780: $\union{\succ}{\succ_{0}}$ is the least SPO refinement of $\;\succ$ with $\succ_0$.
781: \end{theorem}
782: \ignore{
783: \begin{proof}
784: The relation $\union{\succ}{\succ_0}$ is irreflexive because  both
785: $\succ$ and $\succ_0$ are irreflexive.
786: Transitivity is proved by case analysis using Lemma \ref{lem:weak:1}.
787: \end{proof}
788: Clearly, the refinement yielding $\union{\succ}{\succ_0}$ under the assumptions of
789: Theorem \ref{th:spo:weak} cannot always be a weak order.
790: As a counterexample, consider for $\succ$ any SPO which is not a weak order,
791: for example:
792: \[a\succ b, a\sim c, b\sim c,\]
793: and for $\succ_0$ an empty order. 
794: Notice that in the above example the preference relation $\succ$ has  multiple minimal weak order 
795: extensions which are also minimal weak order refinements. Therefore, there
796: is no least weak order refinement.
797: }
798: In the context of overriding revisions, the requirement of compatibility becomes
799: unnecessary.
800: \begin{theorem}\label{th:spo:weak:priority}
801: For every preference relations $\succ_0$ and $\succ$ such that
802: $\succ_0$ is a weak order and $\succ$ an SPO, the preference relation
803: $\prior{\succ_0}{\succ}$ is the least SPO overriding revision of $\;\succ$ with $\succ_0$.
804: \end{theorem}
805: 
806: We consider now combinations of weak orders.
807: 
808: \begin{theorem}\label{th:weak:weak}
809: For every compatible weak order preference relations $\succ$ and $\succ_0$,
810: $\union{\succ}{\succ_{0}}$ is the least weak
811: order refinement of $\;\succ$ with $\succ_0$.
812: \end{theorem}
813: \ignore{
814: \begin{proof}
815: By Theorem \ref{th:spo:weak}, we know that the preference relation $\union{\succ}{\succ_0}$
816: is an SPO.
817: Negative transitivity of this relation is shown by
818: case analysis using Lemma \ref{lem:weak:2}.
819: \end{proof}
820: }
821: Again, for overriding revisions, we can relax the compatibility assumption.
822: This immediately follows from the fact that weak orders are closed with respect
823: to prioritized composition \cite{ChTODS03}.
824: \begin{proposition}\label{prop:weak:weak:priority}
825: For every weak order preference relations $\succ$ and $\succ_0$, the preference relation
826: $\prior{\succ_0}{\succ}$ is the least weak
827: order overriding revision of $\;\succ$ with $\;\succ_0$.
828: \end{proposition}
829: 
830: A basic notion in utility theory is that of {\em representability} of preference relations
831: using numeric utility  functions:
832: 
833: \begin{definition}\label{def:represent}
834: A real-valued function $u$ over a schema $R$ 
835: {\em represents} a preference relation $\succ$ over $R$ iff
836: \[\forall t_1,t_2\ [t_1\succ t_2 \;{\rm iff}\; u(t_1)>u(t_2)].\]
837: \end{definition}
838: 
839: Being a weak order is a necessary condition for the existence of a numeric representation
840: for a preference relation. However, it is not sufficient for uncountable orders \cite{Fish70}.
841: It is natural to ask whether the existence of  numeric representations
842: for the preference relations $\succ$ and $\succ_0$ implies the existence of such 
843: a representation for the least refinement $\succ'=(\union{\succ}{\succ_0})$.
844: This is indeed the case. 
845: 
846: \begin{theorem}\label{th:utility}
847: Assume that $\succ$ and $\succ_{0}$ are weak order preference
848: relations such that
849: \begin{enumerate}
850: \item $\succ$ and $\succ_{0}$ are compatible,
851: \item $\succ$  can be represented using a real-valued function $u$,
852: \item $\succ_{0}$ can be represented using a real-valued function $u_{0}$.
853: \end{enumerate}
854: Then $\succ'\, =\, \union{\succ}{\succ_{0}}$ is a weak
855: order preference relation that can be represented using any real-valued
856: function $u'$ such that for all $x$, $u'(x)=a\cdot u(x)+b\cdot u_0(x)+c$ where $a,b>0$.
857: \end{theorem}
858: \ignore{
859: \begin{proof}
860: By case analysis. The assumption of compatibility is essential.
861: \end{proof}
862: It is easy to see that $u'$ is not the only utility function representing $\succ'$.
863: Any positive linear combination of $u$ and $u_0$ has the same property.
864: }
865: Surprisingly, the compatibility requirement cannot in general be
866: replaced by semi-compatibility if we replace $\cup$ by $\rhd$ in Theorem \ref{th:utility}. This follows
867: from the fact that the lexicographic
868: composition of one-dimensional standard orders over ${\cal R}$ is
869: not representable using a utility function \cite{Fish70}.
870: %can be viewed as the prioritized composition of two weak
871: %orders over ${\cal R}\times{\cal R}$. The orders satisfy
872: %semi-compatibility. 
873: Thus, preservation of {\em representability} is possible only 
874: under compatibility, in which case $\succ_0\rhd\succ\ = \ \succ_0\cup\succ$
875: (Lemma \ref{lem:equiv}) and the revision is monotonic.
876: It is an open question whether representability can be preserved under
877: nonmonotonic revisions.
878: 
879: 
880: We conclude this section by showing a general scenario in which the refinement of weak orders occurs in a natural way.
881: Assume that we have a numeric utility function $u$ representing a (weak order) preference relation $\succ$.
882: The indifference relation $\sim$ generated by $\succ$ is defined as:
883: \[x\sim y\ \equiv\ u(x)=u(y).\]
884: Suppose that the user discovers that $\sim$ is too coarse and needs to be further refined.
885: This may occur, for example, when $x$ and $y$ are tuples and the function $u$ takes
886: into account only some of their components. Another  function $u_0$ may be defined
887: to take into account other components of $x$ and $y$ (such components are called
888: {\em hidden attributes} \cite{PuFaTo03}). The revising preference relation $\succ_0$
889: is now:
890: \[x\succ_0 y\ \equiv\ u(x)=u(y)\wedge u_0(x)>u_0(y).\]
891: It is easy to see that $\succ_0$ is an SPO compatible with $\succ$ but not necessarily a weak order. 
892: Therefore, by Theorem \ref{th:spo:weak} the preference relation $\ \union{\succ}{\succ_0}\ $ is the least SPO
893: refinement of $\succ$ with $\succ_0$. 
894: %(Actually, $\union{\succ}{\succ_0}$ is a weak order. In general, it does not have a utility representation.)
895: 
896: \section{Checking axiom satisfaction}\label{sec:check}
897: 
898: %As demonstrated by Theorem \ref{th:spo:greater}, 
899: 
900: If none of the results described so far implies that the least transitive
901: refinement of $\succ$ with $\succ_0$ is an SPO,
902: then this condition can often be explicitly checked.
903: Specifically, one has to: (1) compute the transitive closure $\tc{\union{\succ}{\succ_0}}$,
904: and (2) check whether the obtained relation is irreflexive.
905: 
906: From Proposition \ref{prop:terminate}, it follows that for equality and rational order ipfs
907: the computation of $\tc{\union{\succ}{\succ_0}}$ yields
908: some finite ipf $C(t_1,t_2)$. Then the second step reduces
909: to checking whether $\ C(t,t)$ is unsatisfiable, which is a decidable problem for equality and rational order
910: ipfs.
911: 
912: \begin{example}\label{ex:car:2}
913: Consider Examples \ref{ex:car} and \ref{ex:car:1}.
914: Neither of the preference relations $\succ_{C_1}$ and $\succ_{C_2}$ is a weak order or
915: has SCP.
916: Therefore, the results established earlier in this paper do not apply.
917: The preference relation $\succ_{C*}=\tc{\union{\succ_{C_1}}{\succ_{C_2}}}$ is defined
918: as follows:
919: \[\begin{array}{l}
920: (m,y)\succ_{C*}(m',y') \ \equiv\ m=m'\wedge y>y'\hspace{50pt}\\ 
921: \hfill\vee\ m={\rm ''VW''}\wedge m'\not={\rm ''VW''}\wedge y\geq y'\\ 
922: 
923: \end{array}\]
924: The preference relation $\succ_{C*}$ is irreflexive.
925: It also properly contains $\union{\succ_{C_1}}{\succ_{C_2}}$, because
926: $t_1\succ_{C*} t_3$ but $t_1\not \succ_{C_1}t_3$ and $t_1\not \succ_{C_2}t_3$.
927: The query $\wnnw{C*}(Car)$ evaluated in the instance $r_1$ (Figure \ref{fig:car}) returns only the tuple $t_1$. 
928: \end{example}
929: 
930: Similar considerations apply to overriding revisions and weak orders.
931: \ignore{
932: To determine whether a specific combination of $\succ$ and $\succ_0$
933: has the least weak order refinement (resp. least weak order overriding revision), 
934: one can check whether $TC(\union{\succ}{\succ_0})$ (resp. $TC(\prior{\succ_0}{\succ})$) is 
935: irreflexive and negatively transitive.
936: }
937: \ignore{
938: \section{Definability}
939: Theorems \ref{th:spo:weak}  and \ref{th:spo:weak:priority} demonstrates that 
940: if both $\succ$ and $\succ_0$ are definable, then
941: the least SPO refinement and overriding revision of $\succ$ with $\succ_0$ are definable
942: in the same language.
943: Similarly, Theorem \ref{th:weak:weak} and Proposition \ref{prop:weak:weak:priority} establish  definability 
944: in the weak order case.
945: However, Theorem \ref{th:spo:union} shows that in some cases the least SPO
946: refinement is not first-order definable, as its definition involves transitive closure.
947: It would be interesting to see if there are further cases in which definability can be achieved.
948: One of such cases is shown in Example \ref{ex:car:2}.
949: This problem is related to the problem of boundedness that was extensively studied
950: in the context of relational databases \cite{GaSaMaVa87}.
951: }
952: \section{Iterating monotonic preference revision}\label{sec:iterate}
953: 
954: Consider the scenario in which we iterate monotonic preference revision to obtain a sequence of preference relations 
955: $\succ_{1},\ldots,\succ_{n}$ such that each is an SPO and $\succ_{1}\,\subseteq\cdots\subseteq\, \succ_{n}$.
956: (Recall that refinement is monotonic but overriding revision not necessarily so.)
957: Assume that those relations are used to extract the best tuples from a fixed relation instance $r$.
958: Such evaluation provides feedback to the user about the quality of the given preference relation and may be
959: helpful in constructing its subsequent refinements.
960: 
961: In this scenario, the sequence of query results is:
962: \[r_0=r, r_1=\wnnw{\succ_1}(r),r_2=\wnnw{\succ_2}(r),\ldots,r_n=\wnnw{\succ_n}(r).\]
963: 
964: Proposition \ref{prop:contain} below implies that the sequence $r_0,r_1,\ldots,r_n$ is decreasing:
965: \[r_0\supseteq r_1\supseteq\cdots\supseteq r_n\]
966: and that it can be computed incrementally:
967: \[r_1=\wnnw{\succ_1}(r_0),r_2=\wnnw{\succ_2}(r_1),\ldots,r_n=\wnnw{\succ_n}(r_{n-1}).\]
968: To compute $r_i$, there is no need to look at the tuples in \mbox{$r-r_{i-1}$,} nor to
969: recompute winnow from scratch. The sets of tuples $r_1,\ldots,r_n$ are likely to 
970: have  much smaller cardinality than $r_0=r$.
971: 
972: \begin{proposition}{\rm \cite{ChTODS03}\label{prop:contain}}
973: If $\succ_{1}$ and $\succ_{2}$ are preference relations over a relation schema $R$ 
974: and \mbox{$\succ_{1}\, \subseteq\, \succ_{2}$}, 
975: then for all instances $r$ of $R$:
976: \begin{itemize} 
977: \item $\wnnw{\succ_2}(r)\,\subseteq\, \wnnw{\succ_1}(r);$
978: \item $\wnnw{\succ_2}(\wnnw{\succ_1}(r))\, =\, \wnnw{\succ_2}(r)$
979: if $\succ_1$ and $\succ_2$ are SPOs.
980: \end{itemize}
981: \end{proposition}
982: 
983: \ignore{
984: \section{Summary}
985: Tables \ref{tab:refinement} and \ref{tab:overriding} summarize the closure properties under refinement
986: and overiding revisions of different classes of preference relations.
987: \begin{table}[htb]
988: \centering
989: \begin{tabular}{|c|c|c|}
990: \hline
991: & $\succ$ SPO  & $\succ$ weak order \\\hline
992: $\succ_0$ SPO      & compatible: SPO if $\succ$ or $\succ_0$ single-chain  & compatible: SPO\\\hline
993: $\succ_0$ weak order      & compatible: SPO &compatible: weak order\\\hline
994: \end{tabular}
995: \caption{Closure under refinement}
996: \label{tab:refinement}
997: \end{table}
998: \begin{table}[htb]
999: \centering
1000: \begin{tabular}{|c|c|c|}
1001: \hline
1002: & $\succ$ SPO  & $\succ$ weak order \\\hline
1003: $\succ_0$ SPO      & semi-compatible: SPO if $\succ_0$ single-chain  & compatible: SPO\\\hline
1004: $\succ_0$ weak order      & SPO &weak order\\\hline
1005: \end{tabular}
1006: \caption{Closure under overriding revision}
1007: \label{tab:overriding}
1008: \end{table}
1009: }
1010: 
1011: 
1012: \section{Related work}\label{sec:related}
1013: CP-nets \cite{BouetalJAIR04} are an influential recent formalism for reasoning with conditional
1014: preference statements under {\em ceteris paribus} semantics (such semantics is also adopted in other work
1015: \cite{McGDo04,WeDo91}).
1016: We conjecture that CP-nets can be expressed in the framework of preference relations of \cite{ChTODS03}, used
1017: in the present paper, by making the semantics explicit.
1018: If the conjecture is true, the results of the present paper will be relevant to revision
1019: of CP-nets.
1020: \begin{example}
1021: The CP-net \mbox{$M=\{a\succ \bar{a}, a:b\succ \bar{b}, \bar{a}: \bar{b}\succ b\}$}
1022: where $a$ and $b$ are Boolean variables,
1023: captures the following preferences:
1024: (1) prefer $a$ to $\bar{a}$, all else being equal;
1025: (2) if $a$, prefer $b$ to $\bar{b}$; 
1026: (3) if $\bar{a}$, prefer $\bar{b}$ to $b$.
1027: We construct a preference relation $\succ_{C_M}$ between worlds, i.e., Boolean valuations of $a$ and $b$:
1028: \[
1029: \begin{array}{lcl}
1030: (a,b)\succ_{C_M} (a',b') &\equiv &a=1 \wedge a'=0 \wedge b=b'\\&\vee & a=1 \wedge 
1031: a'=1 \wedge b=1 \wedge b'=0 \\&\vee & a=0\wedge a'=0 \wedge b=0 \wedge b'=1.
1032: \end{array}\]
1033: Finally, the semantics of the CP-net is fully captured as the transitive closure $\;\tc{\succ_{C_M}}$.
1034: Such closure can be computed using Constraint Datalog with Boolean constraints \cite{CDB00}.
1035: \end{example}
1036: CP-nets and related formalisms cannot express preference relations over infinite domains
1037: which are essential in database applications.
1038: 
1039: \cite{PuFaTo03} formulates different scenarios of preference revision and does not contain any formal framework.
1040: \cite{Freu04} describes minimal change revision of {\em rational} preference relations between propositional formulas.
1041: We are not aware of any work on revising infinite preference relations.
1042: 
1043: \ignore{
1044: To apply the results of the present  paper to CP-nets, the following steps need to be done:
1045: \begin{enumerate}
1046: \item compute the Boolean constraint representation of the preference relation 
1047: $TC(\succ_{C_M})$ corresponding to the revised  CP-net $M$ and the preference relation
1048: $TC(\succ_{C_{M_0}})$ corresponding to the revising CP_net $M_0$;
1049: \item determine whether any result of the present paper is applicable and if this is the case,
1050: construct an appropriate least refinement;
1051: \item map the obtained preference relation to a new CP-net.
1052: \end{enumerate}
1053: It remains to be seen whether the last step above can always be done and
1054: how efficient the Constraint Datalog  computation could be made in this context.
1055: }
1056: \ignore{
1057: Two different approaches to preference queries have been pursued
1058: in the literature: qualitative and quantitative. In the {\em
1059: qualitative} approach \cite{LaLa87,GoJaMa01,ChTODS03,Kie02},
1060: the preferences are
1061: specified directly, typically using binary {\em preference
1062: relations}. In the  {\em quantitative} approach \cite{AgWi00,HrKoPa01}, preferences are represented using
1063: {\em numeric utility functions}, as shown in Section \ref{sec:preserve}.
1064: The qualitative approach is strictly more general than the
1065: quantitative one, since one can define preference relations in
1066: terms of utility functions. However, only weak order
1067: preference relations can be represented by numeric utility
1068: functions \cite{Fish70}. 
1069: Preferences that are not weak orders are common in database applications,
1070: c.f., Example \ref{ex:car}.
1071: }
1072: \ignore{
1073: \begin{example}
1074: There is no utility
1075: function that captures the preference relation described in Example \ref{ex:car}.
1076: Since there is no preference defined between $t_1$ and $t_3$ or $t_2$ and $t_3$.
1077: the score of $t_3$ should be equal to the scores of both $t_1$ and $t_2$.
1078: But this implies that the scores of $t_1$ and $t_2$ are equal
1079: which is not possible since $t_1$ is preferred over $t_2$.
1080: \end{example}
1081: This lack of expressiveness of the quantitative approach is well known
1082: in utility theory \cite{Fish70}.
1083: }
1084: \section {Conclusions and future work}\label{sec:concl}
1085: 
1086: We have presented a general framework for revising preference relations
1087: and established a number of order axiom preservation results for specific classes of revisions.
1088: In the future, we plan to consider more general classes of revisions
1089: and databases with restricted domains, e.g., Boolean.
1090: Another direction is the design of a {\em revision language}
1091: in which different parameters of preference revision can be explicitly specified 
1092: by the user.
1093: Connections to {\em iterated belief revision} \cite{DaPe97} should also
1094: be explored.
1095: \ignore{
1096: For more general classes of revisions than those studied in this paper,
1097: the interplay between different requirements imposed on
1098: revisions will be more complicated.  For example, in the presence of
1099: multiple minimal revisions, the issues of
1100: aggregating minimal revisions or choosing one among them will become
1101: important. It will be also interesting to see whether considering specific
1102: domains, for example finite domains, would make it possible to establish
1103: new closure results for various classes of revisions.
1104: }
1105: \begin{small}
1106: \begin{thebibliography}{}
1107: 
1108: \bibitem[\protect\citeauthoryear{Boutilier \bgroup \em et al.\egroup
1109:   }{2004}]{BouetalJAIR04}
1110: Boutilier, C.; Brafman, R.~I.; Domshlak, C.; Hoos, H.~H.; and Poole, D.
1111: \newblock 2004.
1112: \newblock {CP-nets: A Tool for Representing and Reasoning with Conditional
1113:   Ceteris Paribus Preference Statements}.
1114: \newblock {\em Journal of Artificial Intelligence Research} 21:135--191.
1115: 
1116: \bibitem[\protect\citeauthoryear{Chomicki}{2003}]{ChTODS03}
1117: Chomicki, J.
1118: \newblock 2003.
1119: \newblock {Preference Formulas in Relational Queries}.
1120: \newblock {\em ACM Transactions on Database Systems} 28(4):427--466.
1121: 
1122: \bibitem[\protect\citeauthoryear{Chomicki}{2004}]{ChCDB04}
1123: Chomicki, J.
1124: \newblock 2004.
1125: \newblock {Semantic Optimization of Preference Queries}.
1126: \newblock In {\em {International Symposium on Constraint Databases}},
1127:   133--148.
1128: \newblock Paris, France: Springer-Verlag, LNCS 3074.
1129: 
1130: \bibitem[\protect\citeauthoryear{Darwiche \& Pearl}{1997}]{DaPe97}
1131: Darwiche, A., and Pearl, J.
1132: \newblock 1997.
1133: \newblock {On the Logic of Iterated Belief Revision}.
1134: \newblock {\em Artificial Intelligence} 89(1--2):1--29.
1135: 
1136: \bibitem[\protect\citeauthoryear{Fishburn}{1970}]{Fish70}
1137: Fishburn, P.~C.
1138: \newblock 1970.
1139: \newblock {\em Utility Theory for Decision Making}.
1140: \newblock Wiley \& Sons.
1141: 
1142: \bibitem[\protect\citeauthoryear{Freund}{2004}]{Freu04}
1143: Freund, M.
1144: \newblock 2004.
1145: \newblock {On the Revision of Preferences and Rational Inference Processes}.
1146: \newblock {\em Artificial Intelligence} 152:105--137.
1147: 
1148: \bibitem[\protect\citeauthoryear{G{\"{a}}rdenfors \& Rott}{1995}]{GaRo95}
1149: G{\"{a}}rdenfors, P., and Rott, H.
1150: \newblock 1995.
1151: \newblock {Belief Revision}.
1152: \newblock In Gabbay, D.~M.; Hogger, C, J.; and Robinson, J.~A., eds., {\em
1153:   Handbook of Logic in Artificial Intelligence and Logic Programming},
1154:   volume~4. Oxford University Press.
1155: \newblock  35--132.
1156: 
1157: \bibitem[\protect\citeauthoryear{Kie{\ss}ling \& K{\"{o}}stler}{2002}]{KiKo02}
1158: Kie{\ss}ling, W., and K{\"{o}}stler, G.
1159: \newblock 2002.
1160: \newblock {Preference SQL - Design, Implementation, Experience}.
1161: \newblock In {\em International Conference on Very Large Data Bases (VLDB)},
1162:   990--1001.
1163: 
1164: \bibitem[\protect\citeauthoryear{Kie{\ss}ling}{2002}]{Kie02}
1165: Kie{\ss}ling, W.
1166: \newblock 2002.
1167: \newblock {Foundations of Preferences in Database Systems}.
1168: \newblock In {\em International Conference on Very Large Data Bases (VLDB)},
1169:   311--322.
1170: 
1171: \bibitem[\protect\citeauthoryear{Kuper, Libkin, \& Paredaens}{2000}]{CDB00}
1172: Kuper, G.; Libkin, L.; and Paredaens, J., eds.
1173: \newblock 2000.
1174: \newblock {\em Constraint Databases}.
1175: \newblock Springer-Verlag.
1176: 
1177: \bibitem[\protect\citeauthoryear{McGeachie \& Doyle}{2004}]{McGDo04}
1178: McGeachie, M., and Doyle, J.
1179: \newblock 2004.
1180: \newblock {Utility Functions for Ceteris Paribus Preferences}.
1181: \newblock {\em Computational Intelligence} 20(2).
1182: 
1183: \bibitem[\protect\citeauthoryear{Pu, Faltings, \& Torrens}{2003}]{PuFaTo03}
1184: Pu, P.; Faltings, B.; and Torrens, M.
1185: \newblock 2003.
1186: \newblock {User-Involved Preference Elicitation}.
1187: \newblock In {\em IJCAI Workshop on Configuration}.
1188: 
1189: \bibitem[\protect\citeauthoryear{Wellman \& Doyle}{1991}]{WeDo91}
1190: Wellman, M.~P., and Doyle, J.
1191: \newblock 1991.
1192: \newblock {Preferential Semantics for Goals}.
1193: \newblock In {\em National Conference on Artificial Intelligence},  698--703.
1194: 
1195: \end{thebibliography}
1196: 
1197: \end{small}
1198: 
1199: \end{document}