Updated notes.

This commit is contained in:
Michael Whittaker 2021-01-17 19:50:54 -08:00
parent 419cb07536
commit ffc10b03c2
2 changed files with 50 additions and 38 deletions

View file

@ -1,3 +1,14 @@
@article{ibaraki1993theory,
title={A theory of coteries: Mutual exclusion in distributed systems},
author={Ibaraki, Toshihide and Kameda, Tiko},
journal={IEEE Transactions on Parallel and Distributed Systems},
volume={4},
number={7},
pages={779--794},
year={1993},
publisher={IEEE}
}
@article{naor1998load, @article{naor1998load,
title={The load, capacity, and availability of quorum systems}, title={The load, capacity, and availability of quorum systems},
author={Naor, Moni and Wool, Avishai}, author={Naor, Moni and Wool, Avishai},
@ -9,6 +20,12 @@
publisher={SIAM} publisher={SIAM}
} }
@article{neilsen1991general,
title={A general method to define quorums},
author={Neilsen, Mitchell and Mizuno, Masaaki and Raynal, Michel},
year={1991}
}
@article{vukolic2013origin, @article{vukolic2013origin,
title={The origin of quorum systems}, title={The origin of quorum systems},
author={Vukoli{\'c}, Marko and others}, author={Vukoli{\'c}, Marko and others},

View file

@ -1,52 +1,42 @@
\section{Quorum Systems} \section{Quorum Systems}
These definitions are taken from \cite{naor1998load} and
\cite{vukolic2013origin}.
%
Given a set $X = \set{x_1, \ldots, x_n}$, a \defword{quorum system} over $X$ is Given a set $X = \set{x_1, \ldots, x_n}$, a \defword{quorum system} over $X$ is
a set $Q = \set{q_1, \ldots, q_m}$ of subsets of $X$, called \defword{quorums}, a set $Q = \set{q_1, \ldots, q_m}$ of subsets of $X$, called \defword{quorums},
such that every pair of quorums intersect. That is, for every $q_1, q_2 \in such that every pair of quorums intersect. That is, for every $q_1, q_2 \in
Q$, $q_1 \cap q_2 \neq \emptyset$. Q$, $q_1 \cap q_2 \neq \emptyset$.
%
A quorum system $Q$ is a \defword{coterie} if there does not exist quorums A quorum system $Q$ is a \defword{coterie} if there does not exist quorums
$q_1, q_2 \in Q$ such that $q_1 \subset q_2$. In other words, a coterie is a $q_1, q_2 \in Q$ such that $q_1 \subset q_2$. In other words, a coterie is a
quorum system that does not contain some quorum $q_1$ that is a strict subset quorum system that does not contain some quorum $q_1$ that is a strict subset
of some other quorum $q_2$. of some other quorum $q_2$.
%
Let $P, Q$ be two quorum systems over the same set $X$. $P$ \defword{dominates}
$Q$, denoted $P > Q$, if $P \neq Q$ and for every $q \in Q$, there exists some
$p \in P$ such that $p \subseteq q$. A quorum system $Q$ is \defword{dominated}
if there exists some quorum system $P$ that dominates it.
Let $P, Q$ be two coteries over the same set $X$. $P$ \defword{dominates} $Q$, We can associate every quorum system $Q$ with a monotone boolean function
denoted $P > Q$, if $P \neq Q$ and for every $q \in Q$, there exists some $p $f_Q$. For example, the majority quorum system $Q = \set{\set{a, b}, \set{b,
\in P$ such that $p \subseteq q$. A coterie $Q$ is \defword{dominated} if there c}, \set{a, c}}$ corresponds to the function $f_Q = ab + bc + ac$. The prime
exists some coterie $P$ that dominates it. implicants of the boolean function correspond to the minimal sets of the quorum
system. We say $f \leq g$ if for every $\vec{x}$, $f(\vec{x}) \implies
g(\vec{x})$. In other words, $f \leq g$ if $\setst{\vec{x}}{g(\vec{x})}
\subseteq \setst{\vec{x}}{f(\vec{x})}$. Consider two quorum systems $Q_1$ and
$Q_2$, $Q_1$ dominates $Q_2$ if and only if $f_{Q_2} < f_{Q_1}$.
\begin{example} \newcommand{\dual}[1]{#1^d}
Let $P$ be the majority quorum system over the set $X = \set{a, b, c}$. That Let the dual $\dual{f}$ of $f$ be $\dual{f}(x) = \bar{f}(\bar{x})$. $\dual{f}$
is, $P = \set{\set{a, b}, \set{a, c}, \set{b, c}}$. Let $Q = \set{\set{a, b, is the function we get if we swap and with or. Note that $\dual{f}$ corresponds
c}}$. Note that both quorum systems are coteries. $P$ dominates $Q$. To see to the sets that intersect every set in $f$. We say a monotone function $f$
this, we first confirm that $P \neq Q$. Next, we consider every $q \in Q$ and is \defword{dual-minor} if $f \leq \dual{f}$, \defword{dual-major} if $f \geq
find a corresponding $p \in P$ where $p \subseteq q$. Here, we only have one \dual{f}$, and \defword{self-dual} if $f = \dual{f}$. A function $f$
choice for $q$ (i.e. $q = \set{a, b, c}$), and for every $p \in P$, $p corresponds to a quorum system if and only if $f$ is dual-minor. A quorum
\subseteq q$. system $Q$ is non-dominated if and only if $f_Q$ is self-dual. Every
\end{example} non-dominated coterie can be represented as a composition of the simple
majority function (with duplicates). Every coterie can be represented by a
There is an intuitive way to think about non-dominated coteries. A coterie $Q$ composition of and, or, and majority. \cite{ibaraki1993theory} also talks about
is non-dominated if (1) removing any element from any quorum would make $Q$ no when a function can be decomposed without duplicates as well as other things
longer a coterie and (2) there are no other quorums that we can add to $Q$ involving decomposition. \cite{neilsen1991general} talks about composition as
while preserving the fact that $Q$ is a coterie. Here's why. (1) Assume for well, and even includes examples for things like grids and trees.
contradiction that we remove some element from some quorum in $Q$ to
form a new coterie $P$. $P$ dominates $Q$ in the obvious way, but $Q$ is
non-dominated. (2) Assume for contradiction that we add some quorum to $Q$ to
form a new coterie $P$. Again, $P$ dominates $Q$ in the obvious way, but $Q$ is
non-dominated. Intuitively, a non-dominated coterie is a maximal coterie (we
cannot add any more quorums) with minimal quorums (we cannot remove any
elements from any quorums).
\NOTE[michael]{%
I think domination will be an important property for recursive quorum
systems. I think there are some quorum systems that we cannot form as a
recursive quorum system, but we can form a recursive quorum system that
dominates it. The definition of domination that I found is only defined on
coteries. Can we define this without coteries? I think so, but we have to
double check.
}
Let $\sigma: Q \to [0, 1]$ be a discrete probability distribution over the Let $\sigma: Q \to [0, 1]$ be a discrete probability distribution over the
quorums of $Q$ (i.e., $\sum_{q \in Q} \sigma(q) = 1$). We call $\sigma$ a quorums of $Q$ (i.e., $\sum_{q \in Q} \sigma(q) = 1$). We call $\sigma$ a
@ -78,6 +68,11 @@ higher the throughput it can support.
which is optimal. which is optimal.
\end{example} \end{example}
\cite{naor1998load} prove that if a quorum system dominates another, it has
lower or equal load. This shows that there always is a non-dominated coterie
that has the lowest possible load. If we're trying to optimize for load, this
tells us that we limit ourselves to non-dominated coteries.
The \defword{resilience} or \defword{fault tolerance} of a quorum system $Q$ is The \defword{resilience} or \defword{fault tolerance} of a quorum system $Q$ is
the largest number $f$ such that for every subset $F \subseteq X$ with $|F| = the largest number $f$ such that for every subset $F \subseteq X$ with $|F| =
f$, there still exists some quorum $q \in Q$ such that $q \cap F = \emptyset$. f$, there still exists some quorum $q \in Q$ such that $q \cap F = \emptyset$.