1: \documentclass[11pt]{article}
2: \usepackage{a4}
3: \usepackage{cite}
4: \usepackage{graphicx}
5: \usepackage{amssymb}
6: \usepackage{algorithmicx}
7: \usepackage{algpseudocode}
8: \usepackage[ruled]{algorithm}
9: \renewcommand{\algorithmiccomment}[1]{\hspace*{4mm}{\em //~#1}}
10:
11:
12: \bibliographystyle{abbrv}
13:
14: \newtheorem{definition}{Definition}
15: \newtheorem{theorem}{Theorem}
16: \newtheorem{lemma}{Lemma}
17: \newtheorem{claim}{Claim}
18:
19: \def\QED{\ifvmode\vskip-\lastskip\nobreak\leavevmode\fi\hbox{}\hskip1cm plus 1fill\hbox{}\nobreak\hskip0cm plus1fill\nobreak$\Box$}
20: \newenvironment{proof}{{\em Proof:}~ }{\QED \vskip 2mm}
21: \newenvironment{proofsk}{{\em Sketch of the proof:}~ }{\QED \vskip 2mm}
22:
23:
24: \newcommand{\bm}[1]{\mbox{\boldmath{$#1$}}}
25:
26: \newcounter{pako}
27:
28: \def\setnumber#1#2{\expandafter\ifx\csname r@#2\endcsname\relax\else\setcounter{#1}{-1}\addtocounter{#1}{\ref{#2}}\fi}
29:
30: \begin{document}
31: \title{Rapid Almost-Complete Broadcasting in Faulty Networks\thanks{The research has been
32: supported by grant APVV-0433-06.}}
33:
34: \author{Rastislav Kr\'alovi\v{c}\footnotemark[3] \and Richard Kr\'alovi\v{c}\footnotemark[3] \footnotemark[4]\and \\[2mm]
35: \footnotemark[3] Department of Computer Science, Comenius University,\\
36: Mlynsk\'a dolina, 84248 Bratislava, Slovakia.
37: \\[2mm]
38: \footnotemark[4] Department of Computer Science, ETH Zurich, Switzerland.
39: }
40:
41: \maketitle
42:
43: \begin{abstract}
44: This paper studies the problem of broadcasting in synchronous point-to-point networks, where one
45: initiator owns a piece of information that has to be transmitted to all other vertices as fast as possible.
46: The model of fractional dynamic
47: faults with threshold is considered: in every step either a fixed number $T$, or
48: a fraction $\alpha$, of sent messages can be lost depending on which quantity is larger.
49:
50: As the main result we show that in complete graphs and hypercubes it is possible to inform all
51: but a constant number of vertices, exhibiting only a logarithmic slowdown, i.e. in time $O(D\log n)$
52: where $D$ is the diameter of the network and $n$ is the number of vertices.
53:
54: Moreover, for complete graphs under some additional conditions
55: (sense of direction, or $\alpha<0.55$)
56: the remaining constant number of vertices can be informed in the same time, i.e. $O(\log n)$.
57: \end{abstract}
58:
59: \section{Introduction}
60:
61: Fault tolerance has been a crucial issue in the distributed computing since its
62: beginnings \cite{B73,D74,BH86,ChM84,LPS80,FLP85}.
63: Because a typical distributed system is designed to contain a large number of individual components,
64: attention must be paid to the fact that, even if the failure probability of a single component is negligible,
65: the probability that some components fail may be high.
66: There are numerous ways how to cope with failures, using either
67: probabilistic or deterministic approaches. In the probabilistic setting, it is supposed that
68: a failure probability of each component follows some probability
69: distribution \cite{BDP97,CDP91,DP92,P91,PP05}.
70: Failures of individual
71: components are usually assumed to be independent random events. The goal is to design
72: algorithms and protocols that perform well with high probability if the failures follow the
73: conjectured distribution.
74:
75: The deterministic approach, which is pursued also in this paper, copes with failures in a different way.
76: Instead of considering a failure probability distribution for each individual component,
77: algorithms and protocols are designed to perform well in the worst case, under some a-priori constraints on the
78: failure behavior.
79: \cite{CDP94,DV99,DV04,LN00,F92,BH94,AGHK96,GP98,KKR03,DKKS06,SW90}.
80: These constraints may take the form of considering only computations with
81: a limited overall number of faults \cite{F92,AGHK96},
82: limited number of faults during any single computation step
83: \cite{DV99,DV04,LN00,CDP94,SW90},
84: or during any window of first $t$ steps \cite{GP98}, requiring that after some finite time there is a
85: long enough fault-free computation \cite{D74, D00} etc.
86: While the probabilistic model is analyzed with respect to the expected behavior,
87: the deterministic models have been mostly analyzed for the worst case scenario.
88:
89: We shall focus our attention on synchronous point-to-point distributed systems, i.e. systems
90: in which the communication is performed by sending messages along links connecting pairs of vertices.
91: Moreover, the vertices are synchronized by a common clock, and the delivery of every message
92: takes exactly one time unit. This model has been widely considered
93: \cite{CDP94,DV99,DV04,LN00,GP98,KKR03,DKKS06,CDP91,P91,PP05,SW90} not only for its
94: theoretical appeal, but for its practical relevance as well (e.g. many wireless networking
95: standards, like IEEE 802.11, or GSM, operate in discrete time steps). We shall consider
96: only one type of failures: {\em message loss}.
97:
98: The oldest deterministic model of faults considered in this setting is the static
99: model \cite{AGHK96,BH86}, in which it is assumed
100: that at most a fixed constant number $k$ of messages may be lost in every
101: step, and moreover, the failures are always located
102: on the same links. Later, other models have been considered, too, like the dynamic
103: model \cite{DV99,DV04,LN00,CDP94,SW90} in which the $k$ failures may be
104: located on arbitrary links in every step, linearly bounded faults \cite{GP98},
105: fractional faults \cite{KKR03}, etc.
106:
107: We continue in the analysis of the {\em fractional model with threshold} from
108: \cite{DKKS06}. Here, the number of messages lost in one time step is
109: bounded by the maximum of a fixed threshold $T$ and a fixed fraction $\alpha$
110: of sent messages. This restriction implies that if, in a given step, fewer than $T$ messages
111: are sent they may all be lost. On the other hand,
112: if there are many messages sent, at least a fixed fraction
113: $1-\alpha$ of them is delivered. The threshold $T$ is always assumed to be
114: one less than the edge connectivity,
115: since this is the largest value under which the network stays connected. This model has been developed
116: in order to avoid some unrealistic special cases of static and dynamic models (the number of faults
117: is independent on the actual network traffic), as well as those of fractional model (if just one
118: message is being sent, its delivery is always guaranteed).
119:
120: The broadcasting problem is a crucial communication task in the study of distributed systems
121: (e.g. \cite{HHL88}).
122: One vertex, called initiator, has a piece of information that has to be distributed among
123: all remaining vertices. The broadcasting has not only been used as a test-bed application for the study
124: of the complexity of communication in various communication models, but has served as a
125: building stone of many applications (e.g. \cite{SAA98}) as well.
126:
127: We analyze the broadcasting in complete graphs and hypercubes. The broadcasting time in these graphs has been
128: studied in the static \cite{F92},
129: dynamic \cite{DV04,DV99,LN00}, and simple threshold \cite{DKKS06}\footnote{
130: If the number of messages sent in a given time step is less than the edge
131: connectivity $c(G)$ in the simple threshold model, all of them may be lost.
132: Otherwise at least one of them is delivered.
133: }
134: models, and the results are summarized in Table~\ref{tab:results}.
135:
136: \begin{table}[htb]
137: \label{tab:results}
138: {\small
139: \begin{center}\begin{tabular}{|l|l|l|l|}\hline
140: Model & $K_n$, chordal & $K_n$ & $Q_d$, $n=2^d$ \\
141: & sense of direction & unoriented & \\\hline
142: static & $\Theta(1)$ & $\Theta(1)$ & $d+1$ \cite{F92}\\
143: dynamic & $\Theta(1)$ & $\Theta(1)$ \cite{LN00}& $d+2$ \cite{DV99} \\
144: fractional & $\Theta(\log n)$ & $\Theta(\log n)$ \cite{KKR03} & $O(d^3)$ \cite{KKR03}\\
145: simple threshold & $\Omega(n)$, $O(n^2)$ \cite{DKKS06}& $\Omega(n^2)$, $O(n^3)$ \cite{DKKS06} & $O(n^4d^2)$ \cite{DKKS06}
146: \\\hline
147: \end{tabular}\end{center}
148: }
149: \caption{Known time complexities of the complete broadcasting in various models.}
150: \end{table}
151:
152: \begin{table}[htb]
153: \label{tab:results-fraction-threshold}
154: {\small
155: \begin{center}\begin{tabular}{|l|l|l|}\hline
156: Scenario & Almost complete & Complete \\
157: & broadcasting & broadcasting \\
158: \hline
159: $K_n$, unoriented & $O(\log n)$ & $\Omega(\log n)$ \cite{KKR03}, $O(n^3)$ \cite{DKKS06}\\
160: $K_n$, chordal sense of direction & $O(\log n)$ & $\Omega(\log n)$ \cite{KKR03}, $O(\log n)$ \\
161: $K_n$, $\alpha<0.55$ & $O(\log n)$ & $\Omega(\log n)$ \cite{KKR03}, $O(\log n)$ \\
162: $Q_d$ & $O(d^2)$ & $\Omega(d)$, $O(n^4d^2)$ \cite{DKKS06} \\
163: \hline
164: \end{tabular}\end{center}
165: }
166: \caption{Results for the complete and almost complete broadcasting in the
167: fractional model with threshold.}
168: \end{table}
169:
170:
171:
172: We address a natural relaxation of the broadcasting problem in which we allow
173: a small constant number of vertices to stay uninformed in the end (a problem called
174: {\em almost complete broadcasting}), and analyze the worst case time needed to solve
175: the problem. Our main motivation to study almost complete broadcasts is the fact that in
176: large faulty networks it is often
177: vital to finish a communication task fast, even subject to some small error. In the
178: probabilistic setting, this is modelled by allowing a failure probability
179: that tends to zero with increasing network size: in the worst case the task is not successful but this
180: worst case scenario has a small probability.
181: Since in our deterministic setting we study the worst case, another
182: model of allowed error must be chosen. If we look at the broadcast as an optimization problem
183: where the task is to inform as many vertices as possible, it is natural to introduce
184: a constant additive error by allowing a constant number of vertices to stay uninformed\footnote{so that the
185: uninformed vertices comprise at most an $O(1/n)$ fraction
186: of all vertices}.
187:
188:
189: For complete graphs and hypercubes, we show that the problem can be solved
190: in time $O(D\log n)$, where $D$ is the diameter of the graph and $n$ is the number of its nodes.
191:
192: Moreover, we show that if the complete graph is equipped with the chordal sense of direction, complete
193: broadcasting can be performed in time $O(\log n)$. This is asymptotically optimal since the broadcasting time in
194: the fractional model is a lower bound for the fractional model with
195: threshold. Similarly we show that the broadcasting can be completed in time
196: $O(\log n)$ for values $\alpha<0.55$. The overview of the results can be found in
197: Table~\ref{tab:results-fraction-threshold}.
198:
199:
200:
201: \section{Definitions}
202:
203: We consider a synchronous, point-to-point distributed system with a coordinated start-up.
204: The system consists of a number of nodes and a number of communication links connecting some pairs of nodes.
205: The system is modelled by an undirected graph, in which vertices correspond to nodes and edges correspond
206: to communication links. In this respect, we shall use the terms ``node'' and ``vertex'' interchangeably.
207: Sometimes we need to argue about outgoing and incoming links; in this cases we consider a directed
208: graph obtained from the undirected one by replacing each edge by two opposite arcs.
209:
210: At the beginning of the computation all nodes are active and start performing the given protocol.
211: The computation consists of a number of steps: at the beginning of each step, messages sent during
212: the previous step are delivered to their destinations, then each vertex performs some
213: local computation, possibly sending some messages\footnote{
214: i.e. a vertex may send different message to each of its neighbors in one step}, and the next step begins.
215:
216: The failure model we consider is the {\em fractional dynamic
217: faults with threshold} from \cite{DKKS06}, which can be described as a game between the
218: algorithm and an adversary: in a time step $t$ the algorithm sends
219: $m_t$ messages and the adversary may destroy up to
220: $$F(m_t) = \ \max\{c(G)-1,\lfloor\alpha\ m_t \rfloor\}$$
221: of them, where $c(G)$ is the edge connectivity of the
222: graph and $\alpha$ is a known, fixed constant $0<\alpha<1$. There is no built-in mechanism
223: of acknowledgements, so the sender node is not informed whether a particular message was delivered
224: or destroyed.
225:
226: We consider the problem of broadcasting, where an initiator has a piece of information to
227: be transmitted to all remaining vertices. We call a broadcast {\em complete} if all vertices have the information after
228: the termination of the algorithm. A broadcast is called {\em almost-complete}
229: if there is a fixed constant $c$ (independent on the network size)
230: such that after the termination there are at most $c$ uninformed
231: vertices. Hence, to prove the existence of an almost-complete broadcasting algorithm for
232: a family of graphs ${\cal G}$, one has to prove
233: that there exists a constant $c$ such that for each $G\in{\cal G}$ the broadcasting algorithm
234: informs all but $c$ vertices of $G$.
235:
236:
237: In all presented algorithms only the informed vertices send
238: messages. Arcs (i.e. directed edges)
239: leading from an informed vertex can be classified as being either active,
240: passive or hyperactive during the computation:
241:
242: \begin{definition}
243: Let $e$ be an arc leading from an informed vertex. We call $e$ {\em active} if it leads to
244: an uninformed vertex.
245: We call an arc $e$ {\em passive}, if some message has been delivered via the
246: opposite arc of $e$.
247: Finally, we call an arc $e$ {\em hyperactive} if it leads to an informed vertex, and is not passive.
248: \end{definition}
249:
250: If the arc $e$ is passive, the source vertex of $e$ is aware of the
251: fact that the destination vertex of $e$ has already been informed.
252: The main idea of our algorithms is to perform appropriate number of {\em
253: simple rounds} defined as follows:
254:
255: \begin{definition}
256: A {\em simple round} consists of two time steps. In the first step, every
257: informed vertex sends a message along each of its incident arcs, excluding the passive
258: ones.\footnote{In this step, a message is sent via all active and
259: hyperactive arcs. The former can inform new vertices, the latter exhibit
260: only useless activity. However, the algorithm can not distinguish between
261: active and hyperactive arcs.} In the second step, all vertices that have
262: received a message send an acknowledgement (and mark the arc as passive).
263: Vertices that receive acknowledgement mark the corresponding arc as
264: passive.
265: \end{definition}
266:
267: For the remainder of this paper, let $0<\alpha<1$ be a known fixed constant, and
268: let us denote $$X:=\frac{1}{\alpha(1-\alpha)}$$
269:
270: The rest of the paper is organized as follows. In the next two sections we present algorithms for
271: the almost-complete broadcasting on complete graphs and hypercubes, respectively, that run in
272: time $O(D\log n)$. Then we show how
273: to obtain broadcast in complete graphs equipped with chordal sense of direction, and for unoriented complete
274: graphs for $\alpha<0.55$, having the same time complexity.
275:
276: Some technical parts have been omitted from this paper, and can be found
277: in the appendix.
278:
279: \section{Complete Graphs}
280: \label{sec:complete}
281:
282: In a complete graph $K_n$, all $n$ vertices have degree $n-1$, and $n-1$ is also the edge connectivity.
283: Hence, in each step $t$ the adversary can destroy up to $\max\{n-2,\lfloor\alpha m_t\rfloor\}$ messages, where $m_t$ is
284: the number of messages sent in the step $t$. In this section we present an algorithm that
285: informs all but a constant number of vertices in logarithmic time. The idea of the algorithm
286: is very straightforward -- just repeat simple rounds sufficiently many times. However, the arguments
287: given in the analysis of a simple round below hold only if there are enough informed vertices participating
288: in the round. To satisfy this requirement two steps of a simple greedy algorithm are performed, during
289: which each informed vertex just sends the message to all vertices. After two steps of this algorithm,
290: the number of informed vertices is as shown in Lemma~\ref{lm:grd}.
291:
292: \begin{lemma}
293: \label{lm:grd}
294: After two steps of the greedy algorithm, at least
295: $$1+\min\left\{\frac{n}{2},(n-1)(1-\alpha)\right\}$$
296: vertices are informed.
297: \end{lemma}
298:
299: After these two steps, the algorithm performs a logarithmic number of simple rounds. To show that logarithmic
300: number of simple rounds is sufficient to inform all but one vertex we first
301: provide a lower bound on the number of
302: acknowledgements delivered in each round, and then we show that each delivered acknowledgement
303: decreases a certain measure function.
304:
305:
306: \begin{theorem}
307: \label{thm:AlmostBroadcast-Kn}
308: Let $\varepsilon>1$ be an arbitrary constant.
309: For large enough $n$ it is possible to inform all but at most $X\varepsilon$ vertices in logarithmic time.
310: Moreover, the number of remaining hyperactive arcs is at most $X(n-2)$.
311: \end{theorem}
312: \begin{proof}
313: At the beginning, two steps of the greedy algorithm are executed. Then, a
314: logarithmic number of simple rounds is performed.
315: Now consider the situation at the beginning of the $i$-th round. Let $k_i$
316: be the number of uninformed vertices, and $h_i$ the number
317: of hyperactive arcs.
318: We claim that if $k_i>X\varepsilon$ or $h_i>X(n-2)$ then at least $\left[k_i(n-k_i)+h_i\right](1-\alpha)^2$
319: acknowledgements
320: are delivered in this round. Since there are $k_i(n-k_i)+h_i$ messages sent in this round, in order to prove the claim
321: it is sufficient to show that $\alpha(1-\alpha)\left[k_i(n-k_i)+h_i\right]\ge n-2$.
322: Obviously, if $h_i>X(n-2)$ the inequality holds,
323: so consider the case $k_i>X\varepsilon$. We prove that in this case $k_i(n-k_i)\ge X(n-2)$, i.e. $k_i^2-nk_i+X(n-2)\le0$.
324: Let $f(n):=1/2\left(n-\sqrt{n^2-4X(n-2)}\right)$; the roots\footnote{Assume
325: that $n$ is large enough such that $f(n)$ is real number.} of the equation
326: $k_i^2-nk_i+X(n-2)=0$ are $f(n)$ and $n-f(n)$, so we want to show that $f(n)\le
327: k_i\le n-f(n)$.
328: Since $\lim_{n\mapsto\infty}f(n)=X$, we get that $k_i>X\varepsilon>f(n)$ holds for large enough $n$. Hence, the
329: only remaining step is to show the inequality $k_i\le n-f(n)$. From Lemma~\ref{lm:grd} it follows that
330: $n-k_i>\min\left\{n/2,(n-1)(1-\alpha)\right\}$. Since $f(n)<n/2$, if $n-k_i>n/2$ it holds $k_i<n-f(n)$.
331: So let us suppose
332: that $n-k_i>(n-1)(1-\alpha)$, i.e. $k_i<1+\alpha(n-1)$. Let
333: $n\ge\frac{\varepsilon+\alpha(1-\alpha)^2}{\alpha(1-\alpha)^2}$.
334: Then it holds for large enough $n$ that
335: $$k_i< 1+\alpha n-\alpha\le n-\frac{\varepsilon}{\alpha(1-\alpha)}=n-\varepsilon X\le n-f(n).$$
336:
337:
338: We have proved that if $k_i>X\varepsilon$ or $h_i>X(n-2)$ then at least
339: $$\left[k_i(n-k_i)+h_i\right](1-\alpha)^2$$
340: acknowledgements
341: are delivered in round $i$.
342:
343: To conclude the proof we show that after logarithmic number of iterations we get $k_i\le X\varepsilon$ and
344: $h_i\le X(n-2)$.
345: Let $M_i:=2(n-1)k_i+h_i$; then every delivered acknowledgement decreases $M_i$
346: by at least one: indeed, if the acknowledgement
347: was delivered over a hyperactive arc, $h_i$ decreases by 1. If, on the other hand, the acknowledgement was delivered over an
348: active arc, the number of uninformed vertices is decreased by at least
349: one, and the number of hyperactive arcs is increased by
350: at most $2n-3$ (new hyperactive arcs are between the newly informed vertex and any other vertex, with the exception of the
351: arc that delivered the acknowledgement which is passive).
352:
353: From Lemma~\ref{lm:grd} it follows that either $n-k_i>n/2$ or $n-k_i>(n-1)(1-\alpha)$. In the first case it follows
354: that at least $(1-\alpha)^2\left[k_i(n-k_i)+h_i\right]>(1-\alpha)^2\left[k_in/2+h_i\right]\ge\frac{(1-\alpha)^2}{4}M_i$
355: acknowledgements are delivered. In the second case we get that at least
356: $(1-\alpha)^2\left[k_i(n-k_i)+h_i\right]>(1-\alpha)^2\left[k_i(n-1)(1-\alpha)+h_i\right]\ge\frac{(1-\alpha)^3}{2}M_i$
357: acknowledgements are delivered.
358: Let $c:=\min\{\frac{(1-\alpha)^2}{4},\frac{(1-\alpha)^3}{2}\}$, then obviously every iteration decreases the
359: value of $M_i$ at least by factor $c$. Since the value of $M$ at the
360: beginning of the algorithm is $M_1=O(n^2)$, $\log_{1/c}M_1=O(\log
361: n)$ steps are sufficient to inform all but a constant number (at most
362: $X\varepsilon$) of vertices and to ensure that the number of remaining
363: hyperactive arcs is linear (at most $X(n-2)$).
364: \end{proof}
365:
366:
367:
368: \section{Hypercubes}
369:
370: In this section we consider $d$-dimensional hypercubes. The hypercube $Q_d$
371: has $2^d$ vertices, and both diameter and edge connectivity are $d$.
372: We present an algorithm that
373: informs all but a constant number of vertices in time $O(d^2)$.
374:
375: The general idea is the same as for complete graphs: first we perform two initialization steps
376: to make sure there are enough informed vertices for the subsequent analysis to hold. Next, simple rounds
377: are repeated for a sufficient number of times. The analysis, however, is more complicated in this case.
378:
379: The next lemma covers the initialization steps. In the first step, the initiator sends a message to all
380: its neighbors, and at least one of these messages is delivered. In the second step, the initiator sends
381: a message to all its neighbors again; moreover, each of the vertices informed in the first step sends a message
382: to all its neighbors except the initiator.
383:
384: \begin{lemma}
385: \label{lm:Q:firststeps}
386: After the first two steps of the algorithm, at least $\frac{1-\alpha}{2}(2d-1)$ vertices
387: are informed.
388: \end{lemma}
389:
390: \noindent
391: For the rest of this section we suppose that there are at least $\frac{1-\alpha}{2}(2d-1)$ informed vertices.
392: We show that after $O(d^2)$ simple rounds all but some constant number of vertices are informed,
393: and there are only
394: linearly many hyperactive arcs. At the end of this section, we shall be able to prove the
395: following theorem.
396:
397: \begin{theorem}
398: \label{thm:hypercube}
399: Let $\varepsilon\in(0,1)$ be an arbitrary constant. For large enough $d$ it is possible
400: to inform all but at most $X/(1-\varepsilon)$ vertices of $Q_d$ within $O(d^2)$ time steps. Moreover,
401: the number of remaining hyperactive arcs is at most $X(d-1)$.
402: \end{theorem}
403:
404: In our analysis we need to assert that enough acknowledgements are delivered, given the number
405: of informed vertices. To bound the number of sent messages, we
406: rely heavily upon the following isoperimetric inequality due to Chung et.\ al.\cite{C+88}:
407:
408: \begin{claim}{{\rm\bfseries\cite{C+88}}}
409: \label{HypercubeBorder}
410: Let $S$ be a subset of vertices of $Q_d$. The size
411: of the edge boundary of $S$, denoted as $\partial(S)$ is defined as the
412: number of edges connecting $S$ to $Q_d\setminus S$.
413: Let $\partial(k)=\min_{|S|=k}\partial(S)$, and let $\lg$ denote the logarithm of base 2.
414: It holds that
415: $$\partial(k)\ge k(d-\lg k)$$
416: \end{claim}
417:
418:
419:
420:
421:
422:
423:
424: The first step in the analysis is to prove that if there are enough uninformed vertices, or enough
425: hyperactive arcs at the beginning of a round $i$, then sufficiently many acknowledgements
426: are delivered in this round:
427:
428: \begin{lemma}
429: \label{lm:HypercubePass}
430: Consider a $d$-dimensional hypercube with $k$ non-informed vertices and
431: $h$ hyperactive arcs. Let $\varepsilon\in(0,1)$ be an arbitrary constant, and let $k>X/(1-\varepsilon)$ or $h>X(d-1)$.
432: Then in the second step of a simple
433: round at least $\beta(h+\partial(k))$ acknowledgements are delivered,
434: where $\beta=(1-\alpha)^2$.
435: \end{lemma}
436: \begin{proofsk}
437: Let $S$ be the set of informed vertices. In the first step of the round, $h+\partial(S)$ messages are sent.
438: Since the edge boundary of informed and uninformed vertices is the same,
439: at least $h+\partial(k)$ messages are sent
440: in the first step of the round.
441: The idea of the proof is to show that $\alpha(h+\partial(k))\ge d-1$,
442: so in the first step at most $\alpha(h+\partial(k))$ messages are lost,
443: and at least $(1-\alpha)(h+\partial(k))$ of them are delivered. Next we prove that
444: $\alpha(1-\alpha)(h+\partial(k))\ge d-1$,
445: so in the second step at least $(1-\alpha)^2(h+\partial(k))$ messages are delivered. Since $1-\alpha<1$, it is sufficient
446: to prove that $\alpha(1-\alpha)(h+\partial(k))\ge d-1$.
447: If $h>X(d-1)$ then clearly $h+\partial(k)\ge X(d-1)$ and the statement holds.
448: Hence, the main goal of the proof is to show that for $k>X/(1-\varepsilon)$,
449: it holds $\partial(k)\ge X(d-1)$. To do so, the inequality
450: $2^d-k\ge \frac{1-\alpha}{2}(2d-1)$, which is granted by Lemma
451: \ref{lm:Q:firststeps}, is used.
452: \end{proofsk}
453:
454: In the rest of the proof of Theorem~\ref{thm:hypercube} we show that $O(d^2)$ simple rounds are sufficient to
455: inform almost all vertices. The analysis is divided into two parts. In the first part we prove that within $O(d^2)$
456: rounds at least $2^d/3$ vertices are informed. In the second part we show that another $O(d^2)$ rounds
457: are sufficient to finish the algorithm.
458:
459: \begin{lemma}
460: \label{lm:Q:part:I}
461: After performing $O(d^2)$ simple rounds on $Q_d$ at
462: least $2^d/3$ vertices are informed.
463: \end{lemma}
464: \begin{proofsk}
465: Let $l:=2^d-k$ be the number of informed vertices.
466: From Lemma~\ref{lm:HypercubePass} it follows that at least $\beta \partial(k)$
467: acknowledgements are delivered in one simple round. Since the edge boundary of informed
468: vertices is also the boundary of uninformed vertices, the number of delivered acknowledgements
469: is at least $\beta \partial(l)$. Furthermore, every delivered acknowledgement adds one passive arc,
470: so the number of passive arcs grows at least by $\beta \partial(l)$ each round, which
471: we show to be at least a factor of $\left(1+\frac{1}{\frac{d}{\beta\lg 3}}\right)$.
472: Because the number of passive arcs cannot grow over $d2^d/3$ without informing at least $2^d/3$
473: vertices, we get the statement of the lemma.
474: \end{proofsk}
475:
476: \begin{lemma}
477: \label{lm:Q:part:II}
478: Let $\varepsilon\in(0,1)$ be an arbitrary constant, and let
479: $k_i\le(2/3)2^d$ be the number of uninformed vertices and $h_i$ the number
480: of hyperactive arcs of an $d$-dimensional hypercube at the beginning of round $i$.
481: Then after $O(d^2)$ simple
482: rounds there are at most
483: $X/(1-\varepsilon)$ uninformed vertices and at most $X(d-1)$ hyperactive arcs.
484: \end{lemma}
485: \begin{proofsk}
486: Similarly to the proof of Theorem \ref{thm:AlmostBroadcast-Kn}, let us
487: consider the measure $M_i:=2dk_i+h_i$ which decreases
488: with every acknowledgement delivered. We show that as long as the
489: requirements of Lemma~\ref{lm:HypercubePass} hold, $M_i$ decreases
490: in each round by a factor $\left(1+\frac{\beta\lg (2/3)}{d}\right)$.
491: Since $M_i\le(5/3)d2^d$, we get the statement of the lemma.
492: \end{proofsk}
493:
494: Combining Lemma~\ref{lm:Q:firststeps} with Lemma~\ref{lm:Q:part:I} and Lemma~\ref{lm:Q:part:II}
495: completes the proof of Theorem~\ref{thm:hypercube}.
496:
497:
498: \section{Complete Broadcast in Complete Graphs}
499:
500: In Section~\ref{sec:complete} we have shown how to inform all but some constant number
501: of vertices in a complete graph $K_n$ in time $O(\log n)$. A natural question
502: is to ask if it is possible to inform also the remaining vertices in the same
503: time complexity. In this section we partially answer this question. In particular,
504: we show in the following subsection
505: that if the graph is equipped with a chordal sense of direction, then the
506: complete broadcasting can be performed in time $O(\log n)$. In the subsequent
507: subsection, we show that if the constant $\alpha<0.55$, complete broadcast can be
508: performed in time $O(\log n)$ without the sense of direction, too.
509:
510:
511: \subsection{Chordal Sense of Direction}
512:
513: \begin{figure}[htb]
514: \centerline{\includegraphics[width=4cm]{sod-0.pdf}}
515: \caption{$K_5$ with the chordal sense of direction}
516: \label{fig:sod}
517: \end{figure}
518:
519: Let us consider a complete graph with a fixed Hamiltonian cycle $\cal C$ (unknown to the vertices).
520: We say that the complete graph has a chordal sense of direction if in every
521: vertex the incident arcs are labeled by the clockwise distance on $\cal C$ (see
522: Figure~\ref{fig:sod}). The notion of a sense of direction has been defined
523: formally for general graphs, and it has been known to significantly
524: reduce the complexity of many distributed tasks (e.g. \cite{F+97,F+98}).
525:
526: We show how to perform a complete broadcast on
527: a complete graph with the sense of direction in time $O(\log n)$. The process consists of three steps.
528: First, using Theorem~\ref{thm:AlmostBroadcast-Kn}, all but a constant
529: number of vertices are informed. In the second phase the information is delivered to all but one
530: vertex. In the last phase the remaining single vertex is informed.
531:
532: The sense of direction is essential to our algorithm. Since there
533: is a unique initiator of the broadcasting, all vertices can derive unique
534: identifiers defined as their distance on $\cal C$ from the initiator. Furthermore, the
535: sense of direction allows each vertex to know the identifier of a
536: destination vertex of any of its incident arcs.
537:
538: \begin{lemma}
539: \label{lm:AllButOne-Kn}
540: It is possible to inform all vertices but one on complete graphs with chordal
541: sense of direction in time $O(\log n)$. Furthermore, after finishing the
542: algorithm vertex $0$ or vertex $1$ knows a constant number of candidates
543: for the uninformed vertex.
544: \end{lemma}
545: \begin{proof}
546: The outline of the algorithm is as follows: At first the algorithm from
547: Theorem \ref{thm:AlmostBroadcast-Kn} is performed, which ensures that all but
548: a constant number of vertices are informed. Afterwards a significant group
549: of vertices negotiate a common set $U$ of {\em candidates} for uninformed
550: vertices, such that all uninformed vertices are in $U$ and the size of $U$
551: is constant. The vertices then cooperate to inform all vertices in $U$ but
552: one. As a side effect, the set $U$ will be known to vertex $0$ or vertex
553: $1$, hence satisfying the second claim of the lemma.
554: Now we present this algorithm in more detail:
555:
556: \begin{description}
557: \item[Phase 1] Run the algorithm from Theorem \ref{thm:AlmostBroadcast-Kn}.
558: This phase takes $O(\log n)$ time and ensures that there are at most
559: $X\varepsilon$ uninformed vertices and at most $X(n-2)$ hyperactive arcs.
560:
561: \item[Phase 2] Each vertex $v$ that has at most $3X(1+\varepsilon)$ non-passive
562: (i.e.\ active or hyperactive) links leading to the set of vertices
563: $U_v$ sends a message containing $U_v$ to vertices with number $0$ and $1$.
564:
565: Now we show that at least one of these messages is delivered. It is easy to see
566: that there are at least $2n/3$ vertices satisfying the above-mentioned condition,
567: otherwise there would be more than $n/3$ vertices with at least
568: $3X(1+\varepsilon)$ non-passive links, so there would be more than
569: $nX(1+\varepsilon)$ active or hyperactive arcs. But since the number of
570: uninformed vertices is at most $k\le X\varepsilon\le n/2$ for large $n$, there
571: are $k(n-k)\le X\varepsilon(n-X\varepsilon)$ active arcs. So the total number of
572: active or hyperactive arcs is at most $X\varepsilon(n-X\varepsilon)+X(n-2)\le
573: Xn(1+\varepsilon)$, which is a contradiction.
574:
575: The rest of the algorithm will be time-multiplexed into two parts. In even time
576: steps, the case that the vertex $0$ received a message in phase 2 is
577: processed. In odd time steps, the case that the vertex $1$ received a
578: message is processed analogously. Hence, we can restrict to the first case
579: in the rest of the algorithm description. As there are only two cases the
580: asymptotic complexity of the algorithm is unaffected by the multiplexing.
581:
582: \item[Phase 3] The vertex $0$ received at least one message containing a
583: set of possibly uninformed vertices. It is obvious that the set of
584: uninformed vertices is a subset of every received message. Hence the
585: set $U$ can be defined as the intersection of the received messages:
586: Indeed, every uninformed vertex is in $U$ and the size of $U$ is at most
587: $3X(1+\varepsilon)=O(1)$. The set $U$ is then distributed using the algorithm in
588: Theorem \ref{thm:AlmostBroadcast-Kn} among at least $n-X\varepsilon$ vertices in
589: time $O(\log n)$.
590:
591: \item[Phase 4] There are at least $n-X\varepsilon$ vertices aware of the set
592: $U$. In this phase they cooperate to inform all but one vertex in $U$,
593: using an idea similar to Lemma 2 in \cite{DKKS06}: every vertex aware of
594: the set $U$ iterates through all pairs $[i,j]$ ($i,j\in U$) in
595: lexicographical order; in each time step it sends the original message
596: to both vertices $i$ and $j$. Since in each time step at least $2n-X\varepsilon$
597: messages are sent, at least one of them is delivered (for large enough
598: $n$). As all vertices process the same pair $[i,j]$ in every time step,
599: this ensures that a new vertex is informed whenever both $i$ and $j$ were
600: uninformed. Hence, at the end of this phase all vertices but one are
601: informed. The time complexity of this phase is $O(|U|^2)=O(1)$.
602: \end{description}
603:
604: It is obvious that after finishing the Phase 4 the claim of the Lemma
605: holds.
606: \end{proof}
607:
608: Finally, we show how to inform the last remaining vertex, thus proving
609: the following theorem:
610:
611: \begin{theorem}
612: \label{thm:K:sod}
613: It is possible to perform broadcasting on complete graphs with chordal
614: sense of direction in time $O(\log n)$.
615: \end{theorem}
616: \begin{proofsk}
617: Suppose that after performing the algorithm from Lemma \ref{lm:AllButOne-Kn}
618: all vertices with the exception of some vertex $v$ are informed and
619: vertex $0$ knows a set $U$ of constant size containing
620: candidates for $v$. The algorithm from Lemma \ref{lm:AllButOne-Kn}
621: is used again to broadcast $U$ with two possible outcomes: either
622: $v$ was informed during the broadcast, or all other vertices have the same set of
623: candidates, which they try to inform one by one.
624: \end{proofsk}
625:
626: \subsection{Without Sense of Direction}
627:
628: As a last result in this paper we show that it is possible to perform broadcasting on
629: complete graphs
630: in time $O(\log n)$ for small values of $\alpha$ (i.e. $\alpha\lesssim
631: 0.55$) even without the sense of direction. The idea is to use the
632: algorithm from Theorem \ref{thm:AlmostBroadcast-Kn} to inform all but constantly many
633: vertices. Next, instead of repeating 2-step simple rounds, some $\log n$-step extended rounds
634: are repeated, such that each extended round informs a yet uninformed vertex. During an extended round
635: messages are sent for $O(\log n)$ steps in such a way that
636: in every step the number of hyperactive arcs
637: is decreased by some factor\footnote{in this part we need the assumption
638: that $\alpha$ is small enough} unless a new vertex is informed.
639:
640:
641: \begin{theorem}
642: \label{thm:K:nosod}
643: Let $1-\alpha-2\alpha^2+\alpha^3>0$. Then it is possible to perform
644: broadcasting on complete graphs without sense of direction in time $O(\log
645: n)$.
646: \end{theorem}
647: \begin{proof}
648: The algorithm is described as Algorithm \ref{alg:complete}.
649:
650: \begin{algorithm}
651: \caption{Complete graphs without sense of direction}
652: \label{alg:complete}
653: \begin{algorithmic}[1]
654: \State perform almost-complete broadcast according to Theorem \ref{thm:AlmostBroadcast-Kn}
655: \State let $k$ denote the number of uninformed vertices, let $h$ denote the number of hyperactive arcs
656: \Loop{} $L_1$ times \label{alg:complete-L1}
657: \Comment{Perform $L_1$ extended rounds}
658: \Loop{} $L_2(n)$ times \label{alg:complete-L2}
659: \Comment{In each iteration $h$ decreases by a constant factor}
660: \State $E:=\mbox{set of all currently active or hyperactive arcs}$; $P:=\emptyset$
661: \label{alg:complete-set}
662: \Loop{} $L_3$ times \label{alg:complete-L3}
663: \State send the message via all arcs in $E\cup P$ \label{alg:complete-send}
664: \State $P:=P\cup \left\{e \mid \begin{array}{l}\mbox{a message has been
665: delivered in this step}\\\mbox{via the opposite arc of $e$}\end{array}\right\}$
666: \label{alg:complete-receive}
667: \EndLoop \label{alg:complete-L3E}
668: \EndLoop \label{alg:complete-L2E}
669: \Loop{} $L_4(n)$ times \label{alg:complete-L4}
670: \Comment{Inform new vertex and decrease $a$}
671: \State perform one simple round
672: \EndLoop \label{alg:complete-L4E}
673: \EndLoop \label{alg:complete-L1E}
674: \end{algorithmic}
675: The values of $L_1$, $L_2(n)$, $L_3$ and $L_4(n)$ are specified in the
676: analysis of the algorithm, such that $L_1,L_3=O(1)$ and $L_2(n),
677: L_4(n)=O(\log n)$.
678: \end{algorithm}
679:
680: At first, the algorithm from Theorem \ref{thm:AlmostBroadcast-Kn} is performed,
681: ensuring that there are at most $k\le X\varepsilon$ uninformed vertices
682: and at most $h\le X(n-2)$ hyperactive arcs ($X$ and $\varepsilon$ have the
683: same meaning as in Theorem \ref{thm:AlmostBroadcast-Kn}). The purpose of one
684: iteration of the loop on lines \ref{alg:complete-L1}--\ref{alg:complete-L1E} is to
685: inform at least one uninformed vertex. Taking $L_1:=X\varepsilon=O(1)$
686: ensures that all vertices will be informed.
687:
688: The loop on lines \ref{alg:complete-L2}--\ref{alg:complete-L2E} reduces
689: the number of hyperactive arcs to zero unless a new vertex is informed. One
690: iteration of this loop either informs a new vertex or reduces the number of
691: hyperactive arcs from $h$ to $(1-Y/2)h$, where $0<Y<1$ is a constant
692: (depending on $\alpha$) defined later. Hence the number of hyperactive arcs
693: decreases exponentially with number of iterations of the loop and
694: $\log_{1/(1-Y/2)}h$ iterations are sufficient to eliminate all hyperactive arcs.
695: Since the condition $h\le X(n-2)$ holds before every execution of the loop
696: (this is provided either directly by Theorem \ref{thm:AlmostBroadcast-Kn} or
697: by the loop on lines \ref{alg:complete-L4}--\ref{alg:complete-L4E}), we can
698: define $L_2:=\log_{1/(1-Y/2)}(X(n-2))=O(\log n)$.
699:
700: Now we describe one iteration of the loop on lines
701: \ref{alg:complete-L2}--\ref{alg:complete-L2E}.
702: We distinguish two types of arcs that are hyperactive at the beginning of
703: the considered iteration: An arc $e$ is a {\em single hyperactive
704: arc} if and only it is hyperactive and the opposite arc of $e$ is passive
705: at the beginning of the iteration. Otherwise (i.e.\
706: if both $e$ and the opposite arc of $e$ are hyperactive at the beginning of
707: the iteration), $e$ is a {\em double hyperactive arc}.
708:
709: Let $E$ be the set of all active or hyperactive arcs at the beginning of
710: the iteration, and $P$ be the set of all arcs opposite to arcs through which
711: some message has been delivered in the current iteration. Furthermore, let
712: $k'$ be the number of uninformed vertices at the beginning of the current
713: iteration, $h'$ be the number of hyperactive arcs at the beginning of the
714: current iteration and $p=|P\setminus E|$ be number of arcs in $P$ that were passive at the
715: beginning of the current iteration. It clearly
716: holds that $|E|=k'(n-k')+h'$ and that $k'(n-k')+h'+p$ messages
717: are sent on every execution of line \ref{alg:complete-send}. Since at least
718: $n-1$ messages are lost (because we may assume that no new vertex is
719: informed), at most $\alpha(k'(n-k')+h'+p)$ of them are lost, i.e. at
720: least $(1-\alpha)(k'(n-k')+h'+p)$ are delivered.
721:
722: Now assume by contradiction that the number of hyperactive arcs does not
723: decrease below $(1-Y/2)h'$, and no new vertices are informed during the
724: current iteration of the loop on lines
725: \ref{alg:complete-L2}--\ref{alg:complete-L2E}. Consider any message
726: delivered over an arc $e$ which is a double hyperactive arc or an arc in
727: $P\setminus E$; it is easy to see that the opposite arc of $e$ is passive after the
728: delivery and that it was hyperactive at the beginning of the iteration. This fact yields that at most $(Y/2)h'$ messages are
729: delivered over a double hyperactive arc or an arc in $P\setminus E$ on any execution
730: of line \ref{alg:complete-send}.
731:
732: Now we show a lower bound on the number of messages that pass over double
733: hyperactive arcs or arcs in $P\setminus E$ or single hyperactive arcs whose opposite
734: arcs are not in $P\setminus E$. Intuitively, every such message ensures some progress of the
735: algorithm, since either an arc is made passive (in the first two cases) or
736: a new arc is added to $P\setminus E$ (in the third case). As no messages
737: passes over active arcs by our assumption, and at most $p$ messages pass
738: over single hyperactive arcs whose opposite arcs are in $P\setminus E$, there are at
739: least $(1-\alpha)(k'(n-k')+h'+p)-p$ messages satisfying one of these
740: three cases. Using the inequalities $k'(n-k')\ge n-1$ and $p\le h'$
741: yields $(1-\alpha)(k'(n-k')+h'+p)-p\ge (1-\alpha)(n-2)+(1-2\alpha)h'$.
742: Because $h'\le X(n-2)$ which is equivalent to $(n-2)\ge
743: \alpha(1-\alpha)h'$,
744: we have $(1-\alpha)(k'(n-k')+h'+p)-p\ge
745: (1-\alpha-2\alpha^2+\alpha^3)h'$. Defining $Y:=1-\alpha-2\alpha^2+\alpha^3$,
746: which is positive and less than one by the assumption of the Lemma, we have shown
747: that there are at least $Yh'$ messages satisfying one of the three cases.
748:
749: However, at most $(Y/2)h'$ of them satisfies the first two
750: cases, hence there are at least $(Y/2)h'$ arcs added to $P$ in
751: every execution of line \ref{alg:complete-receive}. So taking
752: $L_3:=2/Y+1$ ensures that $P$ contains opposite arcs to all single hyperactive arcs at the
753: beginning of the last iteration of the loop on lines
754: \ref{alg:complete-L3}--\ref{alg:complete-L3E}. However, this is a
755: contradiction with the fact that new arcs are added to $P$ at line
756: \ref{alg:complete-receive}.
757:
758: We conclude the proof with the analysis of the loop on lines
759: \ref{alg:complete-L4}--\ref{alg:complete-L4E}. In the first iteration of
760: the loop a new vertex is informed, because there are no hyperactive arcs
761: left after the loop on lines \ref{alg:complete-L2}--\ref{alg:complete-L2E}
762: finished (unless the new vertex has already been informed in that loop).
763: Due to Theorem \ref{thm:AlmostBroadcast-Kn}, next $O(\log n)$ iterations
764: are sufficient to ensure that $h\le X(n-2)$, which is an invariant required
765: by the loop on lines \ref{alg:complete-L2}--\ref{alg:complete-L2E}. Hence
766: putting $L_4(n):=O(\log n)$ (according to Theorem
767: \ref{thm:AlmostBroadcast-Kn}) is sufficient to make the algorithm work
768: correctly in time $L_1(L_2(n)L_3+L_4(n))=O(\log n)$.
769: \end{proof}
770:
771:
772: \section{Conclusions, Open Problems, and Further Research}
773:
774: We have studied the problem of almost complete broadcast under the model of
775: fractional dynamic faults with threshold. We showed that both in complete graphs
776: and in hypercubes, it is possible to inform all but constantly many vertices in time
777: $O(D\log n)$ where $D$ is the diameter of the graph and $n$ is the number of vertices.
778:
779: Moreover, we have proved that if the complete graph is equipped with the chordal sense of direction,
780: or the parameter $\alpha<0.55$, a complete broadcast can be performed in time $O(\log n)$.
781:
782: This research leaves many open questions and directions for further research, from which
783: we mention at least a few. One obvious
784: question is to ask if it is possible to perform a complete broadcast in
785: complete graphs also for large values of $\alpha$ in polylogarithmic time.
786: The difficulty of broadcast in the fractional dynamic model with
787: threshold stems from the fact that, in order to inform the last few vertices, all informed
788: vertices must cooperate very tightly.
789: In general, the relationship between the almost complete and complete
790: broadcast in various models is worth studying. We have also not considered non-constant
791: values of $\alpha$. It would be interesting to extend our results to more general
792: classes of graphs.
793:
794: We finish by noting that there is a lack of any non-trivial lower bounds in the
795: model of fractional faults with threshold.
796:
797: {\bibliography{references}}
798:
799: \newpage
800: \begin{appendix}
801: \section{Appendix}
802: \setcounter{pako}{\thelemma}
803:
804: This section contains the omitted technical parts.
805:
806: \subsection{Complete Graphs}
807:
808: \setnumber{lemma}{lm:grd}
809: \begin{lemma}
810: After two steps of the greedy algorithm, at least
811: $$1+\min\left\{\frac{n}{2},(n-1)(1-\alpha)\right\}$$
812: vertices are informed.
813: \end{lemma}
814: \begin{proof}
815: In the first step the initiator sends $n-1$ messages. Let $l\ge2$ be the number of informed vertices after the first step.
816: In the second step, $l(n-1)$ messages are sent, and
817: $\max\{n-2,\alpha l(n-1)\}$ of them are lost. We distinguish two cases:\\[2mm]
818:
819: \noindent
820: {\bf Case 1:} $\alpha l(n-1)\le n-2$\\
821: In this case, at most $n-2$ messages are lost, i.e. at least $l(n-1)-n+2$ are delivered.
822: Among those delivered, at most $l(l-1)$ could have been
823: sent to already informed vertices. Moreover, since each uninformed vertex has at most $l$
824: informed neighbors, we get that the
825: number of informed vertices is at least
826: $$l+\frac{l(n-1)-n+2-l(l-1)}{l}=n-\frac{n-2}{l}$$
827: Since $l\ge2$ we get that the number of informed vertices after the two steps is a least $\frac{n}{2}+1$.
828:
829: \vskip 2mm
830: \noindent
831: {\bf Case 2:} $\alpha l(n-1)>n-2$\\
832: This time, at most $\alpha l(n-1)$ messages are lost.
833: Using similar arguments, we get that the number of informed vertices is at least
834: $$l+\frac{l(n-1)(1-\alpha)-l(l-1)}{l}=1+(n-1)(1-\alpha)$$
835: \end{proof}
836:
837:
838:
839: \subsection{Hypercubes}
840:
841: \setnumber{lemma}{lm:Q:firststeps}
842: \begin{lemma}
843: After the first two steps of the algorithm, at least $\frac{1-\alpha}{2}(2d-1)$ vertices
844: have the information.
845: \end{lemma}
846:
847: \begin{proof}
848: In the first step, the initiator sends $d$ messages. Since at most $d-1$ can be lost,
849: some $r>0$ of them are delivered. In the second step, the initiator sends again $d$ messages,
850: but at the same time, each of the informed vertices sends $d-1$ messages to all its neighbors
851: except initiator. Hence, $d+r(d-1)$ messages are sent in the second step. Let us distinguish
852: two cases:
853:
854: If $d-1$ messages are lost, then $d+(r-1)(d-1)$ messages are delivered. $r$ messages from the
855: initiator can be delivered to the already informed vertices which leaves $d+(r-1)(d-1)-r$ messages
856: that enter uninformed vertices. Since at most $r$ messages can be destined to the same vertex,
857: The number of informed vertices after two steps is at least
858: $1+r+\frac{d+(r-1)(d-1)-r}{r}\ge(1/2)(2d-1)$
859:
860: If $\alpha [d+r(d-1)]$ messages are lost, then $(1-\alpha)[d+r(d-1)]-r$ messages arrive into
861: uninformed vertices. Hence, there is at least $\frac{1-\alpha}{r}[d+r(d-1)]+r\ge\frac{1-\alpha}{2}(2d-1)$ informed vertices.
862: \end{proof}
863:
864:
865: \setnumber{lemma}{lm:HypercubePass}
866: \begin{lemma}
867: Consider a $d$-dimensional hypercube with $k$ non-informed vertices and
868: $h$ hyperactive arcs. Let $\varepsilon\in(0,1)$ be an arbitrary constant, and let $k>X/(1-\varepsilon)$ or $h>X(d-1)$.
869: Then in the second step of a simple
870: round at least $\beta(h+\partial(k))$ acknowledgements are delivered,
871: where $\beta=(1-\alpha)^2$.
872: \end{lemma}
873: \begin{proof}
874: Let $S$ be the set of informed vertices. In the first step of the round, $h+\partial(S)$ messages are sent.
875: Since the edge boundary of informed and uninformed vertices is the same,
876: at least $h+\partial(k)$ messages are sent.
877: We prove that $\alpha(h+\partial(k))\ge d-1$, so in the first step at most $\alpha(h+\partial(k))$ messages are lost,
878: and at least $(1-\alpha)(h+\partial(k))$ of them are delivered. Next we prove that $\alpha(1-\alpha)(h+\partial(k))\ge d-1$,
879: so in the second step at least $(1-\alpha)^2(h+\partial(k))$ messages are delivered. Since $1-\alpha<1$, it is sufficient
880: to prove that $\alpha(1-\alpha)(h+\partial(k))\ge d-1$.
881:
882: If $h>X(d-1)$ then obviously $h+\partial(k)\ge X(d-1)$ and the statement holds. Next, let us consider the case when
883: $h>X/(1-\varepsilon)$. We distinguish three cases and prove that in each case $\partial(k)\ge X(d-1)$.
884:
885: \vskip 2mm
886: \noindent
887: {\bf Case 1:} $k\le 2^{\varepsilon d}$\\
888: In this case it holds $\partial(k)\ge k(d-\lg k)\ge kd(1-\varepsilon)$. Since $k>X/(1-\varepsilon)$, we get
889: $\partial(k)\ge Xd$.
890:
891: \vskip 2mm
892: \noindent
893: {\bf Case 2:} $2^{\varepsilon d}\le k\le 2^d\left(1-\frac{1}{\bm{e}}\right)$\\
894: In this case $\partial(k)\ge k(d-\lg k)\ge 2^{\varepsilon d}\left(d-d-\lg\left(1-\frac{1}{\bm{e}}\right)\right)
895: =2^{\varepsilon d}\lg\frac{\bm{e}}{\bm{e}-1}\ge 0.6\cdot2^{\varepsilon d}$. Since $X$ is constant, for large enough $d$ it holds
896: $\partial(k)\ge 0.6\cdot2^{\varepsilon d}>X(d-1)$.
897:
898: \vskip 2mm
899: \noindent
900: {\bf Case 3:} $2^d\left(1-\frac{1}{\bm{e}}\right)\le k$\\
901: First, let us consider a function $f(x):=x(d-\lg x)$, for $x\in\left\langle 0,2^d\right\rangle$. Since
902: $f'(x)=d-1/\ln2-\lg x$, $f(x)$ is increasing for $x\in\left\langle
903: 0,2^d/\bm{e}\right\rangle$ and decreasing for $x\in\left\langle
904: 2^d/\bm{e}, 2^d\right\rangle$.
905:
906: Obviously, the edge boundary of uninformed vertices $\partial(k)$ is the same as the edge boundary of
907: informed vertices $\partial(2^d-k)$. Hence, we get
908: $\partial(k)\ge f(2^d-k)$. Since $2^d-k\le 2^d\frac{1}{\bm{e}}$, the minimum of $f(2^d-k)$ is attained for
909: the minimal value of $2^d-k$. From Lemma~\ref{lm:Q:firststeps} we know that $2^d-k>\frac{1-\alpha}{2}(2d-1)$,
910: so $\partial(k)\ge f\left(\frac{1-\alpha}{2}(2d-1)\right)=\frac{1-\alpha}{2}(2d-1)\left(d-\lg\frac{1-\alpha}{2}(2d-1)\right)
911: =(1-\alpha)d^2-O(d\lg d)$. Hence, for large enough $d$ we get $\partial(k)\ge X(d-1)$.
912: \end{proof}
913:
914: \setcounter{lemma}{\thepako}
915: \begin{lemma}
916: \label{lm:analysis}
917: Let $x\ge 2$. It holds that $\lg\frac{x+1}{x}\ge\frac{1}{x}$.
918: \end{lemma}
919: \begin{proof}
920: The statement is equivalent to:
921: $$\forall x\ge 2: \frac{1}{x}\ge 2^{\frac{1}{x}}-1$$
922: Substituting $y:=\frac{1}{x}$:
923: $$\forall y\in \left(0,1/2\right\rangle: y\ge 2^y-1$$
924: For $y=0$ the equality holds. Hence it is sufficient to prove that the
925: derivative of the left side is larger than the derivative of the right side
926: for $y\in (0,1/2\rangle$, i.e. $1\ge 2^y\ln 2$, which obviously holds.
927: \end{proof}
928:
929: \setnumber{lemma}{lm:Q:part:I}
930: \begin{lemma}
931: After performing $O(d^2)$ simple rounds on a $d$-dimensional hypercube at
932: least $2^d/3$ vertices are informed.
933: \end{lemma}
934: \begin{proof}
935: Let $l:=2^d-k$ be the number of informed vertices and $b$ be the number of
936: passive arcs at the beginning of some simple round. Obviously $b\le ld$. Since the conditions of Lemma
937: \ref{lm:HypercubePass} are met, at least
938: $\beta \partial(k)$ acknowledgements are delivered in one simple round.
939: Furthermore, the edge boundary of informed
940: vertices is also the boundary of uninformed vertices, so the number of delivered acknowledgements
941: is at least $\beta \partial(l)$. Because every delivered acknowledgement adds one passive arc,
942: the number of passive arcs grows at least to $b'=b+\beta \partial(l)$ after this round.
943:
944:
945: First, let us consider a function $f(x):=x(d-\lg x)$, for $x\in\left\langle 0,2^d\right\rangle$. Since
946: $f'(x)=d-1/\ln2-\lg x$, $f(x)$ is increasing for $x\in\left\langle
947: 0,2^d/\bm{e}\right\rangle$ and decreasing for $x\in\left\langle
948: 2^d/\bm{e}, 2^d\right\rangle$.
949:
950: As $b/d\le l\le 2^d/3\le
951: 2^d/e$ it holds that $\partial(b/d)\le\partial(l)$. Hence we have the following
952: lower bound on $b'$:
953: $$b'\ge b+\beta\partial\left(\frac{b}{d}\right)\ge
954: b+\beta\frac{b}{d}\left(d-\lg\frac{b}{d}\right)\ge
955: b\left(1+\beta\frac{d-\lg\frac{b}{d}}{d}\right)
956: $$
957: The lower bound on $b$ implies the inequality $\lg\frac{b}{d}\le
958: d+\lg(1/3))$. Hence it holds
959: $$b'\ge b\left(1+\beta\frac{-\lg(1/3)}{d}\right)=
960: b\left(1+\frac{1}{\frac{d}{\beta\lg 3}}\right)$$
961: We have shown that the number of passive arcs
962: grows exponentially with number of simple rounds performed. As it
963: can not grow above $d2^d/3$ without informing at least $2^d/3$ vertices,
964: we can estimate an upper bound on number of required simple rounds:
965: $$T\le\frac{\lg (d2^d/3)}{\lg\left(1+\frac{1}{\frac{d}{\beta\lg 3}}\right)}$$
966: For large enough $d$, Lemma \ref{lm:analysis} is applicable, hence
967: proving the Lemma:
968: $$T\le \lg (d2^d/3){\frac{d}{\beta\lg 3}}=O\left(d^2\right)$$
969:
970: \end{proof}
971:
972: \setnumber{lemma}{lm:Q:part:II}
973: \begin{lemma}
974: Let $\varepsilon\in(0,1)$ be an arbitrary constant, and let
975: $k_i\le(2/3)2^d$ be the number of uninformed vertices and $h_i$ be the
976: number of hyperactive arcs of a $d$-dimensional hypercube at the beginning
977: of round $i$. Then after $O(d^2)$ simple rounds there are at most
978: $X/(1-\varepsilon)$ uninformed vertices and at most $X(d-1)$ hyperactive arcs.
979: \end{lemma}
980: \begin{proof}
981: Similarly to the proof of Theorem \ref{thm:AlmostBroadcast-Kn} let us consider the
982: measure $M_i:=2dk_i+h_i$.
983: Requirements of the Lemma ensure that $M_i\le O(d2^d)$. It is easy to
984: see that $M_i$ decreases with every acknowledgement delivered: if the
985: acknowledgement is delivered over a hyperactive arc, the value of $h_i$
986: decreases by 1. If it is delivered over an active arc, new vertex is
987: informed, hence the value of $k_i$ decreases by 1 and the value of $h_i$
988: increases by at most $2d-1$.
989:
990: We show that the value of $M_i$ decreases by a certain multiplicative
991: factor in every simple round as long as the requirements of Lemma
992: \ref{lm:HypercubePass} hold. In one simple round at least
993: $\beta(h_i+\partial(k_i))$ acknowledgements are delivered, hence the value
994: $M_i$ decreases to at most:
995: \begin{eqnarray*}
996: M_{i+1}&\le& 2dk_i+h_i-\beta(h_i+\partial(k_i))\le h_i(1-\beta)+2dk_i-\beta k_i(d-\lg k_i)= \\
997: & = & h_i(1-\beta) + 2dk_i\left(1-\beta+\beta\frac{\lg k_i}{d}\right) \end{eqnarray*}
998: Using the inequality $\lg k_i\le d+\lg(2/3)$ yields:
999: $$M_{i+1}\le h_i(1-\beta) + 2dk_i\left(1+\frac{\beta\lg (2/3)}{d}\right)$$
1000: Hence for large enough $d$ it holds:
1001: $$M_{i+1}\le (h_i+2dk_i)\left(1+\frac{\beta\lg (2/3)}{d}\right)$$
1002:
1003: Since the requirements of the Lemma ensures that $M_i\le (7/3)d2^d$, the
1004: requirements of Lemma \ref{lm:HypercubePass} can hold for at most
1005: $$T:=\frac{\lg \left(\frac{7}{3}d2^d\right)}{\lg\left(1+\frac{1}{\frac{d}{\beta\lg
1006: (2/3)}}\right)}$$
1007: time steps. According to Lemma \ref{lm:analysis} for large $d$ it holds
1008: that
1009: $$T\le \lg \left(\frac{7}{3}d2^d\right) \frac{d}{\beta\lg
1010: (2/3)} = O\left(d^2\right)$$
1011: which concludes the proof.
1012: \end{proof}
1013:
1014: \subsection{Complete Broadcast}
1015:
1016: \setnumber{theorem}{thm:K:sod}
1017: \begin{theorem}
1018: It is possible to perform broadcasting on complete graphs with chordal
1019: sense of direction in time $O(\log n)$.
1020: \end{theorem}
1021: \begin{proof}
1022: We present an algorithm for solving the broadcasting problem:
1023:
1024: \begin{description}
1025: \item[Phase 1] The algorithm from Lemma \ref{lm:AllButOne-Kn} is used.
1026: This takes $O(\log n)$ time, all vertices but one are informed and the
1027: vertex $0$ or the vertex $1$ knows a set $U$ of constant size containing
1028: candidates for the uninformed vertex.
1029:
1030: The rest of the algorithm is multiplexed into two parts, treating these two
1031: cases separately. In the remaining of the description we assume that the vertex
1032: $0$ knows the set $U$.
1033:
1034: \item[Phase 2] The algorithm from Lemma \ref{lm:AllButOne-Kn} is used to
1035: broadcast the set $U$, together with the original information, to all
1036: vertices but one. This takes $O(\log n)$ time again.
1037:
1038: After the Phase 2 is finished, two cases are possible: Either the
1039: uninformed vertex of the Phase 2 is different from or is the same as the
1040: uninformed vertex of the Phase 1. In the former case all vertices are
1041: informed. The rest of the algorithm handles the latter case.
1042:
1043: \item[Phase 3] If not all vertices are informed, then there is a single
1044: uninformed vertex $v$. Furthermore, every informed vertex knows the set $U$
1045: of constant size such that $v\in U$. Every informed vertex iterates through
1046: the set of $U$; in $i$-th time step of the current phase it sends the
1047: message to $i$-th member of $U$. Eventually, the uninformed vertex is
1048: processed. Since all $n-1$ informed vertices are
1049: doing the same, exactly $n-1$ messages are sent to the uninformed vertex,
1050: hence finishing the broadcast.
1051: \end{description}
1052:
1053: The time complexity of the Phase 1 and Phase 2 is $O(\log n)$; the time
1054: complexity of the Phase 3 is $O(|U|)=O(1)$. Hence the algorithm correctly
1055: solves the broadcasting on complete graphs in time $O(\log n)$.
1056: \end{proof}
1057:
1058: \end{appendix}
1059: \end{document}
1060: