COmputing and Combinatoria
COmputing and Combinatoria
1858
Berlin
Heidelberg
New York
Barcelona
Hong Kong
London
Milan
Paris
Singapore
Tokyo
Computing
and Combinatorics
6th Annual International Conference, COCOON 2000
Sydney, Australia, July 26-28, 2000
Proceedings
13
Series Editors
Gerhard Goos, Karlsruhe University, Germany
Juris Hartmanis, Cornell University, NY, USA
Jan van Leeuwen, Utrecht University, The Netherlands
Volume Editors
Ding-Zhu Du
University of Minnesota, Department of Computer Science and Engineering
Minneapolis, MN 55455, USA
E-mail: [email protected]
Peter Eades
Vladimir Estivill-Castro
University of Newcastle
Department of Computer Science and Software Engineering
Callaghan, NSW 2308, Australia
E-mail: {eades,vlad}@cs.newcastle.edu.au
Xuemin Lin
Arun Sharma
The University of New South Wales
School of Computer Science and Engineering
Sydney, NSW 2052, Australia
E-mail: {lxue,arun}@cse.unsw.edu.au
Cataloging-in-Publication Data applied for
Die Deutsche Bibliothek - CIP-Einheitsaufnahme
Computing and combinatorics : 6th annual international conference ;
proceedings / COCOON 2000, Sydney, Australia, July 26 - 28, 2000.
D.-Z. Du . . . (ed.). - Berlin ; Heidelberg ; New York ; Barcelona ;
Hong Kong ; London ; Milan ; Paris ; Singapore ; Tokyo : Springer, 2000
(Lecture notes in computer science ; Vol. 1858)
ISBN 3-540-67787-9
CR Subject Classification (1998): F.2, G.2.1-2, I.3.5, C.2.3-4, E.1
ISSN 0302-9743
ISBN 3-540-67787-9 Springer-Verlag Berlin Heidelberg New York
This work is subject to copyright. All rights are reserved, whether the whole or part of the material is
concerned, specifically the rights of translation, reprinting, re-use of illustrations, recitation, broadcasting,
reproduction on microfilms or in any other way, and storage in data banks. Duplication of this publication
or parts thereof is permitted only under the provisions of the German Copyright Law of September 9, 1965,
in its current version, and permission for use must always be obtained from Springer-Verlag. Violations are
liable for prosecution under the German Copyright Law.
Springer-Verlag Berlin Heidelberg New York
a member of BertelsmannSpringer Science+Business Media GmbH
Springer-Verlag Berlin Heidelberg 2000
Printed in Germany
Typesetting: Camera-ready by author, data conversion by Boller Mediendesign
Printed on acid-free paper
SPIN: 10722191
06/3142
543210
Preface
The papers in this volume were selected for presentation at the 6th Annual
International Computing and Combinatorics Conference (COCOON 2000), in
Sydney, Australia from July 26 - 28, 2000. The topics cover many areas in theoretical computer science and combinatorial optimization.
There were 81 high quality papers submitted to COCOON 2000. Each paper
was reviewed by at least three program committee members, and the 44 papers
were selected. It is expected that most of them will appear in a more complete
form in scientific journals. In addition to the selected papers, the volume also
contains the papers from two invited keynote speeches by Christos Papadimitriou and Richard Brent.
This year the Hao Wang Award was given to honor the paper judged by the
program committee to have the greatest merit. The recipient is Approximating
Uniform Triangular Meshes in Polygons by Franz Aurenhammer, Naoki Katoh,
Hiromichi Kojima, Makoto Ohsaki, and Yinfeng Xu. The first Best Young Researcher paper award was given to William Duckworth for his paper Maximum
Induced Matchings of Random Cubic Graphs.
We wish to thank all who have made this meeting possible: the authors for
submitting papers, the program committee members and the external referees,
sponsors, the local organizers, ACM SIGACT for handling electronic submissions, Springer-Verlag for their support, and Debbie Hatherell for her assistance.
July 2000
Sponsoring Institutions
University of New South Wales
University of Newcastle
University of Sydney
Computer Science Association of Australasia
Ding-Zhu Du
Peter Eades
Xuemin Lin
Conference Organization
Program Committee
David Avis (McGill, Canada)
Jianer Chen (Texas A&M, USA)
Francis Chin (Hong Kong U., Hong Kong)
Vladimir Estivill-Castro (Newcastle, Australia),
George Havas (UQ, Australia)
Hiroshi Imai (Tokyo, Japan)
Tao Jiang (UC Riverside, USA)
Michael Juenger (Cologne, Germany)
Richard Karp (UC Berkeley, USA)
D. T. Lee (Academia Sinica, Taiwan)
Bernard Mans (Macquarie U., Australia)
Brendan McKay (ANU, Australia)
Maurice Nivat (Universite de Paris VII, France)
Takeshi Tokuyama (Tohoku, Japan)
Roberto Tamassia (Brown, USA)
Jie Wang (UNC Greensboro, USA)
Shmuel Zaks (Technion, Israel)
Louxin Zhang (NUS, Singapore)
Shuzhong Zhang (CUHK, Hong Kong)
Binhai Zhu (City U. Hong Kong, Hong Kong)
Organizing Committee
Vladimir Estivill-Castro (Conference Co-chair, University of Newcastle)
Arun Sharma (Conference Co-chair, University of New South Wales)
Hai-Xin Lu (University of New South Wales)
VIII
Conference Organization
Referees
Kazuyuki Amano
Joffroy Beauquier
Francois Bertault
Christoph Buchheim
S.W. Cheng
L. Devroye
Matthias Elf
Stanley Fung
Yehuda Hassin
Seokhee Hong
Tsan-Sheng Hsu
Wen-Lian Hsu
Ming-Tat Ko
Joachim Kupke
Thierry Lecroq
Weifa Liang
Frauke Liers
Chi-Jen Lu
Hsueh-I Lu
Marcus Oswald
Andrzej Pelc
David Peleg
Stephane Perennes
Z.P. Qin
Bruce Reed
Maurice Rojas
James L. Schwing
Rinovia M.G. Simanjuntak
Slamin
Rinovia Simanjuntak
Peter Tischer
Da-Wei Wang
John Watorus
Martin Wolff
Yinfeng Xu
Ding Feng Ye
Hong Zhu
Table of Contents
Invited Talks
Theoretical Problems Related to the Internet . . . . . . . . . . . . . . . . . . . . . . . . . .
Christos H. Papadimitriou
Computational Geometry 1
A Duality between Small-Face Problems in Arrangements of Lines and
Heilbronn-Type Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Gill Barequet
On Local Transformation of Polygons with Visibility Properties . . . . . . . . . 54
Carmen Hernando, Michael E. Houle, Ferran Hurtado
Graph Drawing
Embedding Problems for Paths with Direction Constrained Edges . . . . . . . . 64
Giuseppe Di Battista, Giuseppe Liotta, Anna Lubiw, Sue Whitesides
Characterization of Level Non-planar Graphs by Minimal Patterns . . . . . . . 74
Patrick Healy, Ago Kuusik, Sebastian Leipert
Rectangular Drawings of Plane Graphs Without Designated Corners . . . . . 85
Md. Saidur Rahman, Shin-ichi Nakano, Takao Nishizeki
Computing Optimal Embeddings for Planar Graphs . . . . . . . . . . . . . . . . . . . . 95
Petra Mutzel, Rene Weiskircher
Table of Contents
Online Algorithms
Online Independent Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Magn
us M. Halld
orsson, Kazuo Iwama, Shuichi Miyazaki,
Shiro Taketomi
Two-Dimensional On-Line Bin Packing Problem with Rotatable Items . . . 210
Satoshi Fujita, Takeshi Hada
Better Bounds on the Accommodating Ratio for the Seat Reservation
Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Eric Bach, Joan Boyar, Tao Jiang, Kim S. Larsen, Guo-Hui Lin
Table of Contents
XI
Computational Geometry 2
Tripods Do Not Pack Densely . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
Alexandre Tiskin
An Efficient k Nearest Neighbor Searching Algorithm for a Query Line . . . 281
Subhas C. Nandy
Tetrahedralization of Two Nested Convex Polyhedra . . . . . . . . . . . . . . . . . . . 291
Cao An Wang, Boting Yang
Efficient Algorithms for Two-Center Problems for a Convex Polygon . . . . . 299
Sung Kwon Kim, Chan-Su Shin
Combinatorial Optimization
On Computation of Arbitrage for Markets with Friction . . . . . . . . . . . . . . . . 310
Xiaotie Deng, Zhongfei Li, Shouyang Wang
On Some Optimization Problems in Obnoxious Facility Location . . . . . . . . . 320
Zhongping Qin, Yinfeng Xu, Binhai Zhu
Generating Necklaces and Strings with Forbidden Substrings . . . . . . . . . . . . 330
Frank Ruskey, Joe Sawada
Optimal Labelling of Point Features in the Slider Model . . . . . . . . . . . . . . . . 340
Gunnar W. Klau, Petra Mutzel
XII
Table of Contents
The Internet has arguably superseded the computer as the most complex cohesive artifact (if you can call it that), and is, quite predictably, the source of
a new generation of foundational problems for Theoretical Computer Science.
These new theoretical challenges emanate from several novel aspects of the Internet: (a) Its unprecedented size, diversity, and availability as an information
repository; (b) its novel nature as a computer system that intertwines a multitude of economic interests in varying degrees of competition; and (c) its history
as a shared resource architecture that emerged in a remarkably ad hoc yet gloriously successful manner. In this talk I will survey some recent research (done in
collaboration with Joan Feigenbaum, Dick Karp, Elias Koutsoupias, and Scott
Shenker, see [1,2]) on problems of the two latter kinds. See [3,5] for examples of
theoretical work along the first axis.
To a large extent, the Internet owes its remarkable ascent to the surprising
empirical success of TCPs congestion control protocol [4]. A flow between two
points strives to determine the correct transmission rate by trying higher and
higher rates, in a linearly increasing function. As links shared by several flows
reach their capacity, one or more packets may be lost, and, in response, the
corresponding flow halves its transmission rate. The fantastic empirical success
of this crude mechanism raises important, and at times theoretically interesting,
questions related to novel search algorithms (the process clearly contains a novel
variant of binary search), on-line algorithms (when the true capacity that a
flow can use changes in an unknown and, in a worst case, adversarial fashion),
and algorithmic game theory (why is it that flows seem to be unwilling, or
unmotivated, to move away from TCP?).
In a situation in which the same piece of information is multicast to millions
of individuals, it is of interest to determine the price that each recipient must pay
in return. The information in question is of different value to each individual,
and this value is known only to this individual. The participants must engage
in a mechanism, that is to say, a distributed protocol whereby they determine
the individuals who will actually receive the information, and the price each will
pay. Economists over the past fourty years have studied such situations arising in auctions, welfare economics, and pricing of public goods, and have come
up with clever mechanisms solutions that satisfy various sets of desiderata
?
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 12, 2000.
c Springer-Verlag Berlin Heidelberg 2000
Christos H. Papadimitriou
(axioms) or ingenious proofs that satisfying other sets of desiderata is impossible. In the context of the Internet, however, an important computational
desideratum emerges: The protocol should be efficient, with respect to the total
number of messages sent. It turns out that this novel condition changes the situation dramatically, and carves out a new set of pricing mechanisms that are
appropriate and feasible.
References
1. Joan Feigenbaum, Christos H. Papadimitriou, Scott Shenker, Sharing the Cost of
Multicast Transmissions, Proc. 2000 STOC.
2. Richard M. Karp, Elias Koutsoupias, Christos H. Papadimitriou, Scott Shenker,
Optimization Problems in Congestion Control, manuscript, April 2000.
3. Jon Kleinberg, Authoritative sources in a hyperlinked environment, Proc. ACMSIAM Symposium on Discrete Algorithms, 1998.
4. Van Jacobson Congestion Avoidance and Control, in ACM SigComm Proceedings,
pp 314-329, 1988.
5. Christos H. Papadimitriou, Prabhakar Raghavan, Hisao Tamaki, Santosh Vempala,
Latent Semantic Indexing: A Probabilistic Analysis, Proc. 1998 PODS, to appear
in the special issue of JCSS.
Introduction
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 322, 2000.
c Springer-Verlag Berlin Heidelberg 2000
1.1
Richard P. Brent
Randomised Algorithms
All but the most trivial algorithms discussed below are randomised algorithms,
i.e. at some point they involve pseudo-random choices. Thus, the running times
are expected rather than worst case. Also, in most cases the expected running
times are conjectured, not rigorously proved.
1.2
Parallel Algorithms
1.3
Quantum Algorithms
1.4
Moores Law
Moores law [44,56] predicts that circuit densities will double every 18 months
or so. Of course, Moores law is not a theorem, and must eventually fail, but it
has been surprisingly accurate for many years. As long as Moores law continues
to apply and results in correspondingly more powerful parallel computers, we expect to get a steady improvement in the capabilities of factorisation algorithms,
without any algorithmic improvements. Historically, improvements over the past
thirty years have been due both to Moores law and to the development of new
algorithms (e.g. ECM, MPQS, NFS).
There are many algorithms for finding a nontrivial factor f of a composite integer N . The most useful algorithms fall into one of two classes
A. The run time depends mainly on the size of N, and is not strongly dependent
on the size of f . Examples are
Lehmans algorithm [28], which has worst-case run time O(N 1/3 ).
The Continued Fraction algorithm [39] and the Multiple Polynomial
Quadratic Sieve (MPQS) algorithm [46,59],
which under plausible assumptions have expected run time O(exp( c ln N ln ln N )), where c is a
constant (depending on details of the algorithm). For MPQS, c 1.
The Number Field Sieve (NFS) algorithm [29,30], which under plausible assumptions has expected run time O(exp(c(ln N )1/3 (ln ln N )2/3 )),
where c is a constant (depending on details of the algorithm and on the
form of N ).
B. The run time depends mainly on the size of f, the factor found. (We can
assume that f N 1/2 .) Examples are
The trial division algorithm, which has run time O(f (log N )2 ).
Pollards rho algorithm [45], which under plausible assumptions has
expected run time O(f 1/2 (log N )2 ).
Lenstras Elliptic Curve (ECM) algorithm
[34], which under plausible assumptions has expected run time O(exp( c ln f ln ln f )(log N )2 ), where
c 2 is a constant.
In these examples, the time bounds are for a sequential machine, and the term
(log N )2 is a generous allowance for the cost of performing arithmetic operations
on numbers which are O(N 2 ). If N is very large, then fast integer multiplication
algorithms [19,24] can be used to reduce the (log N )2 term.
Our survey of integer factorisation algorithms is necessarily cursory. For more
information the reader is referred to [8,35,48,53].
ECM Examples
Richard P. Brent
54
52
50
48
46
44
42
40
38
1990
1992
1994
1996
1998
2000
2002
Figure 1 shows the size D (in decimal digits) of the largest factor found by
ECM against the year it was done, from 1991 (40D) to 1999 (54D) (historical
data from [9]).
3.4
7.6
7.4
7.2
7.0
6.8
6.6
6.4
6.2
6.0
1990
1992
1994
1996
1998
2000
2002
Let D be the number of decimal digits in the largest factor found by ECM up
to a given date.
From the theoretical time bound for ECM, assuming Moores
D to be roughly a linear function of calendar year (in fact
law,
we
expect
Y 1932.3
or equivalently Y = 9.3 D + 1932.3 ,
D=
9.3
and extrapolation gives D = 60 in the year Y = 2004 and D = 70 in the year
Y = 2010.
Richard P. Brent
Quadratic sieve algorithms belong to a wide class of algorithms which try to find
two integers x and y such that x 6= y (mod N ) but
x2 = y 2 (mod N ) .
(2)
(3)
where the wi have all their prime factors in a moderately small set of primes
(called the factor base). Each relation (3) gives a colunm in a matrix R whose
rows correspond to the primes in the factor base. Once enough columns have been
generated, we can use Gaussian elimination in GF(2) to find a linear dependency
(mod 2) between a set of columns of R. Multiplying the corresponding relations
now gives an expression of the form (2). With probability at least 1/2, we have
x 6= y mod N so a nontrivial factor of N will be found. If not, we need to
obtain a different linear dependency and try again.
In quadratic sieve algorithms the numbers wi are the values of one (or more)
quadratic polynomials with integer coefficients. This makes it easy to factor the
wi by sieving. For details of the process, we refer to [11,32,35,46,49,52,59].
The best quadratic sieve algorithm (MPQS) can, under plausible assumptions, factor a number N in time (exp(c(ln N ln ln N )1/2 )), where c 1. The
constants involved are such that MPQS is usually faster than ECM if N is the
product of two primes which both exceed N 1/3 . This is because the inner loop
of MPQS involves only single-precision operations.
Use of partial relations, i.e. incompletely factored wi , in MPQS gives a
significant performance improvement [2]. In the one large prime (P-MPQS)
variation wi is allowed to have one prime factor exceeding m (but not too much
larger than m). In the two large prime (PP-MPQS) variation wi can have two
prime factors exceeding m this gives a further performance improvement at
the expense of higher storage requirements [33].
4.1
MPQS Examples
The number field sieve (NFS) algorithm was developed from the special number
field sieve (SNFS), which we describe in this section. The general number field
sieve (GNFS or simply NFS) is described in 6.
Most of our numerical examples have involved numbers of the form
ae b ,
(4)
for small a and b, although the ECM and MPQS factorisation algorithms do not
take advantage of this special form.
The special number field sieve (SNFS) is a relatively new algorithm which
does take advantage of the special form (4). In concept it is similar to the
quadratic sieve algorithm, but it works over an algebraic number field defined
by a, e and b. We refer the interested reader to Lenstra et al [29,30] for details,
and merely give an example to show the power of the algorithm.
5.1
SNFS Examples
F9 = N = 22 + 1
as a candidate for factoring by SNFS. Note that 8N = m5 + 8, where m = 2103 .
We may work in the number field Q(), where satisfies
5 + 8 = 0,
2
This idea of using machines on the Internet as a free supercomputer has been
adopted by several other computation-intensive projects
10
Richard P. Brent
The general number field sieve (GNFS or just NFS) is a logical extension of the
special number field sieve (SNFS). When using SNFS to factor an integer N , we
require two polynomials f (x) and g(x) with a common root m mod N but no
common root over the field of complex numbers. If N has the special form (4)
then it is usually easy to write down suitable polynomials with small coefficients,
as illustrated by the two examples given in 5. If N has no special form, but is
just some given composite number, we can also find f (x) and g(x), but they no
longer have small coefficients.
Suppose that g(x) has degree d > 1 and f (x) is linear3 . d is chosen empirically, but it is known from theoretical considerations that the optimum value
3
This is not necessary. For example, Montgomery found a clever way of choosing two
quadratic polynomials.
is
d
3 ln N
ln ln N
11
1/3
.
d
X
aj m j
j=0
d
X
aj xj ,
j=0
it is clear that f (x) and g(x) have a common root m mod N . This method of
polynomial selection is called the base m method.
In principle, we can proceed as in SNFS, but many difficulties arise because of
the large coefficients of g(x). For details, we refer the reader to [36,37,41,47,48,62].
Suffice it to say that the difficulties can be overcome and the method works! Due
to the constant factors involved it is slower than MPQS for numbers of less than
about 110 decimal digits, but faster than MPQS for sufficiently large numbers,
as anticipated from the theoretical run times given in 2.
Some of the difficulties which had to be overcome to turn GNFS into a
practical algorithm are:
1. Polynomial selection. The base m method is not very good. Peter Montgomery and Brian Murphy [40,41,42] have shown how a very considerable
improvement (by a factor of more than ten for number of 140155 digits)
can be obtained.
2. Linear algebra. After sieving a very large, sparse linear system over GF(2)
is obtained, and we want to find dependencies amongst the columns. It is
not practical to do this by structured Gaussian elimination [25, 5] because
the fill in is too large. Odlyzko [43,17] and Montgomery [37] showed that
the Lanczos method [26] could be adapted for this purpose. (This is nontrivial because a nonzero vector x over GF(2) can be orthogonal to itself,
i.e. xT x = 0.) To take advantage of bit-parallel operations, Montgomerys
program works with blocks of size dependent on the wordlength (e.g. 64).
3. Square roots. The final stage of GNFS involves finding the square root of
a (very large) product of algebraic numbers4 . Once again, Montgomery [36]
found a way to do this.
4
An idea of Adleman, using quadratic characters, is essential to ensure that the desired
square root exists with high probability.
12
6.1
Richard P. Brent
RSA155
At the time of writing, the largest number factored by GNFS is the 155-digit
RSA Challenge number RSA155. It was split into the product of two 78-digit
primes on 22 August, 1999, by a team coordinated from CWI, Amsterdam. For
details see [51]. To summarise: the amount of computer time required to find the
factors was about 8000 Mips-years. The two polynomials used were
f (x) = x 39123079721168000771313449081
and
g(x) = +119377138320x5
80168937284997582x4
66269852234118574445x3
+11816848430079521880356852x2
+7459661580071786443919743056x
40679843542362159361913708405064 .
The polynomial g(x) was chosen to have a good combination of two properties: being unusually small over the sieving region and having unusually many
roots modulo small primes (and prime powers). The effect of the second property alone makes g(x) as effective at generating relations as a polynomial chosen
at random for an integer of 137 decimal digits (so in effect we have removed
at least 18 digits from RSA155 by judicious polynomial selection). The polynomial selection took approximately 100 Mips-years or about 1.25% of the total
factorisation time. For details of the polynomial selection, see Brian Murphys
thesis [41].
The total amount of CPU time spent on sieving was 8000 Mips-years on
assorted machines (calendar time 3.7 months). The resulting matrix had about
6.7 106 rows and weight (number of nonzeros) about 4.2 108 (about 62
nonzeros per row). Using Montgomerys block Lanczos program, it took almost
224 CPU-hours and 2 GB of memory on a Cray C916 to find 64 dependencies.
Calendar time for this was 9.5 days.
Table 1. RSA130, RSA140 and RSA155 factorisations
RSA130
Total CPU time in Mips-years
1000
Matrix rows
3.5 106
Total nonzeros
1.4 108
Nonzeros per row
39
Matrix solution time (on Cray C90/C916) 68 hours
RSA140
2000
4.7 106
1.5 108
32
100 hours
RSA155
8000
6.7 106
4.2 108
62
224 hours
13
Table 1 gives some statistics on the RSA130, RSA140 and RSA155 factorisations. The Mips-year times given are only rough estimates. Extrapolation of
these figures is risky, since various algorithmic improvements were incorporated
in the later factorisations and the scope for further improvements is unclear.
Assumptions
14
Richard P. Brent
The matrix of relations R is sparse and almost square. Suppose that R has n
columns, m n rows, and n nonzeros, i.e. nonzeros per column. Consider
the computation of Rw, where w is a dense n-vector. The number of multiplications involved in the computation of Rw is n. (Thus, the number of operations
involved in the complete Lanczos process
is of order n2 n3 .)
15
(5)
T1
P TP
+ P
communication time
P
and the sieving time dominates unless P > 600. For larger problems we expect
the sieving time to grow at least as fast as n2 .
16
Richard P. Brent
For more typical factorisations performed by MPQS rather than GNFS, the
situation is better. For example, using Arjen Lenstras implementation of PPMPQS in the Magma package, we factored a 102-decimal digit composite c102 (a
factor of 14213 1) on a 4 250 Mhz Sun multiprocessor. The sieving time was
11.5 days or about 32 Mips-years. After combining partial relations the matrix R
had about n = 73000 columns. Thus n2 5.3 109. At 100 Mb/sec it takes less
than one minute to communicate n2 bits. Thus, although the current Magma
implementation performs the block Lanczos method on only one processor, there
is no reason why it could not be performed on a network of small machines (e.g. a
Beowulf cluster) and the communication time on such a network would only
be a few minutes.
7.3
2P
+3.
For typical values of / 100 and 50 this gives the condition k < 4P + 3.
The disadvantage of this strategy is that the total weight z of the matrix
(and hence storage requirements) increases. In fact, if we go too far, the matrix
becomes full (see the RSA129 example in 4.2).
As an example, consider the c102 factorisation mentioned at the end of 7.2.
The initial matrix R had n 73000; we were able to reduce this to n 32000,
and thus reduce the communication requirements by 81%, at the expense of
increasing the weight by 76%. Our (limited) experience indicates that this behaviour is typical we can usually reduce the communication requirements by a
factor of five at the expense of at most doubling the weight. However, if we try
17
to go much further, there is an explosion, the matrix becomes dense, and the
advantage of the Lanczos method over Gaussian elimination is lost. (It would be
nice to have a theoretical explanation of this behaviour.)
160
140
120
100
80
60
40
20
0
1960
1970
1980
1990
2000
2010
Figure 3 shows the size D (in decimal digits) of the largest general number
factored against the year it was done, from 1964 (20D) to April 2000 (155D)
(historical data from [41,44,55]).
8.1
Let D be the number of decimal digits in the largest general number factored by a given date. From the theoretical time bound for GNFS, assuming
Moores law, we expect D1/3 to be roughly a linear function of calendar year (in
fact D1/3 (ln D)2/3 should be linear, but given the other uncertainties we have
assumed for simplicity that (ln D)2/3 is roughly a constant). Figure 4 shows D1/3
versus year Y .
The straight line shown in the Figure 4 is
D1/3 =
Y 1928.6
or equivalently Y = 13.24D1/3 + 1928.6 ,
13.24
and extrapolation, for what it is worth, gives D = 309 (i.e. 1024 bits) in the year
Y = 2018.
18
Richard P. Brent
D1/3
6.5
6.0
5.5
5.0
4.5
4.0
3.5
3.0
2.5
2.0
1960
1970
1980
1990
2000
2010
We have sketched some algorithms for integer factorisation. The most important
are ECM, MPQS and NFS. As well as their inherent interest and applicability
to other areas of mathematics, advances in public key cryptography have lent
them practical importance.
Despite much progress in the development of efficient algorithms, our knowledge of the complexity of factorisation is inadequate. We would like to find a
polynomial time factorisation algorithm or else prove that one does not exist.
Until a polynomial time algorithm is found or a quantum computer capable
of running Shors algorithm [57,58] is built, large factorisations will remain an
interesting challenge.
A survey similar to this one was written in 1990 (see [3]). Comparing the
examples there we see that significant progress has been made. This is partly
due to Moores law, partly due to the use of many machines on the Internet,
and partly due to improvements in algorithms (especially GNFS). The largest
number factored by MPQS at the time of writing [3] had 111 decimal digits.
According to [16], RSA110 was factored in 1992 (by MPQS). In 1996 GNFS was
used to factor RSA130; in August 1999, RSA155 also fell to GNFS. Progress
seems to be accelerating. This is due in large part to algorithmic improvements
which seem unlikely to be repeated. On the other hand, it is very hard to anticipate algorithmic improvements!
19
From the predicted run time for GNFS, we would expect RSA155 to take
6.5 times as long as RSA1405 . On the other hand, Moores law predicts that
circuit densities will double every 18 months or so. Thus, as long as Moores law
continues to apply and results in correspondingly more powerful parallel computers, we expect to get three to four decimal digits per year improvement in the
capabilities of GNFS, without any algorithmic improvements. The extrapolation
from historical figures is more optimistic: it predicts 67 decimal digits per year
in the near future.
Similar arguments apply to ECM, for which we expect slightly more than
one decimal digit per year in the size of factor found [9].
Although we did not discuss them here, the best algorithms for the integer discrete logarithm problem are analogous to NFS, requiring the solution of
large, sparse linear systems over finite fields, and similar remarks apply to such
algorithms.
Regarding cryptographic consequences, we can say that 512-bit RSA keys
are already insecure. 1024-bit RSA keys should remain secure for at least fifteen
years, barring the unexpected (but unpredictable) discovery of a completely
new algorithm which is better than GNFS, or the development of a practical
quantum computer. In the long term, public key algorithms based on the discrete
logarithm problem for elliptic curves appear to be a promising alternative to RSA
or algorithms based on the integer discrete logarithm problem.
Acknowledgements
Thanks are due to Peter Montgomery, Brian Murphy, Andrew Odlyzko, John
Pollard, Herman te Riele, Sam Wagstaff, Jr. and Paul Zimmermann for their
assistance.
References
1. D. Atkins, M. Graff, A. K. Lenstra and P. C. Leyland, The magic words are
squeamish ossifrage, Advances in Cryptology: Proc. Asiacrypt94, LNCS 917,
Springer-Verlag, Berlin, 1995, 263277.
2. H. Boender and H. J. J. te Riele, Factoring integers with large prime variations of
the quadratic sieve, Experimental Mathematics, 5 (1996), 257273.
3. R. P. Brent, Vector and parallel algorithms for integer factorisation, Proceedings Third Australian Supercomputer Conference University of Melbourne, December 1990, 12 pp. http://www.comlab.ox.ac.uk/oucl/work/richard.brent/pub/
pub122.html .
4. R. P. Brent, The LINPACK benchmark on the AP 1000, Proceedings of Frontiers 92 (McLean, Virginia, October 1992), IEEE Press, 1992, 128-135. http://
www.comlab.ox.ac.uk/oucl/work/richard.brent/pub/pub130.html
5
It actually took only about 4.0 times as long, thanks to algorithmic improvements
such as better polynomial selection.
20
Richard P. Brent
5. R. P. Brent, Parallel algorithms in linear algebra, Algorithms and Architectures: Proc. Second NEC Research Symposium held at Tsukuba, Japan, August 1991 (edited by T. Ishiguro), SIAM, Philadelphia, 1993, 54-72. http://
www.comlab.ox.ac.uk/oucl/work/richard.brent/pub/pub128.html
6. R. P. Brent and P. E. Strazdins, Implementation of the BLAS level 3 and Linpack benchmark on the AP 1000, Fujitsu Scientific and Technical Journal 29, 1
(March 1993), 61-70. http://www.comlab.ox.ac.uk/oucl/work/richard.brent/
pub/pub136.html
7. R. P. Brent, Factorization of the tenth Fermat number, Math. Comp. 68 (1999),
429-451. Preliminary version available as Factorization of the tenth and eleventh
Fermat numbers, Technical Report TR-CS-96-02, CSL, ANU, Feb. 1996, 25pp.
http://www.comlab.ox.ac.uk/oucl/work/richard.brent/pub/pub161.html .
8. R. P. Brent, Some parallel algorithms for integer factorisation Proc. Europar99,
Toulouse, Sept. 1999. LNCS 1685, Springer-Verlag, Berlin, 122.
9. R. P. Brent, Large factors found by ECM, Oxford University Computing Laboratory, March 2000. ftp://ftp.comlab.ox.ac.uk/pub/Documents/techpapers/
Richard.Brent/champs.txt .
10. J. Brillhart, D. H. Lehmer, J. L. Selfridge, B. Tuckerman and S. S. Wagstaff, Jr.,
Factorisations of bn 1, b = 2, 3, 5, 6, 7, 10, 11, 12 up to high powers, American
Mathematical Society, Providence, Rhode Island, second edition, 1988. Updates
available from http://www/cs/purdue.edu/homes/ssw/cun/index.html .
11. T. R. Caron and R. D. Silverman, Parallel implementation of the quadratic sieve,
J. Supercomputing 1 (1988), 273290.
12. S. Cavallar, B. Dodson, A. K. Lenstra, P. Leyland, W. Lioen, P. L. Montgomery,
B. Murphy, H. te Riele and P. Zimmermann, Factorization of RSA-140 using the
number field sieve, announced 4 February 1999. Available from ftp://ftp.cwi.nl/
pub/herman/NFSrecords/RSA-140 .
13. S. Cavallar, B. Dodson, A. K. Lenstra, P. Leyland, W. Lioen, P. L. Montgomery,
H. te Riele and P. Zimmermann, 211-digit SNFS factorization, announced 25 April
1999. Available from ftp://ftp.cwi.nl/pub/herman/NFSrecords/SNFS-211 .
14. D. V. and G. V. Chudnovsky, Sequences of numbers generated by addition in
formal groups and new primality and factorization tests, Adv. in Appl. Math. 7
(1986), 385434.
15. H. Cohen, A Course in Computational Algebraic Number Theory, Springer-Verlag,
Berlin, 1993.
16. S. Contini, The factorization of RSA-140, RSA Laboratories Bulletin 10, 8 (March
1999). Available from http://www.rsa.com/rsalabs/html/bulletins.html .
17. D. Coppersmith, A. Odlyzko and R. Schroeppel, Discrete logarithms in GF(p),
Algorithmica 1 (1986), 115.
18. J. Cowie, B. Dodson, R. M. Elkenbracht-Huizing, A. K. Lenstra, P. L. Montgomery
and J. Zayer, A world wide number field sieve factoring record: on to 512 bits,
Advances in Cryptology: Proc. Asiacrypt96, LNCS 1163, Springer-Verlag, Berlin,
1996, 382394.
19. R. Crandall and B. Fagin, Discrete weighted transforms and large-integer arithmetic, Math. Comp. 62 (1994), 305324.
20. D. Deutsch, Quantum theory, the Church-Turing principle and the universal quantum computer, Proc. Roy. Soc. London, Ser. A 400 (1985), 97117.
21. D. Deutsch, Quantum computational networks, Proc. Roy. Soc. London, Ser. A
425 (1989), 7390.
21
22. M. Elkenbracht-Huizing, A multiple polynomial general number field sieve Algorithmic Number Theory ANTS III, LNCS 1443, Springer-Verlag, Berlin, 1998,
99114.
23. K. F. Ireland and M. Rosen, A Classical Introduction to Modern Number Theory,
Springer-Verlag, Berlin, 1982.
24. D. E. Knuth, The Art of Computer Programming, Vol. 2, Addison Wesley, third
edition, 1997.
25. B. A. LaMacchia and A. M. Odlyzko, Solving large sparse systems over finite fields,
Advances in Cryptology, CRYPTO 90 (A. J. Menezes and S. A. Vanstone, eds.),
LNCS 537, Springer-Verlag, Berlin, 109133.
26. C. Lanczos, Solution of systems of linear equations by minimized iterations, J. Res.
Nat. Bureau of Standards 49 (1952), 3353.
27. S. Lang, Elliptic Curves Diophantine Analysis, Springer-Verlag, Berlin, 1978.
28. R. S. Lehman, Factoring large integers, Math. Comp. 28 (1974), 637646.
29. A. K. Lenstra and H. W. Lenstra, Jr. (editors), The development of the number
field sieve, Lecture Notes in Mathematics 1554, Springer-Verlag, Berlin, 1993.
30. A. K. Lenstra, H. W. Lenstra, Jr., M. S. Manasse and J. M. Pollard, The number
field sieve, Proc. 22nd Annual ACM Conference on Theory of Computing, Baltimore, Maryland, May 1990, 564572.
31. A. K. Lenstra, H. W. Lenstra, Jr., M. S. Manasse, and J. M. Pollard, The factorization of the ninth Fermat number, Math. Comp. 61 (1993), 319349.
32. A. K. Lenstra and M. S. Manasse, Factoring by electronic mail, Proc. Eurocrypt
89, LNCS 434, Springer-Verlag, Berlin, 1990, 355371.
33. A. K. Lenstra and M. S. Manasse, Factoring with two large primes, Math. Comp.
63 (1994), 785798.
34. H. W. Lenstra, Jr., Factoring integers with elliptic curves, Annals of Mathematics
(2) 126 (1987), 649673.
35. P. L. Montgomery, A survey of modern integer factorization algorithms, CWI Quarterly 7 (1994), 337366. ftp://ftp.cwi.nl/pub/pmontgom/cwisurvey.psl.Z .
36. P. L. Montgomery, Square roots of products of algebraic numbers, Mathematics of
Computation 1943 1993, Proc. Symp. Appl. Math. 48 (1994), 567571.
37. P. L. Montgomery, A block Lanczos algorithm for finding dependencies over GF(2),
Advances in Cryptology: Proc. Eurocrypt95, LNCS 921, Springer-Verlag, Berlin,
1995, 106120. ftp://ftp.cwi.nl/pub/pmontgom/BlockLanczos.psa4.gz .
38. P. L. Montgomery, Parallel block Lanczos, Microsoft Research, Redmond, USA,
17 January 2000 (transparencies of a talk presented at RSA 2000).
39. M. A. Morrison and J. Brillhart, A method of factorisation and the factorisation
of F7 , Math. Comp. 29 (1975), 183205.
40. B. A. Murphy, Modelling the yield of number field sieve polynomials, Algorithmic
Number Theory ANTS III, LNCS 1443, Springer-Verlag, Berlin, 1998, 137150.
41. B. A. Murphy, Polynomial selection for the number field sieve integer factorisation
algorithm, Ph. D. thesis, Australian National University, July 1999.
42. B. A. Murphy and R. P. Brent, On quadratic polynomials for the number field
sieve, Australian Computer Science Communications 20 (1998), 199213. http://
www.comlab.ox.ac.uk/oucl/work/richard.brent/pub/pub178.html .
43. A. M. Odlyzko, Discrete logarithms in finite fields and their cryptographic significance, Advances in Cryptology: Proc. Eurocrypt 84, LNCS 209, Springer-Verlag,
Berlin, 1985, 224314.
44. A. M. Odlyzko, The future of integer factorization, CryptoBytes 1, 2 (1995), 512.
Available from http://www.rsa.com/rsalabs/pubs/cryptobytes .
22
Richard P. Brent
45. J. M. Pollard, A Monte Carlo method for factorisation, BIT 15 (1975), 331334.
46. C. Pomerance, The quadratic sieve factoring algorithm, Advances in Cryptology,
Proc. Eurocrypt 84, LNCS 209, Springer-Verlag, Berlin, 1985, 169182.
47. C. Pomerance, The number field sieve, Proceedings of Symposia in Applied Mathematics 48, Amer. Math. Soc., Providence, Rhode Island, 1994, 465480.
48. C. Pomerance, A tale of two sieves, Notices Amer. Math. Soc. 43 (1996), 1473
1485.
49. C. Pomerance, J. W. Smith and R. Tuler, A pipeline architecture for factoring large
integers with the quadratic sieve algorithm, SIAM J. on Computing 17 (1988),
387403.
50. J. Preskill, Lecture Notes for Physics 229: Quantum Information and Computation, California Institute of Technology, Los Angeles, Sept. 1998. http://
www.theory.caltech.edu/people/preskill/ph229/ .
51. H. te Riele et al, Factorization of a 512-bits RSA key using the number field sieve,
announcement of 26 August 1999, http://www.loria.fr/~zimmerma/records/
RSA155 .
52. H. J. J. te Riele, W. Lioen and D. Winter, Factoring with the quadratic sieve on
large vector computers, Belgian J. Comp. Appl. Math. 27 (1989), 267278.
53. H. Riesel, Prime numbers and computer methods for factorization, 2nd edition,
Birkh
auser, Boston, 1994.
54. R. L. Rivest, A. Shamir and L. Adleman, A method for obtaining digital signatures
and public-key cryptosystems, Comm. ACM 21 (1978), 120126.
55. RSA Laboratories, Information on the RSA challenge, http://www.rsa.com/
rsalabs/html/challenges.html .
56. R. S. Schaller, Moores law: past, present and future, IEEE Spectrum 34, 6 (June
1997), 5259.
57. P. W. Shor, Algorithms for quantum computation: discrete logarithms and factoring, Proc. 35th Annual Symposium on Foundations of Computer Science, IEEE
Computer Society Press, Los Alamitos, California, 1994, 124134. CMP 98:06
58. P. W. Shor, Polynomial time algorithms for prime factorization and discrete logarithms on a quantum computer, SIAM J. Computing 26 (1997), 14841509.
59. R. D. Silverman, The multiple polynomial quadratic sieve, Math. Comp. 48 (1987),
329339.
60. U. Vazirani, Introduction to special section on quantum computation, SIAM J.
Computing 26 (1997), 14091410.
61. D. H. Wiedemann, Solving sparse linear equations over finite fields, IEEE Trans.
Inform. Theory 32 (1986), 5462.
62. J. Zayer, Faktorisieren mit dem Number Field Sieve, Ph. D. thesis, Universit
at des
Saarlandes, 1995.
63. P. Zimmermann, The ECMNET Project, http://www.loria.fr/~zimmerma/
records/ecmnet.html.
Introduction
Problem 1
Problem 2
Problem 3
Finding an optimal solution for any of the three problems seems to be difficult, in view of the NP-completeness of packing problems in the plane, see e.g.
Johnson [10], or in view of the intrinsic complexity of Heilbronns triangle problem, see [14]. For the case of a fixed point set, minimizing the maximum edge
length is known to be solvable in O(n2 ) time; see Edelsbrunner and Tan [7].
Nooshin et al. [12] developed a potential-based heuristic method for Problem 2,
but did not give a theoretical guarantee for the obtained solution.
In this paper, we offer an O(n2 log n) heuristic capable of producing constant approximations for anyof the three
problems stated above. Respective
approximation factors of 6, 4 3, and 6 3 are proven, provided n is reasonably
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 2333, 2000.
c Springer-Verlag Berlin Heidelberg 2000
24
large. Our experiments reveal a much better behaviour, concerning the quality
as well as the runtime. With minor modifications, our method works for arbitrary polygons (with possible holes), and yields the same approximation result
for Problem 1. Concerning Problems 2 and 3, the approximation factors above
can be guaranteed for a restricted class of non-convex polygons.
We first develop a heuristic we called canonical Voronoi insertion which
approximately solves a certain extreme packing problem for point sets within P .
The method is similar to the one used in Gonzalez [9] and Feder and Greene [8]
developed for clustering problems. We then show how to modify the heuristic,
in order to produce a set of n points whose Delaunay triangulation within P
constitutes a constant approximation for the problems stated above. Note that
the solution we construct is neccessarily a triangulation of constant vertex degree.
Generating triangular meshes is one of the fundamental problems in computational geometry, and has been extensively studied; see e.g. the survey article
by Bern and Eppstein [3]. Main fields of applications are finite element methods and computer aided design. In finite element methods, for example, it is
desirable to generate triangulations that do not have too large or too small angles. Along this direction, various algorithms have been reported [4,11,6,2,5,15].
Restricting angles means bounding the edge length ratio for the individual triangles, but not necessarily for a triangulation in global, which might be desirable
in some applications. That is, the produced triangulation need not be uniform
concerning, e.g., the edge length ratio of its triangles. Chew [6] and Melisseratos
and Souvaine [11] construct uniform triangular meshes in the weaker sense that
only upper bounds on the triangle size are required. To the knowledge of the
authors, the problems dealt with in this paper have not been studied in the field
of computational geometry. The mesh refinement algorithms in Chew [6] and in
Ruppert [15] are similar in spirit to our Voronoi insertion method, but do not
proceed in a canonical way and aim at different optimality criteria.
A particular application of length-uniform triangulation arises in designing
structures such as plane trusses with triangular units, where it is required to determine the shape from aesthetic points of view under the constraints concerning
stress and nodal displacement. The plane truss can be viewed as a triangulation
of points in the plane by regarding truss members and nodes as edges and points,
respectively. When focusing on the shape, edge lengths should be as equal as possible from the viewpoint of design, mechanics and manufacturing; see [12,13]. In
such applications, the locations of the points are usually not fixed, but can be
viewed as decision variables. In view of this application field, it is quite natural
to consider Problems 1, 2, and 3.
The following notation will be used throughout. For two points x and y in
the plane, let l(x, y) denote their Euclidean distance. The minimum (non-zero)
distance between two point sets X and Y is defined as l(X, Y ) = min{l(x, y) |
x X, y Y, x 6= y}. When X is a singleton set {x} we simply write l(X, Y ) as
l(x, Y ). Note that l(X, X) defines the minimum interpoint distance among the
point set X.
25
(1)
26
Theorem 1. The solution Sn obtained by Algorithm INSERT is a 2-approximation of the extreme packing problem for P . That is, dn dn /2.
Proof. We claim that pn realizes the minimum (non-zero) distance from Sn to
Sn V . Equivalently, the claim is
wn1 (pn ) = l(Sn , Sn V ).
(2)
To see this, assume that the minimum distance is realized by points pk and
pj different from pn . Let pk be inserted after pj by the algorithm. Then we
get wk1 (pk ) l(pk , pj ) < l(pn , Sn1 V ) = wn1 (pn ). On the other hand,
the sequence of weights chosen by the algorithm must be non-increasing. More
exactly, wk1 (pk ) wk1 (pn ) wn1 (pn ). This is a contradiction.
The observations dn = min{l(Sn , Sn V ), l(V, V )} and l(V, V ) dn dn
now imply dn = min{wn1 (pn ), dn } by (2). But pn maximizes wn1 (x) for all
x P . So the lemma below (whose proof is omitted) completes the argument.
Lemma 1. For any set S P of n 1 points there exists a point x P with
l(x, S V ) dn /2.
27
28
where A(P ) is the area of P , and A0 denotes the area outside of P which is
covered by the circles centered at V .
Assume now w(p0n ) > 3 dn . Draw a circle with radius 32 dn around each point
in Sn0 \ Sk0 . Since w(p0n ) = l(Sn0 \ Sk0 , Sn0 V ) by (2), these circles are pairwise
disjoint. By the same reason, and because boundary distances defined by V 0 =
V Sk0 are at most 3dn , these circles all lie completely inside P . Obviously, these
circles are also disjoint from the |V | circles of radius dn centered at V . Finally,
the latter circles are pairwise disjoint, since dn l(V, V )/2. Consequently,
A(P )
9
(n k) + A00
4
(4)
where A00 denotes the area inside of P which is covered by the circles centered at
V . Combining (3) and (4), and observing A0 + A00 = |V | now implies n < 2k,
a contradiction.
It has to be observed that the number k depends on n. The following fact guarantees the assumption in Lemma 5, provided n is sufficiently large. Let B(P )
denote the perimeter of P .
Lemma 6. The condition dn A(P )/( B(P )) implies n 2k.
Proof. By (3) we have
n
A(P )
|V |.
(dn )2
B(P )
|V |.
2dn
Simple calculations now show that the condition on dn stated in the lemma
implies n 2k.
The following is a main theorem of this paper.
Theorem 2. Suppose n is large enough to assure the conditions dn l(V, V )/2
and dn A(P )/( B(P )). Then no edge in the triangulation T + = DT(Sn0 V )
is longer than 6 dn . Moreover, T + exhibits an edge length ratio of 6.
Proof. Two cases are distinguished, according to the value of w(p0n ).
Case 1: w(p0n ) < dn . Concerning upper bounds, Lemma 2 implies l(e)
2 w(p0n ) < 2 dn for all edges e belonging to non-critical triangles of T + . If
e belongs to some critical triangle, Lemma 3 shows that l(e) cannot be larger
than the maximum edge length on the boundary of P , which is at most 3 dn
by construction. Concerning lower bounds, Lemma 4 gives l(e) w(p0n ) for
edges of interior triangles. We know w(p0n ) dn /2 from Lemma 1, which implies
l(e) dn /2 because dn dn . For edges spanned by V 0 , we trivially obtain
l(e) dn as l(V 0 , V 0 ) dn by construction.
29
Case 2: w(p0n ) dn . The upper bound 2 w(p0n ) for non-critical triangles now
gives l(e) 6 dn , due to Lemmas 5 and 6. The lower bound for interior triangles
becomes l(e) w(p0n ) dn . The remaining two bounds are the same as in the
former case.
3.3 Computational issues. The time complexity of computing the triangulation T + is dominated by Steps 2 and 3 of Algorithm INSERT. In the very
first iteration of the algorithm, both steps can be accomplished in O(|V | log |V |)
time. In each further iteration j we update the current Voronoi diagram under
the insertion of a new point pj in Step 2, as well as a set of weights for the
Voronoi vertices and relevant polygon boundary points in Step 3.
Since we already know the location of the new point pj in the current Voronoi
diagram, the region of pj can be integrated in time proportional to the degree
of pj in the corresponding Delaunay triangulation, deg(pj ). We then need to
calculate, insert, and delete O(deg(pj )) weights, and then select the largest one
in the next iteration. This gives a runtime of O(deg(pj ) log n) per iteration.
The following lemma bounds the number of constructed triangles, of a certain
type. Let us call a triangle good if it is both interior and non-critical.
Lemma 7. The insertion of each point pj creates only a constant number of
good triangles.
Proof. Consider the endpoints of all good triangles incident to pj in DT(Sj
V ), and let X be the set of all such endpoints interior to P . Then l(X, X)
l(Sj , Sj ) wj1 (pj ), due to (2). On the other hand, by Lemma 2, X lies in the
circle of radius 2 wj1 (pj ) around pj . As a consequence, |X| is constant. The
number of good triangles incident to pj is at most 2 |X|, as one such triangle
would have two endpoints on P s boundary, otherwise.
For most choices of P and n, the good triangle type will be most frequent. Note
also that the degree of all points in the final triangulation T + has to be constant.
In conclusion, we obtain a runtime bound of O(n2 log n) and a space complexity of O(n). However, Lemma 7 suggests a runtime of O(log n) in most
iterations.
Approximation Results
Let us now return to the three optimization problems for the polygon P posed
in the introduction. We will rely on Theorem 2 in the following. Recall that, in
order to make the theorem hold, we have to choose n sufficiently large.
Theorem 3. The triangulation T + approximates the optimal solution for Problem 1 by a factor of 6.
Proof. Theorem 2 guarantees for T + an edge length ratio of 6, and for no triangulation this ratio can be smaller than 1.
30
We now turn our attention to Problem 2. Let the point set S in conjunction with
the triangulation T of S V be the corresponding optimum solution. Let dlong
denote the optimum objective value, that is, dlong measures the longest edge
in T. The lemma below relates dlong to the optimum value dn for the extreme
packing problem for P . The proof is omitted in this extended abstract.
Lemma 8.
dlong
3
2 dn .
6d
n . Trivially dn dn holds, and Lemma 8 implies the theorem, l(emax )/dlong
4 3.
Finally let us consider Problem 3. Let dperi denote the optimum objective
value for this problem. We show the following:
Experimental Results
31
points consec dist edge ratio flips run 1 flips run 2 edge ratio flips run 1 flips run 2
50
12
2.67
81
97
5.08
65
65
23
3.96
81
86
5.43
65
64
100
12
2.00
180
214
3.18
147
191
23
2.61
180
174
3.62
147
158
200
12
1.96
371
475
2.08
335
427
23
3.23
371
392
2.71
335
343
300
12
2.04
567
700
2.1
531
657
23
3.85
567
580
2.5
531
563
order to ensure the desired results theoretically. However, the case of dn 2dn is
also tested in our experiments. The computational results are summarized below
(fat polygon left, skinny polygon right).
We observe that (1) the actual edge length ratio is much better than the
worst-case ratio of 6 given by Theorem 3, and (2) the number of flips per insertion
of a point is very small (roughly two). Although the example polygons do not
satisfy dn < l(V, V )/2 (as required by Theorem 3) we obtained much better
ratios. This exhibits the practical effectiveness of the proposed algorithm.
Note also that for a fat polygon (left) the choice of consecutive distance of
dn 2dn produces a better ratio, while for a skinny polygon (right) the contrary
can be observed.
32
References
1. F. Aurenhammer, Voronoi diagrams a survey of a fundamental geometric data
structure, ACM Computing Surveys 23 (1991), 345-405.
2. M. Bern, D. Dobkin and D. Eppstein, Triangulating polygons without large angles, Intl. J. Comput. Geom. and Appl. 5 (1995), 171-192.
3. M. Bern and D. Eppstein, Mesh generation and optimal triangulation, in D.Z. Du (ed.), Computing in Euclidean Geometry, World Scientific Publishing, 1992,
47-123.
4. M. Bern, D. Eppstein and J.R. Gilbert, Provably good mesh generation, Journal
of Computer and System Sciences 48 (1994), 384-409.
5. M. Bern, S. Mitchell and J. Ruppert, Linear-size nonobtuse triangulation of polygons, Proceedings of the 10th Ann. ACM Symposium on Computational Geometry (1994), 221-230.
6. P. Chew, Guaranteed-Quality Mesh Generation for Curved Surfaces, Proceedings
of the 9th Ann. ACM Symposium on Computational Geometry (1993), 274-280.
7. H. Edelsbrunner and T.S. Tan, A quadratic time algorithm for the minmax length
triangulation, SIAM Journal on Computing 22 (1993), 527-551.
8. T. Feder and D.H. Greene, Optimal Algorithms for Approximate Clustering,
Proceedings of the 20th Ann. ACM Symposium STOC (1988), 434-444.
9. T. Gonzalez, Clustering to minimize the maximum intercluster distance, Theoretical Computer Science 38 (1985), 293-306.
10. D.S. Johnson, The NP-completeness column: An ongoing guide, Journal of Algorithms 3 (1982), 182-195.
11. E. Melisseratos and D. Souvaine, Coping with inconsistencies: A new approach
to produce quality triangulations of polygonal domains with holes, Proceedings
of the 8th Ann. ACM Symposium on Computational Geometry (1992),202-211.
12. H. Nooshin, K. Ishikawa, P.L. Disney and J.W. Butterworth, The traviation process, Journal of the International Association for Shell and Spatial Structures 38
(1997), 165-175.
33
Abstract. In this paper we present a heuristic for finding a large induced matching M of cubic graphs. We analyse the performance of
this heuristic, which is a random greedy algorithm, on random cubic
graphs using differential equations and obtain a lower bound on the expected size of the induced matching returned by the algorithm. The
corresponding upper bound is derived by means of a direct expectation argument. We prove that M asymptotically almost surely satisfies
0.2704n |M| 0.2821n.
Introduction
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 3443, 2000.
c Springer-Verlag Berlin Heidelberg 2000
35
Recently Golumbic and Lewenstein [8] have constructed polynomial-time algorithms for maximum induced matching in trapezoid graphs, interval-dimension
graphs and co-comparability graphs, and have given a linear-time algorithm for
maximum induced matching in interval graphs.
In this paper we present a heuristic for finding a large induced matching
M of cubic graphs. We analyse the performance of this heuristic, which is a
random greedy algorithm, on random cubic graphs using differential equations
and obtain a lower bound on the expected size of the induced matching returned
by the algorithm. The corresponding upper bound is derived by means of a
direct expectation argument. We prove that M asymptotically almost surely
satisfies 0.2704n |M| 0.2821n. Little is known on the complexity of this
problem under the additional assumption that the input graphs occur with a
given probability distribution. Zito [14] presented some simple results on dense
random graphs. The algorithm we present was analysed deterministically in [3]
where it was shown that, given an n-vertex cubic graph, the algorithm returns
an induced matching of size at least 3n/20 + o(1), and there exist infinitely many
cubic graphs realising this bound.
Throughout this paper we use the notation P (probability), E (expectation),
u.a.r. (uniformly at random) and a.a.s. (asymptotically almost surely). When
discussing any cubic graph on n vertices, we assume n to be even to avoid parity
problems.
In the following section we introduce the model used for generating cubic
graphs u.a.r. and in Section 3 we describe the notion of analysing the performance
of algorithms on random graphs using a system of differential equations. Section 4
gives the randomised algorithm and Section 5 gives its analysis showing the a.a.
sure lower bound. In Section 6 we give a direct expectation argument showing
the a.a. sure upper bound.
The model used to generate a cubic graph u.a.r. (see for example Bollobas [1])
can be summarised as follows. For an n vertex graph
take 3n points in n buckets labelled 1 . . . n with three points in each bucket
and
choose u.a.r. a perfect matching of the 3n points.
If no edge of the matching contains two points from the same bucket and no two
edges contain four points from just two buckets then this represents a cubic graph
on n vertices with no loops and no multiple edges. With probability bounded
below by a positive constant, loops and parallel edges do not occur [1]. The
edges of the random cubic graph generated are represented by the edges of the
matching and its vertices are represented by the buckets.
We may consider the generation process as follows. Initially, all vertices have
degree 0. Throughout the execution of the generation process, vertices will increase in degree until the generation is complete and all vertices have degree 3.
We refer to the graph being generated by this process as the evolving graph.
36
37
The Algorithm
38
There are two basic operations performed by the algorithm. Type 1 refers to
a step when Y2 > 0 and a vertex is chosen from V2 . Similarly, Type 2 refers to
a step where Y2 = 0 and a vertex is chosen from V1 .
Figs. 1 and 2 show the configurations that may be encountered performing
operations of Type 1 and Type 2 respectively (a.a.s.). For Type 1, we add the
edge incident with the chosen vertex. For Type 2, if (after exposing the edges
incident with the chosen vertex u) exactly one of the neighbours of u has exactly
two free points, we add the edge incident with this vertex and the chosen vertex.
Otherwise we randomly choose an edge incident with the chosen vertex.
w
v
w
v*
v
p
p
2a
p
2b
v*
p
2c
39
or p. A vertex labelled p will have one of its incident edges exposed and will
subsequently have its degree increased by one. We refer to these vertices as incs.
A vertex labelled w will have all of its incident edges exposed and we refer to
these vertices as rems. Should any rem be incident with other vertices of unknown
degree then these vertices will be incs.
Once the choice of induced matching edge has been made, all edges incident
with the endpoints of the induced matching edge are exposed and subsequently
the edges of the neighbours of the end-points of the chosen edge are exposed.
This ensures the matching is induced.
The initial step of Phase 1 is of Type 2 (at least a.a.s.). We consider operations
of Type 1 first and then combine the equations given by these operations with
those given by the operations of Type 2.
Operations of Type 1 involve the selection of a vertex u from V2 (which
has been created from processing a vertex from V1 ). The expected change in
Y2 is negligible and can assumed to be 0 since this is phase 1 and Y2 remains
small as vertices of V2 are used up almost as fast as they are created. The
desired equation may be formulated by considering the contribution to E(Yi )
in three parts; deleting v (the neighbour of u), deleting the neighbour(s) of v
and increasing the degree of the other neighbours of these neighbours by one.
Let i denote the contribution to E(Yi ) due to changing the degree of an
inc from i to i + 1 and we have
(i 3)Yi + (4 i)Yi1
.
s
This equation is valid under the assumption that Y1 = 0.
We let i = i (t) denote the contribution to E(Yi ) due to a rem and all its
edges incident with incs and we have
i =
(i 3)
(6Y0 + 2Y1 )
Yi +
i .
s
s
Let i = i (t) denote the contribution to E(Yi ) for an operation of Type
1 in Phase 1. We have
6Y0 + 2Y1
(i 3)
Yi +
i .
i =
s
s
i =
40
We now consider operations of Type 2. Let h,i (= h,i (t)) denote the contribution to E(Yi ) for operation 2h given in Fig. 2 (at time t). We will also use
ij = 1 if i = j and ij = 0 otherwise.
We have
a,i = 3i1 + i + i ,
b,i = i0 2i1 + i + 2i ,
c,i = 2i0 i1 + 2i + 2i .
These equations are formulated by considering the contribution to E(Yi ) by
deletion of vertices of known degree and the contribution given by the expected
degree of vertices of unknown degree.
For an operation of Type 2 in Phase 1, neighbours of u (the vertex selected
at random from V1 ) are in {V0 V1 }, since Y2 = 0 when the algorithm performs
this type of operation. The probability that these neighbours are in V0 or V1
are 3Y0 /s and 2Y1 /s respectively. Therefore the probabilities that, given we are
performing an operation of Type 2 in Phase 1, the operation is of type 2a, 2b or
4Y 2
9Y 2
2c are given by P(2a) = s21 , P(2b) = 12Ys20 Y1 and P(2c) = s20 respectively.
We define a birth to be the generation of a vertex in V2 by processing a vertex
of V1 . Let 1 (= 1 (t)) be the expected number of births from processing a vertex
from V1 (at time t). Then we have
2Y1
4Y1
4Y1
+ P(2b) 2 +
+ P(2c) 22 +
.
1 = P(2a) 2 +
s
s
s
Here, for each case, we consider the probability that vertices of degree one (in
the evolving graph) become vertices of degree two by exposing an edge incident
with the vertex.
Similarly, we let 2 = 2 (t) be the expected number of births from processing
a vertex from V2 . Then we have
6Y0 + 2Y1
2 ,
2 =
s
giving the expected number of births in a clutch to be 1 /(1 2 ).
For Phase 1, the equation giving the expected change in Yi for a clutch is
therefore given by
E(Yi ) = P(2a)a,i + P(2b)b,i + P(2c)c,i +
1
i .
1 2
1
1 2
since the contribution to the increase in the size of the induced matching by the
Type 2 operation in a clutch is 1.
5.2
41
4z12
12z0 z1
9z02
1
+
c,i +
i
a,i
b,i
2
2
2
1 2
(i {0, 1})
(i3)
zi
a,i = 3i1 + i +
(i3)zi +(4i)zi1
,
i1
,
b,i = i0 2i1 + i + 2 (i3)zi +(4i)z
i1
,
c,i = 2i0 i1 + +2i + 2 (i3)zi +(4i)z
P2
i=0 (3
(i3)
zi
i)zi ,
6z0 +2z1
i ,
1 =
4z12
2
2 =
6z0 +2z1
2 .
2 +
2z1
+
12z0 z1
2
2 +
4z1
+
4z12
2
22 +
4z1
, and
Using the equation representing the expected increase in the size of M after
processing a clutch of vertices in Phase 1 and writing M (t) = nz(t/n) suggests
the differential equation for z as
z0 = 1 +
1
.
1 2
42
4z12
2 a,i
dzi
dz
zi0 (x)
z 0 (x)
12z0 z1
2 b,i
1+
and we have
9z02
2 c,i
1
12 i
1
12
(i {0, 1})
(0 i 2).
(1)
The increase in the size of the induced matching per clutch of vertices processed
zi0 (x)
i
in this Phase is 1, so computing the ratio dz
dz = z 0 (x) gives the same equation
as that given in (1). Again, differentiation is with respect to z and all functions
can be taken as functions of z.
The solution to this system of differential equations represents the cardinalities of the sets Vi for given M (scaled by n1 ). For Phase 1, the initial conditions
are
z0 (0) = 1, zi (0) = 0 (i > 0).
The initial conditions for Phase 2 are given by the final conditions for Phase 1.
Wormald [12] describes a general result which ensures that the solutions to
the differential equations almost surely approximate the variables Yi . It is simple
to define a domain for the variables zi so that Theorem 5.1 from [12] may be
applied to the process within each phase. An argument similar to that given
for independent sets in [12] or that given for independent dominating sets in [4]
ensures that a.a.s. the process passes through phases as defined informally, and
that Phase 2 follows Phase 1. Formally, Phase 1 ends at the time corresponding
to 2 = 1 as defined by the equations for Phase 1. Once in Phase 2, vertices in
V2 are replenished with high probability which keeps the process in Phase 2.
The differential equations were solved using a Runge-Kutta method, giving
2 = 1 at z = 0.1349 and in Phase 2 z2 = 0 at z > 0.2704. This corresponds
to the size of the induced matching (scaled by n1 ) when all vertices are used up,
thus proving the theorem.
t
u
E(M (G, k))
=
n
2k
N (k) 32k
43
(3(n 2k))! N ( 3n
2 5k)
(3n 10k)!
N ( 3n
2 )
4k
n! 32k (3(n 2k))! ( 3n
2 )! 2
.
k! (n 2k)! ( 3n
2 5k)! (3n)!
32 f (3(1 2)) f ( 32 ) 24
.
f () f (1 2) f ( 32 5) f (3)
Solving this we find that for 0.2821 the expression on the right tends to 0.
t
u
Note that this bound may be improved by counting only maximal matchings.
However the improvement is slight and we do not include the details here for
reasons of brevity.
References
1. Bollob
as, B.: Random Graphs. Academic Press, London, 1985.
2. Cameron, K.: Induced Matchings. Discrete Applied Math., 24:97102, 1989.
3. Duckworth, W., Manlove, D. and Zito, M.: On the Approximability of the Maximum Induced Matching Problem. J. of Combinatorial Optimisation (Submitted).
4. Duckworth, W. and Wormald, N.C.: Minimum Independent Dominating Sets of
Random Cubic Graphs. Random Structures and Algorithms (Submitted).
5. Erd
os, E.: Problems and Results in Combinatorial Analysis and Graph Theory.
Discrete Math., 72:8192, 1988.
6. Faudree, R.J., Gy
arfas, A., Schelp, R.H. and Tuza, Z.: Induced Matchings in
Bipartite Graphs. Discrete Math., 78:8387, 1989.
7. Golumbic, M.C. and Laskar, R.C.: Irredundancy in Circular Arc Graphs. Discrete
Applied Math., 44:7989, 1993.
8. Golumbic, M.C. and Lewenstein, M.: New Results on Induced Matchings. Discrete
Applied Math., 101:157165, 2000.
9. Liu, J. and Zhou, H.: Maximum Induced Matchings in Graphs. Discrete Math.,
170:271281, 1997.
10. Steger, A. and Yu, M.: On Induced Matchings. Discrete Math., 120:291295,
1993.
11. Stockmeyer, L.J. and Vazirani, V.V.: NP-Completeness of Some Generalizations
of the Maximum Matching Problem. Inf. Proc. Lett., 15(1):1419, 1982.
12. Wormald, N.C.: Differential Equations for Random Processes and Random
Graphs. In Lectures on Approximation and Randomized Algorithms, 73155,
PWN, Warsaw, 1999. Michal Karo
nski and Hans-J
urgen Pr
omel (editors).
13. Zito, M.: Induced Matchings in Regular Graphs and Trees. In Proceedings of the
25th International Workshop on Graph Theoretic Concepts in Computer Science,
volume 1665 of Lecture Notes in Computer Science , 89100. Springer-Verlag,
1999.
14. Zito, M.: Randomised Techniques in Combinatorial Algorithmics. PhD thesis,
Department of Computer Science, University of Warwick, UK, November 1999.
Abstract. Arrangements of lines in the plane and algorithms for computing extreme features of arrangements are a major topic in computational geometry. Theoretical bounds on the size of these features are
also of great interest. Heilbronns triangle problem is one of the famous
problems in discrete geometry. In this paper we show a duality between
extreme (small) face problems in line arrangements (bounded in the unit
square) and Heilbronn-type problems. We obtain lower and upper combinatorial bounds (some are tight) for some of these problems.
Introduction
The investigation of arrangements of lines in the plane has attracted much attention in the literature. In particular, certain extremal features of such arrangements are of great interest. Using standard duality between lines and points,
such arrangements can be mapped into sets of points in the plane, which have
also been studied intensively. In this dual setting, distributions in which certain
features (defined by triples of points) assume their maxima are often sought.
In this paper we show a connection between these two classes of problems and
summarize the known bounds for some extremal-feature problems.
Let A(L) be an arrangement of a set L of n lines. We assume the lines of
A to be in general position, in the sense that no two lines have the same slope.
Thus every triple of lines define a triangle. Let U = [0, 1]2 be the unit square.
An arrangement A is called narrow if all its lines intersect the two vertical sides
of U . A narrow arrangement A is called transposed if the lines of A intersect the
vertical sides of U in two sequences that, when sorted in increasing y order, are
the reverse of each other. Clearly, every transposed arrangement is also narrow.
Note that all the vertices of a transposed arrangement lie in U . Later in the paper
we will also define the set of convex arrangements which is a proper subset of
the set of transposed arrangements.
In this paper we investigate the size of triangles defined by the lines of
narrow arrangements, according to several measures of the size of a triangle. We
consider the arrangements in which the minimum size of a triangle assumes its
maximum, and attempt to bound this value.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 4453, 2000.
c Springer-Verlag Berlin Heidelberg 2000
45
log log n
log n
). Then
1
1
) [7] and O( n1.117...
) [8]. The
Roth improved the upper bound twice to O( n1.105...
1
1
best currently-known upper bound, G0 (n) = O( n8/7 ) = O( n1.142... ) (for any
> 0), is due to Komlos, Pintz, and Szemeredi [3] by a further refinement of the
method of [7,8]. A simple probabilistic argument by Alon et al. [1, p. 30] proves
os [6, appendix] showed the same lower bound by an
a lower bound of ( n12 ). Erd
example. However, Komlos, Pintz, and Szemeredi [4] show by a rather involved
n
probabilistic construction that G0 (n) = ( log
n2 ). In a companion paper [2] we
show a lower bound for the generalization of Heilbronns triangle problem to
higher dimensions.
In this paper we consider some variants of Heilbronns problem, in which
other measures of triangles defined by triples of points are considered, and/or
some restrictions are imposed on the locations of the points in U . Specifically,
in a monotone decreasing distribution of points, the x-coordinates and the ycoordinates of the points appear in opposite permutations, and a convex monotone decreasing distribution is a monotone decreasing distribution in which the
points form a convex (or concave) chain according to the respective permutation.
46
Gill Barequet
1
lk
ri
Qi,k
lj
li
Qi,k|j
rj
rk
1
Fig. 1. Vertical distance
y = (ri li )x+ li . We compute the distance between Qi,k = (xi,k , yi,k ), the intersection point of `i and `k , and Qi,k|j = (xi,k , yi,k|j ), the vertical projection of Qi,k
lk ri li rk
k li
on `j . A simple calculation shows that Qi,k = ( (lk lil)(r
,
).
k ri ) (lk li )(rk ri )
r (l l )l (r r )
i
k
.
By substituting xi,k in the equation of `j we find that yi,k|j = j(lkklii)(rj k r
i)
Finally,
ri (lk lj ) rj (lk li ) + rk (lj li )
Dist(Qi,k , Qi,k|j ) = |yi,k yi,k|j | =
(lk li ) + (ri rk )
li ri 1
1
2 lj rj 1
lk rk 1
.
= 4 abs
2((lk li ) + (ri rk ))
The numerator of the last term is the area of the triangle defined by the points
Pi , Pj , and Pk . In case Pi and Pk are in monotone decreasing position, the
47
lj ri li rj
lj li
,
).
(lj li ) (rj ri ) (lj li ) (rj ri )
As noted in the introduction, the best known lower bound for the original Heiln
os, Pintz, and
bronns triangle problem, G0 (n) = ( log
n2 ), is obtained by Koml
Szemeredi [4]. The same authors obtain in [3] the best known upper bound,
1
).
O( n1.142...
48
Gill Barequet
Theorem 1. G0
(n) = O( n12 ).
Theorem 2. G0
(n) = ( n13 ).
Proof. The lower bound is obtained by a simple example: Put n points equally
spaced on an arc of radius 1 and of length 2 (see Figure 2). The points are
i
sin( 4n
)
ith point
i
cos( 4n
)
49
segments are now dropped. In total we have dropped less than n/2 segments;
therefore two consecutive segments have not been dropped. The area of the
triangle which these two segments define is upper bounded by 12 ( n8 )2 sin( 4
n ) =
( n13 ).
Vertical Height
Theorem 3. G1 (n) = ( n1 ).
Proof. The lower bound is shown by an example.1 Set li = ni
for 1 i n (a set of almost-parallel lines). In this example
1
ni
and ri =
i
n,
(j i)ni+j (k i)ni+k + (k j)nj+k
,
G1 (Pi , Pj , Pk ) =
nj+1 (nk ni )
which is minimized when i, j, and k are consecutive integers. It is easy to verify
n1
that in this example, for every i, G1 (Pi , Pi+1 , Pi+2 ) = n(n+1)
. Hence G1 (n) =
1
( n ).
For the upper bound we return to the primal representation of the problem
by an arrangement A of n lines. Since A is narrow, there exists a vertical segment
of length 1 which stabs all the n lines. Hence there exists a triple of lines which
2
. Such a triple cannot
are stabbed by a vertical segment of length at most n1
2
define a triangle whose vertical height exceeds n1 , therefore F1 (n) = O( n1 ).
We now refer to transposed arrangements of lines (the dual of monotone
decreasing Heilbronns sets of points). The best upper bound of which we are
aware is Mitchells [5]. Here is a simplified version of the proof of this bound.
Let i denote the slope of `i (for 1 i n). Assume without loss of generality
that at least n/2 lines of L have positive slopes. For the asymptotic analysis we
may assume that all the lines of L are ascending. Denote by h the minimum
vertical height of a triangle in A(L). Then each pair of lines `i , `j L induces
3h2 cos( ) cos( )
i
j
(see Figure 3) through which no other line of
a hexagon of area
4 sin(j i )
L can pass. This is since such a line would form with `i and `j a triangle whose
vertical height is at most h/2. The intersection of every pair of such hexagons is
empty, for otherwise there would be a triangle
whose vertical height is less than
h. Denote by S the total area of the n2 hexagons. On one hand,
S=
X
1i<jn
3h2
3h2 cos(i ) cos(j )
4 sin(j i )
8
X
1i<jn
3h2
1
sin(j i )
8
X
1i<jn
1
,
j i
where we use the facts that 0 < i /4 for 1 i n and sin() < .
1
Note that this construction is monotone and even convex, and yet it beats the O( n12 )
(conv)
upper bound of G1
50
Gill Barequet
`j
`i
h
2
i
j
1
1i<jn j i
Theorem 4. G1
1
(n) = O( n log
n ).
Finally we consider convex arrangements (the dual of convex monotone decreasing Heilbronns sets). As with the convex case of the original Heilbronns
triangle problem, the bound in this case is tight:
(conv)
Theorem 5. G1
(n) = ( n12 ).
Proof. For the lower bound we use the same example (points on an arc) as in the
proof of Theorem 2. Clearly, the perimeter of the bounding box of every triangle
defined by three consecutive points in this example is ( n1 ). Since the area of
each such triangle is ( n13 ) we obtain the lower bound. For the upper bound we
follow again the argument of dropping segments. The perimeter of the bounding
box of the triangle defined by the two remaining consecutive segments is linear
in the length s of the longer segment. The quotient of the area of the triangle
1
and s is upper bounded by 12 ( n8 ) sin( 2
n ) = ( n2 ).
(conv)
(n) =
ri
i
n
i
n
G1 (Pi , Pj , Pk )
i 2
n
pi
sin( i
) cos( i
) |
n
n
sin(
(ij)
2n
| (ij)(kj) |
n(i+k+n)
j i)( k j)
|
i+ k+ n) n
)sin(
(ik)
2n
)+sin(
(ik)
2n
(conv)
51
(n) = ( n12 )
Area
1
nM i
and ri =
i
n
[(j i)nM(i+j) (k i)nM(i+k) + (k j)nM(j+k) ]2
,
G2 (Pi , Pj , Pk ) =
2n2 (nMj nMi )(nMk nMi )(nMk nMj )
which is minimized by i = 1, j = 2, and k = 3. In this example G2 (P1 , P2 , P3 ) =
n2(M 1) (nM 1)
.
2nM +1
Set M =
log f (n)
2 log n
Theorem 7. G2
(n) = O( 1
n
log n
).
X
1i<jn
2A2
= (A2 n2 log n),
sin(j i )
log n
).
52
Gill Barequet
`j
A
sin(j i )
`i
i
j
(mon)
Finally we consider convex arrangements (the dual of convex monotone decreasing Heilbronns sets).
(conv)
Theorem 8. G2
(n) = ( n13 ).
Summary
Acknowledgment
The author wishes to thank Noga Alon (who suggested the dropped-segments
argument) and Micha Sharir for helpful discussions. The original proof that
53
Measure
Construction
Arrangement Point
Narrow (Arng.)
Transp. (Arng.) Convex (Arng.)
of Lines
Set
General (Heil.)
Mon. Dec. (Heil.) Conv. Dec. (Heil.)
n
1
G0 : A
( log
),
O(
)
[( n13 )], O( n12 )
( n13 )
2
8/7
n
n
1
1
1
F1 : V.H.
G1 : A/P
( n )
[( n2 )], O( n log n )
( n12 )
2
3
1
1
F2 : Area
G2 : A /P
Unbounded
[( n3 )], O(
)
( n13 )
n
log n
(mon)
1
(n) = O( n log
G1
n ) is given in the unpublished manuscript [5]. It inspired the
simplified proof given in this paper with the kind permission of Joseph Mitchell.
References
1. Alon, N., Spencer, J.H.: The Probabilistic Method. John Wiley & Sons, 1992
2. Barequet, G.: A lower bound for Heilbronns triangle problem in d dimensions.
Proc. 10th Ann. ACM-SIAM Symp. on Discrete Algorithms. Baltimore, MD, 76
81, January 1999
3. Koml
os, J., Pintz, J., Szemeredi, E.: On Heilbronns triangle problem. J. London
Mathematical Society (2) 24 (1981) 385396
4. Koml
os, J., Pintz, J., Szemeredi, E.: A lower bound for Heilbronns problem. J.
London Mathematical Society (2) 25 (1982) 1324
5. Mitchell, J.S.B.: On the existence of small faces in arrangements of lines. Manuscript,
Dept. of Applied Mathematics, SUNY Stony Brook, NY, 1995. (available at
http://www.ams.sunysb.edu/~jsbm/publications.html)
6. Roth, K.F.: On a problem of Heilbronn. Proc. London Mathematical Society 26
(1951) 198204
7. Roth, K.F.: On a problem of Heilbronn, II. Proc. London Mathematical Society (3)
25 (1972) 193212
8. Roth, K.F.: On a problem of Heilbronn, III. Proc. London Mathematical Society (3)
25 (1972) 543549
9. Schmidt, W.M.: On a problem of Heilbronn. J. London Mathematical Society (2) 4
(1971) 545550
Departament de Matem`
atica Aplicada I, Universitat Polit`ecnica de Catalunya
(UPC), Avda. Diagonal 647, 08028 Barcelona, SPAIN
([email protected])
2
Basser Dept. of Computer Science, The University of Sydney, Sydney, NSW 2006,
AUSTRALIA
([email protected])
3
Departament de Matem`
atica Aplicada II, Universitat Polit`ecnica de Catalunya
(UPC), Pau Gargallo 5, 08028 Barcelona, SPAIN
([email protected])
Abstract. One strategy for the enumeration of a class of objects is
local transformation, in which new objects of the class are produced by
means of a small modification of a previously-visited object in the same
class. When local transformation is possible, the operation can be used
to generate objects of the class via random walks, and as the basis for
such optimization heuristics as simulated annealing.
For general simple polygons on fixed point sets, it is still not known
whether the class of polygons on the set is connected via a constant-size
local transformation. In this paper, we exhibit a simple local transformation for which the classes of (weakly) edge-visible and (weakly) externally
visible polygons are connected. The latter class is particularly interesting
as it is the most general polygon class known to be connected under local
transformation.
Introduction
Even for small instances, strategies for combinatorial enumeration must be very
ecient in order to handle the huge numbers of objects which are often produced.
In particular, they must avoid both the excessive recomputation of individual
objects, and the excessive computation of objects which are outside the class
under consideration. One way of limiting the construction of invalid objects is
through the use of local transformation, in which new objects of the class are
generated only from previously-examined objects by means of small changes. The
class must be connected with respect to the local transformation in question: that
is, every valid object must be reachable from some initial valid object by means
of a nite sequence of transformations. Local search and optimization methods
such as reverse search enumeration [1], random walks and simulated annealing
all make use of local transformation to visit new objects.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 5463, 2000.
c Springer-Verlag Berlin Heidelberg 2000
55
Within the discipline of computational geometry, interest in local transformation can be traced back to the investigation of the connectivity of Delaunay triangulations under the diagonal ip operation [12,4]. Recent connectivity results
have been established for triangulations, including triangulations of polygons
[9,10], topological triangulations [3,14], and triangulations in higher dimensions
[11]. Other classes of objects, such as non-crossing trees and Euclidean matchings
have also been studied [5,6].
One class of great importance to computational geometry, but for which
no satisfactory enumeration method is yet known, is that of simple polygons.
Given a set of n points S, one can generate all simple polygons on S by conpossible Hamiltonian circuits of S, and then testing
sidering each of the (n1)!
2
each for self-intersection. However, this approach is hardly practical, as the proportion of circuits which are simple diminishes (at least) exponentially with n.
Zhu, Sundaram, Snoeyink, and Mitchell have provided a method for generating
x-monotone polygons in O(n2 ) time which does not use local transformation;
unfortunately, there is no obvious way of extending this to other classes of polygons.
As in the case of triangulations, if any simple polygon on S could be transformed into any other by means of a nite sequence of local transformations,
then methods such as reverse search enumeration could be applied. The time
complexity of the method would depend heavily on the number of edges modied by the transformation.
1.1
Edge Flips
Let S be a set of n points not all collinear. If two distinct polygons P and P on
S dier in exactly k edges, then we shall say that P is (edge) k-flippable from P
to P . Alternatively, we say that P is transformable to P by means of a k-flip.
The edges of P not contained in P are called the leaving edges, and the edges
of P not contained in P are called the entering edges.
Figure 1 gives a characterization of k-ips for k = 2 and k = 3. A few special
cases are worth mentioning:
If the vertices of the internal chain of a 2-ip are collinear (or if the chain
consists of a single edge), the 2-ip is called a line flip (L-ip).
If two leaving edges of a 3-ip share a vertex in common, the ip will be
referred to as a vertex-edge flip (VE-ip).
A ip is called planar if no leaving edge intersects any entering edge, except
perhaps at their endpoints.
Planar ips are of computational interest, in that the entering edges are
edges of the visibility graph of P . Visibility graphs of simple polygons can be
computed in (M ) time, where M is the number of edges of the graph [7]. Using
the visibility graph, all candidate L-ips and planar VE-ips of a given polygon
can be generated in a straightforward manner, in O(M ) time.
In 1991, David Avis posed the following question: can any simple polygon
on S be transformed to any other simple polygon on S by means of a nite
56
2- ip
L- ip
b
b
b
b
b
b
Non-planar 3-
ip
b
Planar VE-
ip
b
b
b
b
Non-planar VE-
ip
b
b
b
b
b
b b b b b
b b b b b
Planar 3- ip
b
b
Planar 3-
ip
b
b
b
57
Polygon Classes
Edge-Visible Polygons
58
pi
pj
3.1
Let S be a set of n planar points, not all collinear. Let e be an edge of the convex
hull boundary of S, and q be a point on e, such that the endpoints of e are the only
pair of points of S forming a collinearity with q. Let P = (p0 , p1 , p2 , . . . , pn1 )
be an edge-visible polygon on S from e = (p0 , pn1 ), with vertices listed in
clockwise order about the interior.
With respect to q, for 0 < i < m 1, vertex pi is a left cusp if both pii
and pi+1 appear after pi in clockwise angular order about q. If instead both pi1
and pi+1 appear before pi , then pi is a right cusp. The notion of a cusp extends
to polygons which are not edge-visible, and even to polygonal chains, provided
that adjacent vertices are not collinear with q.
The following lemma shows the existence of a chain of P that is entirely
visible from q, and whose endpoints are either endpoints of e or cusps.
Lemma 1. Let P , e and q be as defined above. Then there exist indices 0 a <
b < n such that:
1. every point of subchain (pa , pa+1 , . . . , pb ) is visible from q, with the possible
exceptions of pa if a = 0, and pb if b = n 1;
2. if a > 0, then pa is a left cusp;
3. if b < n 1, then pb is a right cusp.
Proof. Omitted.
3.2
Let us now consider the polygon K q spanning the points of S in such a way that
its vertices appear consecutively in (clockwise) angular order about q. Polygon
K q shall be called the canonical edge-visible polygon on S with respect to q. Note
that K q is uniquely dened, and is simple.
Any edge-visible polygon P on S with visibility to e can be given a score
depending on the visibility of its vertices from q. Every vertex si of P contributes
pc
pj
pa
59
pj
q
pb
pa
pj+1
q
pb
Fig. 4. Searching for a cusp behind chain P , and attempting VE-ip with vertex
Pc .
either 0 or 1 to the score: si contributes 1 if si is an endpoint of e or if si is
visible from q; otherwise, the contribution of si is 0. Every polygon on S with
edge-visibility to e can be scored in this way. It is not hard to see that the
score of the canonical polygon K q is n, and that K q is the only polygon on S
which achieves this maximum score. Also, the minimum possible score is 3: a
contribution of 1 from each endpoint of e, and 1 from that vertex of P closest
to the line containing e (this vertex must be visible from q).
Lemma 2. Let S be a set of n planar points, not all collinear. Let e be an edge
of the convex hull boundary of S, and q be a point on e, such that the endpoints
of e are the only pair of points of S forming a collinearity with q. If P is an
edge-visible polygon spanning S with visibility to e, then P can be transformed
into canonical edge-visible polygon K q via a sequence of at most n3 VE-L-flips.
Proof. Let P be the polygon (p0 , p1 , p2 , . . . , pn1 ), with e = (p0 , pn1 ), and
vertices listed in clockwise order about the interior.
It suces to show that if P = K q , there exists an improving VE-ip; that
is, one which transforms P into another edge-visible polygon P such that the
score of P is greater than that of P .
Lemma 1 implies the existence of indices 0 a < b n 1 such that
a = 0 or pa is a left cusp,
b = n 1 or pb is a right cusp, and
P = (pa , pa+1 , . . . , pb ) is entirely visible from q the only possible exceptions being at pa if a = 0, or pb if b = n 1.
The only situation in which a could equal 0 and b could equal n 1 is if P
were the canonical polygon K q . Since by assumption P = K q , either a > 0 or
b < n 1. We will consider only the case where a > 0, as the arguments for the
case where b < n 1 are virtually identical.
Starting from pa , we search for a vertex and edge to participate in a VE-ip,
by performing a radial sweep clockwise about q. As the sweep ray progresses, the
closest intersection points (to q) with both P and P \ P are maintained, the
60
rst intersections being on edge (pa , pa+1 ) of P and edge (pa , pa1 ) of P \ P .
Note that the visibility of P to q implies that the chain is radially monotone
with respect to q; that is, any ray from q intersects P in at most one point (see
Figure 4). The sweep continues until a cusp pc of P \ P is encountered. We
claim that this must occur before the sweep ray reaches pb .
Since pc is a cusp, it must be a convex vertex. From the edge-visible property
of P , it must therefore be an ear. Let (pj , pj+1 ) be the edge of P intersected
by the ray through pc , where a j < b. If pc is visible from both pj and pj+1 , a
VE-ip is possible: edges (pc1 , pc ), (pc , pc+1 ) and (pj , pj+1 ) could be replaced
by edges (pc1 , pc+1 ), (pc , pj ) and (pc , pj+1 ). Due to the radial monotonicity of
P with respect to q, the removal of edge (pj , pj+1 ) would result in pc becoming
visible from q. The internal visibility to e and to q of all other vertices would
remain unchanged; the VE-ip would thus yield an edge-visible polygon of higher
score than P . However, it is possible that some part of the polygon interferes
with the visibility from pc to pj+1 (see Figure 4).
If pc is not visible from both pj and pj+1 , we search for an alternative to pc
for the ip with (pj , pj+1 ). Let l be the line segment joining q and pc , and let x
be a point of l between (pj , pj+1 ) and pc . Imagine a second sweep in which the
point x begins on (pj , pj+1 ) and slowly moves along l towards pc . As x moves,
the empty triangular area x bounded by x, pj and pj+1 would grow, until one
or both of its sides comes into contact with at least one vertex of P \ P . Let us
assume that contact occurs along the side (x, pj+1 ) of the triangle; the case in
which the only contact is along (x, pj ) is handled symmetrically.
For contact to occur along (x, pj+1 ), there must exist b < d d < n 1
such that
pi is collinear with (x, pj+1 ) for all d i d ,
pd +1 is not collinear with (x, pj+1 ), and
pi is not collinear with (x, pj+1 ) for all j + 1 < i < d.
There are two cases remaining to be considered.
1. j + 2 < d.
The segment (pj , pd ) passes through the interior of x , and thus pj and pd
are mutually visible. The construction guarantees that pd and pj+1 are also
visible, and that pd is a convex vertex. Here, a VE-ip is possible: edges
(pd1 , pd ), (pd , pd+1 ) and (pj , pj+1 ) could be replaced by edges (pd1 , pd+1 ),
(pd , pj ) and (pd , pj+1 ). By the same arguments as when pc was visible from
pj and pj+1 , the VE-ip would yield an edge-visible polygon of higher score
than P (see Figure 5).
2. j + 2 = d.
The segment (pd , pj ) passes through the interior of x , and thus pd and
pj are mutually visible. The collinearity of (pj+1 , pj+2 , . . . , pd ) and the fact
that pd is a convex vertex together imply that pd +1 and pj+1 are mutually
visible. To see this, consider the polygon that would result if the collinear
chain (pj+1 , pj+2 , . . . , pd ) were replaced by the new edge (pj+1 , pd ). This
resulting polygon would also be edge-visible with respect to e, and pd would
pj
pc
pc
x
pj
pd
p d
pj+1
q
61
pd
pj+1
q
The methods of the previous section for proving connectivity under the VE-Lip operation of edge-visible polygons can be extended to other classes as well.
The general strategy is the same: dene a score function and a unique canonical
polygon which maximizes it, and then show that there always exists an improving
VE-L-ip for every polygon other than the canonical.
4.1
Let point set S, convex hull edge e, and point q on e be dened as in the previous
section. Let h be the number of points of S on the boundary of its convex hull.
The canonical externally visible polygon K q = (k0 , k1 , . . . , kh1 , kh , . . . , kn1 ) is
dened as follows:
the endpoints of e are k0 and kh1 ;
the subchain (k0 , k1 , . . . , kh1 ) of K q spans the points of S on its convex hull
boundary, in counterclockwise order about the interior;
62
the subchain (kh , kh+1 , . . . , kn1 ) of K q spans the points of S interior to the
convex hull;
the vertices of subchain (kh1 , . . . , kn1 , k0 ) appear consecutively in clockwise angular order about q.
Again, K q is uniquely dened, and is simple
An externally visible polygon P on S will be scored as follows: vertex si in
the interior of the convex hull of S contributes 1 if si has external visibility to
q; otherwise, if si is not externally visible to q or if si is on the convex hull
boundary, the contribution of s1 is 0. The score of the canonical polygon K q
is n h, and no other externally visible polygon on S achieves this maximum
score. The minimum possible score is 0, occurring whenever e is an edge of P .
The following lemma is a corollary of Lemma 2.
Lemma 3. Let S be a set of n planar points, not all collinear. Let e be an edge
of the convex hull boundary of S, and q be a point on e, such that no pair of
points form a collinearity with q unless they are both collinear with e. If P is an
externally visible polygon spanning S, then P can be transformed into canonical
externally visible polygon K q via a sequence of at most n h VE-L-flips.
Proof. The details have been omitted, as the proof is virtually identical to that
of Lemma 2.
Lemma 3 immediately implies the connectivity result for externally visible
polygons.
Theorem 2. Let S be a set of n planar points, not all collinear. Let P and P
be externally visible polygons spanning S. Then P can be transformed into P
via a sequence of no more than 2n 2h VE-L-flips.
4.2
63
References
1. D. Avis and K. Fukuda, Reverse search for enumeration, Discr. Appl. Math.
65:2146, 1996.
2. D. Avis and G. T. Toussaint, An optimal algorithm for determining the visibility
of a polygon from an edge, IEEE Trans. Comput. C-30:910914, 1981.
3. H. Edelsbrunner and N. R. Shah, Incremental topological flipping works for
regular triangulations, Algorithmica 15:223241, 1996.
4. S. Fortune, Voronoi diagrams and Delaunay triangulations, in Computing in
Euclidean Geometry, D. Z. Du and F. K. Hwang, eds., World Scientific, pp.
193234, 1992.
5. C. Hernando, F. Hurtado, A. M
arquez, M. Mora and M. Noy, Geometric tree
graphs of points in convex position, Discr. Appl. Math. 93:5166, 1999.
6. C. Hernando, F. Hurtado and M. Noy, Graphs of non-crossing matchings, Proc.
15th European Conference on Computational Geometry, pp. 97100, 1999.
7. J. Hershberger, Finding the visibility graph of a simple polygon in time proportional to its size, Algorithmica 4:141155, 1989.
8. M. E. Houle, On local transformations of simple polygons, Australian Comp.
Sci. Commun. 18(3):6471 (Proc. CATS96, Melbourne), 1996.
9. F. Hurtado and M. Noy, Graphs of triangulations of a convex polygon and tree
of triangulations, Comput. Geom. Theory Appl. 13:179188, 1999.
10. F. Hurtado, M. Noy and J. Urrutia, Flipping edges in triangulations, Discr.
Comp. Geom. 22:333346, 1999.
11. B. Joe, Construction of three-dimensional Delaunay triangulations using local
transformations, Computer Aided Geom. Design 8:123142, 1991.
12. C. L. Lawson, Transforming triangulations, Discr. Math. 3:365372, 1972.
13. J. ORourke, Art Gallery Theorems and Algorithms, Oxford University Press,
New York, 1987.
14. M. Pocchiola and G. Vegter, Computing the visibility graph via pseudotriangulations Proc. 11th ACM Symp. Comp. Geom., 1995, pp. 248257.
15. C. Zhu, G. Sundaram, J. Snoeyink, and J. S. B. Mitchell, Generating random
polygons with given vertices, Comput. Geom. Theory Appl. 6:277290, 1996.
Introduction
Research partially supported by operating grants from the Natural Sciences and
Engineering Research Council (NSERC) of Canada, by the project Algorithms for
Large Data Sets: Science and Engineering of the Italian Ministry of University and
Scientific and Technological Research (MURST 40%), and by the project Geometria
Computazionale Robusta con Applicazioni alla Grafica ed a CAD of the Italian
National Research Council (CNR).
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 6473, 2000.
c Springer-Verlag Berlin Heidelberg 2000
65
West
North
U
East
O
p
South
Down
Fig. 1. No path of shape = U W DESW N can start at the origin O and reach
a point p East of O.
The main result of this paper is a combinatorial characterization of those 3D
shape path reachability problem instances that admit solution, together with
linear time recognition and embedding algorithms based on this characterization.
Various 2D versions of our 3D shape path problem have been studied in
several papers, including [10, 9]. The problem has also been generalized to nonorthogonal polygons and graphs in [11, 4, 7].
A basic technique for 2D orthogonal layout in VLSI and in graph drawing
is to give a shape for a graph, that is, an assignment of direction labels E,
66
W , N , and S to the edges, then to determine lengths for the edges so that the
layout is non-crossing [Vijayan and Widgerson] ( [10]). The graph must have
maximum degree 4. In the VLSI context, each vertex represents either a corner
of a bounding box containing components, or a connection pin on the side of
such a box. The edges at a vertex connect it to its two neighbors (pins or box
corners) on the bounding box and, in the case of a pin vertex, to a pin on another
box.
The well-known topology-shape-metrics approach [3] for constructing a rectilinear embedding of a planar graph consists of three main steps, called planarization, orthogonalization, and compaction. The planarization step determines an
embedding, i.e., the face cycles, for the graph in the plane. The orthogonalization step then specifies for each edge (u, v), an ordered list of the bends that the
orthogonal polygonal line representing (u, v) is to have in the final embedding.
For example, (u, v) could be labeled N ESN E, which would say starting from
u first go North, then go East, etc. Finally, the compaction step computes the
final embedding, giving coordinates to vertices and bends.
While the literature on 3D orthogonal embeddings of graphs is quite rich (see
e.g. [1, 5, 6, 8, 12, 13]), the extension of the topology-shape-metrics approach to
3D remains, as far as we know, to be carried out. The 3D shape path reachability
results we present here are an essential prerequisite for such a program.
67
W . These elements belong to the same flat, F1 , where they appear consecutively;
they do not belong to F2 . The last element of is an N , which belongs to flat
F2 but not to F1 . Thus the conditions for a canonical sequence of length k = 3
and type {U, N, W } are satisfied by the subsequence of consisting of its first,
second, and last elements. The first, next-to-last, and last elements of form a
second canonical sequence of type {U, N, W }. Note, however, that does not
contain a canonical subsequence of type {U, E, N }: these labels occur in unique
positions in , and in particular, the unique U and the unique E both belong to
the same flat F1 , but they are not consecutive elements of .
The essence of our combinatorial characterization of solvable shape path
reachability problems is given below. For concreteness, the characterization is
given with respect to the U N E octant. As explained in the next section, the
results for other octants can be obtained by a suitable permutation of the labels.
Theorem 1. Let be a shape and let p be a point in the U N E octant. Then
there exists a simple, orthogonal, polygonal curve of shape that starts at the
origin and that terminates at p if and only if contains a canonical sequence of
type {U, N, E}.
In other words, p can be reached, starting from the origin, by a simple polygonal curve of shape if and only if it is possible to choose from a U element,
an N element and an E element, not necessarily in that order, such that if any
flat of contains two of these elements, then the two elements are consecutive
in .
Preliminaries
We regard each coordinate axis in the standard 3D coordinate system as consisting of the origin plus two open semi-axes, directed away from the origin and
labelled with a pair of opposite direction labels from the set {N, W, S, E, U, D}.
A triple XY Z of distinct unordered labels no two of which are opposite defines
the XY Z octant. Note that unless stated otherwise, we consider octants to be
open sets. Similarly, a pair XY of distinct orthogonal labels defines the XY
quadrant in 2D or 3D. Finally, a label X defines the X semi-axis, which consists
of those points that are positive multiples of the unit vector in the X direction.
For short we call a semi-axis an axis. Thus, 3D space is partitioned into eight
octants, twelve quadrants, six axes, and the origin.
Let be a shape consisting of n elements or labels1 . An embedding or drawing
of , denoted as (), is a non-self-intersecting, directed, orthogonal polygonal
curve consisting of n segments such that the k-th segment (k = 1, . . . , n) of
() has positive length and has the orientation specified by the k-th label of
. Unless stated otherwise, we assume that the start of the directed curve ()
lies at the origin of the reference system.
1
Since the elements of a shape sequence have direction labels as values, we often refer
to the elements as labels.
68
Assumptions. Since we are interested in shapes that admit embeddings, we assume from now on that shapes do not contain adjacent labels that are oppositely
directed. Furthermore, we assume that shapes do not contain adjacent labels that
are identical, since the reachability properties of shapes with adjacent, identical
labels are not changed by coalescing such labels. Finally, we assume that the
point p to be reached in an instance of the shape path reachability problem lies
in an octant.
Remark. Let () be a permutation of the six direction labels that maps opposite
pairs of labels to possibly different opposite pairs (for example, might map
N, S, E, W, U, D to E, W, N, S, D, U , respectively). Note that () defines a linear
transformation of 3D space that is not necessarily a rotation. Nevertheless, this
transformation defines a bijection between embeddings of and embeddings of
(). Here, () denotes the sequence of labels obtained by applying to the
labels of . For concreteness, we often state our results and proofs referring
to some given octant, quadrant, or axis where points of embeddings of can
lie. However, the results can also be stated with respect to any other octant,
quadrant, or axis since they are preserved under the () transformation.
Definition. A drawing () of a shape is an expanding drawing if each segment
travels one unit farther in its direction than the extreme points, with respect to
that direction, of the previous segments of ().
Expanding drawings are useful because a new segment of arbitrary length,
perpendicular to the last segment of the drawing, may be appended to the last
segment without causing any collisions. The definition above is a simple, technical way to achieve this property.
Up
E
North
U
N
N
West
U
S E
E
N
D
D
D
East
N
S
W
South
Down
69
Reachability in 2D
70
We are now ready to consider the more general problem of quadrant reachability.
Theorem 2. A 2D shape reaches the N E quadrant if and only if contains
a canonical sequence of type {N, E}.
Proof. We prove first that if contains a canonical sequence of type {N, E},
then it reaches the N E quadrant. Let = 1 N E2 , where 1 or 2 may be the
empty string. By Lemma 1, 1 has an expanding drawing (1 ). Extend (1 )
to a drawing for as follows. Append to the terminal point of (1 ) a segment
oriented N that is so long that i) its terminal point projects to the N axis and ii)
the resulting drawing is still an expanding drawing. Because the new drawing is
expanding we can append to its terminal point a segment oriented E that is long
enough to enter the N E quadrant. Thus 1 N E reaches the N E quadrant,
and hence by Lemma 4, so does .
Suppose now that = X1 , . . . , Xn reaches the N E quadrant, and let ()
be a drawing of that terminates at a point in the N E quadrant. Suppose the
first segment of () to intersect the N E quadrant is the ith segment, whose
associated direction is Xi . Let 0 denote the initial sequence X1 , . . . Xi of .
Then () contains a drawing ( 0 ) of 0 . If Xi = E, then by Lemma 3, 0 and
hence contains the consecutive subsequence N E. Similarly, if Xi = N , then
contains the consecutive subsequence EN .
Based on the results above and on Lemma 2 it is possible to design a linear time algorithm for deciding whether a 2D shape can reach a point of a
quadrant.
Theorem 3. Let be a 2D shape, and let p be a point of a quadrant. There
exists a linear time and space algorithm that decides whether reaches p.
4.2
Reachability in 3D
In this section we answer the following question: Given a point p in an octant and
a 3D shape , can reach p? Again, by Lemma 2, this question can answered
by characterizing when can reach a given octant. To this aim, we introduce
the key concept of a doubly expanding drawing. This concept will later be used
for the study of shape path embeddability.
A doubly expanding drawing is one for which the first and last segments can be
replaced by arbitrarily long segments without creating any intersections within
the drawing. Figure 3 shows an example of a doubly expanding drawing.
Lemma 5. Let be a shape with n labels such that it either consists of exactly
two labels or it contains at least two flats. Then has a double expanding drawing
that can be computed in O(n) time.
The next lemma gives a sufficient condition for octant reachability; the proof
(omitted due to space constraints) is based on connecting together singly and
doubly expanding drawings for subsequences of shapes and gives rise to a linear
time embedding algorithm.
71
Up
North
E
N
West
W
N
U
N
E
U
N N
W
D
East
S
W
S
South
Down
72
73
Open Problems
Several issues remain open. We mention three that in our opinion are interesting.
1. Study the reachability problem under the additional constraint that the
lengths of some of the segments are given.
2. Study the reachability problem in the presence of obstacles.
3. Study the reachability problem for paths that must be embedded in a fixed
grid and that are to reach specified points in this grid.
In the case of the last item, it is no longer true that a shape can reach a
point if and only if it can reach all the other points in the same octant. One can
no longer construct a drawing and then scale it so that its terminus is located
at some specified point p, as scaling would move some edges off grid lines. For
drawings in a fixed grid, volume becomes a meaningful issue to study.
References
[1] T. Biedl, T. Shermer, S. Wismath, and S. Whitesides. Orthogonal 3-D graph
drawing. J. Graph Algorithms and Applications, 3(4):6379, 1999.
[2] R. F. Cohen, P. Eades, T. Lin and F. Ruskey. Three-dimensional graph drawing.
Algorithmica , 17(2):199208, 1997.
[3] G. Di Battista, P. Eades, R. Tamassia, and I. Tollis. Graph Drawing. Prentice
Hall, 1999.
[4] G. Di Battista and L. Vismara. Angles of planar triangular graphs. SIAM J.
Discrete Math., 9(3):349359, 1996.
[5] P. Eades, C. Stirk, and S. Whitesides. The techniques of Kolmogorov and Bardzin
for three dimensional orthogonal graph drawings. Inform. Process. Lett., 60:97
103, 1996.
[6] P. Eades, A. Symvonis, and S. Whitesides. Two algorithms for three dimensional
orthogonal graph drawing. In S. North, editor, Graph Drawing (Proc. GD 96),
volume 1190 of Lecture Notes Comput. Sci., pages 139154. Springer-Verlag, 1997.
[7] A. Garg. New results on drawing angle graphs. Comput. Geom. Theory Appl.,
9(12):4382, 1998. Special Issue on Geometric Representations of Graphs, G. Di
Battista and R. Tamassia, editors.
[8] A. Papakostas and I. Tollis. Incremental orthogonal graph drawing in three dimensions. In G. Di Battista, editor, Graph Drawing (Proc. GD 97), volume 1353
of Lecture Notes Comput. Sci., pages 139154. Springer-Verlag, 1997.
[9] R. Tamassia. On embedding a graph in the grid with the minimum number of
bends. SIAM J. Comput., 16(3):421444, 1987.
[10] G. Vijayan and A. Wigderson. Rectilinear graphs and their embeddings. SIAM
J. Comput., 14:355372, 1985.
[11] V. Vijayan. Geometry of planar graphs with angles. In Proc. 2nd Annu. ACM
Sympos. Comput. Geom., pages 116124, 1986.
[12] D. R. Wood. Two-bend three-dimensional orthogonal grid drawing of maximum
degree five graphs. Technical Report 98/03, School of Computer Science and
Software Engineering, Monash University, 1998.
[13] D. R. Wood. An algorithm for three-dimensional orthogonal graph drawing. In
Graph Drawing (Proc. GD 98), volume 1547 of Lecture Notes Comput. Sci., pages
332-346. Springer-Verlag, 1998.
Introduction
Level graphs are an important class of graphs that generalize bipartite graphs.
Such graphs are used to model hierarchical relationships or workflow diagrams.
From the point of view of representing the relationships graphically, it is desirable
that the graphs are drawn with as few edge crossings as possible. J
unger et al. [5]
have presented a linear-time algorithm to determine if a level graph is planar;
this algorithm can be modified to determine a planar embedding of the graph
as well.
Clearly, level graphs that need to be visualized are not level planar in general.
Mutzel [6] therefore studies the level planarization problem for the case k = 2
levels, removing a minimum number of edges such that the resulting subgraph
is level planar. For the final diagram the removed edges are reinserted into a
level planar drawing. However, the level planarization problem is N P-hard [3].
Mutzel [6] gives an integer linear programming formulation for the 2-level planarization problem, studying the polytope associated with the set of all level
planar subgraphs of a level graph with 2 levels.
In order to attack the level planarization problem for k 2 levels, an integer
linear programming formulation has to be found, and the polytope associated
with the set of all level planar subgraphs of a level graph needs to be described.
Besides, polynomial time separation algorithms need to be developed for practical application. One important step in the study of the polytope associated
with the set of all level planar subgraphs is the characterization of level planar
graphs in terms of minimal forbidden subgraphs called minimal level non-planar
subgraph patterns (MLNP-patterns) These graphs are the analogue of K5 and
K3,3 in the case of general graph planarity.
?
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 7484, 2000.
c Springer-Verlag Berlin Heidelberg 2000
75
This paper is organized as follows. After summarizing the necessary preliminaries in the next section, we introduce the minimal level non-planar subgraph
patterns in Sect. 3. We prove that the patterns are minimal level non-planar and
that the set of patterns is complete for the special case of hierarchies. This result
is generalized to level graphs in Sect. 4.
Preliminaries
76
(c) L1 and L2 share an endpoint p and a path C1 (possibly empty) starting from
p; L1 and L3 share an endpoint q (q 6= p) and a path C2 (possibly empty)
starting from q, C2 C1 = ; L2 and L3 are connected by a bridge b, bL1 =
(see Fig. 1(c)).
L1
b1
L2
L3
L1
b2
b3
L2
b2
b1
j
(a)
L3
C1
L2
p
L1
L3
j
(b)
C2
(c)
Di Battista and Nardelli, as we have remarked, have identified three level nonplanar patterns for hierarchies. From the recognition of an LNP pattern in a
hierarchy, one can decide that the hierarchy is not level planar, but one cannot
guarantee that a removal of an edge from the subgraph matching an LNP pattern
leads to the level planarity of the graph.
MLNP patterns are defined to have the following property: If a level graph
G = (V, E, ) matches an MLNP pattern then any subgraph G0 (V, E 0 , ) of G,
with E 0 = E \ {e}, e E, is embeddable without crossings on levels. The MLNP
patterns are divided into three categories: trees, level non-planar cycles, and level
planar cycles with incident paths. We give a comprehensive description of each
of these categories and show that the categories are complete for hierarchies.
The terminology that is used to describe the MLNP patterns is compatible
with Harary [4], except that we denote by a chain a tree T (V, E) where E =
{(v1 , v2 ), (v2 , v3 ), . . . , (v|V |1 , v|V | )}. Furthermore, we define some terms that are
common to all of the patterns. The upper- and lower-most levels that contain
vertices of a pattern P are called extreme levels of P . The extreme levels of a
pattern are not necessarily the same as the extreme levels 1 and k of the input
graph G. If pattern P is instantiated in G as subgraph GP and the uppermost
level of GP in G is i and the lower most level is j (i < j) then the extreme levels
of P correspond to levels i and j in G. If vertex v lies on an extreme level then
we call this extreme level the incident extreme level and the other extreme level
the opposite extreme level of v.
3.1
77
Trees
li
li
b
(a)
lj
lj
(b)
78
chains are located on the same extreme level. Every subtree detached from the
root-vertex x has a level planar layout. Thus if we remove one of the edges incident upon the leaf vertices on the extreme level of the root vertex (like the
vertices v or w in Fig. 2(a)) then the corresponding subtree can be embedded
under the root vertex x and between the other subtrees without any crossings.
If we remove an edge incident upon the leaf vertices near the opposite level of
the root vertex (for example, the path from vertex c to the branching point
in Fig. 2(a)) then the modified subtree can be embedded on top of the chainshaped subtree (according to the characterization there has to be one). Next, if
we remove any other edge, we will have two disconnected subgraphs: one which
contains the root vertex and the other which does not contain the root vertex.
The former is a reduced case of the removal of an edge incident to a leaf vertex
and the other component can be embedded.
In the case T2 when the root vertex is not on an extreme level, we consider
two cases: the removal of an edge connecting the leaf vertex of a chain and the
removal of an edge connecting a leaf vertex of a non-chain subtree. In the former
case, the two chain subtrees can be embedded on top of each other. In the latter
case, the path can be embedded under or on top of a chain by repositioning
either vertices v or u as appropriate. If we remove any other edge then, again,
we will have two disconnected subgraphs from which the subgraph containing
the root vertex is a reduced case of the removal of an edge incident to a leaf
vertex and the other subgraph can be embedded.
The following three lemmas (stated without proof) and theorem prove that
the two tree patterns in our characterization are unique.
Lemma 1. If LNP pattern (a) matches a tree then each one of the paths L1 ,
L2 , L3 contains only one vertex where the bridges are connected.
Lemma 2. If LNP pattern (a) matches a tree then its bridges must form a
subgraph homeomorphic to K1,3 .
Lemma 3. Only LNP pattern (a) can be matched to a tree.
Theorem 3. Let T be a tree. T is level non-planar if and only if it matches
either of the two tree characterizations.
Proof. From the previous lemmas it is possible to derive a level non-planar tree
pattern (not necessarily minimal) from LNP pattern (a) only. Consider a tree
matching pattern (a). If the pattern is bounded by levels i and j, but the vertices
of bridges occur on levels l1 , . . . , l2 , where i < l1 and l2 < j then we can remove all the edges of the paths Li which connect vertices on levels i, . . . , l1 and
l2 , . . . , j without affecting level planarity. Moreover we can narrow the range of
levels l1 , . . . , l2 even more, until both levels l1 and l2 contain at least one vertex
v whose degree in the subgraph bounded by levels l1 and l2 is greater than 1.
79
Cycles
We now study cycles that are bounded by the extreme levels of the pattern. A
cycle must then contain at least two distinct paths between the extreme levels
having vertices of the extreme levels only in their endpoints. These paths are
called pillars.
Level Non-planar Cycles
Theorem 4. If a cycle has more than two distinct paths connecting the vertices
on the extreme levels of a pattern, it is minimal level non-planar.
Proof. The number of such paths must be even. So, following our assumption
of more than two paths, the number of paths must be at least 4 in a level nonplanar cycle. Without loss of generality, consider the 4-path case first. Let the
extreme levels be i and j. Let us denote a sequence of paths along the cycle
A = (va , . . . , vb ), B = (vb , . . . , vc ), C = (vc , . . . , vd ), D = (vd , . . . , va ), and
va , vc Vi , vb , vd Vj . Consider LNP pattern (c). The paths A, B, C can
be mapped always to the paths L2 , L1 , L3 of the pattern, respectively. The
remaining path D can be then mapped to the bridge in LNP pattern (c). If the
number of paths is greater then 4, the first three paths can be mapped as in the
case of 4 paths, and the remaining paths can be mapped to the bridge.
Such a cycle is minimal since any edge that is removed from a level non-planar
cycle results in a chain that can be drawn as a level planar graph.
Level Planar Cycles Level planar cycles can be augmented by a set of chains
to obtain minimal level non-planarity. First, we give some terminology related
to level planar cycles. A vertex that lies on a pillar is called an outer vertex;
all the remaining vertices are inner vertices. The endpoints of pillars are corner
vertices; if an extreme level i has only one vertex it is called a single corner
vertex. A bridge in the context of a planar cycle is the shortest walk between
80
corner vertices on the same level; a bridge contains two corner vertices as its
endpoints and the remainder are inner vertices. A pillar is monotonic if, in a
walk of the cycle, the level numbers of subsequent vertices of the pillar are
monotonically increasing or decreasing, depending on the direction of traversal.
We call two paths or chains parallel if they start on the same pillar and end on
the same extreme level. If a chain is connected to a cycle by one of its vertices
having degree 1 (considering only edges of the chain) then this vertex is called
the starting vertex of the chain and the level where this vertex lies, the starting
level. The other vertex of degree 1 of the chain is then the ending vertex and
corresponding level, the ending level.
Characterization Given a level planar cycle whose extreme levels are i and j,
there are four cases to consider where augmentation of the level planar cycle by
paths results in minimal level non-planarity. The pattern cannot contain one of
the tree patterns given earlier. We enumerate these augmenting paths below. In
all cases the paths start at a vertex on the cycle and end on an extreme level.
C1 A single path p1 starting from an inner vertex and ending on the opposite
extreme level of the inner vertex; p1 and the cycle share only one vertex. The
path will have at least one vertex on an extreme level, the end vertex, and
at most two, the start and end vertices. An example of this is illustrated in
Fig. 3 (a);
C2 Two paths p1 and p2 , starting, respectively, from vertices vp1 and vp2 , vp1 6=
vp2 , of the same pillar L = (vi , . . . , vp1 , . . . , vp2 , . . . vj ) terminating on extreme levels j and i, respectively. Vertices vp1 or vp2 may be identical to
corner vertices of L (vp1 = vi or vp2 = vj ) only if the corner vertices are
not single corner vertices on their extreme levels. Paths p1 and p2 do not
have any vertices other than their start (if corner) and end vertices on the
extreme levels. There are two subcases according to the levels of vp1 and vp2 :
(vp1 ) < (vp2 );
(vp1 ) (vp2 ), this means, L must be a non-monotonic pillar.
Figures 3 (b) and (c) illustrate typical subgraphs matching the two subcases,
respectively;
C3 Three paths, p1 , p2 and p3 . Path p1 starts from a single corner vertex and
ends on the opposite extreme level; paths p2 and p3 start from opposite pillars
and end on the extreme level where the single corner vertex is. Neither p2
nor p3 can start from a single corner vertex. Figure 3 (d) illustrates a level
planar cycle augmented by three paths causing level non-planarity;
C4 Four paths, p1 , p2 , p3 and p4 . The cycle comprises a single corner vertex
on each of the extreme levels. Paths p1 and p2 start from different corner
vertices and end on the opposite extreme level to their start with the paths
embedded on either side of the cycle such that they do not intersect; paths
p3 and p4 start from distinct non-corner vertices of the same pillar and finish
on different extreme levels. The level numbers of starting vertices are such
that they do not cause crossing of the last two paths. See Fig. 3 (e) for an
illustration.
vi
li
li
vp1
L
p1
vp2
lj
(a)
(b)
p3
p2
p1
lk
ll
lj
vj
vi
p2
vp2
ll
lk
p2
vj
li
(c)
li
p3
p2
p1
p1
p4
lj
(d)
li
L
vp1
li
p2
81
lj
(e)
We will now prove that each of the path-augmented cycles is minimal level
non-planar and, in Theorems 6 to 10, prove that this set is complete for hierarchies.
Theorem 5. Each of the four path-augmented cycles is minimal level nonplanar.
Proof. The augmented cycles are level non-planar because it can be shown that
each can be mapped to one of Di Battista and Nardellis LNP patterns. To
see minimality we consider the three cases of the starting position of the pathaugmentation on the cycle.
Suppose the start vertex is an inner vertex of a cycle. Since no subgraph
matches an MLNP tree, breaking either an edge of the path or an edge of the
cycle yields a level planar embedding.
In case of a path-augmented cycle of type C2, the removal of any edge of the
cycle allows one of the augmenting paths to be embedded through the gap left
by that edge. The removal of any edge of an augmenting path allows that path
to be embedded on the internal face of the cycle. In both cases no crossings will
remain.
For paths starting from corner vertices similar reasoning holds.
Theorem 6. If a minimal level non-planar graph G comprises a level planar
cycle and a single path p1 connected to the cycle, then p1 starts from an inner
vertex of the cycle and ends on the opposite extreme level.
Proof. For a path to cause level non-planarity, the path must start from an inner
vertex of the cycle. Otherwise, the path can be embedded on the external face.
82
There are only two possibilities for causing level non-planarity: crossing with
the incident bridge or, crossing with the opposite bridge. In the former, the path
in combination with the lower part of the cycle forms a level non-planar tree.
Since this level non-planar tree is minimal, the combination of the cycle and the
path is not minimal. Therefore, the latter is the only remaining minimal level
non-planar case.
Theorem 7. If a minimal level non-planar graph G comprises a level planar
cycle and two paths p1 and p2 connected to the cycle, then p1 and p2 start from
the same pillar and end on an extreme level and either they cross or they start
from a non-monotonic sub-chain of the pillar.
Proof. Neither of the two paths may start from an inner vertex of the cycle because otherwise either they can be embedded on the internal face, or at least one
of them matches type C1 above, or they form a level non-planar tree. Since the
latter two cases are not minimal both paths must start from a pillar. Moreover,
they must start from the same pillar, otherwise, the paths can be both embedded
on the external face. The paths must finish on extreme levels, otherwise they
can be embedded on the internal face. Moreover, the extreme levels must be
different for if they are the same, the pattern although it can be made level
non-planar by introducing non-monotonic paths and a non-monotonic pillar
will not be minimal since it can be shown to match a minimal level non-planar
tree pattern. If the extreme levels are different, then either the paths cross or
there is a non-monotonic pillar that causes a crossing of the cycle and a path.
Theorem 8. If a minimal level non-planar graph G comprises a level planar
cycle and three paths p1 , p2 and p3 connected to the cycle, then G has a single
corner vertex c1 with p1 starting at c1 and extending to the opposite extreme
level and p2 and p3 starting on opposite pillars and ending on the extreme level
that contains c1 .
Proof. As in the case of two paths, none of the paths may start from an inner
vertex. Hence, all the paths should start from pillars. Additionally, all the paths
must end on extreme levels, otherwise, they can be embedded on the internal
face. No pair of paths can create minimal level non-planarity of the type C2
above. These conditions are met if one of the paths starts from a single corner
vertex. If there were no other paths, the path starting from the single corner could
be embedded on the external face on both sides of the cycle. However, if we have
two paths starting from different pillars, not from a single corner vertex, and
ending on the extreme level of the single corner vertex, a level planar embedding
is not possible.
Theorem 9. If a minimal level non-planar graph G comprises a level planar
cycle and four paths p1 , . . . , p4 connected to the cycle, then G has two single
corner vertices c1 and c2 with p1 starting at c1 and extending to the opposite
83
Having shown that our characterizations of trees, level non-planar cycles and
path-augmented cycles are minimally level non-planar, it only remains for us
now to show that this set is a complete characterization of minimal level nonplanar subgraphs.
Theorem 11. The set of MLNP patterns characterized in sections 3.1, 3.2, and
3.2 is complete for hierarchies.
Proof. Every graph comprises either a tree, or one, or more, cycles. It remains to
prove that there is no MLNP pattern containing more than one cycle. Suppose
a graph is MLNP and it has more than one cycle. Then it must be a subcase of
one of Di Battista and Nardellis LNP patterns. Each of these, however, has at
most one single cycle and the remainder of the patterns comprises chains. Then
at least one of our cycles must be broken in order to match it to a chain, thus
contradicting the hypothesis.
We have given in the previous section a characterization of level planar hierarchies in terms of minimal forbidden subgraphs. It remains to show that the
described patterns characterize level planarity for general level graphs as well.
84
Theorem 12. Let G = (V, E, ) be a level graph with k > 1 levels. Then G is
not level planar if, and only if it contains one of the MLNP patterns as described
in sections 3.1, 3.2, and 3.2.
Proof. If a subgraph Gp of G corresponds to an MLNP pattern, then G must be
non level planar.
It remains to proof the opposite direction. Suppose there exists a minimal
pattern P of non level planarity that is not applicable for hierarchies. Let G be
a level graph such that P is the only pattern of non level planarity in G.
Since G is not level planar, augmenting the graph by an incoming edge for
every source preserving the leveling in the graph constructs a non level planar
hierarchy H = (V, E EH , ), where EH is the set of all extra added edges.
Let P be the set of all subgraphs of H corresponding to a MLNP pattern. By
assumption, we have for any Gp P, Gp = (Vp , Ep , ) that there exists an edge
ep Ep EH . Removing for every Gp P the edge ep from H, we construct a
level planar graph H 0 . By construction, H 0 contains G as a subgraph. Since every
subgraph of a level planar graph must be level planar itself, this contradicts G
being a non level planar subgraph.
Conclusion
References
[1] G. Di Battista and E. Nardelli. Hierarchies and planarity theory. IEEE Transactions on Systems, Man, and Cybernetics, 18(6):10351046, 1988.
[2] P. Eades, B. D. McKay, and N. C. Wormald. On an edge crossing problem. In Proc.
9th Australian Computer Science Conference, pages 327334. Australian National
University, 1986.
[3] P. Eades and S. Whitesides. Drawing graphs in two layers. Theoretical Computer
Science, 131:361374, 1994.
[4] F. Harary. Graph Theory. Addison-Wesley, 1969.
[5] M. J
unger, S. Leipert, and P. Mutzel. Level planarity testing in linear time. Technical Report 98.321, Institut f
ur Informatik, Universit
at zu K
oln, 1998.
[6] P. Mutzel. An alternative method to crossing minimization on hierarchical graphs.
In Stephen North, editor, Graph Drawing. Symposium on Graph Drawing, GD 96,
volume 1190 of Lecture Notes in Computer Science, pages 318333. Springer-Verlag,
1996.
2
3
Introduction
Recently automatic drawings of graphs have created intense interest due to their
broad applications, and as a consequence, a number of drawing styles and corresponding drawing algorithms have come out [DETT99]. Among different drawing
styles a rectangular drawing has attracted much attention due to its applications in VLSI floorplanning and architectural floorplanning [BS88, H93, H95,
KH97, KK84, L90, RNN98]. A rectangular drawing of a plane graph G is a
drawing of G in which each vertex is drawn as a point, each edge is drawn as
a horizontal or a vertical line segment, and the contour of each face is drawn
as a rectangle. Note that in a rectangular drawing of a plane graph G the contour of the outer face of G is also drawn as a rectangle. Fig. 1(d) illustrates a
rectangular drawing of the graph in Fig. 1(c). Clearly not every plane graph has
a rectangular drawing. For example the graph in Fig. 1(e) has no rectangular
drawing.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 8594, 2000.
c Springer-Verlag Berlin Heidelberg 2000
86
3
2
13
11
16
12
10
11
12
13
2
14
15
14
11
16 15
12
10
10
17
(a)
(b)
a
13
11
13
14
12 16 15
(c)
3
14
16 15
17
10
5
7
17
13
14
1
11
12
16 15
5
17
10
17
7
8
(d)
6
c
(f)
(e)
Fig. 1. (a) Interconnection graph, (b) dual-like graph, (c) good designation of
corners, (d) rectangular drawing, (e) bad designation of corners, and (f) 2-3
plane graph.
In a VLSI floorplanning problem, the interconnection among modules is usually represented by a plane graph, every inner face of which is triangulated.
Fig. 1(a) illustrates such an interconnection graph of 17 modules. The dual-like
graph of an interconnection graph is a cubic graph in which every vertex has
degree 3 [L90]. Fig. 1(b) illustrates a dual-like graph of the graph in Fig. 1(a),
which has 17 inner faces. Inserting four vertices a, b, c and d of degree 2 in appropriate edges on the outer face contour of the dual-like graph as illustrated
in Fig. 1(c), one wishes to find a rectangular drawing of the resulting graph as
illustrated in Fig. 1(d). If there is a rectangular drawing, it yields a floorplan of
modules. Each vertex of degree 2 is a corner of the rectangle corresponding to
the outer rectangle. Thomassen [T84] gave a necessary and sufficient condition
for such a plane graph with exactly four vertices of degree 2 to have a rectangular drawing. Linear-time algorithms are given in [BS88, H93, KH97, RNN98] to
obtain a rectangular drawing of such a plane graph, if it exists. However, it has
not been known how to appropriately insert four vertices of degree 2 as corners.
If four vertices a, b, c and d of degree 2 are inserted in edges as in Fig. 1(e), then
the resulting graph has no rectangular drawing.
87
In this paper we assume that four or more vertices of degree 2 have been
inserted to all edges that may be drawn as edges incident to corners in a rectangular drawing; for example, insert one or two vertices of degree 2 to each edge
on the outer contour. Thus we consider a plane connected graph G in which
every vertex on the outer contour has degree 2 or 3, every vertex not on the
outer contour has degree 3, and there are four or more vertices of degree 2 on
the outer contour. We call such a graph a 2-3 plane graph. (See Fig. 1(f).) We do
not assume that four vertices of degree 2 are designated as corners in advance.
We give a necessary and sufficient condition for such a 2-3 plane graph G to have
a rectangular drawing, and give a linear-time algorithm to find appropriate four
vertices of degree 2 and obtain a rectangular drawing of G with these vertices
as corners.
The rest of the paper is organized as follows. Section 2 describes some definitions and presents preliminary results. Section 3 presents our main result on
rectangular drawing. Finally, Section 4 concludes with an open problem.
Preliminaries
88
with less than four vertices of degree 2 on Co (G) has no rectangular drawing.
Thus we consider a 2-3 plane graph G in which four or more vertices on Co (G)
have degree 2 and all other vertices have degree 3. We call a vertex of degree 2
in G that is drawn as a corner of D a corner vertex.
The following result on rectangular drawings is known [T84, RNN98].
Lemma 1. Let G be a 2-3 plane graph. Assume that four vertices of degree 2
are designated as corners. Then G has a rectangular drawing if and only if G
satisfies the following three conditions [T84]: (c1) G has no 1-legged cycles; (c2)
every 2-legged cycle in G contains at least two designated vertices; and (c3) every
3-legged cycle in G contains at least one designated vertex. Furthermore one can
check in linear time whether G satisfies the conditions above, and if G does then
2
one can find a rectangular drawing of G in linear time [RNN98].
It is rather difficult to determine whether a 2-3 plane graph G has a rectangular drawing unless four vertices of degree 2 are designated as corners. Considering
all combinations of four vertices of degree 2 as corners and applying the algorithm
in Lemma 1 for each of the combinations, one can determine whether G has a
rectangular drawing. Such a straightforward method requires time O(n5 ) since
there are O(n4 ) combinations, and one can determine in linear time whether G
has a rectangular drawing for each combination. In the next section we obtain
a necessary and sufficient condition for G to have a rectangular drawing for the
general case in which no vertices of degree 2 are designated as corners. The
condition leads to a linear-time algorithm.
89
Lemma 5. Assume that a 2-3 plane graph G satisfies the four conditions in
Theorem 2, and that G has at most three vertices of degree 3 on Co (G). Then G
has a rectangular drawing.
90
C1
c
d
G
(a)
(b)
C2
91
C1
a
b
d
G
(a)
C3
(b)
Lemma 6. Assume that a 2-3 plane graph G satisfies the four conditions in
Theorem 2, that G has four or more vertices of degree 3 on Co (G), and that
there is exactly one Co (G)-component. Then the following (a)-(d) hold:
(a) for any 2-legged cycle C, at most one chain of G is not on C;
(b) one can choose four vertices of degree 2 in a way that at most two of them
are chosen from any chain and at most three are chosen from any pair of
consecutive chains;
(c) G has a 3-legged cycle; and
(d) if G has two or more independent 3-legged cycles, then the set of all minimal
2
3-legged cycles in G is independent.
Lemma 7. If a 2-3 plane graph G has two or more Co (G)-components, then G
2
has a pair of independent 2-legged cycle.
We are now ready to prove the following lemma.
Lemma 8. Assume that a 2-3 plane graph G satisfies the four conditions in
Theorem 2, and that Co (G) has four or more vertices of degree 3. Then G has
a rectangular drawing.
Proof. We shall consider the following two cases depending on the number of
Co (G)-components.
Case 1: G has exactly one Co (G)-component.
By Lemma 6(c) G has a 3-legged cycle. We shall consider the following two
subcases depending on whether G has a pair of independent 3-legged cycles or
not.
Subcase 1a: G has no pair of independent 3-legged cycle.
By Lemma 6(b) we can designate four vertices of degree 2 as corners in a way
that at most two of them are chosen from any chain and at most three are chosen
from any pair of consecutive chains of G. By Lemma 1 it suffices to show that
G satisfies the three conditions (c1)-(c3) regarding the four designated vertices.
92
b
c
C2
93
b
c
d
G
(a)
G
(b)
94
(3)
(4-1)
(4-2)
(4-3)
Conclusions
In this paper we established a necessary and sufficient condition for a 2-3 plane
graph G to have a rectangular drawing. We gave a linear-time algorithm to
determine whether G has a rectangular drawing, and find a rectangular drawing
of G if it exists. Thus, given a plane cubic graph G, we can determine in linear
time whether one can insert four vertices of degree 2 into some of the edges on
Co (G) so that the resulting plane graph G0 has a rectangular drawing or not, and
if G0 has, we can find a rectangular drawing of G0 in linear time. It is left as an
open problem to obtain an efficient algorithm for finding rectangular drawings
of plane graphs with the maximum degree = 4.
References
[BS88] J. Bhasker and S. Sahni, A linear algorithm to find a rectangular dual of a
planar triangulated graph, Algorithmica, 3 (1988), pp. 247-278.
[DETT99] G. Di Battista, P. Eades, R. Tamassia and I. G. Tollis, Graph Drawing,
Prentice Hall, Upper Saddle River, NJ, 1999.
[H93] X. He, On finding the rectangular duals of planar triangulated graphs, SIAM J.
Comput., 22(6) (1993), pp. 1218-1226.
[H95] X. He, An efficient parallel algorithm for finding rectangular duals of plane triangulated graphs, Algorithmica 13 (1995), pp. 553-572.
[KH97] G. Kant and X. He, Regular edge labeling of 4-connected plane graphs and
its applications in graph drawing problems, Theoretical Computer Science, 172
(1997), pp. 175-193.
[KK84] K. Kozminski and E. Kinnen, An algorithm for finding a rectangular dual of
a planar graph for use in area planning for VLSI integrated circuits, Proc. 21st
DAC, Albuquerque, June (1984), pp. 655-656.
[L90] T. Lengauer, Combinatirial Algorithms for Integrated Circuit Layout, John Wiley
& Sons, Chichester, 1990.
[RNN98] M. S. Rahman, S. Nakano and T. Nishizeki, Rectangular grid drawings of
plane graphs, Comp. Geom. Theo. Appl., 10(3) (1998), pp. 203-220.
[T84] C. Thomassen, Plane representations of graphs, (Eds.) J. A. Bondy and U. S.
R. Murty, Progress in Graph Theory, Academic Press Canada, (1984), pp. 43-69.
Abstract. We study the problem of optimizing over the set of all combinatorial embeddings of a given planar graph. At IPCO 99 we presented a rst characterization of the set of all possible embeddings of
a given biconnected planar graph G by a system of linear inequalities.
This system of linear inequalities can be constructed recursively using
SPQR-trees and a new splitting operation. In general, this approach may
not be practical in the presence of high degree vertices.
In this paper, we present an improvement of the characterization which
allows us to deal eciently with high degree vertices using a separation
procedure. The new characterization exposes the connection with the
asymmetric traveling salesman problem thus giving an easy proof that
it is NP-hard to optimize arbitrary objective functions over the set of
combinatorial embeddings.
Computational experiments on a set of over 11000 benchmark graphs
show that we are able to solve the problem for graphs with 100 vertices
in less than one second and that the necessary data structures for the
optimization can be build in less than 12 seconds.
Introduction
A graph is called planar if it admits a drawing into the plane without edgecrossings (planar drawing). We call two planar drawings of the same graph
equivalent when the circular sequence of the edges around each vertex is the
same in both drawings. The equivalence classes of planar drawings are called
combinatorial embeddings. A combinatorial embedding also denes the set of
cycles in the graph that bound faces in a planar drawing.
The complexity of embedding planar graphs has been studied by various
authors in the literature [5, 4, 6]. In this paper we deal with the following optimization problem concerning embeddings: Given a planar biconnected graph and
a cost function on the cycles of the graph, nd an embedding such that the
sum of the cost of the cycles that appear as face cycles in is minimized. The
objective function is chosen only to demonstrate the feasibility of the approach in
computational experiments. However, our description of the set of combinatorial
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 95104, 2000.
c Springer-Verlag Berlin Heidelberg 2000
96
4
3
2
0
6
3
7
4
(a)
(b)
97
SPQR-Trees
In this section, we give a brief overview of the SPQR-tree data structure for biconnected graphs. SPQR-trees have been suggested by Di Battista and Tamassia
([2]). They represent a decomposition of a biconnected graph into triconnected
components. A connected graph is triconnected, if there is no pair of vertices in
the graph whose removal splits the graph into two or more components.
An SPQR-tree has four types of nodes and with each node is associated a
biconnected graph which is called the skeleton of that node. This graph can
be seen as a simplied version of the original graph and its vertices are also
contained in the original graph. The edges in a skeleton represent subgraphs of
the original graph. The node types and their skeletons are as follows:
1. Q-node: The skeleton consists of two vertices that are connected by two
edges. One of the edges represents an edge e of the original graph and the
other one the rest of the graph.
2. S-node: The skeleton is a simple cycle with at least 3 vertices.
3. P -node: The skeleton consists of two vertices connected by at least three
edge.
4. R-node: The skeleton is a triconnected graph with at least four vertices.
All leaves of the SPQR-tree are Q-nodes and all inner nodes S-,P or Rnodes. When we see the SPQR-tree as an unrooted tree, then it is unique for
98
k
(Li 1)! .
i=1
Because the embeddings of the R- and P -nodes determine the embedding of the
graph, we call these nodes the decision nodes of the SPQR-tree.
3
3.1
Splitting an SPQR-Tree
99
original problem such that we can use the variables and constraints computed
for the smaller problems to compute the ILP for the original problem. This is
done by splitting the SPQR-tree at some decision-node v.
The splitting operation deletes all edges in the SPQR-tree incident to v whose
other endpoint is not a Q-node, thus producing smaller trees. Then we attach
new Q-nodes to all nodes that were incident to deleted edges to make sure that
the trees we produce are again SPQR-trees. The new edges we use to attach the
Q-nodes are called split-edges and the trees we produce split-trees. The graphs
represented by the split-trees are called split-graphs. The new tree containing
v is the center split-tree and the associated graph the center split-graph. The
split-trees either have only one decision node (like the center split-tree) or at
least one less than the original tree. The splitting process is depicted in Fig. 2.
Q
...
T1
Q
Q
T3
...
...
T2
Q
T1
v
Q
...
Split
Q
v
Q
Q
Q
Q
T2
T3
...
...
3.3
Since this topic is treated in detail in [12] and [11], we only give a short sketch of
our approach. Let T be the SPQR-tree of a biconnected planar graph G, v the
node used for splitting the tree and T1 , . . . , Tk the split-trees of v. We assume
that T1 is the center split-tree and that the graph Gi is the split-graph belonging
to split-tree Ti . We can distinguish two types of directed cycles in G:
1. Local cycles are contained in one of the graphs G1 , . . . , Gk .
2. Global cycles of are not contained in any of the Gi .
We assume that we have already computed the ILP Ii for each Ti . The variables
in Ii that represent local cycles will also be variables in the ILP for T . We
compute the global cycles of G for which we need variables by combining cycles
in the split-graphs that are represented by variables in the Ii .
The set C of all constraints of the ILP of T is given by C = Cl Cc Cg . Cl
is the set of lifted constraints. For each constraint contained in Ii , we compute
100
a constraint that is valid for T by replacing each variable xc by the sum of the
variables in R(xc ) (The set of variables for T whose associated cycles have been
constructed using c).
The set Cc is the set of choice constraints. They state that for each variable
xc computed for Ti , the sum of the variables in the set R(xc ) can be at most
one. This is true because all of the cycles in R(xc ) either pass an edge or one
of the split-graphs in the same direction and therefore at most one of the cycles
can be a face cycle in any embedding. The proof is omitted but can be found in
[11].
The only element of Cg is the center graph constraint, which states that the
number of global face-cycles in any feasible solution plus the number of local
face-cycles contained in G1 is equal to the number of faces of G1 . This is true,
because any drawing of G can be generated from a drawing of G1 by replacing
some edges by subgraphs. In this process, the face cycles of G1 may be replaced
by global cycles or are preserved (if they are local cycles of G).
We observe that a graph G whose SPQR-tree has only one inner node is
isomorphic to the skeleton of this node. Therefore, the ILP for an SPQR-tree
with only one inner node is dened as follows:
S-node: When the only inner node of the SPQR-tree is an S-node, G is a
simple cycle. Thus it has two directed cycles and both are face-cycles in the
only combinatorial embedding of G. So the ILP consists of two variables,
both of which must be equal to one.
R-node: G is triconnected and according to our denition of combinatorial
embeddings, every triconnected graph has exactly two embeddings, which
are mirror-images of each other. When G has m edges and n vertices, we
have k = 2(m n + 2) variables and two feasible solutions. The constraints
are given by the convex hull of the two points in k-dimensional space that
correspond to the solutions.
P -node: The ILP for graphs whose only inner node in the SPQR-tree is a P node is described in detail in Section 4 because this is where the connection
to the asymmetric travelings salesman problem (ATSP) is used.
The proof of correctness diers from the proof given in [12] and more detailed
in [11] only in the treatment of the skeletons of P -nodes, so we only look at the
treatment of P -node skeletons in more detail in the next section.
101
e1
e2 e3
vb
v1
v2
v3
v4
e4
The sum of the weights of all edges on the Hamiltonian cycle is equal to the
sum of the weights of the cycles of P that are face cycles in this embedding. So
nding an embedding of P that minimizes the sum of the weights of the face
cycles is equivalent to nding a traveling salesman tour with minimum weight in
B. Since we can easily construct a corresponding P -node embedding problem for
any ATSP-problem, we have a simple proof that optimizing over all embeddings
of a graph is in general NP-hard.
It also enables us to use the same ILP used for ATSP for the ILP that
describes all combinatorial embeddings of a P -node skeleton. The formulation
for the ATSP ILP found in [7] has two types of constraints.
102
1. The degree constraints state that each vertex must have exactly one incoming
edge and one outgoing edge in every solution.
2. The subtour elimination constraints state that the number of edges with
both endpoints in a nonempty subset S of the set of all vertices can be at
most |S| 1.
The number of degree constraints is linear in the number of edges in a P -node
skeleton, while the number of subtour elimination constraints is exponential.
Therefore, we dene the ILP for a graph whose SPQR-tree has a P -node as
the only inner node just as the set of degree constraints for the corresponding
ATSP-problem.
To cope with the subtour elimination constraints, we store for each P -node
skeleton the corresponding ATSP-graph. For each edge in the ATSP-graph we
store the corresponding cycle in the P -node skeleton. During the recursive construction, we update the set of corresponding cycles for each edge in the ATSPgraph, so that we always know the list of cycles represented by an edge in the
ATSP-graph. This is done in the same way as the construction of the lifted
constraints in subsection 3.3.
When the construction of the recursive ILP is nished, we use a mixed integer
programming solver to nd an integer solution. Then we check if any subtour
elimination constraint is violated. We do this by nding a minimum cut in each
ATSP-graph. The weight of each edge in the ATSP graph is dened as the sum
of the values of the variables representing the cycles associated with the edge.
If the value of this minimum cut is smaller than one, we have found a violated
subtour elimination constraint and add it to the ILP. As we will show in the
next section, separation of the subtour elimination constraint is rarely necessary.
Computational Results
2000
Embeddings
Variables
Constraints
1800
1e+06
103
1600
100000
1400
1200
10000
1000
1000
800
100
600
10
400
200
1
20
40
60
Vertices
(a)
80
100
20
40
60
80
100
Vertices
(b)
Fig. 4. The number of embeddings of the tested graphs and the number of
variables and constraints
we consider the growth of the number of embeddings. Our ILP always has more
constraints than variables. Figure 5(a) shows the time needed for building the
recursive ILP and the time needed for optimization including separation. Optimization is very fast and the longest time we needed was 0.75 seconds. The time
needed for building the ILP grows sub-exponential with the number of vertices
and never exceeded 11 seconds.
Figure 5(b) shows that separation was rarely necessary and in the cases
where we separated constraints, the number of the separation steps was small.
The boxes show the number of graphs that needed 0, 1, 2 or 3 separation steps,
e.g. 1, 2, 3 or 4 optimization rounds (note that the y-axis is logarithmic). We
needed at most three separation steps and this was only the case for one of the
11,491 graphs. For 11,472 of the graphs, no re-optimization was necessary.
Our future goal will be to extend our formulation such that each solution
will correspond to an orthogonal representation of the graph. This will enable
us to nd drawings with the minimum number of bends over all embeddings. Of
course, this will make the solution of the ILP much more dicult.
Acknowledgments We thank the group of G. Di Battista in Rome for giving
us the opportunity to use their implementation of SPQR-trees in GDToolkit, a
software library that is part of the ESPRIT ALCOM-IT project (work package
1.2), and to use their graph generator.
References
[1] G. Di Battista, A. Garg, G. Liotta, R. Tamassia, E. Tassinari, and F. Vargiu.
An experimental comparison of four graph drawing algorithms. Comput. Geom.
Theory Appl., 7:303326, 1997.
[2] G. Di Battista and R. Tamassia. On-line planarity testing. SIAM Journal on
Computing, 25(5):956997, 1996.
104
12
Optimization time
Building time
10000
10
1000
Seconds
8
100
6
4
10
2
1
0
20
40
60
Vertices
(a)
80
100
Separated constraints
(b)
Fig. 5. The time needed for building the ILP and for optimization and the
benchmark set divided up by the number of separation steps
[3] P. Bertolazzi, G. Di Battista, and W. Didimo. Computing orthogonal drawings with the minimum number of bends. Lecture Notes in Computer Science,
1272:331344, 1998.
[4] D. Bienstock and C. L. Monma. Optimal enclosing regions in planar graphs.
Networks, 19(1):7994, 1989.
[5] D. Bienstock and C. L. Monma. On the complexity of embedding planar graphs
to minimize certain distance measures. Algorithmica, 5(1):93109, 1990.
[6] J. Cai. Counting embeddings of planar graphs using DFS trees. SIAM Journal
on Discrete Mathematics, 6(3):335352, 1993.
[7] G. Carpaneto, M. DellAmico, and P. Toth. Exact solution of large scale asymmetric travelling salesman problems. ACM Transactions on Mathematical Software,
21(4):394409, 1995.
[8] S. Fialko and P. Mutzel. A new approximation algorithm for the planar augmentation problem. In Proceedings of the Ninth Annual ACM-SIAM Symposium on
Discrete Algorithms, pages 260269, San Francisco, California, 1998.
[9] A. Garg and R. Tamassia. On the computational complexity of upward and
rectilinear planarity testing. Lecture Notes in Computer Science, 894:286297,
1995.
[10] M. J
unger, S. Leipert, and P. Mutzel. A note on computing a maximal planar subgraph using PQ-trees. IEEE Transactions on Computer-Aided Design,
17(7):609612, 1998.
[11] P. Mutzel and R. Weiskircher. Optimizing over all combinatorial embeddings of a
planar graph. Technical report, Max-Planck-Institut f
ur Informatik, Saarbr
ucken,
1998.
[12] P. Mutzel and R. Weiskircher. Optimizing over all combinatorial embeddings
of a planar graph. In G. Cornuejols, R. Burkard, and G. W
oginger, editors,
Proceedings of the Seventh Conference on Integer Programming and Combinatorial
Optimization (IPCO), volume 1610 of LNCS, pages 361376. Springer Verlag,
1999.
[13] R. Tamassia. On embedding a graph in the grid with the minimum number of
bends. SIAM Journal on Computing, 16(3):421444, 1987.
Abstract. This paper presents polynomial-time approximation algorithms for the problem of computing a maximum independent set in
a given map graph G with or without weights on its vertices. If G is
given together with a map, then a ratio of 1 + can be achieved in O(n2 )
time for any given constant > 0, no matter whether each vertex of G is
given a weight or not. In case G is given without a map, a ratio of 4 can
be achieved in O(n7 ) time if no vertex is given a weight, while a ratio
of O(log n) can be achieved in O(n7 log n) time otherwise. Behind the
design of our algorithms are several fundamental results for map graphs;
these results can be used to design good approximation algorithms for
coloring and vertex cover in map graphs, and may find applications to
other problems on map graphs as well.
Introduction
106
Zhi-Zhong Chen
classes of graphs (such as planar graphs, bounded-degree graphs, etc). This paper
considers the MIS problem restricted to map graphs, which were introduced by
Chen et al. [5] recently.
Intuitively speaking, a map is a plane graph whose faces are classified into
nations and lakes. Traditional planarity says that two nations on a map M are
adjacent if and only if they share at least a borderline. Motivated by topological
inference, Chen et al. [5] considered a modification of traditional planarity, which
says that two nations on M are adjacent if and only if they share at least a
border-point. Consider the simple graph G whose vertices are the nations on M
and whose edges are all {f1 , f2 } such that f1 and f2 are nations sharing at least
a border-point. G is called a map graph [5,10]; if for some integer k, no point in
M is shared by more than k nations, G is called a k-map graph [5]. The UMIS
problem restricted to map graphs is NP-hard, because planar graphs are exactly
3-map graphs [5] and the UMIS problem restricted to planar graphs is NP-hard.
It is known [1,7] that the MIS problem restricted to planar graphs has a
polynomial-time approximation scheme (PTAS). Recall that a PTAS for a maximization (respectively, minimization) problem is a polynomial-time algorithm
A such that given an instance I of and an error parameter > 0, A computes
a solution S of I in time polynomial in the size of I such that the value of S is
at least (1 ) OP T (I) (respectively, at most (1 + ) OP T (I)), where OP T (I)
is the optimal value of a solution of I. An interesting question is to ask whether
the MIS problem restricted to map graphs also has a PTAS. Regarding this
question, we show that if the input graph is given together with a map, then
the MIS problem restricted to map graphs has a practical PTAS. Combining
this result and the Thorup algorithm [10] for constructing a map from a given
map graph, we obtain a PTAS for the MIS problem restricted to map graphs.
Unfortunately, the Thorup algorithm is extremely complicated and the exponent
of its polynomial time bound is about 120.
So, it is natural to assume that no map is given as part of the input and no
map construction is allowed in approximation algorithms. Under this assumption, we first show that the MIS problem restricted to k-map graphs for any
fixed integer k has a PTAS. This PTAS runs in linear time, but is impractical
because it uses the impractical Bodlaender algorithm [2] for tree-decomposition.
Using this PTAS, we then obtain an O(n7 )-time approximation algorithm for the
UMIS problem restricted to general map graphs that achieves a ratio of 4. We
also give two relatively more practical approximation algorithms. One of them is
for the MIS problem restricted to general map graphs, runs in O(n7 log n) time,
and achieves a ratio of O(log n). The other is for the UMIS problem restricted
to general map graphs, runs in O(n7 ) time, and achieves a ratio of 5.
Behind the design of our algorithms are several fundamental results for map
graphs; these results can be used to obtain the following results. First, there is
a PTAS for the minimum weighted vertex cover (MWVC) problem restricted to
map graphs. Second, a map graph G with n vertices and m edges can be colored
in O(n2 m) time using at most 2 (G) colors, where (G) is the chromatic
number of G. Third, for all optimization problems such that restricted
107
Preliminaries
Throughout this paper, a graph may have multiple edges but no loops, while a
simple graph has neither multiple edges nor loops. Let G = (V, E) be a graph.
The subgraph of G induced by a subset U of V is denoted by G[U ]. An independent set of G is a subset U of V such that G[U ] has no edge. The independence
number of G, denoted by (G), is the maximum number of vertices in an independent set of G. Let v V . The degree of v in G is the number of edges
incident to v in G; v is an isolated vertex if its degree is 0. The neighborhood
of v in G, denoted by NG (v), is the set of vertices adjacent to v in G. Note
that |NG (v)| bounds the degree of v in G from below. For a subset U of V , let
NG (U ) = vU NG (v).
Let E be a plane graph. Let f be a face of E. The boundary of f is the
graph (Vf , Ef ), where Vf and Ef are the set of vertices and edges surrounding
f , respectively. The size of f , denoted by |f |, is |Vf |. We call f a cycle face if its
boundary is a simple cycle.
A map M is a pair (E, ), where (1) E is a plane graph (P, EE ) and each
connected component of E is biconnected, and (2) is a function that maps
each inner face f of E to 0 or 1 in such a way that whenever (f ) = 1, f is
a cycle face. A face f of E is called a nation on M if f is an inner face with
(f ) = 1, while called a lake on M otherwise. For an integer k, a k-point in M
is a p P that appears on the boundaries of exactly k nations on M; a k + -point
in M is a p P that appears on the boundaries of more than k nations on M.
M is a k-map if there is no k + -point in M. Two nations are adjacent if their
boundaries share a p P. The graph of M is the simple graph G = (V, EG )
where V consists of the nations on M and EG consists of all {f1 , f2 } such that
f1 and f2 are adjacent. We call G a map graph, while call G a k-map graph if M
is a k-map. For clarity, we call the elements of P points, while call the elements
of V vertices. A nation f on M is isolated if f is an isolated vertex of G.
The half square of a bipartite graph H = (X, Y ; EH ) is the simple graph
G = (X, E) where E = {{x1 , x2 } | there is a y Y with {x1 , y} EH and
{x2 , y} EH }.
108
Zhi-Zhong Chen
Lemma 1. [5] Every map graph G = (V, E) is the half square of a bipartite
planar graph H = (V, P; EH ) with |P| 3|V | 6.
For a map M = (E, ) and a face f in E, we say that f touches a point p if
p appears on the boundary of f .
Let G = (V, E) be the input map graph given with a map M = ((P, EE ), ) and
a nonnegative weight to each nation on M. Let be the given error parameter.
Let H be the bipartite planar graph (V, P; EH ) where EH = {{v, p} | v
V, p P, and p is a point on the boundary of nation v}. Obviously, H can be
constructed in linear time from M. Moreover, G is the half square of H. Indeed,
Lemma 1 is proved by further removing all redundant points from H where a
point p P is redundant if for every pair {u, v} of neighbors of p in H, there is
a point q P {p} with {u, v} NH (q).
Our PTAS is a nontrivial application of the Baker approach. Let h = d 1 e. We
may assume that G and hence H are connected. Starting at an arbitrary vertex
r V , we perform a breadth-first search (BFS) on H to obtain a BFS tree TH .
For each vertex v in H, we define the level number `(v) of v to be the number of
edges on the path from r to v in TH . Note that only r has level number 0. For
each i {0, . . . , h 1}, let Hi be the subgraph of H obtained from H by deleting
all vertices v with `(v) 2i (mod 2h). Obviously, each v V appears in exactly
h 1 of H0 through Hh1 . Moreover, Hi is clearly a (2h 1)-outerplanar graph.
For each i {0, . . . , h 1}, let Gi be the half square of Hi . The crux is
that each Gi is an induced subgraph of G, because all p P appear in Hi . Our
strategy is to compute an independent set Ii of maximum weight in Gi for each
i {0, . . . , h 1}. Since each vertex of G appears in all but one of G0 through
Gh1 , the independent set of maximum weight among I0 , . . . , Ih1 has weight at
least (1 h1 ) OP T (G) (1 ) OP T (G). Recall that OP T (G) is the maximum
weight of an independent set in G.
So, it remains to show how to compute a maximum weight independent set Ii
in Gi for each i {0, . . . , h1}. To do this, we first recall the notion of treewidth.
A tree-decomposition of a graph K = (VK , EK ) is a pair ({Xj | j J}, T ), where
{Xj | j J} is a family of subsets of VK and T is a tree with vertex-set J such
that the following hold:
jJ Xj = VK .
For every edge {v, w} EK , there is a j J with {v, w} Xj .
For all j1 , j2 , j3 J, if j2 lies on the path from j1 to j3 in T , then Xj1 Xj3
Xj2 .
Each Xj is called the bag of vertex j. The treewidth of a tree-decomposition
({Xj | j J}, T ) is max{|Xj | 1 | j J}. The treewidth of K is the minimum treewidth of a tree-decomposition of K, taken over all possible treedecompositions of K.
109
It is widely known that the MIS problem restricted to graphs with bounded
treewidth can be solved in linear time. However, the treewidths of our graphs
G0 , . . . , Gh1 may not be bounded. Our strategy is to resort to H0 , . . . , Hh1
instead, and do a dynamic programming on them. The result is the following:
Theorem 1. There is a PTAS for the special case of the MIS problem restricted
to map graphs where the input graph is given together with a map M = (E, ).
It runs in O(h|E|2 + 212h8 h2 |E|) time, where h = d 1 e and is the given error
parameter.
We use an extension of the Baker approach, suggested in [4]. The only difference
between the extension and the Baker approach is that instead of decomposing the
given graph G into k 0 -outerplanar subgraphs, we decompose G into subgraphs
of bounded treewidth such that each vertex of G appears in all but one of these
subgraphs. The next lemma shows that such a decomposition is possible for a
k-map graph.
Lemma 2. Given a k-map graph G and an integer h 2, it takes O(h|G|) time
to compute a list L of h induced subgraphs of G such that (1) each subgraph in
L is of treewidth k(6h 4) and (2) each vertex of G appears in exactly h 1
of the subgraphs in L.
By the proof of Lemma 2, for all optimization problems such that
restricted to planar graphs has a PTAS as shown in [1], we can emulate Baker
[1] to show that restricted to k-map graphs has a PTAS as well for any fixed
integer k. In particular, we have:
Theorem 2. For any fixed integer k, there is a PTAS for the MIS problem
3
restricted to k-map graphs. It runs in O(232(6kh4k) hn) time, where n is the
size of the given k-map graph, h = d 1 e, and is the given error parameter.
The PTAS in Theorem 2 is impractical. We next show a different PTAS for
the special case of the UMIS problem where the input graph is given together
with a k-map. This PTAS is based on the Lipton and Tarjan approach. Although
this PTAS is not better than the one in Section 3, the tools used in its design
seem to be fundamental. Indeed, the tools will be used in the next section, and
we believe that they can be used in other applications.
A map M = (E, ) is well-formed if (1) the degree of each point in E is at
least 3, (2) no edge of E is shared by two lakes, (3) no lake touches a point whose
degree in E is 4 or more, and (4) the boundary of each lake contains at least 4
edges.
The next lemma shows that a map can easily be made well-formed.
Lemma 3. Given a map M = (E, ) with at least three nations and without
isolated nations, it takes O(|E|) time to obtain a well-formed map M0 such that
(1) the graph of M0 is the same as that of M and (2) for every integer k 2,
M is a k-map if and only if so is M0 .
110
Zhi-Zhong Chen
This section presents four approximation algorithms. The first three are for the
UMIS problem restricted to map graphs. The fourth is for the MIS problem
restricted to map graphs. The input to the first algorithm is a map instead of
a map graph; this algorithm is given here for the purpose of helping the reader
111
understand the other three algorithms. Also, the second algorithm is relatively
more practical than the third.
For a well-formed map M = (E, ), let G(M) be the plane graph obtained
from the dual plane graph E of E by deleting all vertices that are lakes on M.
Note that corresponding to each 2+ -point p in E, there is a unique face Fp in
G(M) such that the vertices on the boundary of Fp are exactly the nations on
M that touch p; the boundary of Fp is a simple cycle. We call Fp a point-face
of G(M). Those faces of G(M) that are not point-faces are called lake-faces.
Consider the following algorithm, called M apIS1 :
Input : A map M = (E, ).
1. If at most two nations are on M, then return a maximum weight independent
set of the graph of M.
2. If there is an isolated nation on M, then find such a nation f ; otherwise,
perform the following substeps:
2.1. Modify M to a well-formed map, without altering the graph of M.
2.2. Construct G(M).
2.3. Find a minimum-degree vertex f in G(M).
3. Construct a new map M0 = (E, 0 ), where for all faces f1 of E, if f1 = f or f1
is a neighbor of f in the graph of M, then 0 (f1 ) = 0, while 0 (f1 ) = (f1 )
otherwise.
4. Recursively call M apIS1 on input M0 , to compute an independent set J in
the graph of M0 .
5. Return {f } J.
Theorem 4. M apIS1 achieves a ratio of 5 and runs in O(|E|2 ) time.
Proof. (Sketch) The number of edges in G(M) is at most 3n 6. So, the degree
of f in G(M) is at most 5. We can then claim that the neighborhood of f in G
can be divided into at most five cliques.
Consider the following algorithm, called M apIS2 :
Input : A map graph G = (V, E).
1. If G has exactly at most two vertices, then return a maximum weight independent set of G.
2. Find a vertex f in G such that (Gf ) 5, where Gf = G[NG (f )].
3. Remove f and its neighbors from G.
4. Recursively call M apIS2 on input G, to compute an independent set J.
5. Return {f } J.
Theorem 5. M apIS2 achieves a ratio of 5, and runs in O(|V |
time.
P
f V
|NG (f )|6 )
112
Zhi-Zhong Chen
113
.
i
i=k+1
2(k3)
(1 )((G0 )
Let
J
be
the
bigger one among J1 and J2 . By Step 6, |J|P
P
1
i=k+1 hi ). By Step 5 and Corollary 1, |J| 2k (n
i=k+1 ihi ). Thus,
|J|
|J|
1
n
k7
n
(1
)(1
)
and
(G0 )
2(k3) (G0 )
(G0 )
4k(k3) (G0 ) . As the value of
n
(G0 )
|J|
(G0 )
|J|
decreases. The worst case happens
bound on (G
0)
|J|
k7
. By fixing
Therefore, (G0 ) (1 ) 3k2k7
|J|
1
(G0 ) 4 .
when
=
1
4
n
(G0 )
4k(k3)(1)
3k2k7 .
114
Zhi-Zhong Chen
Concluding Remarks
Abstract. Given a set V and three relations ./d , ./m and ./i , we wish
to ask whether it is possible to draw the elements v V each as a closed
disc homeomorph Dv in the plane in such a way that (1) Dv and Dw
are disjoint for every (v, w) ./d , (2) Dv and Dw have disjoint interiors
but share a point of their boundaries for every (v, w) ./m , and (3) Dv
includes Dw as a sub-region for every (v, w) ./i . This problem arises
from the study in geographic information systems. The problem is in NP
but not known to be NP-hard or polynomial-time solvable. This paper
shows that a nontrivial special case of the problem can be solved in
almost linear time.
1
1.1
Introduction
Topological Inference Problems
An instance of the planar topological inference (PTI) problem is a triple (V, ./d
, ./m ), where V is a finite set, ./d (subscript d stands for disjoint) and ./m
(subscript m stands for meet) are two irreflexive symmetric relations on V with
./d ./m = . The problem is to determine whether we can draw the elements
v of V in the plane each as a closed disc homeomorph Dv in such a way that
(1) Dv and Dw are disjoint for every (v, w) ./d , and (2) Dv and Dw have
disjoint interiors but share a point of their boundaries for every (v, w) ./m .
The PTI problem and its extensions have been studied for geographic information systems [2,5,6,7,8,9]. In the fully-conjunctive case of the PTI problem,
it holds that for every pair of distinct v, w V , either {(v, w), (w, v)} ./d
or {(v, w), (w, v)} ./m . The fully-conjunctive PTI problem was first studied
by Chen et al. [1] and subsequently by Thorup [10]; the latter gave a complicated inefficient but polynomial-time algorithm for the problem. Motivated by
the maps of contemporary countries in the world, Chen et al. [1] restricts the
fully-conjunctive PTI problem by requiring that no point of the plane is shared
by more than k closed disc homeomorphs Dv with v V . Call this restriction the
fully-conjunctive k-PTI problem. The fully-conjunctive 3-PTI problem is just the
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 115125, 2000.
c Springer-Verlag Berlin Heidelberg 2000
116
problem of deciding whether a given graph is planar. However, even the fullyconjunctive 4-PTI problem is difficult to solve; a very complicated O(n3 )-time
algorithm for it was given in [1].
As has been suggested previously [1,5,6,7,9], a generalization of the PTI
problem is obtained by adding another irreflexive, antisymmetric and transitive
relation ./i (subscript i stands for inclusion) on V with ./i (./d ./m ) = and
requiring that Dv includes Dw as a sub-region for all (v, w) ./i . Unfortunately,
no meaningful result has been obtained for this generalization. A natural restriction on ./i is to require that each Dv with v V and {(v, w) ./i | w V } 6=
is the union of all Dw with (v, w) ./i . We call this generalization the hierarchical topological inference (HTI) problem. In the fully-conjunctive case of the
HTI problem, for every pair of distinct v, w V , exactly one of the following
(1) through (3) holds: (1) {(v, w), (w, v)} ./d; (2) {(v, w), (w, v)} ./m ; (3)
{(v, w), (w, v)} (./d ./m ) = and |{(v, w), (w, v)} ./i | = 1.
Since no efficient algorithm for the fully-conjunctive HTI problem is in sight,
we seek to restrict it in a meaningful way so that an efficient algorithm can
be designed. As Chen et al. [1] restricted the fully-conjunctive PTI problem,
we restrict the fully-conjunctive HTI problem by requiring that no point of the
plane is shared by more than k minimal closed disc homeomorphs Dv , i.e., those
Dv with v V such that {w V | (v, w) ./i } = . Call this restriction the
fully-conjunctive k-HTI problem. Unlike the fully-conjunctive 3-PTI problem,
the fully-conjunctive 3-HTI problem is nontrivial.
1.2
A Graph-Theoretic Formulation
Throughout this paper, a graph may have multiple edges but no loops, while a
simple graph has neither multiple edges nor loops. Also, a cycle in a graph H
always means a vertex-simple cycle in H.
A hierarchical map M is a pair (E, F), where (1) E is a plane graph whose
connected components are biconnected, and (2) F is a rooted forest whose leaves
are distinct faces of E. The faces of E that are not leaves of F are called the
lakes on M, while the rest faces of E are called the leaf districts on M. For each
non-leaf vertex of F, the union of the faces that are leaves in the subtree of F
rooted at is called a non-leaf district on M. M is a planar map if each vertex
of E is incident to at most three edges of E. M is a disc map if (1) the boundary
of each leaf district on M is a cycle and (2) for every non-leaf district D on M,
there is a cycle C such that D is the union of the faces in the interior of C 1 .
The map graph G of M is the simple graph whose vertices are the leaf districts
on M and whose edges are those {f1 , f2 } such that the boundaries of f1 and f2
intersect. Note that two districts on a map M may share two or more disjoint
borderlines (e.g. China and Russia share two disjoint borderlines with Mongolia
in between). However, the map graph G of M is always simple, meaning that
there is at most one edge between each pair of vertices. Note that G is planar
when M is a planar map. We call (G, F) the abstract of M.
1
117
Our result is an O(|F | + |G| log |G|)-time algorithm for deciding whether a given
graph-forest pair (G, F) is the abstract of a planar disc map M, where |G|
denotes the total number of vertices and the edges in G. The difficulty of this
problem comes from the lack of information in G about whether there are lakes
on M and how many borderlines two leaf districts on M can share.
Since Chen et al.s algorithm [1] for the fully-conjunctive 4-PTI problem is
a reduction to the fully-conjunctive 3-PTI problem, we suspect that our result
may serve as a basis for tackling the fully-conjunctive 4-HTI problem or even
more general cases.
The rest of the paper is organized as follows. 2 gives definitions needed
in later sections. Theorem 1 reduces the problem to the special case where the
input planar graph G is biconnected. For this special case, if we know that two
vertices z1 and z2 of the input planar graph G can be embedded on the outer
face, then the algorithm in 3 works. In 4, we discuss how to identify two such
vertices z1 , z2 .
See http://rnc2.r.dendai.ac.jp/chen/papers/3map.ps.gz for a full version.
Definitions
Let G be a graph. V (G) and E(G) denotes the vertex-set and the edge-set of
G, respectively. |G| denotes the total number of vertices and edges in G. Let
E 0 E(G) and U V (G). The subgraph of G spanned by E 0 , denoted by G[E 0 ],
is the graph (V 0 , E 0 ) where V 0 consists of the endpoints of the edges of E 0 . GE 0
denotes the graph (V (G), E(G)E 0 ). The subgraph of G induced by U is denoted
by G[U ]. G U denotes G[V (G) U ]. If G is a plane graph, then each of G[E 0 ],
G E 0 , G[U ], and G U inherits an embedding from G in the obvious way.
A cut vertex of G is a v V (G) such that G {v} has more connected
components than G. G is biconnected if G is connected and has no cut vertex.
A biconnected component of G is a maximal biconnected subgraph of G. We
simply call connected components 1-components, and biconnected components
2-components.
Let G be a plane graph. A k-face of G is a face of G whose boundary is a
cycle consisting of exactly k edges. A superface of G is G[U ] for some U V (G)
such that G[U ] is connected and each inner face of G[U ] is an inner 2- or 3-face
118
of G. The interior of a superface G[U ] of G is the open set consisting of all points
p in the plane that lie neither on the boundary nor in the interior of the outer
face of G[U ].
A graph-forest pair (G, F) is planar if G is planar. A graph-forest-set (GFS)
triple is a triple (G, F, S) such that (G, F) is a planar graph-forest pair and S is
a subset of V (G). For a rooted forest F and a non-leaf vertex f of F, let LF (f )
denote the set of all leaves of F that are descendants of f . An edge-duplicated
supergraph of a simple graph G is a graph G such that (1) the vertices of G are
those of G and (2) for each pair of adjacent vertices in G, G has an edge between
the two vertices. A plane graph G satisfies a GFS triple (G, F, S) if (1) G is
an edge-duplicated supergraph of G and (2) for every non-leaf vertex f of F,
G[LF (f )] is a superface of G whose interior contains no vertex of S. A GFS triple
is satisfiable if some plane graph satisfies it. A planar graph-forest pair (G, F) is
satisfiable if the GFS triple (G, F, ) is satisfiable.
We can assume that a GFS triple (G, F, S) (resp., graph-forest pair (G, F))
always satisfies that no vertex of F has exactly one child. By this, |F | = O(|G|).
Theorem 1. The problem of deciding whether a given planar graph-forest pair
(G, F) is the abstract of a planar disc map can be reduced in O(|G| log |G|)
time, to the problem of deciding whether a given GFS triple (G, F, S) with G
biconnected is satisfiable.
Biconnected Case
SPQR Decompositions
119
120
Basic Ideas
Suppose that we have found a desired pair {z1 , z2 } for (G, F, S) and have converted G to a TTG G with poles z1 and z2 . Throughout 3.2, 3.3, and 3.4, when
we say that (G, F, S) is not satisfiable, we mean that (G, F, S) is satisfied by no
plane graph in which z1 and z2 are on the boundary of the outer face.
Let T be the decomposition tree of G. Our algorithm processes the P- or
R-nodes of T in post-order. Processing a node is to perform Operations 1
through 3 in Lemma 1 on the subtree of T rooted at , and to modify Prt()
and hence G accordingly.
Before proceeding to the details of processing nodes, we need several definitions. For a block B of G, G B denotes the plane subgraph of G obtained
from G by deleting all vertices in V (B) {s(B), t(B)} and all edges in E(B).
For a plane subgraph H of G and a vertex f of F, H LF (f ) denotes the plane
subgraph of H induced by V (H) LF (f ).
Let be a node of T . Let B = Prt(). A vertex f in F is -through if B
LF (f ) contains a path between s(B) and t(B); is -out-through if (GB)LF (f )
contains a path between s(B) and t(B); is -critical if it is both -through and
-out-through. Note that if a vertex f of F is -critical (resp., -through, or
-out-through), then so is every ancestor of f in F. A vertex f of F is extreme
-critical if f is -critical but no child of f in F is. Define extreme -through
vertices and extreme -out-through vertices similarly.
Let 1 , . . . , k be the children of in T . For each i {1, . . . , k}, let ei be
the virtual edge of i in Skl(), and Bi = Prt(i ). For a vertex f of F, E,f
denotes the set {ei | f is i -through}. We say f is -cyclic, if the plane subgraph
of Skl() spanned by E,f contains a cycle. Note that if f is -cyclic, then so is
every ancestor of f in F. We say f is extreme -cyclic, if f is -cyclic but no
child of f in F is.
Lemma 2. For each node of T , there is at most one extreme -critical (resp.,
-through, or -out-through) vertex in F.
For each node in T , if there is a -through (resp., -out-through, or critical) vertex in F, then let x-thr() (resp., x-out-thr(), or x-crt()) denote the
extreme -through (resp., -out-through, or -critical) vertex in F; otherwise,
let x-thr() = (resp., x-out-thr() = , or x-crt() = ).
Let be a node of T . An embedding of Prt() is a TTG that is an edgeduplicated supergraph of Prt() and has the same poles as Prt(). In an embedding B of Prt(), the poles of B divide the boundary of the outer face of
121
B into two paths, which are called the left side and the right side of B, respectively. An embedding B of Prt() is potential if for every vertex f in F with
V (B) LF (f ) 6= , each connected component of B LF (f ) is a superface of
B LF (f ) whose interior contains no vertex of S. When is a P-node (resp.,
R-node), a potential embedding B1 of Prt() is better than another potential
embedding B2 of Prt() if B1 has more sides consisting of exactly one edge
(resp., two edges) than B2 . An embedding of Prt() is optimal if it is potential
and no potential embedding of Prt() is better than it.
Lemma 3. Suppose that an embedding G 0 of G satisfies (G, F, S). Let be a
node of T . Let B be the subgraph of G 0 that is an embedding of Prt(). Let O
be an optimal embedding of Prt(). Then, the embedding of G obtained from G 0
by replacing B with O still satisfies (G, F, S).
Right before the processing of a P- or R-node , the following invariant holds
for all that is a non-S-child of or a child of an S-child of in T :
An optimal embedding B of Prt() has been fixed, except for a possible
flipping around its poles.
In the description of our algorithm, for convenience, we will denote the fixed
embedding of Prt() still by Prt() for all nodes of T that have been processed.
3.3
Processing R-Nodes
122
3.4
Processing of P-Nodes
123
P-Procedure1:
1. Let E,fr = {ei1 , . . . , eih } where i1 is a Q-node.
2. For all j {2, . . . , h}, mark eij if (1) some side of Bij does not consist of
exactly two edges, or (2) S (V (Bij ) {s(B), t(B)}) 6= , or (3) V (Bij ) 6
LF (f0 ).
3. Depending on the number m of marked edges, distinguish three cases:
Case 1: m = 0. Then, perform the following substeps:
(a) Modify B by permuting its child blocks so that (1) the edge Bi1 is
on the left side of B and (2) Bi1 , . . . , Bih appear consecutively.
(b) For each j {2, . . . , h}, add an edge {s(B), t(B)} right after Bij .
Case 2: m = 1. Let the marked edge be ei` , and perform the following:
(a) If i` is an R-node, perform the following substeps:
i. Check whether some side P 0 of Bi` satisfies that (1) there are
exactly two edges e01 and e02 on P 0 and (2) the common endpoint
of e01 and e02 is not in S but is in LF (f ) where f = x-thr(i` ).
(Comment: f is on P , i.e., f is an ancestor of f0 in F.)
ii. If P 0 does not exist, then stop immediately because (G, F, S) is
not satisfiable; otherwise, flip Bi` around its poles if P 0 is not
the left side of Bi` .
(b) If i` is an S-node, then perform the following substeps:
i. If i` has more than two children, then stop immediately because
(G, F, S) is not satisfiable.
ii. Let the children of i` be 1 and 2 . For each j {1, 2}, if no
side of Prt(j ) consists of a single edge, then stop immediately
for failure; otherwise, flip Prt(j ) around its poles when the left
side of Prt(j ) does not consist of a single edge.
(c) Modify B by permuting its child blocks so that (1) the edge Bi1 is on
the left side of B and (2) Bi1 , . . . , Bi` 1 , Bi` +1 , . . . , Bih , Bi` appear
consecutively in this order.
(d) For all j {2, . . . , h} {`}, add an edge {s(B), t(B)} right after Bij .
Case 3: m 2. Then, stop because (G, F, S) is not satisfiable.
P-Procedure2:
1. Perform Steps 1 and 2 of P-Procedure1.
2. Depending on the number m of marked edges, distinguish three cases:
Case 1: m = 0. Same as Case 1 in P-Procedure1.
Case 2: m = 1. Same as Case 2 in P-Procedure1.
Case 3: m = 2. Let ei` and ei`0 be the two marked edges where i` < i`0 .
Then, perform the following substeps:
(a) If i` is an R-node, then perform Substeps 3(a)i and 3(a)ii of PProcedure1; otherwise, perform Substeps 3(b)i and 3(b)ii of P-Procedure1.
124
References
1. Z.-Z. Chen, M. Grigni, and C.H. Papadimitriou. Planar map graphs. Proc. 30th
STOC (1998) 514523. See http://rnc2.r.dendai.ac.jp/chen/papers/mg2.ps.gz for
a full version.
2. Z.-Z. Chen, X. He, and M.-Y. Kao. Nonplanar topological inference and politicalmap graphs. Proc. 10th SODA (1999) 195204.
3. G. Di Battista and R. Tamassia. On-line maintenance of triconnected components
with spqr-trees. Algorithmica 15 (1996) 302318.
4. G. Di Battista and R. Tamassia. On-line planarity testing. SIAM J. Comput. 25
(1996) 956997.
125
5. M.J. Egenhofer. Reasoning about binary topological relations. In: O. Gunther and
H.J. Schek (eds.): Proc. Advances in Spatial Database (1991) 143160.
6. M.J. Egenhofer and J. Sharma. Assessing the consistency of complete and incomplete topological information. Geographical Systems 1 (1993) 4768.
7. M. Grigni, D. Papadias, and C.H. Papadimitriou. Topological inference. Proc. 14th
IJCAI (1995) 901906.
8. D. Papadias and T. Sellis. The qualitative representation of spatial knowledge in
two-dimensional space. Very Large Data Bases Journal 4 (1994) 479516.
9. T.R. Smith and K.K. Park. Algebraic approach to spatial reasoning. Int. J. on
Geographical Information Systems 6 (1992) 177192.
10. M. Thorup. Map graphs in polynomial time. Proc. 39th FOCS (1998) 396405.
Introduction
??
???
Corresponding author. Department of Computer Science and Information Management. The work was partly supported by the National Science Council, Taiwan,
R.O.C, grant NSC-88-2213-E-126-005.
Department of Accounting.
Department of Computer Science and Information Management.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 126136, 2000.
c Springer-Verlag Berlin Heidelberg 2000
127
128
129
130
Algorithm MCDS(T )
Input: A trapezoid diagram T with n trapezoids. Each trapezoid vi is defined
by four corner points ai , bi , ci , di , 1 i n. They are labeled with consecutive
n
integer values 1, 2, 3, . . . , 2n; that is, n
i=1 {ai , bi } = i=1 {ci , di } = [1..2n].
Output: A minimum cardinality connected dominating set D.
Step 1: Identify all left dominators VL and right dominators VR .
Step 2: |D| = 1 if VL VR 6= ; output any vertex v VL VR as the singleton
dominating set and stop.
Step 3: Compute b = max{bi | vi VL }; d = max{di | vi VL }; a = min{ai |
vi VR }; c = min{ci | vi VR }.
Step 4: (* Deal with |D| = 2. *) Stop and output D = {a, b} if a < b; stop
output {c, d} if c < d. Further, stop and output D if there is a dominating
pair with X-shaped or 8-shaped intersection.
Step 5: (* Now, |D| 3. *) Let Pba , Pbc , Pda , Pdc be the four shortest paths
from {b, d} to {a, c}. Among these four paths, output the one with the smallest
cardinality.
End of MCDS
Proof. The algorithm is shown in Figure 1. Note that Step 1 of the algorithm
takes O(n) time by Lemma 2. Clearly Step 2 and Step 3 can be done in O(n)
time. Step 4 is the most complicated case of the algorithm; it has been shown
in Lemma 3 that the dominating set can be correctly found in O(n) time.
The rest of the proof appears in the complete paper.
131
We first show that the source vertices can be initialized efficiently. The aggregated weight for a left dominator u is, by definition, w0 (u) = w(u). For a nondominator source vertex v, it joins with another vertex x to form a minimum
weighted source pair containing v. It is possible that the joint partner x is a
dominator; the aggregated weight of v can be thus deduced from the dominator.
The general scheme of the algorithm will deal with the situation properly. Otherwise, x is another non-dominator but together {v, x} constitute a minimum
weighted source pair. We call such kind of a source pair a non-dominator source
pair.
Lemma 4. The aggregated weights of all non-dominator source pairs of the
trapezoid graph can be found in O(n) time.
Proof. The proof appears in the complete paper.
Let two adjacent vertices {u, v} form a sink pair. If neither u nor v is a right
dominator, we call such kind of a sink pair a non-dominator sink pair. Note
that the target vertices can either be a singleton right dominator or two vertices
forming a non-dominator sink pair. For each non-dominator sink vertex v, there
is a (possibly none existed) lightest non-dominator vertex x so that together
{v, x} form a non-dominator sink pair. We assign such a non-dominator sink
vertex v a modified weight of v with a value w(v) + w(x). We can show that
Lemma 5. The modified weights of all non-dominator sink pairs of the trapezoid
graph can be found in O(n) time.
Proof. The proof appears in the complete paper.
132
Lemma 6. The aggregated weights of all vertices of the trapezoid graph can be
found in O(n log log n) time.
Proof. We begin by inserting the aggregated weights of all the left dominators
and non-dominator source pairs into the priority queues Q1 and Q2 . Note that
the top right corners of source vertices are inserted into Q1 , and the bottom
right corners are inserted into Q2 . The aggregated weights are kept on both
priority in increasing (weighted) order. Let the currently maintained list on Q1 =
hvi1 , vi2 , . . . , vik i. It follows that bi1 < bi2 < < bik and w0 (vi1 ) < w0 (vi2 ) <
< w0 (vik ). Symmetrically, let Q2 = hvj1 , vj2 , . . . , vjk i; we have dj1 < dj2 <
< djk and w0 (vj1 ) < w0 (vj2 ) < < w0 (vjk ). In particular, assume that a
vertex v with position b(v) [vig ..vig+1 ] is inserted into Q1 . In the following, we
describe how to join a vertex v into Q1 : The vertex v is discarded if w0 (v) >
w0 (vig+1 ). Otherwise, we insert the vertex v into Q1 and remove all vertices lied
on the left of b(v) with w0 () larger than w0 (v). The operation of joining d(v)s
into Q2 follows symmetrically.
After the source vertices have been properly joined into Q1 and Q2 , let
Q1 = hvi1 , vi2 , . . .i and Q2 = hvj1 , vj2 , . . .i. The algorithm starts by checking
the smaller value of {w0 (vi1 ), w0 (vj1 )}. Assume that w0 (vi1 ) w0 (vj1 ); it follows
that vertices vi s with their top left corners satisfying ai < bi1 now have their
aggregated values decided. That is, w0 (vi ) = w(vi ) + w0 (vi1 ). The situation is
illustrated in Figure 2. Note that the top right corner of the vertex vi will then
a(v)
b(x)
Q1
v
Q1
v
c(v)
d(x)
be joined into Q1 , and the bottom right corner of the vertex vi will be joined
into Q2 . We then discard the vertex vi1 from Q1 . The case that w0 (vj1 ) < w0 (vi1 )
can be handle symmetrically.
It is readily verified that the algorithm described above gives the correct aggregated weights of all vertices, and the total efforts spent is at most O(n log log n)
time. The rest of the proof appears in the complete paper.
Let two adjacent vertices {u, v} form a dominating pair of the trapezoid
graph. There are three kinds of dominating pairs. The first case of a dominating
pair is when one of the vertices is a left dominator and the other vertex is a right
dominator. It is easily seen that the general scheme of the algorithm deal with
133
the situation correctly. The second case of a dominating pair is when one of the
vertices is a dominator, but the other vertex is not a dominator. Here we show
how to find the minimum weighted connected dominating pair of such kind.
Lemma 7. The minimum weighted connected dominating pair, forming by a
dominator and a non-dominator, can be found in O(n) time given the trapezoid
diagram.
Proof. The proof appears in the complete paper.
The third case of a dominating pair is when none of the vertices is a dominator.
That is, we have a X-shaped or a 8-shaped dominating pair. The case considered
here is actually the most complicated situation of the algorithm. We can also
show that
Lemma 8. The minimum weighted connected, X-shaped or 8-shaped, dominating pair of a trapezoid diagram can be found in O(n log log n) time.
Proof. First we show that the minimum weighted dominating pair with Xshaped intersection can be found in O(n log log n) time. Let the left-pencil L =
hri1 , ri2 , . . . , rig i and the right-pencil R = h`j1 , `j2 , . . . , `jh i. Further, let the minimum weighted dominating pair be the set {v, x}. Without loss of generality we
may assume that vertex v dominates the lower part of L and the upper part of
R, while x dominates the upper part of L and the lower part of R. The idea here
is that, while the bottom left corner of v located at interval [dik+1 ..dik ], the top
left corner of x must be located before the position bik ; i.e., a(x) [bi1 ..bik ]. So,
by pairing these {v, x}s pair and checking their domination of the right-pencil,
we can find the minimum, X-shaped, dominating pair.
Maintain two priority queues: Q1 for the upper intervals of right-pencil and
Q2 for the lower intervals of the right-pencil. Note that Q1 is initialized by inserting all upper positions of the right-pencil R. Scan each vertex x within [bi1 ..bi2 ],
the first upper interval of L. Recall the join operation we defined in Lemma 6.
We will join the bottom right corners of x (as well as their corresponded weights
w(x)s) into the queue Q2 . Then, for each vertex v within the last lower interval
of L, [di1 ..di2 ], we probe the top right corners of v to seek its position in Q1 , say
b(v) [ajk ..ajk+1 ]. It follows that those xs whose bottom right corners greater
than cjk+1 can be paired with v to become a dominating pair. To get the lightest
joint vertex, we can probe cjk+1 into Q2 , seeking to the right, and obtain the desired minimum joint partner x. We maintain the sum of weights of the lightest
dominating pair obtained so far; each time a joint partner is found, the sum of
their weights is compared with it. The minimum weighted dominating pair can
thus be found by this manner. The situation is illustrated in Figure 3.
We obtain the final minimum weighted dominating pair by successively joining the vertices cornered at [bi2 ..bi3 ] into Q2 and probing vertices cornered at
[di2 ..di3 ] into Q1 , and so on, until the final intervals [big1 ..big ] and [dig1 ..dig ]
have been reached. Note that positions d(x)s are accumulatively joined (with
side effects) into Q2 while positions b(v)s are probed into Q1 interleavedly with
joining of d(x)s. Since each operation to the priority queue takes O(log log n)
134
probe b(v)
a(x)
L
c(v)
Q1
a(x)
R
c(v)
join d(x)
join b(x)
Q1
Q2
Q2
probe d(v)
time, and we spend only a constant number of queue operations for each vertex,
it is not hard to see that the total efforts spent is at most O(n log log n) time.
The case of 8-shaped dominating pair is similar to the case discussed above.
The rest of proof appears in the complete paper.
We are now ready to show that
Theorem 2. The minimum weighted connected dominating set of a trapezoid
diagram can be found in O(n log log n) time.
Algorithm WCDS(T )
Input: A trapezoid diagram T with n trapezoids.
Output: A minimum weighted connected dominating set D.
Step 1: Find the left-pencil (right-pencil) and all left (right) dominators.
Step 2: Initialize the aggregated weights of left-dominators and non-dominator
source pair.
Step 3: Find the non-dominator sink pairs, set their modified weights, and mark
these right dominators and non-dominator sink pairs as the target vertices.
Step 4: Calculate the aggregated weights w0 () of all the vertices along the
two parallel lines. Scan through each right dominator and the modified sink
pairs, and find the one with the minimum aggregated weight. Let the resulting
aggregated weight of the dominating set be w1 .
Step 5: Compute the minimum dominating pair, forming by a dominator and
a non-dominator. Let the resulting weight of the pair be w2 .
Step 6: Compute the minimum dominating pair with X-shaped or 8-shaped
intersection. Let the resulting weight of the minimum dominating pair be w3 .
Step 7: The smallest value within the set {w1 , w2 , w3 } is the desired weight of
the minimum weighted connected dominating set. Output the corresponded
dominating set D by tracing back the predecessor links.
End of WCDS
135
Proof. The algorithm is shown in Figure 4. Note that Step 1 to Step 3 takes O(n)
time by Lemma 2, 4, and 5. Step 4, by Lemma 6, can be done in O(n log log n)
time. Step 5 can be done within O(n) time by Lemma 7. Step 6 is the most
complicated case of the algorithm; Lemma 8 shows that it takes O(n log log n)
time. The rest of the proof appears in the complete paper.
Concluding Remarks
Note that previous results [7, 11] solved the problems by checking all possible
source and sink pairs; thus they had to spend O(m + n) time for the unweighted
case and O(m + n log n) time for the weighted case even when the trapezoid
diagram was given. Note that the size of the trapezoid diagram is just O(n),
but these algorithms still spend potentially (n2 ) time when the size of edges
is large.
Recently, Kohler [5] presents an O(n) time algorithm for finding the minimum cardinality connected dominating set in trapezoid graphs. Using different
approach, our algorithm exploits the pencil structure within the trapezoid diagram to find the minimum-sized connected dominating set in O(n) time. For
the weighted problem, our algorithm again uses the pencil structure as well as
priority queues of finite integers [12] to find the minimum weighted connected
dominating set in O(n log log n) time.
References
[1] Andreas Brandst
adt, Van Bang Le, and Jeremy P. Spinrad. Graph Classes: A Survey. SIAM monographs on discrete mathematics and applications, Philadelphia,
P. A., 1999.
[2] M.-S. Chang. Weighted domination of cocomparability graphs. Discr. Applied
Math., 80:135148, 1997.
[3] I. Dagan, M.C. Golumbic, and R.Y. Pinter. Trapezoid graphs and their coloring.
Discr. Applied Math., 21:3546, 1988.
[4] T.W. Haynes, S.T. Hedetniemi, and P.J. Slater. Fundamentals of Domination in
Graphs. Marcel Dekker, Inc., N. Y., 1998.
[5] E. Kohler. Connected domination and dominating clique in trapezoid graphs.
Discr. Applied Math., 99:91110, 2000.
[6] D. Kratsch and L. K. Stewart. Domination on cocomparability graphs. SIAM J.
Discrete Math., 6(3):400417, 1993.
[7] Y. D. Liang. Steiner set and connected domination in trapezoid graphs. Information Processing Letters, 56(2):101108, 1995.
[8] Y. Daniel Liang. Dominations in trapezoid graphs. Information Processing Letters,
52(6):309315, December 1994.
[9] Yaw-Ling Lin. Fast algorithms for independent domination and efficient domination in trapezoid graphs. In ISAAC98, LNCS 1533, pages 267276, Taejon,
Korea, December 1998. Springer-Verlag.
[10] T.-H. Ma and J.P. Spinrad. On the 2-chain subgraph cover and related problems.
J. Algorithms, 17:251268, 1994.
136
[11] Anand Srinivasan, M.S. Chang, K. Madhukar, and C. Pandu Rangan. Efficient algorithms for the weighted domination problems on trapezoid graphs. Manuscript,
1996.
[12] P. van Emde Boas. Preserving order in a forest in less than logarithmic time and
linear space. Information Processing Letters, 6:8082, 1977.
Introduction
Part of this work was done while the first author was at IIT Bombay and visited the
Institute of Mathematical Sciences, Chennai
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 137147, 2000.
c Springer-Verlag Berlin Heidelberg 2000
138
A graph property is a collection of graphs. A graph property is nontrivial if it holds for at least one graph and does not include all graphs. A
non-trivial graph property is said to be hereditary if a graph G is in property
implies that every induced subgraph of G is also in . A graph property is said
to be interesting [9] if the property is true (as well as false) for infinite families of
graphs. Lewis and Yannakakis[9] (see also [6]) showed that if is a non-trivial
and interesting hereditary property, then it is NP-hard to decide whether in a
given graph, k vertices can be deleted to obtain a graph which satisfies .
For a hereditary property , let F be the family of graphs not having the
property. The set of minimal members (minimal with respect to the operation
of taking induced subgraphs) of F is called the forbidden set for the property
. For example, the collection of all bipartite graphs is a hereditary property
whose forbidden set consists of all odd cycles. Conversely, given any family F of
graphs, we can define a hereditary property by declaring its forbidden set to be
the set of all minimal members of F.
Cai[1] has shown that the graph modification problem for a non-trivial hereditary property with a finite forbidden set is fixed parameter tractable (FPT).
This problem includes the node deletion problem addressed by Lewis and Yannakakis (mentioned above). While the parameterized complexity of the question,
when is a hereditary property with an infinite forbidden set, is open, we address the parametric dual problem in this paper. Given any property , let
P (G, k, ) be the problem defined below.
Given: A simple undirected graph G(V, E)
Parameter: An integer k |V |
Question: Is there a subset V 0 V with |V 0 | = k such that the subgraph
of G induced by V 0 has property ?
This problem is the same as |V | k node deletion problem (i.e. can we
remove all but k vertices of G to get a graph with property ) and hence NPhard. However the parameterized complexity of this problem doesnt follow from
Cais result. We prove that if includes all independent sets, but not all cliques
or vice versa, then the problem P (G, k, ) is W [1]-complete when the forbidden
set of is finite and W [1]-hard when the forbidden set is infinite. The proof is
by a parametric reduction from the Independent Set problem. If includes
all independent sets and all cliques, or excludes some independent sets and some
cliques then we show that the problem is fixed parameter tractable.
Note, from our and Cais result, that the parameterized dual problems dealt
with, have complimentary parameterized complexity. This phenomenon has been
observed in a few other parameterized problems as well. In a graph G(V, E),
finding a vertex cover of size k is FPT whereas finding an independent set of size
k (or a vertex cover of size |V | k) is W [1]-complete; In a given boolean 3-CNF
formula with m clauses, finding an assignment to the boolean variables that
satisfies at least k clauses is FPT whereas finding an assignment that satisfies
at least (m k) clauses (i.e. all but at most k clauses) is known to be W [P ]hard [2] (k is the parameter in both these problems). The k-Irredundant Set
problem is W [1]-hard whereas Co-Irredundant set or (n k) Irredundant
139
Set problem is FPT [5]. Our result adds one other (general) problem to this
list.
Throughout the paper, by a graph we mean an undirected graph with no
loops or multiple edges. By a non-trivial graph, we mean a graph with at least
one edge. Given a graph G and A V (G), by IG (A) we mean the subgraph
of G induced by vertices in A. For two graphs H and G, we use the notation
H G to mean that H is isomorphic to an induced subgraph of G. For the
graph properties we will be concerned with in this paper, we assume that
is recursive; i.e. given a graph G on n vertices, one can decide whether or not G
has property in f (n) time for some function of n.
We had already defined the notion of fixed parameter tractable problems. To
understand the hardness result, we give below some definitions. See [4] for more
details.
A parameterized language L is a subset of N where is some finite
alphabet and N is the set of all natural numbers. For (x, k) L, k is the
parameter. We say that a parameterized problem A reduces to a parameterized
problem B, if there is an algorithm which transforms (x, k) into (x0 , g(k)) in
time f (k)|x| where f, g : N N are arbitrary functions and is a constant
independent of k, so that (x, k) A if and only if (x0 , g(k)) B. The essential
property of parametric reductions is that if A reduces to B and if B is FPT,
then so is A.
Let F be a family of boolean circuits with and, or and not gates; We allow that
F may have many different circuits with a given number of inputs. Let the weight
of a boolean vector be the number of 1s in the vector. To F we associate the parameterized circuit problem LF = {(C, k) : C accepts an input vector of weight
k}. Let the weft of a circuit be the maximum number of gates with fan-in more
than two, on an input-output path in the circuit.
A parameterized problem L belongs to W [t] if L reduces to the parameterized
circuit problem LF (t,h) for the family F (t, h) of boolean circuits with the weft
of the circuits in the family bounded by t, and the depth of the circuits in the
family bounded by a constant h. This naturally leads to a completeness program
based on a hierarchy of parameterized problem classes:
F P T W [1] W [2] . . .
The parameterized analog of NP is W [1], and W [1]-hardness is the basic
evidence that a parameterized problem is unlikely to be FPT.
The next section deals with the hereditary properties for which the problem
is fixed parameter tractable, and Section 3 proves the W [1]-hardness result for
the remaining hereditary properties. Section 4 concludes with some remarks and
open problems.
140
141
142
We claim that that G1 has an independent set of size k1 if and only if G has
rk1 vertices that induce a subgraph with property .
Suppose G1 has an independent set {ui |1 i k1 } of size k1 . Then the set
of rk1 vertices {uji | 1 i k1 , 1 j r} is an independent set in G and hence
has property .
Conversely let S be a set of rk1 vertices in G which induces a subgraph with
property . This means IG (S) does not contain any Hi , in particular it does
not contain H1 . Group the rk1 vertices according to whether they correspond
to the same vertex in G1 or not. Let X1 , . . . , Xh , Y1 , . . . , Yp be the groups and
u1 , . . . , uh , v1 , . . . , vp be the corresponding vertices in G1 such that |Xi | t i
and |Yj | < t j. Observe that {u1 , . . . , uh } must be independent in G1 because
if we have an edge (ui , uj ), H1 Kt,t IG (Xi , Xj ) IG (S), a contradiction.
If h k1 we have found an independent
Ph set of size at least k1 in G1 . There
1.
Then
fore
assume
that
h
k
1
i=1 |Xi | r(k1 1) which implies that
Pp
|Y
|
r
or
p
r/(t
1).
Since
vertices
in distinct groups (one vertex per
j
j=1
group) in G and the corresponding vertices in G1 induce isomorphic subgraphs,
the vertices v1 , . . . , vp induce a subgraph of G1 with property (since is
hereditary). Since this subgraph has property , it does not contain Hs as an
induced subgraph. We choose r large enough so that any graph on r/(t 1)
vertices that does not contain a clique of size |Hs | has an independent set of size
k1 . With this choice of r, it follows that G1 does contain an independent set of
size k1 . The number r depends only on |Hs | and the parameter k1 and not on
n1 = |V (G1 )|. So the reduction is achieved in O(f (k1 )n1 ) time where f is some
2
function of k1 and is some fixed constant independent of k1 .
Next, we will show that the problem is W [1]-hard even if none of the graphs
in the forbidden set is complete-bipartite.
Theorem 1. Let be a hereditary property that includes all independent sets
but not all cliques, having a finite forbidden set F ={H1 , H2 , . . . , Hs }. Then the
problem P (G, k, ) is W [1]-complete.
Proof. The fact that the problem is in W [1] has already been proved in Lemma
2. Assume that none of the graphs Hi in the forbidden set of is completebipartite. Let Hs be the clique of smallest size that is not in , hence in the
forbidden set F.
For a graph Hi in F, select (if possible) a subset of vertices Z such that the
vertices in Z are independent and every vertex in Z is connected to every vertex
in Hi \Z. Let {Hij |1 j si } be the set of graphs obtained from Hi by removing
such a set Z for every possible choice of Z. Since
Hi is not complete-bipartite,
S
every Hij is a non-trivial graph. Let F 1 = F {Hij |1 i s, 1 j si }. Note
that F 1 contains a clique of size |Hs | 1 because a set Z, consisting of a single
vertex, can be removed from the clique Hs . Let 1 be the hereditary property
defined by the forbidden set F 1 . Observe that 1 also includes all independent
sets but not all cliques. Let P1 be the problem P (G1 , k1 , 1 ).
We will prove that P1 is W [1]-hard later. Now, we will reduce P1 to the
problem P (G, k, ) at hand.
143
S
Given G1 , we construct a graph G as follows. Let V (G) = V (G1 ) D where
D is a set of r independent vertices (r to be specified later). Every vertex in
V (G1 ) is connected to every vertex in D. Let = maxi (|Hi |).
We claim that G1 has an induced subgraph of size k1 with property 1 if
and only if G has k1 + r vertices that induce a subgraph with property .S
Let A be a subset of V (G1 ), |A| = k1 such that IG1 (A) 1 . Let S = A D.
Suppose on the contrary that IG (S) contains some Hi as a subgraph. If this Hi
contains some vertices from D, we throw away these independent vertices. The
remaining portion of Hi , which is some Hij , 1 j si , must lie in IG (A). But
this is a contradiction because IG (A) = IG1 (A) and by hypothesis, IG1 (A) has
property 1 and it cannot contain any Hij . Similarly Hi cannot lie entirely in
IG (A) because F F 1 , so IG (A) does not contain any Hi as induced subgraph.
Therefore IG (S) does not contain any Hi , hence it has property and |S| =
k1 + r.
Conversely, suppose we can choose a set S, |S| = k1 + r such that IG (S)
does not contain any
T Hi . Since |D| = r we must choose at least k1 vertices from
V (G1 ). Let A S V (G1 ) with cardinality k1 . If IG (A) does not contain any
Hij , we are through. Otherwise let Hi0 j0 IG (A) for some i0 , j0 . Now Hi0 j0
is obtained from Hi0 by deleting an independent set of size at most . Hence
S can contain at most 1 vertices from D, otherwise we could add sufficient
number of vertices T
from D to the graph Hi0 j0 to get
T a copy of Hi0 which is not
possible.
Hence
|S
D|
<
which
implies
that
|S
V (G1 )| > k1 + r . Thus
T
IG1 (S V (G1 )) is an induced subgraph of G1 of size at least k1 + r that
does not contain any Hi , in particular it does not contain Hs which is a clique
of size say . We can select r (as before, by Ramsey Theorem ) such that any
graph on k1 + r vertices that does not contain a -clique has an independent
set of size k1 . Hence G1 has an independent set of size k1 which has property
1 . The number r depends only on the family F and parameter k1 and not on
n1 = |V (G1 )|. So the reduction is achieved in O(g(k1 )n1 ) time where g is some
function of k1 and is a constant. Also |V (G)| = |V (G1 )| + r, so the size of the
input problem increases only by a constant.
We will be through provided the problem P1 is W [1]hard. If any of the Hij
is complete-bipartite, then it follows from Lemma 3. Otherwise, we repeatedly
apply the construction, given at the beginning of the proof, of removing set
Z of vertices from each graph in the forbidden set, to get families F 2 , F 3 , . . .
and corresponding problems P2 , P3 , . . . such that there is a parametric reduction
from Pm+1 to to Pm . Since F m+1 contains a smaller clique than a clique in
F m , eventually some family F m0 contains a clique of size 2 (the graph K2 )
or a complete-bipartite graph. In the former case, the problem Pm0 is same as
parameterized independent set problem, so W [1]-hard. In the latter case Pm0 is
2
W [1]-hard by Lemma 3.
We can extend Theorem 1 to the case when the forbidden set is infinite.
However we could prove the problem only W [1]-hard; we dont know the precise
class in the W -hierarchy the problem belongs to.
144
145
u V (G).
We show that it is possible to remove k vertices to make the given graph bipartite
if and only if there is an assignment to the variables in the above formula that
makes all but at most k clauses true.
If there is an assignment that makes all but at most k clauses true, then
the clauses in Set 1 must be true because each of them occurs k + 1 times.
This ensures that the variables xu , yu corresponding to the vertices are assigned
respectively 0,0 or 0,1 or 1,0 and each edge e = (u, v) has xu = xv = yu = yv = 0
or xu = 0, yu = 1 and xv = 1, yu = 0 or vice versa. The vertices s for which
146
Concluding Remarks
References
1. L. Cai, Fixed Parameter Tractability of Graph Modification Problem for Hereditary
Properties, Information Processing Letters, 58 (1996), 171-176.
2. R.G. Downey, M.R. Fellows, Fixed Parameter Tractability and Completeness I:
Basic theory, SIAM Journal on Computing 24 (1995) 873-921.
3. R.G. Downey, M.R. Fellows, Fixed Parameter Tractability and Completeness II:
Completeness for W[1], Theoretical Computer Science 141 (1995) 109-131.
4. R.G. Downey, M.R. Fellows, Parameterized Complexity, Springer Verlag New York,
1999.
5. R.G. Downey, M.R. Fellows, V. Raman, The Complexity of Irredundant sets Parameterized by Size, Discrete Applied Mathematics 100 (2000) 155-167.
6. M. R. Garey and D. S. Johnson, Problem [GT21], Computers and Intractability,
A Guide to The Theory of NP-Completeness, Freeman and Company, New York,
1979.
7. M. C. Golumbic, Algorithmic Graph Theory and Perfect Graphs. Academic Press,
New york, 1980.
147
Introduction
Digital trees (also known as radix search trees, or tries) represent a convenient way
of organizing alphanumeric sequences (strings) of variable lengths that facilitates
their fast retrieving, searching, and sorting (cf. [11,17]). If we designate a set of n
distinct strings as S = {s1 ,..., sn } , and assume that each string is a sequence of symbols
from a finite alphabet = {1 ,..., v } ,
The author is also on leave from the Institute of Mathematical Machines and Systems of
National Academy of Sciences of Ukraine.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 148-158, 2000.
Springer-Verlag Berlin Heidelberg 2000
149
A simple extension of the above structure is obtained by allowing more than one
symbol of input alphabet to be used for branching. Thus, if a trie uses some constant
number of symbols r 1 per lookup, then the effective branching coefficient is v r ,
and we essentially deal with a trie built over an alphabet r (cf. Fig.1.c).
To underscore the fact that branching is implemented using multiple input symbols
(digits) at a time, such tries are sometimes called multi-digit tries (cf. [2]).
00
01
000
0...
011
s3
s1
s4
s6
0... 1/21
s5
s1
s6
6/7
...1
s7
...1/7
s3
s5
11
00
10
0111
s4
s5
4/7 5/7
s6
0000
s1 s2 s3
s2
11
01
2/7 3/7
s4
s7
s2
00
1/7
01
000
s7
011
0000
s1
10
s3
s4
s6
s7
s5
s2
Fig. 1. Examples of tries built from 7 binary strings: s1=0000, s2=0001, s3=0010,
s4=0100, s5=0110, s6=10, s7=11 .
The behavior of regular tries is thoroughly analyzed (cf. [5, 9, 10, 11, 16, 19]). For
example, it has been shown (cf. [16]), that the expected number of nodes examined
during a successful search in a v-ary trie is asymptotically O (log n h ) , where h is the
entropy of a process used to produce n input strings. The expected size of such trie is
asymptotically O ( nv h ) . These estimates are known to be correct for a rather large
class of stochastic processes, including memoryless, Markovian, and -mixed
models (cf. [16, 2]). In many special cases (e.g. when a source is memoryless, or
Markovian) the complete characterizations (expectation, variance and higher
moments) of these parameters have been obtained, and their precise (up to O (1) term)
asymptotic expansions have been deducted (cf. [19, 10]).
Much less known are modifications of tries that use adaptive branching. That is,
instead of using nodes of some fixed degree (e.g., matching the cardinality of an input
alphabet), adaptive tries select branching factor dynamically, from one node to
150
Yuriy A. Reznik
151
strings in a sub-trie originated by the node. When source is symmetric, the expected
search time in a LC-trie is only O (log* n ) , however, it grows as O (log log n ) in the
asymmetric case (cf. [15]).
In our analysis, we extend the above results, and in particular, we show that there
exist implementations of AMD-tries attaining the constant ( O (1) ) complexity of a
successful search in both symmetric and asymmetric cases. Moreover, if source
distribution is symmetric, such tries can be implemented in linear ( O ( n ) ) amount of
space. Compared to an N-tree, an equally fast AMD-trie appears to have a larger
memory usage, however, it is a much more suitable scheme for dynamic
implementation, and combined with the benefits of fast multi-digit processing, it
promises to be a structure of choice for many practical situations.
This paper is organized as follows. In the next section, we will provide some basic
definitions and present our main results. The proofs are delayed until Section 3, where
we also derive few recurrent expressions necessary for the analysis of these
algorithms. Finally, in our concluding remarks, we emphasize the limitations of our
present analysis and show several possible directions for future research.
In our analysis, we only consider AMD-tries built over strings from a binary alphabet
= {0,1} , but the extension to any finite alphabet is straightforward. We also limit our
study to a situation when n strings to be inserted in a trie are generated by a
memoryless (or Bernoulli) source (cf. [3]). In this model, symbols of the alphabet
occur independently of one another, so that if x j - is the j-th symbol produced by this
source, then for any j: Pr {x j = 0} = p , and Pr {x j = 1} = q = 1 p . If p = q = 1 2 , such
source is called symmetric, otherwise it is asymmetric (or biased). In our analysis, we
will also use the following additional parameters of memoryless sources:
h = p log p q log q;
h2 = p log 2 p + q log 2 q;
= log pmin ;
= log pmax ;
(1)
where: h is the (Shannons) entropy of the source (cf. [3]), and are special cases
of the Rnyis k-order entropy (cf. [18]): k = k1 log ( p k +1 + q k +1 ) , pmax = max { p, q} ,
and pmin = min { p, q} . Observe that , , and h have the following relationship:
(2)
h
(the equality is attained when the source is symmetric, however in the asymmetric
case, these bounds are rather weak).
In this paper, we will evaluate two major the performance characteristics of the
AMD-tries: the expected time of a successful search and the expected amount of
memory used by a trie built over n strings. To estimate the search time we can use the
expected depth Dn or the external path length (i.e. the combined length of paths from
root to all non-empty external nodes) Cn in a trie Dn = Cn n . To estimate the size of a
trie we will use the expected number of its branches Bn . Note that the last metric is
slightly different from one used for the regular tries (cf. [11, 9]). In that case, it was
152
Yuriy A. Reznik
sufficient to find the number of internal nodes An in a trie. However, since internal
nodes in adaptive tries have different sizes by themselves, we need to use another
parameter ( Bn ) to take into account these differences as well.
As we have mentioned earlier, we allow AMD-tries to use an arbitrary (but not
random) mechanism for selecting the depths of their nodes. However, in a Bernoulli
model, there are only two parameters that can affect the expected outcome of such
selection applied to all sub-tries in a trie: a) the number of strings inserted in a subtrie, and b) the parameters of source distribution. Thus, without significant loss of
generality or precision, we can assume that node-depth selection logic can be
presented as a (integer-valued) function:
rn := r ( n, p ) ,
(3)
where n indicates the number of strings inserted in the corresponding sub-trie, and p
is a probability of 0 in the Bernoulli model.
We are now ready to present our main results regarding the expected behavior of
AMD-tries. The following theorem establishes the existence of AMD-tries attaining
the constant expected time of a successful search.
THEOREM 1. There exist AMD-tries such that:
(4)
1 < 1 C n n 2 < ,
where 1 , 2 are some positive constants. The upper bound holds if:
rn 1 log 1 exp
rn 1 log 1 exp
log 2
n 1
)) =
log 1
n 1
)) =
(5)
(6)
Notice that the above conditions are based on parameters and , which, in
turn, can be considered as bounds for the entropy h of the source (2). This may
suggest that there should be a more accurate way to estimate the depth of nodes
needed to attain a certain performance (and vice versa), expressed in terms of the
entropy h. The following theorem answers this conjecture in affirmative.
THEOREM 2. Let
rn* = log n h ,
(7)
and assume that the actual depths of nodes rn in an AMD-trie are selected to be
sufficiently close to rn* :
rn rn* = O
( r ).
(8)
*
n
where:
1 ( rn rn* ) log n
(x) =
1
2
t2
))(1 + O (1
log n
)) ,
(9)
dt ,
(10)
Now, we will try to evaluate AMD-tries from the memory usage perspective. The
next theorem establishes bounds for AMD-tries that attain a linear (with the number of
strings inserted) size.
153
1
log 2
(log n + log
1
=
(log n ( n, 2 , 2 ) log log 2
1
log 2
(log n + log +
= 1
)) + O ( )
,
) + O(
)
+ 12 W1 2 2 2 n1 2
1
n
log log n
log n
)) + O ( )
,
(log n ( n, , ) log log ) + O (
)
1
1
1
W1 111 n11
1
1
n
log log n
log n
(11)
(12)
(13)
(14)
Analysis
In this section, we will introduce a set of recurrent expressions for various parameters
in AMD-tries, derive some necessary asymptotic expansions, and will sketch the
proofs of our main theorems.
For the purposes of compact presentation of our intermediate results, we will
introduce the following two variables. A sequence {xn } will represent an abstract
property of AMD-tries containing n strings, and a sequence {yn } will represent a
property of root nodes of these tries that contribute to {xn } . The following mapping to
the standard trie parameters is obvious:
154
Yuriy A. Reznik
xn An
yn 1
Bn
2
Cn
,
n
rn
(15)
rn
k =2
s =0
xn = yn + ( nk )
( )( p q ) (1 p q )
rn
s
rn s
nk
rn s
xk ; x0 = x1 = y0 = y1 = 0;
(16)
where: n is the total number of strings inserted in an AMD-trie, and the rest of
parameters are as defined in (3) and (16).
Proof. Consider a root node of depth rn in an AMD-trie. If n < 2 the result is 0 by
definition. In n 2 , the property of trie xn should include a property of a root node yn
plus the sum of properties of all the child tries. It remains to enumerate child tries and
estimate probabilities of them having 2 k n strings inserted. This could be done
using the following approach.
Assume that each of the 2r possible bit-patterns of length rn has a probability of
n
0 i < 2 rn ,
strings). Then, the probability that exactly k strings match the i-th pattern
N k
is ( kN ) ik (1 i ) . The i-th pattern corresponds to a child trie only if there are at least
two strings that match it. Therefore, the contribution of the i-th pattern to the property
nk
xn is ( nk ) ik (1 i ) xk , and it remains to scan all 2r patterns to obtain the
n
k 2
rn
s
rn
s
0 s rn
n
k
rn s
rn s
nk
(17)
k 2
155
linear form, and we use (16) to find conditions for rn such that the original claim
holds. We perform the first step in this process using the following lemma.
LEMMA 2. Let 1 and n be two positive constants ( 1 < 1 2 < ), such that
(18)
1n xn 2 n .
Then, the recurrent expression (16) holds when:
(19)
1 yn f ( n, p, rn ) 2 ,
where:
rn
f ( n, p, rn ) = n
s=0
( ) p q (1 p q )
rn
s
rn s
rn s n 1
(20)
Proof. Consider the upper bound in (18) first, and substitute xk with k 2 in the
right side of (16). This yields:
rn
xn yn +
s=0
( ) ( )( p q ) (1 p q )
rn
s
n
k
rn s k
rn s n k
k =2
rn
yn + 2 n
s=0
( )
rn
s
p s q rn s 1 1 p s q rn s
n 1
2k =
(21)
= yn + 2 n 2 f ( n, p , rn ).
Now, according to (18), xn 2 n , and combined with (21), the upper bound holds
only when yn 2 f (n, p, rn ) 0 . Hence 2 yn f ( n, p, rn ) , and repeating this procedure
for the lower bound ( xn 1n ), we arrive at formula (19), claimed by the lemma.
The next step in our analysis is to find bounds for the sum (20) that would allow us
to separate rn . The following lemma summarizes few such results.
LEMMA 3. Consider a function f (n, p , rn ) defined in (20). The following holds:
(
) ,
f ( n, p, r ) n (1 e
) n exp ( (n 1)e ) ,
f ( n, p, r ) n (1 e
) n exp ( (n 1)e (1 e
f ( n, 12 , rn ) = n 1 2 rn
n 1
rn h
rn h
n 1
rn h
n 1
(22.a)
rn h
(22.b)
rn h
)) ,
(22.c)
f ( rn , n, p ) = n ( rn log n h ) log n
))(1 + O (1
log n
)) ,
(22.d)
(1 e
n 1
1 p s q rn s
) ,
which allows the first portion of sum (20) to converge: ( ) p q
rn
n 1
1 e rn
rn
s
n 1
rn s
=1 .
The additional (right-side) inequalities in (22.b) and (22.c) are due to:
1 x e x , 0 x < 1 , (cf. [1], 4.2.29).
x (1 x )
156
Yuriy A. Reznik
1 n
n f ( n, p, rn ) 1 e rn
1 n
2 .
(23)
Here, it remains to find an expression for rn such that 1 < 1 2 < regardless of n .
Considering the right part of 18 (upper bound), the last requirement is obviously
satisfied when e r = n11 . More precisely, for any given constant 1 < 2 < we need:
n
rn 1 log 1 exp
log 2
n 1
)) =
which is exactly the condition (5) claimed by the Theorem (1). The expression for the
lower bound (6) is obtained in a similar way.
The result of the Theorem 2 follows directly from (19), (20) and asymptotic
expression (22.d).
To evaluate the expected size an AMD-trie in memory we will use a very similar
technique. Consider a recurrent expression (16) with xn substituted by the expected
number of branches Bn , and yn with 2r . Following the Theorem 3 and Lemma 2, we
will assume that Bn is bounded (11), and using (18) combined with (22.b) and (22.c)
we arrive at:
n
1 2rn n 1 (1 e rn )
1 n
2rn f ( n, p, rn ) 2rn n 1 1 e rn
1 n
2 .
(24)
log ( n 2 ) 1
r
1
rn 1 log 1 exp
= log n log log ( 2 n 2 ) + O ( n ) ,
n 1
2
rn
1
log 2
(log n + log
+ 12 W1 2 2 2 n1 2
)) + O ( ) ,
1
n
(25)
log ( log ( x ))
log ( x )
), e
<x<0,
(26)
157
which, after some algebra yields the second part of inequality (12) claimed by the
Theorem 3. The expression for the lower bound (13) is obtained in essentially the
same way.
Concluding Remarks
We absolutely believe that AMD-tries have great potential that should be explored in
practice. To that end, our conclusion that they attain O (1) expected search time, while
preserving all the benefits of the regular tries, should be a good starting point.
At the same time, AMD-tries pose several interesting theoretical problems, and
from this perspective, our results just scratch the surface. Our analysis was only
sufficient to produce (rather coarse) bounds for the expected characteristics of AMDtries, and the derivation of their exact expressions (including lower-magnitude terms
and oscillating components) remains an open (and difficult) problem.
Another interesting problem is to find parameters of an AMD-trie that uses the
minimum possible amount of memory. Thus, analyzing the set of expressions in the
proof of the Theorem 3 we can conjecture that such trie exists, but finding its actual
parameters requires a more solid analytical framework.
Acknowledgment
The author wishes to express his gratitude to Prof. W. Szpankowski from Purdue
University, for many useful discussions and encouragement in starting this research.
References
1. M. Abramowitz, and I. Stegun, Handbook of Mathematical Functions, Dover, NY (1972)
2. Andersson, and S. Nilsson, Improved Behaviour of Tries by Adaptive Branching,
Information Processing Letters, 46 (1993) 295-300.
3. T. M. Cover and J. M. Thomas, Elements of Information Theory, John Wiley & Sons, New
York (1991)
4. R. M. Corless, G. H. Gonnet, D. E. G. Hare, D. J. Jeffrey, and D. E. Knuth, On the Lambert
W Function, Advances in Computational Mathematics, 5 (1996) 329-359
5. L. Devroye, A Note on the Average Depths in Tries, Computing, 28 (1982) 367-371
6. W. Dobosiewitz, Sorting by Distributive Partitioning, Information Processing Letters, 7, 1,
(1978) 1-6
7. W. Dobosiewitz, The Practical Significance of DP Sort Revisited, Information Processing
Letters, 8, 4 (1979) 170-172
8. G. Ehrlich, Searching and Sorting Real Numbers, J. Algorithms, 2 (1981) 1-14
9. P. Flajolet and R. Sedgewick, Digital Search Trees Revisited, SIAM J. Computing, 15,
(1986) 748-767
10. P. Jacquet and W. Szpankowski, Analysis of Digital Trees with Markovian Dependency,
IEEE Trans. Information Theory, 37 (1991) 1470-1475
11. D. Knuth, The Art of Computer Programming. Sorting and Searching. Vol. 3., AddisonWesley (1973)
12. G. Louchard, The Brownian Motion: A Neglected Tool for the Complexity Analysis of
Sorted Tables Manipulations, RAIRO Theoretical Informatics, 17 (1983) 365-385
13. G. Louchard, Digital Search Trees Revisited, Cahiers du CERO, 36 (1995) 259-27
158
Yuriy A. Reznik
Abstract. Ulam and Renyi asked what is the minimum number of yesno questions needed to find an unknown m-bit number x, if up to `
of the answers may be erroneous/mendacious. For each ` it is known
that, up to only finitely many exceptional m, one can find x asking
Berlekamps minimum number q` (m) of questions, i.e., the smallest integer q satisfying the sphere packing bound for error-correcting codes. The
Ulam-Renyi problem amounts to finding optimal error-correcting codes
for the binary symmetric channel with noiseless feedback, first considered
by Berlekamp. In such concrete situations as optical transmission, error
patterns are highly asymmetricin that only one of the two bits can be
distorted. Optimal error-correcting codes for these asymmetric channels
with feedback are the solutions of the half-lie variant of the Ulam-Renyi
problem, asking for the minimum number of yes-no questions needed
to find an unknown m-bit number x, if up to ` of the negative answers
may be erroneous/mendacious. Focusing attention on the case ` = 1, in
this self-contained paper we shall give tight upper and lower bounds for
the half-lie problem. For infinitely many ms our bounds turn out to be
matching, and the optimal solution is explicitly given, thus strengthening
previous estimates by Rivest, Meyer et al.
Introduction
160
be sent back to the Transmitter on a noiseless channel. Thus Transmitter-toReceiver bits are interleaved with Receiver-to-Transmitter bits. In other words,
before sending the (i + 1)th bit, the Transmitter does know which ones among
the previously sent i bits b have been distorted and received as 1 b because of
the noise effect. The main problem here is to minimize the number of bits sent
by the Transmitter, while still guaranteeing that the m-bit number can be fully
recovered by the Receiver.
Assuming the 1 and 0 bits to be equally subject to distortion, it is known that
an optimal solution to this problem is given by sending q` (m) bits, where q` (m)
P
is the smallest integer q satisfying the Sphere Packing Bound `j=0 qj 2qm .
Trivially, no solution exists using less than q` (m) bits.
In other concrete situations the distribution of errors/distortions is highly
asymmetric: for instance, in optical communication systems photons may fail to
be detected (10), but the creation of spurious photons (01) is impossible [7].
Similarly, in most LSI memory protection schemes one can safely assume that
only one of the two possible error patterns (10) and (01) can occur [4].
Optimal error-correcting codes for these asymmetric channels with feedback
are the same as shortest binary strategies to find an m-bit number, when only
negative tests can be erroneous.
To the best of our knowledge, the first paper dealing with this half-lie variant of the Ulam-Renyi problem was [9]. The authors proved an asymptotic result
to the effect that the half-lie game has the same complexity as the original Ulam
problemhenceforth referred to as the full-lie game. They also proved that the
half-lie variant of the Ulam-Renyi game with comparison questions corresponds
to the problem of finding the minimum root of a set of unimodal functions.
Focusing on the case ` = 1, in this paper we improve the result of [9], by
giving very tight and non-asymptotic, lower and upper bounds for the half-lie
game. More precisely, we prove that
for each m, q1 (m) 1 questions suffice;
for each m, q1 (m) 3 questions do not suffice;
for infinitely many m, q1 (m) 2 questions do not suffice, and we give an
optimal strategy using exactly q1 (m) 1 questions;
for infinitely many m, q1 (m) 2 questions suffice, and we give a (necessarily
optimal) strategy using exactly q1 (m) 2 questions.
Preliminaries
We shall consider a game between two players, Paul (the Questioner), and Carole
(the Responder). The rules are as follows: Paul and Carole first fix an integer m,
and a search space E coinciding with the set of m-bit integers E = {0, 1, . . . , 2m
1}. Now Carole chooses a number x in E, and Paul must find x by asking
questions, to which Carole can only answer yes or no. Carole can lie at most
once, but only by answering no to a question whose correct (sincere) answer
is yes. Thus, only Caroles negative answers are dubious for Paul. This is the
the half-lie game over the search space E.
161
and
no = (x0 t0 , t0 + x1 t1 )
(1)
bt
1 = 0b1 , 2 = 1b2 , . . . , t = t1
.
(2)
162
Lower Bounds
163
Note that 1 q q(m). Assume there exists a winning strategy with q questions to find an unknown integer in the set E = {0, 1, . . . 2m 1} in the half-lie
game, i.e., when up to one of the no answers may be mendacious and all yes
answers are true. Then q q .
Proof. Let S be such strategy, where we can safely assume that the number q
of questions in S is the smallest possible. By a path in S we shall understand
a path from the root to a leaf of S. For each x E there exists precisely one
path x in S leading to the final state ({x}, ). This final state is obtained if
Carole chooses x as the secret number and then decides to give true answers to
all q questions. Let southwestx be the number of left branches (i.e., branches
whose label is yes) in this path. The southwestx many branches of x are
a record of Caroles yes answers, once she decides to choose x as the secret
number, and to always tell the truth. If, on the other hand, Carole decides to
give one mendacious answer, she can deviate from this path in southwestx many
ways, replacing a yes true answer by a mendacious no answer. 1 Since S is
a winning strategy, there exist in S precisely southwestx many paths leading to
the final state (, {x}). Furthermore, whenever x 6= y E the state (, {y}) will
be obtained by a different path. Now, each path in S has q branches, and paths
are in one-one correspondence with subsets of {1, . . . , q } (giving the depths
of their left branches). To obtain a set of 2m paths having the smallest possible
total number of left branches, with reference to Definition 6, one must proceed as
follows: first take the
q paths with
only path in S with no left branch, then qthe
q
1 left branch, the 2 paths with 2 left branches, . . . , the (m,q )1 paths with
(m, q ) 1 left branches, and finally, (m, q ) many paths with (m, q ) left
branches. Then the total number Nonce of possibilities for Carole to lie precisely
once in S will satisfy the inequality
(m,q )1
Nonce
X
i=0
q
+ (m, q )(m, q ).
i
On the other hand, if Carole decides not to lie, she can still choose x E, and
the corresponding path leading to the leaf ({x}, ), in 2m ways. Summing up, the
2q many paths of the winning strategy S cannot be less than the total number
of Caroles answering strategies, whence
(m,q )1
2 + Nonce
X
i=0
q
i
+ (m, q )(m, q ).
i
We shall now prove that, for all integers m 1, at least q(m) 2 questions are necessary to find a number in the half-lie game over the search space
{0, 1, . . . , 2m 1}. We prepare the following
1
Note the effect of the assumed asymmetry in Caroles lies: in the classical Ulam game
Carole can choose to lie in q many ways.
164
Lemma 2. Let m = 2, 3, . . . . Let the integer q have the property that there exists
a winning strategy S for the state = (2m , 0) with q questions. Then there exists
a winning strategy for the state 0 = (2m1 , 0) with q 1 questions.
Proof. Let T = [t0 , 0] be the first question in S. The resulting states are yes =
(t0 , 0) and no = (2m t0 , t0 ), both having a winning (q 1)-strategy. According
as t0 2m1 or t0 < 2m1 , the state (2m1 , 0) is either a substate of yes or
a substate of no , respectively. In either case, (2m1 , 0) has a winning (q 1)strategy.
Notation: For each real number t we let btc (resp., dte) denote the largest integer
t (resp., the smallest integer t). For each integer r > 0, we let powersetr
denote the powerset of the set {1, 2, . . . , r}. For any family of subsets of
{1, 2, . . . , r} we let
card()
denote the average cardinality of the sets in . For all real numbers 0 a b r
we let
powersetr [a, b] = powersetr [dae, bbc] = {G {1, 2, . . . , r} | a |G| b}.
Given an integer 0 k 2r , the initial k-segment
powersetr |`k
of powersetr is the family of the first k smallest subsets
of {1, 2, . . . , r}, i.e., the
0-element subset, the r many 1-element subsets, the r2 many 2-element subsets,
. . . , until k subsets have been collected having the smallest possible cardinality.
Lemma 3. The following inequalities hold:
(i)
(ii)
(iii)
(iv)
For
For
For
For
all
all
all
all
q
q
q
q
165
We now consider the case m 51. It follows that q(m) 57. Writing q
instead of q(m), we have
(3)
2q1 < q2m ,
whence, a fortiori,
(4)
(5)
X
j=0
q
j
<
2q
.
2q
(6)
Since by (3) 22q < 2m , the monotonicity properties of the binomial coefficients,
together with inequality (6) imply
card(powersetq [0, q/3]) = card(powersetq [0, bq/3c]) < card(powersetq |`2m ).
Recalling (5) we can write
2q3 < 2m (1 + card(powersetq |`2m )).
(7)
(8)
= 2m +
q3
j
2m + Nonce
j
m
powersetq3 |`2
which is impossible.
Theorem 3. With reference to Definitions 4 and 5, fix an integer s 1, and
let m = ms and q = q(ms ). Then at least q 1 questions are necessary to solve
the half-lie game with one lie, over the search space of cardinality 2m .
166
(9)
22 1
1.1(2s 1)
2s 1
Upper Bounds
For all m 1, we shall construct a winning strategy to solve the half-lie game
over the search space {0, 1, . . . , 2m 1} using no more than q(m) 1 questions.
Moreover, we shall show that for infinitely many m this strategy uses no more
than q(m) 2 questions.
Theorem 4. For every integer m 1, let = (2m , 0). Then there exists a
winning strategy for in the half-lie game, using exactly m 1 + dlog(m + 3)e
questions.
Proof. The proof proceeds through several claims:
Claim 1: For each integer r 1, the state = (1, 2r 1) has a winning r-strategy.
By induction on r. For r = 1, we have = (1, 1). Upon asking the question
[0, 1], we obtain the two final states (0, 1) and (1, 0). For the induction step,
suppose the claim is true for r 1, with the intent of proving it for the state
(1, 2r+1 1). Let = (1, 2r+1 1) and ask the question [0, 2r ]. We then obtain
the two states yes = (0, 2r ) and no = (1, 2r 1). It is easy to see that yes is
a winning r-state. Moreover, no is a winning r-state by induction hypothesis.
Therefore, is a winning (r + 1)-state, and the claim is settled.
Claim 2: For each integer r 1, the state = (2, 2r 3) is a winning r-state.
Upon asking question [1, 2r1 1], the two resulting states are yes = no =
(1, 2r1 1). By Claim 1, both states have a winning strategy with r1 questions.
A fortiori, there exists a winning strategy with r questions for the state (2, 2r 3).
167
Claim 3: For every integer m 1, the state = (2, m) has a winning strategy
with dlog(m + 3)e questions.
As a matter of fact, let r = dlog(m + 3)e. Then r = min{i | 2i1 3 < m
i
2 3}. Therefore, is a substate of (2, 2r 3) and the desired result directly
follows, by Claim 2 and Lemma 1.
Claim 4: For any two integers m 1 and k = 1, 2, . . . , m, there exists a winning
strategy for the state = 2k , (m k + 1)2k1 , using exactly k 1 + dlog(m +
3)e questions.
We proceed by induction on k. The basis is a direct consequence
of Claim
i+1
i
,
(m
i)2
. By asking
3. For the induction
step,
let
k
=
i
+
1.
Then
=
2
two
resulting
states
coincidespecifically,
the question 2i , (m i + 1)2i1 , the
yes = no = 2i , (m i + 1)2i1 . By induction one immediately sees that
yes = no is a winning (i 1 + dlog(m + 3)e)-state. Therefore, is a winning
(k 1 + dlog(m + 3)e)-state, as required to settle the claim.
End of the Proof of Theorem 4. Let = (2m , 0). Then is a substate of
(2m , 2m1 ) and we have the desired result by Claim 4 and Lemma 1.
In the following two lemmas, upper bounds on the number of questions in the
shortest winning strategy for the half-lie game over a search space of cardinality
2m , are given in terms of Berlekamps minimum number q(m).
Lemma 4. For every integer m 1, let E = {0, 1, . . . , 2m 1}. Then there
exists a winning strategy to solve the half-lie game over E, using q(m) 1
questions.
Proof. By Theorem 4 there exists a winning strategy using m 1 + dlog(m + 3)e
questions. Then we need only show that for all m 1,
m 1 + dlog(m + 3)e q(m) 1.
Let k = m 1 + dlog(m + 3)e. By definition of Berlekamps number q(m), it is
sufficient to settle the inequality k + 1 > 2km , that is,
m + dlog(m + 3)e > 2dlog(m+3)e1 .
(10)
To this purpose, let s 0 be the smallest integer such that m = 2s t for some
0 t < 2s1 . Then we argue by cases:
Case 1: t 3. Then (10) becomes 2s t + s > 2s1 . This latter inequality holds
true, because 2s1 > t 3 implies s > 2, whence 2s1 + s > t.
Case 2: 0 t 2. Then (10) becomes 2s t + s + 1 > 2s , or equivalently,
s + 1 > t.
(11)
t = 1, s 2;
t = 2, s 3.
168
References
1. E. R. Berlekamp, Block coding for the binary symmetric channel with noiseless,
delayless feedback, In: Error-correcting Codes, H.B. Mann (Editor), Wiley, New
York (1968) pp. 61-88.
2. F. Cicalese, D. Mundici, Optimal binary search with two unreliable tests and minimum adaptiveness, In: Proc. European Symposium on Algorithms, ESA 99, J.
Nesetril, Ed., Lecture Notes in Computer Science 1643 (1999) pp.257-266.
3. F. Cicalese, U. Vaccaro, Optimal strategies against a liar, Theoretical Computer
Science, 230 (1999) pp. 167-193.
4. S.D. Constantin, T.R.N. Rao, On the Theory of Binary Asymmetric Error Correcting Codes, Information and Control 40 (1979) pp. 20-26.
5. R. Hill, Searching with lies, In: Surveys in Combinatorics, Rowlinson, P. (Editor),
Cambridge University Press (1995) pp. 4170.
169
Introduction
In computable analysis, a real number x is called computable if there is a computable sequence (xn )nN of rational numbers which converges to x effectively.
That is, the sequence satisfies the condition that |xn x| < 2n , for any n N .
In this case, the real number x is not only approximable by some effective procedure, there is also an effective error-estimation in this approximation. In practice,
it happens very often that some real values can be effectively approximated, but
an effective error-estimation is not always available. To characterize this kind
of real numbers, the concept of recursively approximable real numbers is introduced. Namely, a real number x is recursively approximable (r.a., in short) if
there is a computable sequence (xn )nN of rational numbers which converges to
x. It is first noted by Ernst Specker in [15] that there is a recursively approximable real number which is not computable by encoding the halting problem
into the binary expansion of a recursively approximable real numbers.
The class Ce of computable real numbers and the class Cra of recursively
approximable real numbers shares a lot of mathematical properties. For example, both Ce and Cra are closed under the arithmetical operations and hence
they are algebraic fields. Furthermore, these two classes are closed under the
computable real functions, namely, if x is computable (r.a.) real number and f
is a computable real function in the sense of, say, Grzegorczyk [6], then f (x) is
also computable (resp. r.a.).
The classes of real numbers between Ce and Cra are also widely discussed
(see e.g. [12,13,4,2,18]). Among others, the class of, so called, recursively enumerable real numbers might be the first widely discussed such class. A real
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 170179, 2000.
c Springer-Verlag Berlin Heidelberg 2000
171
number x is called recursive enumerable if its left Dedekind cut is an r.e. set
of rational numbers, or equivalently, there is an increasing computable sequence
(xn )nN of rational numbers which converges to x. We prefer to call such real
numbers left computable because it is very naturally related to the left topology
< := {(a; ) : a R} of the real numbers by the admissible representation
of Weihrauch [16]. Similarly, a real number x is called right computable if it is
a limit of some decreasing computable sequence of rational numbers. Left and
right computable real numbers are called semi-computable. Robert Soare [12,13]
discusses widely the recursion-theoretical properties of the left Dedekind cuts of
the left computable real numbers. G. S. Cetin [4] shows that there is an r.a. real
number which is not semi-computable. Another very interesting result, shown by
a series works of Chaitin [5], Solovay [14], Calude et al. [2] and Slaman [10], says
that a real number x is r.e. random if and only if it is an -number of Chaitin
which is the halting probability of an universal self-delimiting Turing machine.
We omit the details about these notions here and refer the interested readers to
a nice survey paper of Calude [3].
Although the class of left computable real numbers has a lot of nice properties, it is not symmetrical in the sense that the real number x is right
computable but usually not left computable for a left computable real number x. Furthermore, even the class of semi-computable real numbers is also not
closed under the arithmetical operations as shown by Weihrauch and Zheng [18].
Namely, there are left computable real numbers y and z such that y z is neither
left nor right computable. As the arithmetical closure of semi-computable real
numbers, Weihrauch and Zheng [18] introduces the class of weakly computable
real numbers. That is, a real number x is weakly computable if there are two left
computable real numbers y and z such that x = y z. It is shown in [18] that x is
weakly computable if and only if there is a computable sequence
(xn )nN which
P
converges to x weakly effectively, i.e. limn xn = x and
n=0 |xn xn+1 | is
finite. By this characterization, it is also shown in [18] that the class of weakly
computable real numbers is an algebraic field and is strictly between the classes
of semi-computable and r.a. real numbers. In this paper we will discuss other
closure properties of weakly computable real numbers for limits, effective limits
and computable real functions. We show that weakly computable real numbers
are not closed under the effective limits and partial computable real functions.
For other classes mentioned above, we carry out also a similar discussion.
At the end of this section,
let us explain some notions at first. For any set
P
A N , denote by xA := nA 2n the real number whose binary expansion corresponds to set A. For any k N , we define kA := {kn : n A}. For any function
f : N N , a set A is called f -r.e. if there is a computable sequence (An )nN of
finite subsets of N such that A = iN ji Aj and |{s : n As As+1 }| < f (n)
for all n N , where AB := (A\B) (B\A). If f (n) := k is a constant function, then f -r.e. sets are also called k-r.e. A is called -r.e. iff there is a recursive
function f such that A is f -r.e.
172
Xizhong Zheng
In this section we give at first the formal definition of various versions of computability of real numbers and then recall some important properties about these
notions. We assume that the reader familiar the computability about subsets of
the natural nmbers N and number-theoretical functions. A sequence (xn )nN of
rational numbers is computable iff there are recursive functions a, b, c : N N
such that xn = (a(n)b(n))/(c(n)+1). We summarize the computability notions
for real numbers as follows.
Definition 1. For any real number x R,
1. x is computable iff there is a computable sequence (xn )nN of rational
numbers such that x = limn xn and n (|xn xn+1 | < 2n ). In this case, the
sequence (xn )nN is called fast convergent and it converges to x effectively.
2. x is left (right) computable iff there is an increasing (decreasing) computable sequence (xn )nN of rational numbers such that x = limn xn . Left
and right computable real numbers are all called semi-computable.
3. x is weakly computable (w.c. in short) iff there is a computable
sequence
P
(xn )nN of rational numbers such that x = limn xn and n=0 |xn xn+1 | is
finite. (xn )nN is called converging to x weakly effectively.
4. x is recursively approximable (r.a., in short) iff there is a computable sequence (xn )nN of rational numbers such that x = limn xn .
The class of computable, left computable, right computable, semi-computable,
w.c., r.a. real numbers is denoted by Ce , Clc , Crc , Csc , Cwc , Cra , respectively.
As shown in [18], the relationship among these classes looks like the following
Ce = Clc Crc
lc
(C
( Csc = Clc Crc ( Cwc ( Cra .
Crc
173
3. The class CP is called closed under limits, iff for any computable sequences (xn )nN of CP , the limits x := limn xn is also in CP whenever
(xn )nN satisfies P and converges.
4. The class CP defined in 2. is called closed under effective limits , iff
for any fast convergent computable sequences (xn )nN of CP , the limits x :=
limn xn is also in CP .
Now we remind the notion of computable real function. There are a lot of approaches to define the computability of real functions. Here we use GrzegorczykKo-Weihrauchs approach and define computable real function in terms of Typetwo Turing Machine (TTM, in short) of Weihrauch.
Let be any alphabet. and are sets of all finite strings and infinite
sequences on , respectively. Roughly, TTM M extends the classical Turing machine in such a way that it can be inputed and also can output infinite sequences
as well as finite strings. For any p , M (p) outputs a finite string q,
if M (p) writes q in output tape and halt in finite steps similar to the case of
classical Turing machine. M (p) outputs an infinite sequence q means that M (p)
will compute forever and keep writing q on the output tape. We omit the formal
details about TTM here and refer the interested readers to [16,17]. We will omit
also the details about the encoding of rational numbers by and take directly
the sequences of rational numbers as inputs and outputs to TTMs.
Definition 3. A real function f : R R is computable if there is a TTM M
such that, for any x dom(f ) and any sequence (un )nN of rational numbers
which converges effectively to x, M ((un )nN ) outputs a sequence (vn )nN of
rational numbers which converges to f (x) effectively.
Note that, in this definition we do not add any restriction on the domain of
computable real function. Hence a computable real function can have any type
of domain, because f A is always computable whenever f is computable and
A dom(f ). Furthermore, for a total function f : [0, 1] R, f is computable
iff f is sequentially computable and effectively uniformly continuous (see [9]).
Definition 4. For any subset C R,
1. C is closed under computable operators, iff f (x) C for any x C and
any total computable real function f : R R.
2. C is closed under partial computable operators, iff f (x) C, for any x C
and any partial computable real function f : R R with x dom(f ).
Following proposition follows immediately from the definition. Remember
that, A N is 02 iff A is Turing reducible to the halting problem 0 .
Proposition 1. 1. xA Ce A is rcursive.
2. xA Cra A is a 02 -set, or equivalently, A T 0 .
3. Ce and Cra are closed under arithmetical operations +, , and , hence
they are algebraic fields.
174
Xizhong Zheng
In this section, we will discuss the closure properties of several classes of real
numbers under limits. We first consider the classes of left and right computable
real numbers. The following result is quite straightforward.
Theorem 4. The classes of left and right computable real numbers are closed
under limits, respectively.
For semi-computable real numbers, the situation is different.
Theorem 5. The class Csc is not closed under limits.
175
Note that in above proof, as a computable sequence of Clc , (xAn )nN is also
a computable sequence of Cwc and Cra . Then the folowing corollary follows
immediately.
Corollary 1. The classes Cwc and Cra are not closed under the limit.
Now we discuss the closure property under the effective limits. We will show
that the class of semi-computable real numbers is closed under effective limits
and the class of weakly computable real numbers, hence also the class of r.a. real
numbers, is not closed under effective limits.
Theorem 6. The class Csc is closed under the effective limits.
Proof. Let (xn )nN be a computable sequence of Csc which satisfies the condition
that n(|xn xn+1 | < 2(n+1) ) and converges to x. We shall show that x Csc .
By Definition 2, there is a computable sequence (rij )i,jN of rational numbers
such that, for any n N , (rnj )nN is monotonic and converges to xn . For any
n, we can effectively determine whether xn is left or right computable by comparing, say, rn0 and rn1 . Therefore, the sequence (xn )nN can be split into two
computable subsequences (xni )iN and (xmi )iN of left and right computable
real numbers, respectively. At least one of them is infinite. Suppose w.l.o.g.
that (xni )iN is an infinite sequence. Obviously it is also a fast convergent computable sequence, i.e., |xni xni+1 | < 2i , since (xn )nN converges fast. Define
a new sequence (yn )nN by yi := xni 2(i1) . Since yi+1 = xni+1 2i =
(xni+1 xni + 2i + (xni 2(i1) ) xni 2(i1) = yi (yi )iN is an increasing
0
0
:= rij 2(i1) . Then (rij
)i,jN is a computable sequence of
sequence. Let rij
0
rational numbers such that, for any i, (rij )jN is increasing and converges to
yi . Namely, (yi )iN is an increasing computable sequence of Clc . By Theorem 4,
its limit limi yi = limi xni = limi xi = x is also left computable, i.e.,
t
u
x Clc Csc .
Theorem 7. The class Cwc is not closed under effective limits.
Proof. Suppose by Theorem 3 that A is a non--r.e. 02 -set such that xA is
weakly computable. Then x2A is not weakly computable by Theorem 2. Let
approximation of A such that (xAs )sN converges to xA
(As )sN be a recursive P
176
Xizhong Zheng
PN (n)
P
|xBn,s xBn,s+1 | = s=0 |xBn,s xBn,s+1 | + s>N (n) |xBn,s xBn,s+1 |
P
= C1 + s>N (n) |xAn,s xAn,s+1 | < C1 + C. On the other hand, it is easy to
see that lims xBn,s = xBn . Therefore, the sequence (xBn,s )n,sN converges
to xBn weakly effectively. Hence (xBn )nN is a weakly computable sequence of
real numbers. By the definition of Bn , Bn 2A {2n + 1, 2n + 2, . . .}. It follows
that |xBn x2A | 22n 2n This means that (xBn )nN converges to x2A
effectively and this ends the proof of the theorem.
t
u
s=0
i(s + 1) := i(s) + 1
:= rj0 ,s
ui(s+1)
()
if 0 j < j0
t(j, s)
i(s)
+
1
if
j = j0
t(j,
s
+
1)
:=
1
if j0 < j s + 1.
Otherwise, if no such j exists, then define, i(s + 1) := i(s), t(s + 1, s + 1) := 1
and t(j, s + 1) := t(j, s) for all j s.
To show this construction succeeds, we need only to prove the following
claims.
1. For any j N , the limit t(j) := lims t(j, s) exists and satisfies the conditions that t(j) 6= 1 and |ut(j) xj | 2(j+1) .
2. lims i(s) = +.
3. For any j N , (s t(j))(|ut(j) us | 2j ).
Now it is clear that the sequence (us )sN constructed above is a computable
infinite sequence of rational numbers. Furthermore, this sequence converges to
x. This completes the proof of Theorem.
t
u
177
In this section we will discuss the closure property under computable operators.
The following result about left and right computable real numbers is immediate
by the fact that the real function f defined by f (x) = x is computable.
Proposition 2. The classes Clc and Crc are not closed under the computable
operators, hence is also not closed under partial computable operators.
To discuss the closure property under partial computable operators for other
classes, we will apply the following observation of Ko [7].
Theorem 9 (Ker-I Ko [7]). For any sets A, B N , A T B iff there is a
(partial) computable real function f : R R such that f (xB ) = xA .
From this result, it is easy to show that a lot of classes of real numbers are
not closed under the partial computable operators.
Theorem 10. The classes Csc and Cwc are not closed under the partial computable operators. The class Cra is closed under partial computable operators.
Proof. 1. For class Csc . By Muchnik-Friedberg Theorem (see [11]), there are
two r.e. sets A and B such that they are incomparable under Turing reduction.
Then xAB is not semi-computable by Theorem 2. On the other hand, xAB
is left computable since A B is r.e. Obviously, we have the reduction that
A B T A B. By Theorem 9, there is a computable real function f such
that f (xAB ) = xAB . Therefore, Csc is not closed under partial computable
operators.
2. For class Cwc . By Theorem 3, there is a non--r.e. set A such that xA
is weakly computable. On the other hand, x2A is not weakly computable by
Theorem 2 since 2A is obviously not -r.e. Because 2A T A, by Theorem 9,
there is a computable real function f such that f (xA ) = x2A . That is, Cwc is
not closed under the partial computable operators.
3. For class Cra , it follows immediately from the fact that a real number xA
is r.a iff A is a 02 -set and the class of all 02 -sets is closed under the Turing
t
u
reduction, i.e. if A T B and B is 02 -set, then A is also 02 -set.
It is shown in Theorem 1 that the class Csc is not closed under addition.
Hence it is not closed under the polynomial functions with several arguments.
Namely, if p(x, , xn ), n 2, is a polynomial with rational coefficients and
a1 , , an are semi-computable real numbers, then p(a1 , , an ) is not necessary
semi-computable. But for the case of n = 1, it is not clear. Furthermore it is also
not known whether the class of semi-computable real numbers is closed under
the total computable real functions.
Similarly, it remains still open whether the class Cwc is closed under (total)
computable operators. We guess it is not. One possible approach is to define a
computable real function which maps some weakly computable xA for a non-r.e. set A to a not weakly computable real number x2A . Using the idea in the
178
Xizhong Zheng
2n0
n
X
22(n0 +i)
i=1
2n0
+2
(1 22n )/3
t
u
Ce
Clc
Crc
Csc
Cwc
Cra
arithmetic
effective computable partial computable
operations limits
limits
operators
operators
Yes
Yes
Yes
Yes
Yes
No
Yes
Yes
No
No
No
Yes
Yes
No
No
No
No
Yes
?
No
Yes
No
No
?
No
Yes
No
Yes
Yes
Yes
179
References
1. K. Ambos-Spies A note on recursively approximable real numbers, Research Report on Mathematical Logic, University of Heidelberg, No. 38, September 1998.
2. C. Calude, P. Hertling, B. Khoussainov, and Y. Wang, Recursive enumerable reals
and Chaintins -number, in STACS98, pp596606.
3. C. Calude. A characterization of c.e. random reals. CDMTCS Research Report
Series 095, March 1999.
4. G. S. Cetin A pseudofundamental sequence that is not equivalent to a monotone
one. (Russian) Zap. Naucn. Sem. Leningrad. Otdel. Mat. Inst. Steklov. (LOMI) 20
1971 263271, 290.
5. G. J. Chaitin A theory of program size formally identical to information theory,
J. of ACM., 22(1975), 329340.
6. A. Grzegorczyk. On the definitions of recursive real continuous functions, Fund.
Math. 44(1957), 6171.
7. Ker-I Ko Reducibilities of real numbers, Theoret. Comp. Sci. 31(1984) 101123.
8. Ker-I Ko Complexity Theory of Real Functions, Birkh
auser, Berlin, 1991.
9. M. Pour-El & J. Richards Computability in Analysis and Physics. SpringerVerlag, Berlin, Heidelberg, 1989.
10. T. A. Slaman Randomness and recursive enumerability, preprint, 1999.
11. R. Soare Recursively Enumerable Sets and Degrees, Springer-Verlag, Berlin, Heidelberg, 1987.
12. R. Soare
Recursion theory and Dedekind cuts, Trans, Amer. Math. Soc.
140(1969), 271294.
13. R. Soare Cohesive sets and recursively enumerable Dedekind cuts, Pacific J. of
Math. 31(1969), no.1, 215231.
14. R. Solovay. Draft of a paper (or series of papers) on Chaitins work . . . done for
the most part during the period of Sept. Dec. 1975, unpublished manuscript, IBM
Thomas J. Watson Research Center, Yorktoen Heights, New York, May 1975.
15. E. Specter Nicht konstruktive beweisbare S
atze der Analysis, J. Symbolic Logic
14(1949), 145158
16. K. Weihrauch Computability. EATCS Monographs on Theoretical Computer
Science Vol. 9, Springer-Verlag, Berlin, Heidelberg, 1987.
17. K. Weihrauch. An Introduction to Computable Analysis. Springer-Verlag, 2000.
(to appear).
18. K. Weihrauch & X. Zheng A finite hierarchy of the recursively enumerable real
numbers, MFCS98 Brno, Czech Republic, August 1998, pp798806.
19. K. Weihrauch & X. Zheng Arithmetical hierarchy of ral numbers. in MFCS99,
Szklarska Poreba, Poland, September 1999, pp 2333.
20. X. Zheng. Binary enumerability of real numbers. in Computing and Combinatorics, Proc. of COCOON99, Tokyo, Japan. July 2628, 1999, pp300309.
A Characterization of Graphs
with Vertex Cover Six
Michael J. Dinneen and Liu Xiong
Department of Computer Science, University of Auckland,
Private Bag 92019, Auckland, New Zealand
([email protected] & [email protected])
Introduction
The main contribution of this paper is the characterization of graphs with vertex
cover at most 6 by its obstruction set (forbidden minors). The general problem
of vertex cover (which is N P -complete; see [GJ79]) asks whether a graph has a
set of vertices of size at most k that covers all edges (a more formal definition
is given below). Earlier Cattell and Dinneen in [CD94] classified the families of
graphs with vertex cover at most 5 by using the computational machinery now
described in [CDD+ 00]. Our current results are based on a more family-specific
approach where we limit the search space of graphs. In this paper, as our primary
limiting factor, we prove an exact upper bound on the number of vertices for an
obstruction to any kVertex Cover family.
The numbers of obstructions for 1Vertex Cover to 5Vertex Cover,
along with our new result for 6Vertex Cover, are listed below in Table 1.
We had known that the set of obstructions for 6Vertex Cover is finite
by the now-famous Graph Minor Theorem (GMT) of Robertson and Seymour
[RS85]. They proved Wagners conjecture which states that there are a finite
number of obstructions for any graph family closed under the minor order. Unfortunately the proof of the GMT does not indicate how to find these obstructions. The set of planar graphs are the best known example of a family with
forbidden graphs, where Kuratowskis characterization provides us with K5
and K3,3 as the only obstructions to planarity. A lot of work has recently been
done concerning the development of general methods for computing minor-order
obstructions, such as mentioned in the papers [FL89, APS91, LA91, Pro93].
In this paper we use standard graph theory definitions. A graph is a pair
(V, E), where V is a finite set of vertices and E is a set of undirected edges
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 180192, 2000.
c Springer-Verlag Berlin Heidelberg 2000
181
Connected Disconnected
Total
obstructions obstructions obstructions
1
1
2
2
2
4
3
5
8
8
10
18
31
25
56
188
72
260
182
Fig. 1. An example of a graph of vertex cover 4. The black vertices denote one
possible vertex cover.
Our basic computational method is simply to generate and check all graphs
that are potential obstructions. In practice, this search method can be used
for an arbitrary lower ideal if one can (1) bound the search space of graphs
to a reasonable size and (2) easily decide whether an arbitrary graph is an
obstruction. With respect to kVertex Cover, we can do both of these tasks
efficiently.
In earlier work, Cattell and Dinneen in [CD94] bounded the search space to
graphs of pathwidth at most k + 1 when they computed the kVertex Cover
obstructions for 1 k 5. Their generation process was self-terminating but,
unfortunately, many isomorphic graphs were created during the generation of
the search space. These superfluous graphs had to be either caught by an isomorphism checking program or eliminated by other means. For k = 6 using this
approach did not seem feasible. For 6Vertex Cover, we utilized McKays
graph generation program geng (part of his Gtools/Nauty package [McK90])
and obtained some tight new upper bounds on the structure of vertex cover
obstructions.
2.1
We now discuss a natural method for finding a set of obstructions for a lower
ideal from an available set of non-isomorphic graphs. We need to generate a
complete set of non-isomorphic (connected) graphs, which is large enough to
contain the set of obstructions sought.
To decide if a graph is an obstruction it helps to have an efficient membership
algorithm GA for the targeted lower ideal F. For the 6Vertex Cover family
of graphs we used an implementation of the Balasubramanian et. al. linear-time
vertex cover algorithm [BFR98]. By using GA for F, an algorithm to decide if
a graph is an obstruction is almost trivial. If a given graph G is an obstruction
for F, then G is a minimal graph such that G
/ F. For a lower ideal F we only
need to check that each one-step minor of G is in F. A general algorithm to
decide if G is an obstruction for F is presented below.
183
184
2.2
The number of connected non-isomorphic graphs of order n increases exponentially. For n = 11, the number of connected graphs is 1006700565. If we could
process one graph per microsecond we would still need over 11 days of running
time. Since there exist obstructions larger than this for 6Vertex Cover we
clearly need a more restricted search space. Thus we will filter the input by
exploiting other properties of the kVertex Cover obstructions.
A few important properties for the kVertex Cover obstructions are now
systematically presented.
Lemma 2. Any connected obstruction for the kVertex Cover lower ideal is
a biconnected graph.
Proof. Let v be a cut-vertex in a connected obstruction O for kVertex Cover.
Also let C1 , C2 , . . . , Cm2 be the connected components of O\{v} and Ci0 =
O[V (Ci ) {v}], where O[X] denotes the subgraph induced by vertices X. Each
Ci0 denotes the part of the graph containing the component Ci , the vertex v, and
to kVertex Cover. We
the edges
Sm
Pm between v and Ci . Since O is an obstruction
is also a vertex cover for O,
have i=1 V C(Ci ) = k. Any vertex cover for i=1 Ci0 P
m
where vertex v may be repeated in several Ci0 . Thus, i=1 V C(Ci0 ) V C(O) =
k + 1. S
This implies that there exists an i such that V C(Ci0 ) = V C(Ci ) + 1. Now
0
O = ( j6=i Cj ) Ci0 is a proper subgraph of O. But V C(O0 ) = k + 1 contradicts
O being an obstruction. So O does not have any cut-vertices. Therefore, O is a
2
biconnected graph.
A nice filter for our graph generator is the following result.
Lemma 3. A vertex in an obstruction for kVertex Cover has degree at most
k + 1.
Proof. Suppose u is a vertex with degree at least k + 2 in an obstruction O =
(V, E) for kVertex Cover. Let O0 be the resulting graph by deleting any edge
uv of O. Since O is an obstruction for kVertex Cover, we have V C(O0 ) = k.
Hence, in G there is a set of vertices V 0 V which covers all edges in G except
/ V 0 and v
/ V 0.
uv and |V 0 | = k. Since V 0 does not cover edge uv, u
0
Thus V must contain all the neighbors of u except v. Hence V 0 contains at
least k + 2 1 vertices in the neighborhood of u. Thus we have |V 0 | k + 1 > k,
contradicting V 0 being a witness vertex cover to O0 .
Hence the degree of u is at most k + 1. Therefore a vertex in an obstruction
2
for kVertex Cover has maximum degree k + 1.
Using the above result, along with Lemma 1, we can easily derive the following.
Lemma 4. There is only one connected obstruction for kVertex Cover with
k + 2 vertices, which is the complete graph Kk+2 . Furthermore, no other obstruction for kVertex Cover has fewer vertices.
185
The previous lemma shows that Kk+2 is the smallest connected obstruction
for kVertex Cover. We can also show that this is the unique obstruction
with maximum degree.
Lemma 5. If a vertex in a connected obstruction for kVertex Cover has
degree k + 1, then this obstruction is the complete graph with k + 2 vertices
(Kk+2 ).
Proof. Suppose O = (V, E) is a connected obstruction for kVertex Cover
and u is a vertex in O with degree k + 1 and let N (u) be the neighborhood of
u. Thus |N (u)| = k + 1.
Let uv be any edge incident to u. Let O0 = O\uv; we know V C(O0 ) = k.
This is illustrated in Figure 2. Let V 0 be a minimum vertex cover of O0 . We have
/ V 0 (otherwise O0 is not an obstruction).
u
/ V 0 and v
N (u)
We now present two important results that yield sharp upper bounds on the
number of vertices for connected and disconnected kVertex Cover obstruc-
186
tions. Later we will give some edge bounds that may be generalized (with some
effort) to kVertex Cover.
Theorem 1. A connected obstruction for kVertex Cover has at most 2k +1
vertices.
Proof. Assume O = (V, E) is a connected obstruction for kVertex Cover,
where |V | = 2k + 2. We prove O is not a connected obstruction for kVertex
Cover by contradictions. The same argument also holds for graphs with more
vertices.
If O is a connected obstruction of kVertex Cover, then V C(O) = k + 1.
Hence V can be split into two subsets V1 and V2 such that V1 is a k + 1 vertex
cover and V2 = V \V1 . Thus |V2 | = 2k + 2 (k + 1) = k + 1. Obviously, no
edge exists between any pair of vertices in V2 , otherwise V1 is not a vertex cover.
Each vertex in V1 has at least one vertex in V2 as a neighbor, otherwise it can
be moved from V1 to V2 . (i.e., the vertex is not needed in this minimal vertex
cover).
Thus the neighborhood of V2 , N (V2 ) is V1 . We now prove that no subset S
of V2 has |N (S)| < |S|. [This result, in fact, will immediately exclude the case
|V | > 2k + 2.]
By way of contradiction, assume V3 = S is a minimal subset in V2 such that
|N (V3 )| < |V3 |. We say V3 is minimal whenever if T is any subset in V3 then
|N (T )| |T |. Note V3 will contain at least 3 vertices since every vertex has
degree at least 2 in biconnected graphs (see Lemma 2).
Let V4 = N (V3 ). Thus all edges adjacent to V3 are covered by V4 . Thus
V4 V1 and |V4 | < |V3 |. Let V5 = V2 \V3 and V6 = V1 \V4 . The graph O can be
split as indicated in Figure 3.
V4
V3
V6
V5
187
188
addition to this papers k = 6) indicate a very interesting feature: the more vertices, the fewer edges. As proven above, a complete graph Kk+2 is the smallest
obstruction (and only one), but it seems to have the largest number of edges. The
cycle obstruction C2k+1 appears to be the only connected obstruction with the
largest number of vertices (and appears to have the smallest number of edges).
2.4
We divide our computational task for finding all the connected obstructions for
6Vertex Cover into two steps.
(1) We find all connected obstructions with order at most 11 for 6Vertex Cover. This step is very straight forward. Our algorithm IsObstruction is applied
to all non-isomorphic biconnected graphs with a number of vertices between 9
and 11, of maximum degree 6, and of maximum number of edges 33.
(2) To find all connected obstructions of order 12 and 13 for 6Vertex Cover,
new degree and edge bounds were found and used, as indicated below.
By the Lemma 5, we know that if a connected obstruction O has a vertex of
degree 7 for 6Vertex Cover, then this obstruction must be K8 . Thus we only
have to consider graphs with maximum degree 6. Furthermore, if the degree for
O is 6, we can easily prove the following statement by cases.
Statement 1. If a connected obstruction O = (V, E) for 6Vertex Cover has
a vertex of degree 6, then |V | 10. Furthermore, if |V | = 10 then |E| 24, and
if |V | = 9 then |E| 25.
A consequence of the proof for Statement 1 (see [DX00]) is the following: if
a connected obstruction O for 6Vertex Cover has 11 or more vertices then
the degree of every vertex is less than or equal to 5. With another series of case
studies of graphs with vertices of degree 5 we have the following.
Statement 2. If a connected obstruction O = (V, E) for 6Vertex Cover has
12 vertices then |E| 24. Further, if O has 13 vertices then |E| 26.
The proof of this statement (see [DX00]) also gives a degree bound of 4 for
any obstruction with 13 vertices. The search space for finding all obstructions
with orders 12 and 13 for 6Vertex Cover has been extremely reduced.
Final Remarks
189
References
[APS91]
190
191
192
[RS85]
Introduction
194
smallest possible diameter K(n, d) for a given order n and maximum out-degree
d. Before we discuss in more detail optimal digraph problems, we give more
formal definitions of the terms in graph theory that will be used.
A directed graph or digraph G is a pair of sets (V, A) where V is a finite
nonempty set of distinct elements called vertices; and A is a set of ordered pair
(u, v) of distinct vertices u, v V called arcs.
The order n of a digraph G is the number of vertices in G, that is, n = |V |.
An in-neighbour (respectively out-neighbour) of a vertex v in G is a vertex u
(respectively w) such that (u, v) A (respectively (v, w) A). The set of all
in-neighbour (respectively out-neighbour) of a vertex v is denoted by N (v)
(respectively N + (v)). The in-degree (respectively out-degree) of a vertex v is the
number of its in-neighbour (respectively out-neighbour). If the in-degree equals
the out-degree (= d) for every vertex in G, then G is called a diregular digraph
of degree d.
A walk of length l in a digraph G is an alternating sequence v0 a1 v1 a2 ...al vl
of vertices and arcs in G such that ai = (vi1 , vi ) for each i, 1 i l. A walk
is closed if v0 = vl . If all the vertices of a v0 vl walk are distinct, then such a
walk is called a path. A cycle is a closed path.
The distance from vertex u to v, denoted by (u, v), is the length of the
shortest path from vertex u to vertex v. Note that in general (u, v) is not
necessarily equal to (v, u). The diameter of digraph G is the longest distance
between any two vertices in G.
Let v be a vertex of a digraph G with maximum out-degree d and diameter
k. Let ni , for 0 i k, be the number of vertices at distance i from v. Then
ni di , for 0 i k, and so
n=
k
X
i=0
ni 1 + d + d2 + . . . + dk =
dk+1 1
d1
(1)
The right-hand side of (1) is called the Moore bound and denoted by Md,k . If
the equality sign holds in (1) then the digraph is called Moore digraph. It is well
known that Moore digraphs exist only in the trivial cases when d = 1 (directed
cycles of length k + 1, Ck+1 , for any k 1) or k = 1 (complete digraphs of order
d + 1, Kd+1 , for any d 1) [10,3]. Thus for d 2 and k 2, inequality (1)
becomes
dk+1 d
(2)
n d + d2 + . . . + dk =
d1
Let G(n, d, k) denotes the set of all digraphs G, not necessarily diregular, of
order n, maximum out-degree d, and diameter k. Given these three parameters,
there are three problems for digraphs G G(n, d, k), namely,
1. The degree/diameter problem: determine the largest order N (d, k) of a digraph given maximum out-degree d and diameter k.
2. The order/degree problem: determine the smallest diameter K(n, d) of a
digraph given order n and maximum out-degree d.
195
Construction
196
(a)
(b)
(c)
Digraphs which are obtained from line digraph construction contain some
pairs of vertices with the same out-neighbourhoods. The line digraph L(G) of
a digraph G is the digraph where each vertex of L(G) corresponds to arc of G;
and a vertex uv of L(G) is adjacent to a vertex wx if and only if v = w, that is,
if the arc (u, v) is adjacent to the arc (w, x) in G.
The order of the line digraph L(G) is equal to the number of arcs in the
digraph G. For a diregular digraph G of out-degree d 2, the sequence of line
digraph iterations
L(G), L2 (G) = L(L(G)), ..., Li (G) = L(Li1 (G)), ...
is an infinite sequence of diregular digraphs of degree d. For more detail explanations about line digraph iterations, see [4]. The following facts about line digraph
are obvious.
Fact 1 If a digraph G is a diregular of degree d 2, diameter k and order n
then the line digraph L(G) is also diregular of degree d, order dn and diameter
k + 1.
Fact 2 If L(G) is a line digraph of diregular digraph G with degree d 2,
diameter k and order n then there are n tuples of d vertices in L(G) with identical out-neighbourhood. In other words, if ui N (v) and wj N + (v) where
v, ui , wj V (G) for every i = 1, 2, ..., d and j = 1, 2, ..., d then
N + (u1 v) = N + (u2 v) = ... = N + (ud v) = {vw1 , vw2 , ..., vwd }
where ui v, vwj V (LG).
Applying Theorem 1 to line digraphs, we obtain
Theorem 2 If LG G(dn, d, k) is a line digraph of a diregular digraph G
G(n, d, k 1), then there exists digraph LGr G(dn r, d, k 0 ), k 0 k, for every
1 r (d 1)n 1.
197
The Diameter
Kautz digraphs Ka G(dk + dk1 , d, k) are the largest known digraphs of maximum out-degree d 3 and diameter k 2. Kautz digraph Ka can be regarded
as a line digraph Lk1 (Kd+1 ) of the complete directed graph Kd+1 . There are
exactly d + 1 different out-neighbourhoods, each shared by dk1 vertices. Therefore Kautz digraphs can be used as base digraphs in our construction (Theorem
2) to produce other digraphs with smaller order while keeping the diameter no
larger than Ka and the maximum out-degree the same. Consequently, we have
198
Theorem 3 If
dk d
d1
dk d
.
d1
(3)
d
, then K(n, d) k. By Corollary 1, there exist digraphs
Obviously, if n > dd1
k1
+ dk2 < n dk + dk1 , out-degree d and diameter at
of order n, for d
k
d
k1
+ dk2 < dd1
, it follows that for digraphs with maximum
most k. Since d
dk d
d1
dk d
d1
< n dk + dk1 .
The interval of order n can be tightened if we consider particular cases of outdegree d and if we utilise some additional known results, as described below.
Let us first consider the case of maximum out-degree 3. Baskoro et al [1]
proved that there is no digraph of maximum out-degree 3 and diameter k 3
with order one less than the Moore bound. Therefore, for d = 3 and k 3,
k+1
k
n 3 2 5 . For diameter k 1, n 3 25 .
k
Consequently, if n > 3 25 , then K(n, 3) k. Combining this result and
Corollary 1, we have
Theorem 4 For every k > 3 and
3k 5
2
This result implies that for n > 2k 3, K(n, 2) k. Combining this result and
Lemma 1, we have
Theorem 6 For every k 5 and 2k 3 n 25 2k4 , K(n, 2) = k.
We conclude this paper with our current knowledge of the K(n, 2) problem
for n 200 (Table 1). New results as displayed in bold-type, for example G
G(49, 2, 5) which is obtained by applying Theorem 2 to the line digraph of Alegre
digraph (see Figure 2).
199
L(Al)
L(Al)
Fig. 2. The line digraph of Alegre digraph L(Al) and non-diregular digraph of
order 49 L(Al)0
200
n
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
K(n, 2)
0
1
1
2
2
2
3
3
3
3
3
3
4
4
4
4
4
4
4
4
4
4
4
4
4
4 or 5
4 or 5
4 or 5
5
5
5
5
5
5
5
5
5
5
5
5
n
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
K(n, 2)
5
5
5
5
5
5
5
5
5
5
5 or 6
5 or 6
5 or 6
5 or 6
5 or 6
5 or 6
5 or 6
5 or 6
5 or 6
5 or 6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
n
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
K(n, 2)
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
n
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
K(n, 2)
6 or 7
6 or 7
6 or 7
6 or 7
6 or 7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
n
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
K(n, 2)
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
7
201
References
an
1. E.T. Baskoro, Mirka Miller, J. Sir
and M. Sutton, Complete characterisation of
almost Moore digraphs of degree 3, Discrete Mathematics, to appear.
Zn
2. E.T. Baskoro, Mirka Miller, J. Plesnk and S.
am, Digraphs of degree 3 and
order close to the Moore bound, Journal of Graph Theory 20 (1995) 339349
3. W.G. Bridges and S. Toueg, On the impossibility of directed Moore graphs, J.
Combinatorial Theory Series B29 (1980) 339341
4. M.A. Fiol, J.L.A. Yebra and I. Alegre, Line digraph iterations and the (d, k) digraph
problem, IEEE Transactions on Computers C-33 (1984) 400403
5. M. Imase and M. Itoh, A design for directed graphs with minimum diameter, IEEE
Trans. on Computers C-32 (1983) 782784
6. Mirka Miller, M. A. Thesis, Dept. of Math, Stats and Comp. Sci., U NE, Armidale
(1986)
7. Mirka Miller and I. Fris, Minimum diameter of diregular digraphs of degree 2,
Computer Journal 31 (1988) 7175
8. Mirka Miller and I. Fris, Maximum order digraphs for diameter 2 or degree 2, Pullman volume of Graphs and Matrices, Lecture Notes in Pure and Applied Mathematics 139 (1992) 269278
an
9. Mirka Miller and J. Sir
, Digraphs of degree two and defect two, submitted.
Zn
10. J. Plesnk and S.
am, Strongly geodetic directed graphs, Acta F. R. N. Univ.
Comen. - Mathematica XXIX (1974) 2934
Introduction
An independent set (IS) in a graph is a set of vertices that are mutually nonadjacent. In the online independent set problem, a graph is given one vertex at
a time along with edges to previous vertices. The algorithm is to maintain a
proper solution, and must at each step decide irrevocably whether to keep the
presented vertex as a part of the solution. Its goal is to find as large a set as
possible, relative to the size of the largest independent set in the graph.
Online computation has received considerable attention as a natural model
of some properties of the real world such as the irreversibility of time and the
unpredictability of the future. Aside from modeling real-time computation, it
also has been found to be important in contexts where access to data is limited,
e.g. because of unfamiliar terrain, space constraints, or other factors determining
the order of the input.
The online IS problem occurs naturally in resource scheduling. Requests for
resources or sets of resources arrive online, and two requests can only be serviced
?
??
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 202209, 2000.
c Springer-Verlag Berlin Heidelberg 2000
203
simultaneously if they do not involve the same resource. When the objective is
to maximize the throughput of a server, we have a (possibly weighted) online IS
problem. Previously, this has primarily been studied in the context of scheduling
intervals [7].
The usual measure of the quality of an online algorithm A is its competitive
ratio or performance ratio. For the online IS problem, it is defined to be (n) =
maxIIn opt(I)/A(I), where In is the set of all the sequences of vertices and
corresponding edges given as n-vertex graphs, opt(I) is the cardinality of the
maximum independent set of I, and A(I) is the size of the independent set
found by A on I.
One reason why the online IS problem has not received a great deal of attention is that any algorithm is bound to have a poor competitive ratio. It is not
hard to see that in the basic model, once the algorithm decides to add a vertex
to its set, the adversary can ensure that no further vertices can be added, even
though all the other n 1 vertices form an independent set. Thus, the worst
possible performance ratio of n 1 holds for any algorithm, even when the input
graph is a tree. As a result, we are interested in relaxations of the basic model
and their effects on the possible performance ratios.
In the coloring model studied recently in [3], the online algorithm constructs
a coloring online. The IS solution output will be the largest color class. This
circumvents the strait-jacket that the single current solution imposes on the
algorithm, allowing him to hedge his bets. This model relates nicely to online
coloring that has been studied for decades. In particular, positive results known
for some special classes of graphs carry over to this IS problem: O(log n) for
trees and bipartite graphs [1,2,8], and n1/k! for k-colorable graphs [5]. Also,
2-competitive ratio is immediate for line graphs, as well as ratio k for k + 1claw free graphs. On the other hand, for general graphs, no algorithm has a
competitive ratio better than n/4 [3], a ratio that is achieved by the FirstFit
coloring algorithm.
Our results. We propose the multi-solutions model, where the algorithm can
maintain a collection of independent sets. At each step, the current vertex can
be added to up to r(n) different sets. The coloring model is equivalent to the
special case r(n) = 1. We are particularly interested in polynomially bounded
computation, thus focusing on the case when r(n) = nk , for some constant k.
For this case, we derive an upper and a lower bound of (n/ log n) on the best
possible competitive ratio. For r(n) constant, we can argue a stronger (n) lower
bound. These results are given in Section 2.
A still more powerful model proposed here is the inheritance model. Again
each vertex can participate in limited number of sets. However, the way these
sets are formed is different. At each step, r(n) different sets can be copied and
the current vertex is added to one copy of each of the sets. Thus, adding a vertex
to a set leaves the original set still intact. This model can be likened to forming
a tree, or a forest, of solutions: at each step, r(n) branches can be added to trees
in the forest, all labeled by the current vertex. Each path from a root to a node
(leaf or internal) corresponds to one current solution.
204
Magn
us M. Halld
orsson et al.
The inheritance model is the most challenging one in terms of proving lower
bounds. This derives from the fact that all the lower bounds used the other
models, as well as for online graph coloring [4,3], have a property called transparency: once the algorithm makes his choice, the adversary immediately reveals
her classification of that vertex to the algorithm. This transparency property,
however, trivializes the problem in the inheritance model. Still we are able to
prove lower bounds in the same ballpark, or (n/(ek log3 n)) when r(n) = nk .
These results are given in Section 3.
Notation. Throughout this paper, n denotes the total number of given vertices, and we write vertices v1 , v2 , , vn , where vertices are given in this order.
Namely, at the ith step, the vertex vi is given and an online algorithm decides
whether it selects vi or not.
Multi-solutions Model
In the original online IS problem, the algorithm can have only one bin, one
candidate solution. In the multi-solutions model, the algorithm can maintain a
collection of independent sets, choosing the largest one as the final solution. The
model is parameterized by a function r(n); each vertex can be placed online
into up to r(n) sets. When r(n) = 1, this corresponds to forming a coloring
of the nodes. When r(n) = 2n , an online algorithm can maintain all possible
independent sets and the problem becomes trivial. We are primarily interested
in cases when r(n) is polynomially bounded.
We find that the best possible performance ratio in this model is (n/ log r(n)).
In particular, when r(n) is constant, the ratio is linear, while if r(n) is polynomial, the ratio is (n/ log n).
Remark. In online problems, the algorithm does not know the length n of the
input sequence. Thus, in the multi-solutions model, the algorithm can assign the
i-th node to r(i) different sets, rather than r(n). However, it is well known that
not informing of the value of n has very limited effect on the performance ratio,
affecting at most the constant factor. Thus, in order to simplify the arguments,
we may actually allow the algorithm r(n) assignments for every vertex.
Theorem 1. There is an online algorithm with competitive ratio at most
O(n/ log r(n)) in the multi-solutions model.
Proof. Let t = dlog r(n) 1e. View the input as sequence of blocks, each with t
vertices. For each block, form a bin corresponding to each non-empty subset of
the t vertices. Greedily assign each vertex as possible to the bins corresponding
to sets containing that vertex. This completes the specification of the algorithm.
Each node is assigned to at most r(n) bins. Each independent set in each
block will be represented in some bin. Thus, the algorithm finds an optimal
solution within each block. It follows that the performance ratio is at most n/t,
the number of blocks.
Lower Mounds
constant.
205
We first give a linear lower bound for the case of r(n) being
n
2(r(n)+1)
Proof. We describe the action of our adversary. Vertices have one of two states:
good and bad. When a vertex is presented to an online algorithm, its state is
yet undecided. Immediately after an online algorithm decides its action for that
vertex, its state is determined. If a vertex v becomes good, no subsequent vertex
has an edge to v. If v becomes bad, all subsequent vertices have an edge to v.
Note that all good vertices constitute an independent set, in fact the optimal
one. Also, note that once a bad vertex is added to a bin, no succeeding vertex
can be put into that bin.
The adversary determines the state of each vertex as follows: If an online
algorithm put the vertex v into a bin with r(n) vertices or more, then v becomes
a bad vertex; otherwise its good. Thus, no bin contains more than r(n) + 1
vertex. This upper bounds the algorithms solution.
Each bad node becomes the last node in a bin with r(n) copies of other good
nodes. Since each node appears in at most r(n) bins, we have that the number
of good nodes is at least the number of bad nodes, or at least n/2. This lower
bounds the size of the optimal solution.
Theorem 3. Any online IS algorithm has a competitive ratio at least
in the multi-solutions model.
n
2 log(n2 r(n))
206
Magn
us M. Halld
orsson et al.
i + 1/2. It follows that the problem of scheduling intervals online for maximizing
throughput is hard, unless some information about the intervals endpoints are
given. This contrasts with the case of scheduling with respect to makespan,
which corresponds to online coloring interval graphs, for which a 3-competitive
algorithm is known [6].
Also, observe that the latter lower bound (as well as the construction in the
following section) is oblivious (in that it does not depend on the actions of the
algorithm), and hold equally well against randomized algorithms.
Inheritance Model
The model we shall introduce in this section is much more flexible than the
previous one. At each step, an algorithm can copy up to r(n) bins and put the
current vertex into those copies or a new empty bin. (We restrict the number
of copies to r(n) 1 when an online algorithm uses an empty bin, because it
is natural to restrict the number of bins each vertex can be put into to r(n)
considering the consistency with multi-solutions model.) Note that this model is
at least as powerful as the multi-solutions model with the same r(n).
The upper bound follows from Theorem 1.
Corollary 4. There is an online algorithm with competitive ratio at most
O(n/ log r(n)) in inheritance model.
3.1
A Lower Bound
As mentioned before, a lower bound argument is a challenging one. Before showing our result, we discuss some natural ideas and see why those arguments only
give us poor bounds.
Discussion 1 Consider the transparent adversary strategy of the proof of
Theorem 3. There is an online algorithm that against this adversary always
outputs an optimal solution for split graphs. The algorithm uses only two bins
at each step. At the first step, it maintains the empty bin and the bin that
contains v1 . At the ith step (i 2), the algorithm knows that the vertex vi1
is good or bad by observing whether there is an edge (vi1 , vi ) or not. If vi1
is good, the algorithm copies the bin containing vi1 , adds vi to the copy, and
forgets about the bin not containing vi1 . Otherwise, if vi1 is bad, exchange
the operations for the two bins. Observe that this algorithm outputs a solution
consisting of all good vertices.
What then is the difference between our new model and the old one? Note
that, in the inheritance model, an algorithm can copy bins it currently holds.
To simulate this operation in the multi-solutions model, an algorithm has to
construct in advance two bins whose contents are the same. Since the above
algorithm in the inheritance model copies at each step, an algorithm in the
multi-solution model must prepare exponential number of bins in the worst case
207
to simulate it. Hence, for the current adversary, the inheritance model is exponentially more powerful than the multi-solutions model. Thus, to argue a lower
bound in the inheritance model, we need a more powerful adversary.
Discussion 2 In the discussion of the previous section, what supported the
online algorithm in the new model is the information that the vertex is good
or bad given immediately after the algorithm processed that vertex. Hence the
algorithm knows whether it is good or bad at the next step. We now consider
the possibility of postponing this decision of the adversary.
Divide the vertex sequence into rounds. At the end of each round, the adversary determines the states of vertices it gave in that round. A vertex then acts
as a good vertex while its state is undetermined. Until the end of the round,
it is impossible for an online algorithm to make a decision depending on states
of vertices given in that round. If, at the end of a round, an online algorithm
maintains a bin that contains many vertices of that round, we kill that bin
by making one of those vertices bad. This can be easily done by setting an
appropriate probability that a vertex becomes bad.
of size at least opt, when the optimal solution contains opt vertices.
A Better Lower Bound The reason why the above argument did not give
a satisfactory lower bound is that the adversary strategy was still weak: Once
a decision is made, the algorithm knows that a good vertex will never become
bad. Here, we consider an adversary that makes a probabilistic decision more
than once (approximately log n times) to each vertex.
n
Theorem 5. Any online IS algorithm has a competitive ratio at least ek+1 (log
n)3
in the inheritance model with r(n) = nk where e is the base of the natural
logarithm.
208
Magn
us M. Halld
orsson et al.
Let t = log(n/l0 ). Note that each block is of size 2i l0 , 0 i < t, and the
number of blocks is at most t + 1.
Each time blocks are merged, the adversary is said to attack the respective
vertices by probabilistically changing them to bad. The probability of a vertex
k+1
surviving an attack is 1 log
n . Each vertex receives at most t attacks. Hence, the
k+1 t
probability that a vertex is good at the end of the game is at least (1 log
n)
1
.
The
expected
number
of
good
vertices,
which
is
the
measure
of
the
optimal
ek+1
solution, is then at least n/ek+1 .
We now evaluate the performance of the online algorithm. It then appears
that a smaller l0 is harder for the algorithm to keep large bins. Unfortunately,
a smaller l0 also makes proofs harder. The following setting, l0 = (log n)2 , is
somewhat conservative:
Lemma 6. Suppose that l0 = (log n)2 . Then any online IS algorithm in the
inheritance model with r(n) = nk cannot produce independent sets whose size is
(log n)3 or more in the worst case.
Proof. We maintain the following invariant ():
There is no bin B containing only good vertices that has
()
more than (log n)2 vertices from a single block.
When the first l0 = (log n)2 vertices are given, () is obviously true. Suppose now that () is true at some moment. It then also remains true when the
adversary introduces in step (1) a new block of l0 vertices. Consider now the
case when two blocks b1 and b2 are merged. Let S be the set of good vertices
in b1 b2 contained in a particular bin B. If |S| l0 the invariance remains
true, so suppose otherwise. Recall that the adversary attacks each vertex in S
k+1
with probability log
n . Therefore, the probability that all vertices in S survive
the attacks is at most
(1
1
k + 1 (log n)2
)
= (k+1) log e .
log n
n
The probability that there is some bin that contains more than l0 vertices from
b1 b2 is at most
nk+1
= n(k+1)(1log e) < 1.
n(k+1) log e
That is, it holds with some positive probability that no bin includes (log n)2
or more good vertices in this combined block. This implies that there exists an
adversary strategy (a choice of assignments to at most (k + 1)/ log n-fraction of
the vertices of b1 b2 ) that maintains the invariant ().
It follows that no bin contains more than t l0 < log3 n vertices.
209
References
1. D. Bean, Effective coloration, J. Symbolic Logic, Vol. 41, pp. 469480, 1976.
2. A. Gy
arf
as and J. Lehel, On-line and first fit colorings of graphs, J. Graph
Theory, Vol. 12(2), pp. 217227, 1988.
3. M. Halld
orsson Online coloring known graphs, Electronic J. Combinatorics, Vol.
7, R6, 2000. www.combinatorics.org.
4. M. Halld
orsson and M. Szegedy, Lower bounds for on-line graph coloring, Theoretical Computer Science, Vol. 130, pp. 163174, 1994.
5. H. Kierstead, On-line coloring k-colorable graphs, Israel J. of Math, Vol. 105,
pp. 93104, 1998.
6. H. A. Kierstead and W. T. Trotter, An extremal problem in recursive combinatorics, Congressus Numerantium Vol. 33, pp. 143153, 1981.
7. R. J. Lipton and A. Tomkins, Online interval scheduling, Proc. SODA 94, pp.
302311, 1994.
8. L. Lov
asz, M. Saks, and W. T. Trotter, An online graph coloring algorithm with
sublinear performance ratio, Discrete Math., Vol. 75, pp. 319325, 1989.
Introduction
The bin packing problem is one of the basic problems in the fields of theoretical
computer science and combinatorial optimization. It has many important realworld applications, such as memory allocation and job scheduling, and is wellknown to be NP-hard [4]; that is a main motivation of the study and development
of approximation algorithms for solving the problem.
The classical (one-dimensional) on-line bin packing problem is the problem
of, given a list L of items hx1 , x2 , . . . , xn i where xi (0, 1], packing all items
in L into a minimum number of unit-capacity bins. Note that term on-line
implies that items in L are consecutively input, and the packing of an item must
be determined before the arrival of the next item. In the literature, it is known
that the worst case ratio1 of an optimal on-line bin packing algorithm OP T ,
denoted by ROP
T , is at least 1.5401 [7] and at most 1.588 [6] if the number of
active bins2 used by the algorithm is unbounded; and is exactly 1.69103 [5] if it
is bounded by some constant k.
In this paper, we consider a two-dimensional version of the problem, in which
each rectangular item that should be packed into unit square bins is rotatable
by 90 degrees. The goal of the problem we consider is to pack all items in L
into a minimum number of unit square bins in such a way that 1) each item is
entirely contained inside its bin with all sides parallel to the sides of the bin, and
2) no two items in a bin overlap. It should be worth noting that in the normal
setting of higher dimensional bin packing problems, it is further requested that
3) the orientation of any item is the same as the orientation of the bin, i.e., each
1
2
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 210220, 2000.
c Springer-Verlag Berlin Heidelberg 2000
211
item must not be rotated; and under such a setting, it is known that an optimal
2
on-line algorithm OP T fulfills 1.907 ROP
T 2.85958 (= 1.69103 ) [1,3].
The two-dimensional on-line bin packing problem with rotatable items has
several interesting applications, e.g., job scheduling on two-dimensional mesh
computers and the floor planning of VLSI layouts, while the rotation of items is
prohibited in some of other applications, such as the assignment of newspaper
articles to newspaper pages. A naive conjecture is that the worst case ratio
could be improved by removing the condition on the rotatability since there is
an instance in which the removal of the condition reduces an optimal number of
bins to a half (e.g., consider a sequence of items of height 38 and width 58 each;
by rotating a half of items, we can pack four such items into a bin, while each
bin can accommodate at most two items without rotation). Another conflicting
conjecture is that it is not very easy to improve the ratio, since the lower bound
can also be improved by allowing rotations. In the following, we propose two
Preliminaries
2.1
Basic Definitions
Let A be an on-line bin packing algorithm, and A(L) the number of bins used by
algorithm A for input sequence L. The asymptotic worst case ratio (or simply,
, is defined as follows:
worst case ratio) of algorithm A, denoted as RA
n
= lim sup RA
RA
n
A(L)
n def
| OP T (L) = n .
where RA = max
OP T (L)
def
where OP T (L) denotes the number of bins used by an optimal bin packing
problem provided that the input is L. An on-line bin packing problem is said to
use k-bounded-space (or, simply bounded ) if, for each item, that is given in an
on-line manner, the choice of bins into which it may be packed is restricted to
a set of k or fewer active bins. If there is no such restriction, we say that the
problem uses unbounded space (or, simply unbounded ).
2.2
Classification of Items
Let T be the set of all rectangular items, denoted as (x, y), such that 0 <
x y 1,3 where x and y represent the height and width of the rectangle,
3
Note that we may assume x y without loss of generality, since each item is
rotatable by 90 degrees.
212
respectively. We first classify items in T into four subsets by the value of the
x-coordinate, as follows: T0 = {(x, y)| 23 < x 1 }, T1 = {(x, y)| 12 < x 23 },
T2 = {(x, y)| 13 < x 12 }, and T3 = {(x, y)| 0 < x 13 }. See Figure 1 (a) for
illustration. Subsets T2 and T3 are further partitioned into subsets by the value
of the y-coordinate, as follows.
Definition 1 (Partition of T3 ). Subset T3 is partitioned into four subsets
T30 , T31 , T32 , T33 by the value of the y-coordinate, as follows: T30 = {(x, y) T3 | 23 <
y 1 }, T31 = {(x, y) T3 | 12 < y 23 }, T32 = {(x, y) T3 | 13 < y 12 }, and
T33 = {(x, y) T3 | x y 13 }.
In order to define a partition of T2 , let us consider a sequence a0 , a1 , . . . of
reals defined as follows:
def 1
2
a0 =
def 1
3
and ai =
1
62i1 +3
for i = 1, 2, . . . .
(1)
1
1
= 25 , and a3 = 13 + 27
= 10
For example, a1 = 13 + 19 = 49 , a2 = 13 + 15
27 . Note
1
1
that 3 < ai 2 holds for any i 0. Let be a positive real that will be used
as a parameter in the analysis of our algorithms, and a function from R+ to
Z defined as follows:
def
(2)
(t) = dlog2 (2/(9t) 1)e .
j=0
{(x, y)|
1
3
()1
def
T21 =
j=0
{(x, y)|
def
T22 =
1
3
< x a() ,
{(x, y) T2 |
1
3
<y
1
2
< y 1 a() }
1
2 }.
2.3
213
Strips
In the proposed algorithms, each bin is split into small strips, and a given item is
packed into a strip of an appropriate size. Before describing the ways of splitting
of each bin into strips, let us consider the following infinite set X of reals:
def
X = {
1
i2j
| i = 3, 4, 5, 7, 9, 11, 13 and j = 0, 1, 2, . . . }.
By using X, two (infinite) sets of reals, Xlong and Xmed , are defined as follows:
def
def
Xlong = X
Xmed = X
1
2
a1 , a2 , . . . , a()
(3)
(4)
1
denote
where ai = 13 + 62i1
+3 for i 1. In what follows, given 0 < x 1, let x
denote
the smallest element in Xlong that is greater than or equal to x, and let x
the smallest element in Xmed that is greater than or equal to x. Note that for
x (= x/
x) > 34 .
any x < 13 , x/
Three types of strips used in the proposed algorithms are defined as follows.
3
3.1
In this section we describe our first on-line algorithm. The algorithm is described
in an event-driven manner; i.e., it describes the way of packing an input item
(x, y) into an active bin of an appropriate size.
Algorithm A1
If (x, y) T0 T1 , then open a new bin, put the item into the bin, and close the
bin; otherwise (i.e., if (x, y) T2 T3 ) execute the following operations:
(as
Case 1: if (x, y) T20 T30 , then obtain an unused long strip of height x
an active strip) by calling get long strip(x), put the item into the returned
strip, and close the strip.
Case 2: if (x, y) T21 T31 , then obtain an unused medium strip of height
x
(as an active strip) by calling get medium strip(x), put the item into the
returned strip, and close the strip.
(as
Case 3: if (x, y) T22 T32 , then obtain an unused short strip of height x
an active strip) by calling get short strip(x), put the item into the returned
strip, and close the strip.
214
Case 4: if (x, y) T33 , then put the item into an active long strip of height x
if such a strip with enough space is available. If there exist no such strips,
after closing all active long strips of height x
, obtain an unused long strip
of height x
by calling get long strip(x), and put the item into the returned
strip. Note that the strip is not closed at this time.
Figure 1 (b) illustrates the correspondence of items with strips, in algorithm
A1 . The performance of the algorithm, in terms of the occupation ratio of each
closed strip, is estimated as follows (proofs of Lemmas 4 and 5 are omitted).
Lemma 3 (Long strips). Any closed long strip of size S is occupied by items
with total size at least ( 49 + )S if the height of the strip is 12 , and with size at
most S2 , if the height is less than 12 .
Proof. By Lemma 2, a closed long strip of height 12 is filled with items of size at
least 29 2 ; i.e., the occupation ratio of the bin is at least 49 . On the other
hand, by the same lemma, it is shown that a closed long strip of height 1i , for
1
, that is at least 12 .
i 3, is filled with items of total size more than 23 i+1
Hence the lemma follows.
Lemma 4 (Short strips). Any closed short strip of size S is occupied by an
item with size at least 49 S if the height of the strip is 12 , and with size at most
S
1
2 , if the height is less than 2 .
Lemma 5 (Medium strip). 1) A medium strip with height ai for 1 i
(), is filled with an item with size more than 16 (= 13 12 ); and 2) a medium
strip with height 1i , for some i 3, is filled with an item with size more than
1
1
1
2(i+1) (= i+1 2 ).
3.2
Next, we consider the ways of splitting (unused) bins into strips. In the following,
we give a formal description of three procedures, get long strip, get medium strip,
and get short strip, that have been used in the proposed algorithm.
procedure get long strip(x)
1. Recall that x denotes the smallest element in Xlong that is greater than or
equal to x. If there is no unused long strip with height x
2j (< 1) for any
j 0, then execute the following operations:
0
0
0
2 j < 1 x
2j +1 . Note that x
2 j =
(a) Let j 0 be an integer such that x
1 1 1 1 1 1
1
2 , 3 , 5 , 7 , 9 , 11 , or 13 .
(b) Open an unused bin, and partition it into x21j0 long strips with height
0
x2j each.
2. Select one of the lowest strips, say Q, with height x
2j (< 1) for some j 0.
j 00
Let x
2 be the height of strip Q.
215
Analysis
216
RA
1
2S + 19 n0 + 12 n1 + ( 19 + 0 )b2 13 b3
.
max{n0 + max{n1 , b2 }, S}
0
0
2 + (1/S){ 91 n0 + ( 11
n1 b2 , RA
18 + )b2 } 2 + 18 + , and if n1 > b2 ,
1
1
11
11
0
0
RA1 2 + (1/S){ 9 n0 + ( 18 + )n1 } 2 + 18 + . On the other hand, when
2 + { 19 n0 + ( 19 + 0 )b2 + 12 n1 }/{n0 +
n0 + max{n1 , b2 } S, it is at most RA
1
11
0
0
2 + { 91 n0 + ( 11
max{n1 , b2 }}. If n1 b2 , RA
18 + )b2 }/(n0 + b2 ) 2 + 18 + ,
1
1
11
11
0
0
and if n1 > b2 , RA1 2 + { 9 n0 + ( 18 + )n1 }/(n0 + n1 ) 2 + 18 + . Hence
the theorem follows.
2.5624.
Theorem 2. RA
1
n
2n
n
n 2n 2n
+
+
+
+
+
> 2.5624n
4
13
16
100 120 144
In this section, we propose an extension of the first algorithm. The basic idea
behind the extension is to pack an item in T1 and item(s) in T3 in the same bin,
as much as possible. Recall that under the on-line setting, we cannot use any
knowledge about the input sequence L in the algorithm.
4.1
217
Algorithm Description
Analysis
Proof. Let L be a sequence of n items. In this proof, we use the same symbols
as in the proof of Theorem 1; e.g., n0 and n1 denote the numbers of items in T0
and T1 , respectively.
Recall that algorithm A1 uses at most n0 + n1 + b2 + b3 + 2S4 + O(1) bins and
an optimal algorithm OP T requires at least max{n0 + max{n1 , b2 }, S} bins.
If n1 S24 , then since all items in T1 are packed into bins that is split into
small square region and an L-shaped region, the average occupation ratio of
every closed bin can be increased from at least 14 to at least 49 (note that the
average occupation ratio of bins with strips of height at most 13 , on the other
hand, reduces from 12 to 25 ); i.e., the worst case ratio is bounded by 52 = 2.5.
Hence, in the following, we assume that n1 > S24 .
If n1 > S24 , we can imaginally suppose that the number of bins split into strips
of height at most 13 each reduces from 2S4 to S4 for some constant < 2, by
218
2+
RA
2
36
(note that if = 2, we have the same bound with Theorem 1). The number of
(imaginal) bins reduces from 2S4 to at most 24
13 if all items are packed into strips
24
(<
)
if
all
items
are
packed into strips of height 14 ; and
of height 13 ; at most 30
17
13
45
24
at most 26 (< 13 ) if all items are packed into strips of height at most 15 . Hence
we have 24
13 for any sequence L; i.e.,
2+
RA
2
22
11 24
= 2+
2.565.
36 13
39
2.25.
Theorem 4. RA
2
Concluding Remarks
In this paper, we proposed two on-line algorithms for solving the two-dimensional
bin packing problem with rotatable rectangular items.
The proposal of a nontrivial lower bound is an important open problem
to be solved (currently best lower bounds on the worst case ratio of an optimal
algorithm for rotatable setting are the same as the one-dimensional case; i.e., it
is at least 1.5401 for unbounded algorithms [7], and at least 1.69103 for bounded
algorithms [5]). An extension to higher dimensional cases (e.g., three-dimensional
box packing) would also be promising.
Acknowledgments: This research was partially supported by the Ministry
of Education, Science and Culture of Japan, and Research for the Future Program from Japan Society for the Promotion of Science (JSPS): Software for
Distributed and Parallel Supercomputing (JSPS-RFTF96P00505).
References
1. D. Blitz, A. van Vliet, and G. J. Woeginger. Lower bounds on the asymptotic
worst-case ratio of on-line bin packing algorithms. unpublished manuscript, 1996.
2. D. Coppersmith and P. Raghavan. Multidimensional on-line bin packing: Algorithms
and worst case analysis. Oper. Res. Lett., 8:1720, 1989.
3. J. Csirik and A. van Vliet. An on-line algorithm for multidimensional bin packing.
Oper. Res. Lett., 13:149158, 1993.
4. M. R. Garey and D. S. Johnson. Computers and Intractability: A Guide for the
Theory of NP-Completeness. Freeman, San Francisco, CA, 1979.
219
1
T2
T3
T1
T0
T3
T2
2/3
2/3
1/2
1/21111111
0000000
1111111
0000000
0000000
1111111
0000000
1111111
1/31111111
0000000
1/3
T1
T0
packed into
individual bins
1/3
1/2
2/3
1/3
1/2
2/3
1
x
(a) Boundaries for the classication of (b) Correspondence of items with strips.
items by the values of x- and y-coordinates.
(a)
(b)
B
1/11+
1/13+
C
D
1/3+
G
H
1/2+
A
1/2+
1/13+ 1/11+
220
5. C. C. Lee and D. T. Lee. A simple on-line bin packing algorithm. J. Assoc. Comput.
Mach., 32:562572, 1985.
6. M. B. Richey. Improved bounds for harmonic-based bin packing algorithms. Discrete
Appl. Math., 34:203227, 1991.
7. A. van Vliet. An improved lower bound for on-line bin packing algorithms. Information Processing Letters, 43:277284, 1992.
Abstract. In a recent paper [J. Boyar and K.S. Larsen, The seat reservation problem, Algorithmica, 25(1999), 403417], the seat reservation
problem was investigated. It was shown that for the unit price problem,
where all tickets have the same price, all fair algorithms are at least
1/2-accommodating, while no fair algorithm is more than (4/5+O(1/k))accommodating, where k is the number of stations the train travels. In
this paper, we design a more dextrous adversary argument, such that we
improve the upper bound on the accommodating ratio to (7/9+O(1/k)),
even for fair randomized algorithms against oblivious adversaries. For
deterministic algorithms, the upper bound is lowered to approximately
.7699. It is shown that better upper bounds exist for the special cases
with n = 2, 3, and 4 seats. A concrete on-line deterministic algorithm
First-Fit and an on-line randomized algorithm Random are also examined for the special case n = 2, where they are shown to be asymptotically
optimal.
?
??
???
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 221231, 2000.
c Springer-Verlag Berlin Heidelberg 2000
222
Introduction
In many train transportation systems, passengers are required to buy seat reservations with their train tickets. The ticketing system must assign a passenger a
single seat when that passenger purchases a ticket, without knowing what future requests there will be for seats. Therefore, the seat reservation problem is
an on-line problem, and a competitive analysis is appropriate.
Assume that a train with n seats travels from a start station to an end
station, stopping at k 2 stations, including the first and the last. The start
station is station 1 and the end station is station k. The seats are numbered
from 1 to n. Reservations can be made for any trip from a station s to a station
t as long as 1 s < t k. Each passenger is given a single seat number when
the ticket is purchased, which can be any time before departure. The algorithms
(ticket agents) may not refuse a passenger if it is possible to accommodate him
when he attempts to make his reservation. That is, if there is any seat which
is empty for the entire duration of that passengers trip, the passenger must be
assigned a seat. An on-line algorithm of this kind is fair.
The algorithms attempt to maximize income, i.e., the sum of the prices of
the tickets sold. Naturally, the performance of an on-line algorithm will depend
on the pricing policies for the train tickets. In [6] two pricing policies are considered: one in which all tickets have the same price, the unit price problem; and
one in which the price of a ticket is proportional to the distance traveled, the
proportional price problem. This paper focuses on fair algorithms for the unit
price problem.
The seat reservation problem is closely related to the problem of optical
routing with a number of wavelengths [1,5,9,14], call control [2], interval graph
coloring [12] and interval scheduling [13]. The off-line version of the seat reservation problem can be used to solve the following problems [8]: minimizing spill
in local register allocation, job scheduling with start and end times, and routing
of two point nets in VLSI design. Another application of the on-line version of
the problem could be assigning vacation bungalows (mentioned in [15]).
The performance of an on-line algorithm A is usually analyzed by comparing
with an optimal off-line algorithm. For a sequence of requests, I, define the competitive ratio of algorithm A applied to I to be the income of algorithm A over
the optimal income (achieved by the optimal off-line algorithm). The competitive
ratio of algorithm A is the infimum over all possible sequences of requests. The
definition of the accommodating ratio of algorithm A [6,7] is similar to that of
the competitive ratio, except that the only sequences of requests allowed are sequences for which the optimal off-line algorithm could accommodate all requests
therein. This restriction is used to reflect the assumption that the decision as
to how many cars the train should have is based on expected ticket demand.
Note that since the input sequences are restricted and this is a maximization
223
Previous Results
First, we note that in the case where there are enough seats to accommodate
all requests, the optimal off-line algorithm runs in polynomial time [10] since it
is a matter of coloring an interval graph with the minimum number of colors.
As interval graphs are perfect [11], the size of the largest clique is exactly the
number of colors needed. Let (k mod 3) denote the residue of k divided by 3,
then we have the following known results:
Lemma 1. [6] Any fair (deterministic or randomized) on-line algorithm for the
unit price problem is at least 1/2-accommodating.
Lemma 2. [6] No fair (deterministic or randomized) on-line algorithm for the
unit price problem (k 6) is more than f (k)-accommodating, where
f (k) = (8k 8(k mod 3) 9)/(10k 10(k mod 3) 15).
Lemma 2 shows that no fair on-line algorithm has an accommodating ratio
much better than 4/5. It is also proven in [6] that the algorithms First-Fit and
Best-Fit are at most k/(2k 6)-accommodating, which is asymptotically 1/2.
Let rA denote the asymptotic accommodating ratio of a fair on-line algorithm A
as k approaches infinity, then the above two lemmas tell that 1/2 rA 4/5.
The lower bound 1/2 is also the upper bound for First-Fit and Best-Fit. This
leaves an open problem whether or not a better algorithm exists [6].
1.2
Our Contributions
In the next section, we lower the asymptotic upper bound on the accommodating ratio from 4/5 to 7/9, and later show that this upper bound holds, even
for fair randomized algorithms against oblivious adversaries. For deterministic
algorithms, the upper bound is further lowered to approximately .7699. Furthermore, it is shown that better upper bounds exist for the special cases with n = 2,
3, and 4 seats. As a positive result, a concrete on-line deterministic algorithm
224
First-Fit is examined with regards to the unit price problem for the special
case n = 2. We show that First-Fit is ck -accommodating, where ck approaches
3/5 as k approaches infinity, and that it is asymptotically optimal. We also examine an on-line randomized algorithm Random for the special case n = 2.
We show that Random is 3/4-accommodating and that is also asymptotically
optimal, in the randomized sense.
Due to the space constraint, we only provide the proofs for some upper bound
results in this extended abstract. Detailed proofs of all other results can be found
in the full manuscript [3].
The upper bound on the accommodating ratio is lowered from 4/5 to 7/9, and
later to approximately .7699.
Theorem 1. No deterministic fair on-line algorithm for the unit price problem
(k 9) is more than f (k)-accommodating, where
when (k mod 6) = 0, 1, 2;
f (k) =
(14k
14(k
mod
6)
+
27)/(18k
18(k
mod 6) + 27),
when (k mod 6) = 3, 4, 5.
Proof. The proof of this theorem is an adversary argument, which is a more
dextrous design based on the ideas in the proof of Lemma 2 in [6]. Assume that
n is divisible by 2. The adversary begins with n/2 requests for the intervals
[3s + 1, 3s + 3] for s = 0, 1, , b(k 3)/3c. Any fair on-line algorithm is able
to satisfy this set of bk/3c n/2 requests. Suppose that after these requests are
satisfied, there are qi seats which contain both interval [3i+1, 3i+3] and interval
[3i + 4, 3i + 6], i = 0, 1, , b(k 6)/3c. Then there are exactly qi seats which
are empty from station 3i + 2 to station 3i + 5.
In the following, rather than considering each qi at a time (as in [6]), we
consider q2i , q2i+1 together for i = 0, 1, , b(k 9)/6c. Let pi = q2i +q2i+1 ( n).
We distinguish between two cases:
Case 1: pi 5n/9; and
Case 2: pi > 5n/9.
In the first case pi 5n/9, the adversary proceeds with n/2 requests for the
interval [6i + 2, 6i + 5] and n/2 requests for the interval [6i + 5, 6i + 8]. For these n
additional requests, the on-line algorithm can accommodate exactly pi of them.
Figure 1(a) shows this configuration. Thus, for those 2n requests whose starting
station s [6i + 1, 6i + 6], the on-line algorithm accommodates n + pi of them.
In the second case pi > 5n/9, the adversary proceeds with n/2 requests for
the interval [6i + 3, 6i + 7], followed by n/2 requests for interval [6i + 2, 6i + 4] and
n/2 requests for the interval [6i + 6, 6i + 8]. For these 3n/2 additional requests,
the on-line algorithm can accommodate exactly 3n/2 pi of them. Figure 1(b)
r1
225
r1
r2
r2
r3
r3
r4
r4
r5
r5
r6
r6
r7
r7
r8
r8
shows this configuration. Thus, for the 5n/2 requests whose starting station
s [6i + 1, 6i + 6], the on-line algorithm accommodates 5n/2 pi of them.
In this way, the requests are partitioned into b(k 3)/6c + 1 groups; each
of the first b(k 3)/6c groups consists of either 2n or 5n/2 requests and the
last group consists of either n (if (k mod 6) {0, 1, 2}) or n/2 (if (k mod 6)
{3, 4, 5}) requests. For each of the first b(k 3)/6c groups, the on-line algorithm
can accommodate up to a fraction 7/9 of the requests therein. This leads to
the theorem. More precisely, let S denote the set of indices for which the first
case happens, and let S denote the set of indices for which the second case
happens. When (k mod 6) {0, 1, 2}, the accommodating ratio of this fair online algorithm applied to this sequence of requests is
P
P
P
P
n+
(n+p )+
(5n/2pi )
n+
14n/9+
35n/18
iS
iS
iS
P i PiS
P
P
n+
n+
2n+
5n/2
2n+
5n/2
iS
iS
P iS P iS
1+
14/9+
35/18
iS
P
P iS
=
1+
iS
2+
iS
5/2
where the last inequality holds because in general a/b = c/d < 1 and a < c
imply that (e + ax + cy)/(e + bx + dy) (e + a(x + y))/(e + b(x + y)). When
(k mod 6) {3, 4, 5}, the ratio is
P
P
P
P
n/2+
(n+p )+
(5n/2pi )
n/2+
14n/9+
35n/18
iS
iS
P i PiS
P
P iS
n/2+
2n+
5n/2
n/2+
2n+
5n/2
iS
iS
P iS P iS
1/2+
14/9+
35/18
iS
P iS
= 1/2+P
2+
5/2
iS
iS
226
When k, the number of stations, approaches infinity, the f (k) in the above
theorem converges to 7/9 .7778. Therefore, for any fair on-line algorithm A,
we have 1/2 rA 7/9. The following theorem shows that rA is marginally
smaller than 7/9.
Theorem 2. Any deterministic fair on-line algorithm A for the unit
price prob
lem (k 9) has its asymptotic accommodating ratio 12 rA 73 22 < .7699.
Proof. This theorem is proven using the following modification to the proof of
Theorem 1. After algorithm A accommodates
the set of bk/3c
n/2 requests, we
most a fraction (7 22)/3. If p0i > (5 22)n/2, then the adversary proceeds
first with p0i requests for the interval [6i + 2, 6i + 8] and then with n/2 p0i
requests for the interval [6i + 2, 6i + 5] and n/2 p0i requests for the interval
[6i + 5, 6i + 8]. Obviously, algorithm A can accommodate only pi p0i of them,
or equivalently, it can only accommodate n + pi p0i requests among the subset
of 2n p0i requests
whose starting station s [6i + 1, 6i + 6], which is at most a
portion of (7 22)/3 again.
An argument similar to that in the proof of Theorem 1
says that the asymptotic accommodating ratio of algorithm A is at most (7 22)/3 .7699. 2
It is unknown if extending this grouping technique to more than two qi s
would lead to a better upper bound.
In this section, we show better upper bounds for small values of n. This also
demonstrates the power of the adversary argument and the grouping technique. However, we note that in train systems, it is unlikely that a train has a
small number of seats. So the bounds obtained here are probably irrelevant for
this application, but they could be relevant for others such as assigning vacation
bungalows.
Trivially, for n = 1, any on-line algorithm is 1-accommodating. As a warm
up, let us show the following theorem for n = 2.
227
228
5(k
mod
6)
+
12)/(7k
7(k mod 6) + 12),
Generally, let fn (k) denote the upper bound on the accommodating ratio of
the deterministic fair on-line algorithms for instances in which there are n seats
and k stations. Let fn denote the asymptotic value of fn (k). So far, we have
f2 = 3/5, f3 3/5, f4 5/7, and fn < .7699 for n 5. Are fn (k) and fn
non-increasing in n? So far we dont know the answer.
It is known that the accommodating ratio for First-Fit cannot be better
than k/(2k 6) when n = 3 [6]. So it is interesting to examine for n = 3, if
there is some algorithm whose asymptotic accommodating ratio is better than
1/2 or not. The problem of finding a better fair on-line algorithm for the unit
price problem, for the general case n 3, is still open.
Randomized Algorithms
In this section, we examine the accommodating ratios for randomized fair online algorithms for the unit price problem, by comparing them with an oblivious
adversary. Some results concerning randomized fair on-line algorithms for the
proportional price problem can be found in [4].
Theorem 7. No randomized fair on-line algorithm for the unit price problem
(k 9) is more than f (k)-accommodating, where
when (k mod 6) = 0, 1, 2;
f (k) =
(14k 14(k mod 6) + 27)/(18k 18(k mod 6) + 27),
when (k mod 6) = 3, 4, 5.
Proof. The oblivious adversary behaves similarly to the adversary in the proof
of Theorem 1. The sequence of requests employed by the oblivious adversary
depends on the expected values of pi = q2i + q2i+1 , which are defined in the
proof of Theorem 1. The oblivious adversary starts with the same sequence as
the adversary in the proof of Theorem 1. Then, for each i = 0, 1, , b(k 9)/6c,
it decides on Case 1 or Case 2, depending on the expected value E[pi ] compared
with 5n/9. By generating corresponding requests, the linearity of expectations
implies that the expected number of requests accommodated by the randomized
2
algorithm is at most a fraction f (k) of the total number of requests.
229
3
4-
This value of 34 is, in fact, a very tight lower bound on Randoms accommodating ratio when there are n = 2 seats.
Theorem 9. For n = 2, Random for the unit price problem (k 3) is at most
f (k)-accommodating, where
f (k) =
1
3
+
.
4 4(k ((k 1) mod 2))
Proof. We first give the request [1, 2] and then the requests [2i, 2i + 2] for i
{1, . . . , b(k 2)/2c}. If k is odd, we then give the request [k 1, k].
Random will place each of these requests, and, since there is no overlap,
each of them is placed on the first seat with probability 12 .
Now we continue the sequence with [2i + 1, 2i + 3] for i {0, . . . , b(k 3)/2c}.
Each interval in this last part of the sequence overlaps exactly two intervals
from earlier and can therefore be accommodated if and only if these two intervals
are placed on the same seat. This happens with probability 12 .
Thus, all requests from the first part of the sequence, and expected about
half of the requests for the last part, are accepted. More precisely we obtain:
k+1((k1) mod 2)
2
+ 12 k1((k1)
2
k ((k 1) mod 2)
mod 2)
= f (k).
The accommodating ratio of 34 for Random with n = 2 seats does not extend
to more seats. In general, one can show that Randoms accommodating ratio is
bounded above by approximately 17/24 = 0.70833. The request sequence used
to prove this is very similar to the sequence given to First-Fit and Best-Fit
in the proof of Theorem 3 in [6], but it is given in a different order, to make the
accommodating ratio lower.
Theorem 10. The accommodating ratio for Random is at most
unit price problem, when k 2 (mod 4).
Proof. See the full manuscript [3].
17k+14
24k ,
for the
230
For other k, not congruent to 2 modulo 4, similar results hold. Using the same
sequence of requests (and thus not using the last stations) gives upper bounds
1
of the form 17kc
24kc2 for constants c1 and c2 which depend only on the value of k
(mod 4).
Acknowledgments
The second author would like to thank Faith Fich for interesting discussions
regarding the seat reservation problem with n = 2 seats. Guo-Hui Lin would like
to thank Professor Guoliang Xue for many helpful suggestions.
References
1. B. Awerbuch, Y. Bartal, A. Fiat, S. Leonardi and A. Rosen, On-line competitive
algorithms for call admission in optical networks, in Proceedings of the 4th Annual
European Symposium on Algorithms (ESA96), LNCS 1136, 1996, pp. 431444.
2. B. Awerbuch, Y. Bartal, A. Fiat and A. Rosen, Competitive non-preemptive call
control, in Proceedings of the 5th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA94), 1994, pp. 312320.
3. E. Bach, J. Boyar, T. Jiang, K.S. Larsen and G.-H. Lin, Better bounds on the
accommodating ratio for the seat reservation problem, PP-2000-8, Department of
Mathematics and Computer Science, University of Southern Denmark (2000).
4. E. Bach, J. Boyar and K.S. Larsen, The accommodating ratio for the seat reservation problem, PP-1997-25, Department of Mathematics and Computer Science,
University of Southern Denmark, May, 1997.
5. A. Bar-Noy, R. Canetti, S. Kutten, Y. Mansour and B. Schieber, Bandwidth allocation with preemption, in Proceedings of the 27th Annual ACM Symposium on
Theory of Computing (STOC95), 1995, pp. 616625.
6. J. Boyar and K.S. Larsen, The seat reservation problem, Algorithmica, 25(4)
(1999), 403417.
7. J. Boyar, K.S. Larsen and M.N. Nielsen, The accommodating function a generalization of the competitive ratio, in Proceedings of the Sixth International Workshop
on Algorithms and Data Structures (WADS99), LNCS 1663, 1999, pp. 7479.
8. M.C. Carlisle and E.L. Lloyd, On the k-coloring of intervals, in Advances in Computing and Information ICCI91, LNCS 497, 1991, pp. 90101.
9. J.A. Garay, I.S. Gopal, S. Kutten, Y. Mansour and M. Yung, Efficient on-line call
control algorithms, Journal of Algorithms, 23 (1997) 180194.
10. F. Gavril, Algorithms for minimum coloring, maximum clique, minimum covering
by cliques, and maximum independent set of a chordal graph, SIAM Journal on
Computing, 1(2) (1972), 180187.
11. T.R. Jensen and B. Toft, Graph coloring problems, Wiley, New York, 1995.
12. H.A. Kierstead and W.T. Trotter, Jr., An extremal problem in recursive combinatorics Congressus Numerantium, 33 (1981) 143153.
13. R.J. Lipton and A. Tomkins, On-line interval scheduling, in Proceedings of the
5th Annual ACM-SIAM Symposium on Discrete Algorithms (SODA94), 1994, pp.
302311.
231
Introduction
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 232241, 2000.
c Springer-Verlag Berlin Heidelberg 2000
233
This section presents the parametric lower bound of any deterministic ordinal
algorithm applied to Q2|ordinal on line|Cmax . We generalize the results in
the following two theorems.
234
h
h
2s+2
2s+1
2s
s+1
3s+2
3s
s+2
4s+3
clow (s) =
4s
s+3
5s+4
5s
s+4
6s+5
s 6s
2s+1
s
265
s [1, 5+
) [1, 1.064),
20
1+ 7 1+ 5
s [ 3 , 2 ) [1.215, 1.618),
s [ 1+25 , 3+6 57 ) [1.618, 1.758),
s [ 3+6 57
, 2) [1.758, 2),
1+ 10
s [2, 2 )
[2, 2.081),
10 1+ 13
s [ 1+
,
) [2.081, 2.303),
2
2
1+ 13 5+ 345
s[
, 10 ) [2.303, 2.357),
2
345 1+ 17
s [ 5+
, 2 ) [2.357, 2.562),
10
1+ 17 3+ 159
s[
,
2
6 ) [2.562, 2.602),
s [ 3+ 6159 , 3+23 6 ) [2.602, 2.633),
Theorem 2. For any s [ 5+20265 , 1+3 7 ), the competitive ratio of any deterministic ordinal algorithm is at least clow (s), where
5s+2
5s
clow (s) =
(3k4)s+(2k2)
4k5
(2k+1)s+k
(2k+1)s
s [ 5+20265 , s2 (2)),
s [s2 (k 1), s1 (k)), k = 3, 4, . . . ,
s [s1 (k), s2 (k)), k = 3, 4, . . . ,
(2k + 1)(2k 3) +
p
(2k + 1)2 (2k 3)2 + 4k(2k + 1)(3k 4)(4k 5)
2(2k + 1)(3k 4)
(2k 1)(2k + 1) +
p
(2k + 1)2 (2k 1)2 + 4k(2k + 1)(3k 1)(4k 1)
2(2k + 1)(3k 1)
235
s1 (k) < s2 (k) and limk s2 (k) = 1+3 7 , so the lower bound is well-defined for
any s 1 through Theorem 1 and 2.
The proofs will be completed by adversary method. We analyze the performance of the best possible algorithm applied to several instances. For easier
reading and understanding, we show Theorem 1 by proving the following Lemmas 1-7 separately.
Lemma 1. For any s [1, 5+20265 ) and any ordinal on-line algorithm A, there
exists some instance such that C A /C OP T clow (s) = (2s + 2)/3.
Proof. If an algorithm A assigns p1 to M1 and p2 , p3 , p4 to M2 , consider the
instance with job set {p1 = p2 = 1, p3 = p4 = 1/s}. It follows that C A
(1 + 2/s)/s, C OP T = 2/s, C A /C OP T (s + 2)/(2s) > (2s + 2)/3. If A assigns
p1 and at least one of p2 , p3 , p4 to M1 , consider the instance with job set {p1 =
1, p2 = p3 = p4 = 1/(3s)}. It implies that C A 1 + 1/(3s), C OP T = 1/s,
C A /C OP T (3s + 1)/3 > (2s + 2)/3. So we know that the competitive ratio
will be greater than (2s + 2)/3 as long as A assigns p1 to M1 .
Now we analyze the case that A assigns p1 to M2 . Firstly, we deduce that both
p2 and p3 cannot be assigned to M2 . Because otherwise consider the instance
{p1 = 1, p2 = p3 = 1/(2s)}, it implies that C A (1 + 1/(2s))/s, C OP T =
1/s, C A /C OP T (2s + 1)/(2s) > (2s + 2)/3. Denote the instance by (I1)
for future use. Secondly, p4 must be assigned to M2 . Otherwise we have the
instance {p1 = p2 = p3 = 1, p4 = (2 s)/s}, which follows that C A 1 + 2/s,
C OP T = 2/s,C A /C OP T = (s + 2)/2 > (2s + 2)/3. Denote the instance by
(I2). Thirdly, if A assigns at least one of p5 and p6 to M2 , consider {p1 =
1, p2 = = p6 = 1/(5s)}. It is clear that C A (1 + 2/(5s))/s, C OP T = 1/s,
C A /C OP T (5s + 2)/(5s) > (2s + 2)/3. Lastly, we are left to consider the case
where A assigns p1 , p4 to M2 and p2 , p3 , p5 , p6 to M1 . At this moment, we choose
{p1 = p2 = p3 = 1, p4 = p5 = p6 = 1/s}. Therefore, C A 2 + 2/s, C OP T = 3/s,
C A /C OP T (2s + 2)/3.
In summary, we have proved for any s in the given interval, any algorithm A
t
u
is such that C A /C OP T (2s + 2)/3.
Lemma 2. For any s [ 1+3 7 , 1+2 5 ) and any ordinal on-line algorithm A,
there exists some instance such that C A /C OP T clow (s) = (2s + 1)/(2s).
Proof. Similarly we can get the result by considering the following series of
instances: {p1 = 1, p2 = = p5 = 1/(4s)}, {p1 = = p4 = 1, p5 = 2s 2},
{p1 = 1, p2 = = p6 = 1/(5s)}, {p1 = = p5 = 1, p6 = 2s 3}, (I1), (I2),
{p1 = p2 = p3 = 1, p4 = p5 = (2 s)/(2s)}, and {p1 = 1, p2 = = p5 =
1/(4s)}.
t
u
Before going to other lemmas, consider two instances. If algorithm A assigns
p1 to M1 , let p1 = 1 and no other job arrives, then we know that C A /C OP T s.
If algorithm A assigns p1 and p2 to M2 , let p1 = 1, p2 = 1/s and no other job
236
Lemma 3. For any s [ 1+2 5 , 2) and any ordinal on-line algorithm A, there
exists some instance such that
(
s+1
CA
s [ 1+25 , 3+6 57 ),
2
clow (s) = 3s+2
3+ 57
C OP T
, 2).
3s s [
6
Proof. If an algorithm A assigns p3 to M1 , consider the instance {p1 = p2 =
1, p3 = s 1}. Then C A /C OP T s. Therefore A should assign p3 to M2 . If
p4 is assigned to M1 , consider the instance {p1 = p2 = 1, p3 = p4 = 1/s}. We
know C A /C OP T (s + 1)/2. If p4 is assigned to M2 , Consider {p1 = 1, p2 =
p3 = p4 = 1/(3s)}. We have C A /C OP T (3s + 2)/(3s). Thus we know that
C A /C OP T min{(s + 1)/2, (3s + 2)/(3s)}. The result can be got by comparing
the two functions.
t
u
Lemma 4. For any s [ 2+23 6 , ) and any ordinal on-line algorithm A, there
exists some instance such that
(
s
CA
s [ 2+23 6 , 1 + 3),
2
clow (s) = s+1
C OP T
3, ).
s s [1 +
Proof. If p2 is assigned to M1 by an algorithm A, the instance {p1 = p2 =
1} deduces C A /C OP T s/2. As illustrated in the content before Lemma 3,
C A /C OP T (s+1)/s, the lemma can be proved by comparing s/2 with (s+1)/s.
t
u
By considering the following two instances: {p1 = 1, p2 = p3 = 1/(s 1)}
and {p1 = p2 = 1, p3 = p4 = 1/s}, we conclude that M1 should process p2 and
M2 should process p1 , p3 , p4in any algorithm A in order to get the desired lower
bound for 2 s < (2 + 2 6)/3. Hence we assume it holds in the rest of the
proof.
Lemma 5. For any s [2, 1+2 13 ) and any ordinal on-line algorithm A, there
exists some instance such that
(
s+2
1+ 10
CA
s
[2,
),
3
2
clow (s) = 4s+3
1+ 10 1+ 13
C OP T
s
[
,
).
4s
2
2
Proof. Similar to the proof of Lemma 4, we can get the results by the instances
{p1 = p2 = 1, p3 = p4 = p5 = (s 1)/3} and {p1 = 1, p2 = = p5 = 1/(4s)}.
t
u
237
Lemma 6. For any s [ 1+2 13 , 1+2 17 ) and any ordinal on-line algorithm A,
there exists some instance such that
(
s+3
13 5+ 345
CA
s [ 1+
, 10 ),
4
2
clow (s) = 5s+4
5+ 345 1+ 17
C OP T
, 2 ).
5s s [
10
Proof. The instances {p1 = p2 = 1, p3 = p4 = p5 = (s 1)/3}, {p1 = p2 =
1, p3 = = p6 = (s 1)/4}, and {p1 = 1, p2 = = p6 = 1/(5s)} can reach
the goal.
t
u
Lemma 7. For any s [ 1+2 17 , 2+23 6 ) and any ordinal on-line algorithm A,
there exists some instance such that
(
s+4
1+ 17 3+ 159
CA
s
[
,
5
2
6 ),
[
,
).
6s
6
3
Proof. By considering the following instances, we can have the results: {p1 =
p2 = 1, p3 = p4 = p5 = (s 1)/3},{p1 = p2 = 1, p3 = = p6 = (s 1)/4},
{p1 = p2 = 1, p3 = = p7 = (s 1)/5} and {p1 = 1, p2 = = p7 = 1/(6s)}.
t
u
Through Lemma 1 to 7, we have finished the proof of Theorem 1. To prove
Theorem 2, we rewrite it as follows:
h
Theorem 3. For any l(l 3) and s 5+20265 , 1+3 7 , the competitive ratio of
any deterministic ordinal algorithm is at least clow (s, l), where
5s+2
s [ 5+20265 , s2 (2)),
5s
[s
(k),
s
(k)),
k = 3, 4, , l,
1
2
(2k+1)s
3s+2
1+ 7
s [s2 (l), 3 ).
4
} is an increasing sequence of k and
Because { (3k4)s+2k2
4k5
limk
3s + 2
(3k 4)s + 2k 2
=
,
4k 5
4
5s+2
265 5+ 145
CA
s [ 5+
,
),
5s
20
15
clow (s) = 3s+2
OP
T
5+
145
1+
7
C
s [ 15 , 3 ).
4
But it is a little bit different from the desired bound described in the theorem,
to reach the goal, we need more careful analysis. By the same arguments as in
238
the proof of Lemma 1 and 2, we only need consider the following assignment: A
assigns p2 , p3 , p5 to M1 , and p1 , p4 , p6 to M2 . Because for other assignments, the
ratio is no less than clow (s) already.
Instead of using the instances which we did in the proof of Lemma 2 to
achieve the lower bound of (3s + 2)/4, we now distinguish three cases according
to the assignment of the next two jobs p7 , p8 .
Case 1 Algorithm A assigns p7 to M2 . By considering the instance {p1 = 1, p2 =
= p7 = 1/(6s)}, we have C A (1 + 1/(2s))/s, C OP T = 1/s, C A /C OP T
(2s + 1)/(2s).
Case 2 Algorithm A assigns p7 , p8 to M1 . By considering the instance {p1 =
p2 = p3 = 1, p4 = = p8 = (2 s)/(4s 1)}, we have C A (5s + 4)/(4s 1),
C OP T = 7/(4s 1), C A /C OP T (5s + 4)/7.
Case 3 Algorithm A assigns p7 to M1 and p8 to M2 . The instance {p1 = 1, p2 =
= p8 = 1/(7s)} deduces that C A 1/s(1 + 3/(7s)), C OP T = 1/s and
C A /C OP T (7s + 3)/(7s).
By straight arithmetic calculation, we have
5s+2
265 3+ 65
s [ 5+
, 10 ) = [ 5+20265 , s2 (2)),
5s
20
5s+4
65 3+ 69
CA
s [ 3+10
, 10
) = [s2 (2), s1 (3)),
7
c
(s,
3)
=
low
OP
T
7s+3
3+
7s s [ 10 69 , 7+21301 ) = [s1 (3), s2 (3)),
C
3s+2
s [ 7+21301 , 1+3 7 ) = [s2 (3), 1+3 7 ).
4
Hence the theorem holds for l = 3. By induction, we assume that the theorem
is true for all l < k, and further we can assume M1 processes {p2 , p3 , p5 , p7 ,
, p2k1 } and M2 processes {p1 , p4 , p6 , , p2k } in any algorithm A with the
desired bound. For l = k we distinguish three cases according to the assignment
of the next two jobs:
Case 1 Algorithm A assigns p2k+1 to M2 . By consider the instance {p1 = 1, p2 =
= p2k+1 = 1/(2ks)}, we have that C A 1/s(1 + 1/(2s)), C OP T = 1/s, and
C A /C OP T (2s + 1)/(2s).
Case 2 Algorithm A assigns p2k+1 , p2k+2 to M1 . By considering {p1 = p2 = p3 =
4
239
1
l = 0,
1+ 13
l
= 1,
s(l) =
4
(l+1)s+l
(l+1)s
ls+2
2l
ls+l1
s [s(l 1), s0 (l)), l = 2, 3, . . . ,
ordinal
ls
(s) = ls+2
c
s [s0 (l),
2l
s(l)), l = 2, 3, . . . ,
s+1
s
1
+
3,
s
where s0 (l) =
l1+
(l1)2 +2l(l1)
l
ls+l1
ls
ls+2
2l .
Proof. We first show that C ordinal /C OP T cordinal (s). Let 1 and 2 be the
completion times of M1 and M2 after processing all jobs by our algorithm respectively, and b be the total processing time of all jobs. Obviously, C OP T b/(s+1)
and C OP T p1 /s, C ordinal = max{1 , 2 }. We prove the ratio by distinguishing
the speed ratio s.
Case 1 s > 1 + 3. In this case, Ordinal chooses Procedure(0). It is clear that
s+1 OP T
b
. This is the desired ratio.
1 = 0 and 2 = sb = s+1
s s+1 s C
Case 2 s [s(0), s(1)). In this case, Ordinal chooses Procedure(1). We prove
the case of n = 3k, the other cases of n = 3k + 1 and 3k + 2 can be proved
similarly. By the rule of the procedure, we have
1 =
k1
X
i=0
2(s + 1) b
2(s + 1) OP T
2b
=
C
,
3
3
s+1
3
1 X
b
3s + 1 OP T
1X
p1
2p1
+
+
C
p3i+1
pi =
.
s i=0
s
3s i=2
3s
3s
3s
k1
2 =
2X
(p3i+1 + p3i+2 + p3i+3 )
3 i=0
k1
(p3i+2 + p3i+3 )
240
2(s+1)
Note that for s [s(0), s(1)), we have 3s+1
, we thus get the desired
3s
3
ratio for this case.
Case 3 s [s(1), s(2)). At this moment, we need analyze Procedure(2). We
prove the case of n = 2k, the another case of n = 2k + 1 can be proved similarly.
In fact, we have
k1
X
s + 1 OP T
b
C
p2i+2
,
1 =
2
2
i=0
X
1 X
b
2s + 1 OP T
1
p1
p1
(p1 +
+
+
C
p2i3 )
pi =
.
s
s
2s i=2
2s 2s
2s
i=0
k2
2 =
s+1
0
s [s (2), s(2)) ,
C OP T
2
where s0 (2) is defined in the theorem.
Case 4 s [s(l 1), s(l)) , (l 3). Consider Procedure(l) as follows. We only
P
prove the
case of n = kl + 1 as above. Obviously we have 1 = k1
i=0 pil+2
P
n
p2 + 1l i=3 pi . To get the ratio between 1 and C OP T , we distinguish two
subcases according to the assignment of the first two jobs in the optimum.
Subcase 1 p1 and p2 are processed in the same machine in the optimal schedule.
Then C OP T (p1 + p2 )/s. Therefore we get
1
ls + 2 OP T
l2
b
(p1 + p2 ) +
C
.
2l
l
2l
Subcase 2 p1 and p2 are not processed in the same machine in the optimal
schedule. Then C OP T p2 and
1
l + s 1 OP T
l2
b
p2 +
C
.
l
l
l
Now we remain to get the ratio between 2 and C OP T . By straight computation, we have
XX
l1X
1
p1
(p1 +
+
pil+j )
pi
s
s
ls i=2
i=1 j=3
k1 l+1
2 =
(l 1)b
1 (l 1)(s + 1) OP T
p1
+
( +
)C
ls
ls
l
ls
ls + l 1 OP T
C
=
.
ls
Note for l 3, and s > 2, we have (ls + l 1)/(ls) > (l + s 1)/l, and (ls +
, ls+2
2)/(ls) > (l + s 1)/l, which imply that C ordinal /C OP T max{ ls+l1
ls
2l }.
The desired ratio can thus be obtained.
241
# h
1+ 7
1 + 10 3 + 33
5 + 265
,2
,
1 + 3, ,
1,
20
3
2
4
the total length of the intervals where the ratio does not match the lower bound
is less than0.7784 and the biggest gap is approximately 0.0520412 which occurs
at s = 35+1128617 1.14132.
References
[1] Agnetis, A.: No-wait flow shop scheduling with large lot size. Rap 16.89, Dipartimento di Informatica e Sistemistica, Universita Degli Studi di Roma La
Sapienza, Rome, Italy, 1989.
[2] Azar, Y., Regev, O.: Online bin stretching. Proc. of RANDOM98, 71-82(1998).
[3] Cho, Y., Sahni, S.: Bounds for list scheduling on uniform processors. SIAM J.
Computing 9, 91-103(1980).
[4] Epstein, L., Noga, J., Seiden, S. S., Sgall, J., Woeginger, G.J.: Randomized online
scheduling for two related machines. Proc. of the 10th ACM-SIAM Symp. on
Discrete Algorithms, 317-326(1999).
[5] He, Y., Zhang, G.: Semi on-line scheduling on two identical machines. Computing,
62, 179-197(1999).
[6] Kellerer, H., Kotov, V., Speranza, M., Tuza, Z.: Semi online algorithms for partition problem. Oper. Res. Letters, 21, 235-242(1997).
[7] Lawler, E. L.: Combinatorial Optimization: Networks and Matroids. Holt, Rinehart and Winston, Toronto, 1976.
[8] Liu, W. P., Sidney, J. B., Van Vliet, A.: Ordinal algorithms for parallel machine
scheduling. Oper. Res. Letters, 18, 223-232(1996).
[9] Liu, W. P., Sidney, J. B.: Bin packing using semi-ordinal data. Oper. Res. Letters,
19, 101-104(1996).
[10] Seiden, S., Sgall, J., Woeginger, G.: Semi-online scheduling with decreasing job
sizes. Technical Report, TU Graz, Austria, 1999.
[11] Sleator, D., Tarjan, R.E.: Amortized efficiency of list update and paging rules.
Communications of ACM 28, 202-208(1985).
Introduction
An agent [7] is a program that can migrate from one node to another, perform
various types of operations at these nodes, and can take autonomous routing
decisions. In contrast with messages that are passive, an agent is an active entity
that can be compared with a messenger. In the past few years, agents have proven
to be an attractive tool in the design of various types of distributed services.
This note examines the use of agents in the design of stabilizing distributed
systems [4]. Conventional stabilizing systems expect processes to run predefined
programs that have been carefully designed to guarantee recovery from all possible bad configurations. However, in an environment like the Internet, where
processes are not under the control of a single administration, expecting every
process to run predefined programs for the sake of stabilization is unrealistic.
This paper explores an alternative mechanism for stabilizing a distributed system, in which processes are capable of accommodating visiting agents.
Consider a network of processes, where each process communicates with its
immediate neighbors using messages. Each process, in addition to sending out its
own state, can read incoming messages, and update its own state (using a set of
rules). The state of the network consists of the states of each of the processes, and
can be classified into the categories legal and illegal. Each update action modifies
the state of the network. A stabilizing system guarantees that regardless of the
starting state, the network reaches a legal state in a bounded number of steps,
and remains in the legal state thereafter. Convergence and closure are the two
cornerstones of stabilizing systems [1].
?
This research was supported in part by the National Science Foundation under grant
CCR-9901391, and by the Alexander Von Humboldt Foundation, Germany while the
author was visiting the University of Dortmund.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 242251, 2000.
c Springer-Verlag Berlin Heidelberg 2000
243
244
Sukumar Ghosh
of the process that the agent is currently visiting. An action consists of one or
more of the following three operations: (i) modification of its briefcase variables,
(ii) modification of the variables of the process that it is currently visiting, and
(iii) identification of the next process to visit. This next process can either be
predetermined, or it can be computed on-the-fly, and will be represented by the
variable next. We will use guarded commands to express the agent program.
A privileged process, in addition to everything that an ordinary process does,
can test for the arrival of an agent as a part of evaluating its guard, and can send
out an agent (with appropriate initialization) as a part of its action. These agents
use the same channel that the messages use. However, agents always receive a
higher priority over messages, as represented by the following assumption:
[Atomicity] At any node, the visit of an agent is an atomic event. Once an
agent arrives at a node, the node refrains from sending or receiving any message
until the agent leaves that node.
Thus from the nodes point of view, an agents visit consists of an indivisible
set of operations. Exceptions may be made for privileged processes only. This
assumption is important to make any total or partial snapshot of the system
state taken by the agent a meaningful or consistent one. For further details
about this issue, we refer the readers to [2]
Mutual Exclusion
245
To monitor the arrival of the agent, we rely on a built-in timeout mechanism that is
an integral part of any message-passing system. We elaborate on this further in the
concluding section.
246
Sukumar Ghosh
It takes only one traversal of the ring by the agent to stabilize the system, where
a traversal begins and ends at process 0. However, if a transient failure hits a process immediately after the agents visit, then the resulting illegal configuration
may persist until the next traversal of the agent.
It is important here to note that unlike the original solution in [4], the space
complexity of the processes as well as the agent is constant. This makes the
solution scalable to rings of arbitrary size. In terms of space complexity, it is
comparable to [5] that uses only three bits per process, and no agents. However,
the communication complexity, defined as the number of bits that are sent (and
received) to move the token from one process to the next, is substantially lower
(in fact, it is 1-bit) in our solution, as opposed to O(N ) bits in [5].
Why cant we get rid of all these, and define a process having a token
only when the agent visits that process? This violates the condition of noninterference. Since the agents are periodically invoked, the system will come to
a standstill during the interim period, when the agent is absent!
4
4.1
247
248
Sukumar Ghosh
Correctness Proof
249
250
Sukumar Ghosh
incorrect flag, it can potentially abandon the task of stabilizing the rest of the
graph during that traversal, and postpone it to the next round.
Theorem 2. In at most N traversals by the agent, the DFS tree returns to a
legal configuration.
Proof. From Lemma 4, it may take at most (N 1) traversals to set all the flags
correctly. From Lemma 3, it follows that within the next traversal, the DFS tree
is reconstructed.
4.3
Complexity Issues
The agent model is stronger than the classical message passing or shared memory
models. Note that we are measuring the stabilization time in terms of the number
of traversals made by the agent, where a traversal begins when the agent leaves
the root, and ends when it returns to the root. It is possible for the agent to be
corrupted in the middle of a traversal, or the state variables of the processes to
be corrupted while the agent is in transit. In such cases, the stabilization time
will be measured after the failure has occurred, and the agent has returned to
the root, which is guaranteed by Lemma 2.
It is feasible to cut down the stabilization time to one traversal with a high
probability by using signatures. The agent, while visiting a process i for the first
time during a traversal, will append its signature to f (i). A failure at that node
will make that signature unrecognizable with a high probability. If the agent
cannot recognize its own signature at any node, then it will consider that node
to be unvisited.
We make another observation while comparing the space complexity of this
solution with those of the more traditional stabilizing spanning tree algorithms
like [3]. In [3], each process has to keep track of the size of the network, that
requires log2 N bits per process. In our solution, the space complexity of each
process is constant - only the agent needs to know the value of N , and will need
log2 N bits in its briefcase. It appears that the N copies of log2 N bits has been
traded by just one copy of log2 N , which is a favorable trade, and contributes
to the scalability. The additional space complexity for the briefcase variable pre
should not exceed log2 bits (where is the maximum degree of a node), since
the choice of a parent is limited to only the immediate neighbors of a node.
Conclusion
251
like the trapping of an agent in the DFS spanning tree algorithm. On the other
hand, we believe that algorithms for controlled recovery, like fault-containment
algorithms, can be painlessly built into an existing distributed system by using
agents.
To send and receive agents, the privileged process relies on a timeout mechanism. In case an agent does not return within the timeout period, it is assumed
to be lost, and a new agent is generated. A side effect is the possibility of multiple agents patroling the network simultaneously. For some protocols (like the
mutual exclusion protocol), this does not pose a problem, except that it wastes
network resources. In others, the agent management system has to take the responsibility of eventually reducing the number of agents to one. A presentation
of such a protocol is outside the scope of this paper.
Since the agents are invoked periodically, a possible criticism is that the
illegal configuration may persist for a long period. However, in the classical
asynchronous self-stabilizing systems also, we do not put an upper bound on the
real time that a process will take to detect or correct an illegal configuration. The
frequency of invocation of the agent will be determined by the failure probability,
the maximum duration for which a faulty behavior can be tolerated, and the
failure history of the system.
One of our future goals is to demonstrate that besides being viable, agents
make it easier to design stabilizing algorithms for distributed system when compared with the classical approach. In non-reactive systems, the agent basically
walks through a distributed data structure, and modifies it as and when necessary. In reactive systems, the critical issues are taking a distributed snapshot
of a meaningful part of the system, and making appropriate alterations to the
states of some processes on-the-fly (i.e., a total or partial distributed reset) such
that legitimacy is restored.
References
1. Arora, A., Gouda, M.G.: Closure and Convergence: A Foundation of Fault-tolerant
Computing. IEEE Transactions on Software Engineering, Volume 19 (1993) 10151027.
2. Chandy K.M., Lamport L.: Distributed Snapshots: Determining Global States of
a Distributed System. ACM Trans. Computer Systems, Volume 3, No.1 (1985)
63-75.
3. N. S. Chen, H. P. Yu, S. T. Huang.: A Self-Stabilizing Algorithm for Constructing
a Spanning Tree. Information Processing Letters, Volume 39 (1991) 147-151.
4. Dijkstra, E.W.: Self-Stabilizing Systems In Spite of Distributed Control. Communications of the ACM, Volume 17 (1974) 643-644.
5. Gouda M.G., Haddix F.: The Stabilizing Token Ring in Three Bits. Journal of
Parallel and Distributed Computing, Volume 35 (1996) 43-48.
6. Katz, S., Perry K.: Self-Stabilizing Extensions for Message-passing Systems. Proc.
9th Annual Symposium on Principles of Distributed Computing (1990) 91-101.
7. Gray Robert, Kotz D., Nog S., Rus D., Cybenko G.: Mobile Agents for Mobile
Computing. Proceedings of the Second Aizu International Symposium on Parallel
Algorithms/Architectures Synthesis, Fukushima, Japan (1997).
Introduction
This research work was partially supported by the National Science Council of the
Republic of China under NSC89-2213-E110-005.
To whom all correspondence should be sent.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 252261, 2000.
c Springer-Verlag Berlin Heidelberg 2000
253
spent to transmit data, (3) computation time: spent to solve the problem. For
the sorting problem, it does not seem that transmission time and computation
time can be reduced. Therefore, to minimize resolution time is the key point to
improve the time complexity.
The probability concept, proposed by Martel [7], is to estimate a proper
broadcasting probability, which can reduce conflict resolution time. Another idea
to reduce conflict resolution time is the layer concept proposed by Yang [13]. To
apply the layer concept for finding the maximum among a set of n numbers [11],
we can improve the time complexity from (log2 n) to (log n) [12]. As some
research has also been done on the BCM when processors have a known order,
our paper is the case that processors have a unkown order.
Some researchers [8,2,4,5,15,10] have solved the sorting algorithm under BCM.
The selection sort can be simulated as a straightforward method for sorting under BCM. The method is to have all processors broadcast their elements and to
find the maximum element repeatedly. In other words, the maximum elements
which are found sequentially form the sorted sequence. Levitan and Foster [5,6]
proposed a maximum finding algorithm, which is nondeterministic and requires
O(log n) successful broadcasts in average. Martel [7], and Shiau and Yang [11]
also proposed maximum finding algorithms, which require O(log n) and (log n)
time slots (including resolution time slots) in average respectively. Thus, the time
required for the straightforward sorting method based on the repeated maximum
finding is O(n log n).
Martel et al. [8] showed the sorting problem can be solved in O(n). They also
proved that the expected time for finding the first k largest numbers is O(k +
log n). They used a modified version of selection sort, i.e., sort by repeatedly
finding maximum based on the results from previous iterations. It can be viewed
as a modified Quicksort. Until now, Martels algorithm is the fastest one for
solving the sorting problem under BCM. However, the constants associated with
O(n) and O(k + log n) bounds proved by Martel et al. [8] are not very tight.
This paper can be divided into two main parts. In the first part, we shall
propose a sorting algorithm under BCM. In the algorithm, we make use of the
maximum finding method [11] to build layers and reduce conflicts. After the
process of maximum finding terminates, we can use these successful broadcasts
to build broadcasting layers logically and then to distribute the data elements
into those logic layers properly. Thus, conflict resolution time can be reduced.
And we shall give the time complexity analysis of our algorithm. The average
number of time slots (including conflict slots, empty slots, and slots for successful
7
broadcast) required for sorting n elements is Tn , where 72 n 12 Tn 23
6 n 6.
Here, it is assumed that each time slot requires constant time. As we can see
that the bound of our time complexity is very tight.
In the second part, we shall generalize the result of the first part. We prove
that the average number of time slots required for finding the first k largest num
bers with a sorted sequence is Tkn , where 72 k + 4 ln (n (k 2)) 12 + 4 ln 2
7
Tkn 23
6 k + 5 ln (n (k 1)) 6 . The time complexity is also very tight. By the
254
We shall first briefly review the maximum finding algorithm under BCM, which
is proposed and analyzed by Shiau and Yang [11]. In the maximum finding
algorithm, each processor holds one data element initially. The key point of the
maximum finding algorithm is to use broadcast conflicts to build broadcasting
layers and then to distribute the data elements into those layers. For shortening
the description in our algorithm, we use the term data element to represent
the processor storing the data element and to represent the data element itself
at different times if there is no ambiguity. When a broadcast conflict occurs, a
new upper layer is built up. Each data element which joins the conflict flips a
coin with equal probabilities. That is, the probability of getting a head is 12 . All
which get heads continue to broadcast in the next time slot, and bring themselves
up to the new upper layer. This new layer becomes the active layer. The others
which get tails abandon broadcasting, and still stay on the current layer. At any
time, only the processors which are alive and on the active layer may broadcast.
In this paper, we shall use the notation hx0 , x1 , x2 , , xt i to denote a linked
list, where xt is the head of the list. Suppose L1 = hx0 , x1 , x2 , , xt i and
L2 = hy0 , y1 , y2 , , yt0 i, then hL1 , L2 i represents the concatenation of L1 and
L2 , which is hx0 , x1 , x2 , , xt , y0 , y1 , y2 , , yt0 i.
The maximum finding algorithm can be represented as a recursive function:
M axf ind(C, Lm ), where C is a set of data elements (processors). Initially, each
processor holds one alive data element and sets an initial linked list Lm = hx0 i,
where x0 = .
Algorithm Maximum-Finding: M axf ind(C, Lm )
Step 1: Each alive data element in C broadcasts its value. Note that a data
element is alive if its value is greater than the head of Lm . Each element
smaller than or equal to the head drops out (becomes dead).
255
Mn Mn1
5
n,
which was proved by Yang et al. [11], rather than the precise asymptotic formula
2
Mn ( 3ln 2 ) ln n (4.74627644 . . . ) ln n. This is done because it is hard to apply
the precise asymptotic formula and its fluctuation into the proof directly.
In our sorting algorithm, each processor holds one data element initially. The
key point of our algorithm is to use successful broadcasts which occur within the
progress of maximum finding to build broadcasting layers and then to distribute
the data elements into those layers properly.
When a series of successful broadcasts occur within the progress of maximum
finding, some correspondent layers are built up. All processors which participated
in the maximum finding are divided into those layers. Each layer performs the
sorting algorithm until the layer is empty or contains exactly one data element.
256
In this section, we shall prove that the average time complexity of our sorting
algorithm is (n), where n is the number of input data elements. Suppose that
257
there are n data elements held by at least n processors in which each processor
holds at most one data element. Let Tn denote the average number of time slots,
including conflict slots, empty slots and slots for successful broadcasts, required
when the algorithm is executed. When there is zero or one input data element
for the algorithm, one empty slot or one slot for successful broadcast is needed.
Thus T0 = 1 and T1 = 1.
If n = 2, we have the following recursive formula:
1
[
T1 ]
2
.
(1)
T2 = M2 + R2 , where R2 =
+ 12 [T0 +T0 ]
We shall explain the above two equations. In the first equation, the first
term M2 is the average number of time slots required for the maximum finding
algorithm while n = 2. The second term R2 is the average number of time slots
required for finishing the sorting after the maximum finding ends.
In the equation for R2 , the first successful broadcast may be either one of the
2 elements randomly, each case having probability 12 . The subterm of first term,
T1 , arises when the first successful broadcast is the largest element. Thus, the
layer between x0 = and the largest element contains one element, which is
the second largest element, and needs T1 time slots.
In second term, the subterm, [T0 + T0 ], arises when the first successful broadcast is the second largest element and the second successful broadcast is the
largest element. Thus, the layers between x0 = , the second and the largest
element are both empty and needs T0 time slots in both layers.
Shiau and Yang [11] have proved that M2 = 5, then we have
1
13
1
.
T2 = 5 + { [1] + [1 + 1]} =
2
2
2
If n = 3, we also have the following recursive formula:
1
T2 ]
3[
T3 = M3 + R3 , where R3 = + 13 [T0 +T1 ] .
1
+ 3 [R2 +T0 ]
(2)
In the equation for R3 , the first successful broadcast may be any one of the
3 elements randomly, each case having probability 13 . The subterm of first term,
T2 , arises when the first successful broadcast is the largest element. Thus, the
layer between x0 = and the largest element contains two elements, which is
the second and third largest element, and needs T2 time slots for sorting.
In the second term, the subterm, [T0 + T1 ], arises when the first successful
broadcast is the second largest element and the second successful broadcast is
the largest element. Thus, the layer between the second and the largest element
is empty and needs T0 time slots. And the layer between x0 = and the
second largest element contains one element and needs T1 time slots.
In third term, the subterm, [R2 +T0 ], arises when the first successful broadcast
is the third largest element. Thus, after the first successful broadcast, there are
two possible successful broadcast sequences, each having probability 12 . The first
258
case is that the second successful broadcast is the largest data element. Thus, the
layer between the first two successful broadcasts contains only one data element
which is the second largest data element. The second case is that the second successful broadcast is the second largest data element, and the largest data element
will be broadcast in the third successful broadcast. Thus, the layers between the
first, second and third successful broadcasts, are both empty. Comparing with
R2 in Eq.(1), we can find that the above two cases are equivalent to those in R2 .
Thus, R2 represents the number of time slots required for the layers bounded by
the sequence of successful broadcasts Lm in finding the maximum. Note that the
time slots required for Lm is counted in M3 . Finally, the layer between x0 =
and the third largest element is empty and needs T0 time slots.
Generalizing Eq.(2), we have
1
n[
n [T0
+ n1 [R2
Tn = Mn + Rn , where Rn = +
+ n1 [Rk1
1
+ n [ Rn1
Tn1 ]
+Tn2 ]
+Tn3 ]
+Tnk ]
+T0 ]
(3)
1
[
Tn1 ]
+Tn2 ]
+ n1 [T0
+Tn3 ]
+ n [(T2 M2 )
.
Tn = Mn + +
[(T
M
)
+T
]
+
k1
k1
nk
n
1
+ n [(Tn1 Mn1 ) +T0 ]
259
(4)
Lemma 1.
X
1
1
1
Tn T2 =
(Mk Mk1 ).
n+1
3
k+1
3kn
Lemma 2.
X
1
1
1
1
1
)
(Mk Mk1 ) 5(
).
4(
3 n+1
k+1
3 n+1
3kn
Theorem 1.
1
7
23
7
n Tn
n .
2
2
6
6
n1
[
Tk1
]
n2
+Tk2
]
+ [T00
n3
2
+Tk3 ]
+ [(T2 M2 )
n(k2)
k3
1
M
)
+T
]
+
[(T
k3
2
k3
.
Tkn = Mn +
n(k1)
k2
n
Mk2 ) +T1
]
+ [(Tk2
k1
Mk1 ) +0]
+ [(Tk1
M
)
+0]
+
[(T
k
k
n1
Mn1 ) +0]
+ [(Tk
In the above equations, the first term, Mn , is the average number of time
slots required for the maximum finding algorithm on n data elements.
The second term, n1 , is one of the cases that each data element in Mn successfully broadcasts its value. Then, the first successful broadcast may be one of
the n elements randomly, each case having probability n1 .
260
n1
The third term Tk1
is that the first successful broadcast is the largest
data element in the progress of the maximum finding algorithm. Since we have
the largest data element, we need to find the k 1 largest data elements among
n1
.
the n 1 data elements, which is presented by Tk1
0
n2
The fourth term T0 + Tk2 is that the first successful broadcast is the
second largest data element. Obviously the second successful broadcast is the
largest data element. T00 represents a N U LL layer because it is empty between
n2
represents
the largest and second largest data elements. And the subterm Tk2
that we need to find the k 2 largest data elements among n 2 data elements
after the largest and second
broadcasting.
k1largest data elements
Mk1 ) + 0 is that the first successful broadcast
The (k +3)th term (Tk1
k1
Mk1 ) is the number of time slots
is the kth largest data element. Thus, (Tk1
required for finishing the sorting on the k 1 elements after the maximum is
found. And since the first k, k 1, largest elements was found in the layers
upper than the first successful broadcast element, thus it dose not need any time
slots for sorting data elements in the lower layer.
We omit the explanation of the rest of the equation, since it is quite similar
to the above cases.
Lemma 3. Let Ln = Mn Mn1 , then
Tkn Tkn1 = Ln +
1
1
1
Ln1 +
Ln2 + +
Ln(k1) .
n
n1
n (k 2)
Lemma 4.
Tkk + 4 [ln (n (k 2)) ln 2] Tkn Tkk + 5 ln (n (k 1)) .
Theorem 2.
7
k + 4 ln (n (k 2))
2
1
+ 4 ln 2
2
Tkn
7
23
k + 5 ln (n (k 1)) .
6
6
Martel et al. [8] showed that the expected time for finding the first k largest
numbers is O(k + log n). However, the constants associated with O(k + log n)
bounds proved by Martel et al. [8] are not very tight. And they did not point out
the relationship between the two special cases maximum finding and sorting.
By Theorem 2, we prove that the average time complexity of finding the first
k numbers is (k + log (n k)). And the connection between the two special
cases, maximum finding and sorting, is built by the analysis of our generalization.
Conclusion
The layer concept [13] can help us to reduce conflict resolution when an algorithm
is not conflict-free under BCM. In this paper, we apply the layer concept to solve
261
the sorting problem and get a tighter bound. The total average number of time
slots, including conflict slots, empty slots and slots for successful broadcasts, is
(n). And the generalization of our sorting algorithm can be analyzed that the
average time complexity for selecting k largest numbers is (k + log (n k)).
On the high level view, our sorting algorithm has a similar approach as that
proposed by Martel et al. [8]. On the low level view, our algorithm is based on
the layer concept, thus it can be analyzed easily and a tighter bound can be
obtained.
We are interested in finding other maximum finding algorithms which can be
applied into our sorting approach and can get better performance. That is one
of our future works. And the other future work is to find the native bound of
the sorting approach under BCM.
References
1. Capetanakis, J.I.: Tree algorithms for packet broadcast channels. IEEE Transactions on Information Theory, 25(5) (May 1997) 505515
2. Dechter, R., Kleinrock, L.: Broadcast communications and distributed algorithms.
IEEE Transactions on Computers, 35(3) (Mar. 1986) 210219
3. Grabner, P.J., Prodinger, H.: An asymptotic study of a recursion occurring in
the analysis of an algorithm on broadcast communication. Information Processing
Letters, 65 (1998) 8993
4. Huang, J.H., Kleinrock, L.: Distributed selectsort sorting algorithm on broadcast
communication. Parallel Computing, 16 (1990) 183190
5. Levitan, S.: Algorithms for broadcast protocol multiprocessor. Proc. of 3rd International Conference on Distributed Computing Systems, (1982) 666671
6. Levitan, S.P., Foster C.C.: Finding an extremum in a network. Proc. of 1982 International Symposium on Computer Architechure, (1982) 321325
7. Martel, C.U.: Maximum finding on a multi access broadcast network. Information
Processing Letters, 52 (1994) 713
8. Martel, C.U., Moh, M.: Optimal prioritized conflict resolution on a multiple access
channel. IEEE Transactions on Computers, 40(10) (Oct. 1991) 11021108
9. Martel, C.U., Moh W.M., Moh T.S.: Dynamic prioritized conflict resolution on multiple access broadcast networks. IEEE Transactions on Computers, 45(9) (1996)
10741079
10. Ramarao, K.V.S.: Distributed sorting on local area network. IEEE Transactions
on Computers, C-37(2) (Feb. 1988) 239243
11. Shiau, S.H., Yang, C.B.: A fast maximum finding algorithm on broadcast communication. Information Processing Letters, 60 (1996) 8196
12. Shiau, S.H., Yang, C.B.: The layer concept and conflicts on broadcast communication. Journal of Chang Jung Christian University, 2(1) (June 1998) 3746
13. Yang, C.B.: Reducing conflict resolution time for solving graph problems in broadcast communications. Information Processing Letters, 40 (1991) 295302
14. Yang, C.B.,Lee, R.C.T., Chen, W.T.: Parallel graph algorithms based upon broadcast communications. IEEE Transactions on Computers, 39(12) (Dec. 1990) 1468
1472
15. Yang, C.B., Lee, R.C.T., Chen, W.T.: Conflict-free sorting algorithm broadcast
under single-channel and multi-channel broadcast communication models. Proc. of
International Conference on Computing and Information, (1991) 350359
Introduction
The reconfigurable mesh [11] or RMESH combines the advantages of the mesh
with the power and flexibility of a dynamically reconfigurable bus structure.
Recently, efficient algorithms for the RMESH have been developed for graph
problems [2,3,15,12], image problems [8,12], geometric problems [6,11,12], and
some other fundamental problems in computer science [2,4,7,?].
The problem of list ranking is to determine the rank of every node in a given
linked list of n nodes. The rank of a node is defined to be the number of nodes
following it in the list. In weighted list ranking every node of a linked list has
a weight. The problem of weighted list ranking is to compute, for every node
in the list, the sum of weights of the nodes following it in the list. Since the
unweighted version is a special case of the weighted version of the list ranking
problem, we will solve the weighted version.
The list ranking problem has been studied on RMESH. On an RMESH of
size n n, an O(log n) time algorithm for the list ranking problem using a
technique called pointer jumping [16] is implicit in [11,14]. Using a complicated
algorithm, Olariu,
Schwing, and Jhang [14] showed that the problem can be
log n
time on an RMESH of size mn n where m n. Hayashi,
solved in O log
m
Nakano, and Olariu proposed a deterministic list ranking algorithm [5] running in
O(log n) time and a randomized one running in O(1) time, both on an RMESH
of size n n.
?
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 262271, 2000.
c Springer-Verlag Berlin Heidelberg 2000
263
RMESH
y 1
Processor
2
Switch
3
Reconfigurable
Bus
264
2
6
3
5
7
18
4
8
17
9
16
N
13
14
12
19
15
11
20
24
W
10
E
D
21
23
25
22
26
27
Previous Algorithms
265
266
stages and each stage obtains a smaller shortcut using the shortcut of the previous stage. If we allocate k k processors for each node in the list, we can have
k parallel buses between two nodes (which are called a bundle of k buses). The
idea is that as the shortcuts get smaller, larger bundles of buses are available.
And when a larger bundle is available, a much smaller shortcut can be obtained
in the next stage. Initially, a bundle consisting of 2 buses are available.
We need a few definitions here. A k-sample of a linked list L is a set of nodes
obtained by retaining every
k-th
node in L, that is, nodes whose unweighted
k.
Let
L/k denote the shortcut consisting of a
ranks are 0, k, 2k, . . ., n1
k
k-sample.
linked list
bus configuration
k log k)
. Let K(t) be
an integer such
K(t+1) log(k+1))
267
In this section we show how we can reduce the number of processors to O(n1+ )
by adopting an RMESH of high dimensions. First, fix a constant d, which is a
natural number larger than 1. We will implement the deterministic and randomized algorithms on a (d+1)-dimensional RMESH of size cn1/d cn1/d cn1/d
for some constant c, which consists of cd+1 n1+1/d processors.
We first enhance each processor in RMESH so that there are C ports in
each direction where C is a constant. We will call a processor enhanced in such
a way a superprocessor. For example, in 2-D, a processor has C ports in each
direction named E(1), E(2), . . . , E(C), W (1), . . . , S(C). It should be noted that
this is not a drastic diversion from the definition of RMESH since a constant
number of regular processors can simulate a superprocessor if C is a constant. We
will call an RMESH consisting of superprocessors a super-RMESH. We denote
by SPi,j,...,k the superprocessor at location (i, j, . . . , k) in a super-RMESH. Also,
we denote by SP (i) the superprocessor whose index is i in the snake-like ordering
in a super-RMESH.
We assume that the input is given in the first n superprocessors, indexed in
the snake-like ordering, of a super-RMESH of size n1/d n1/d n1/d , which
can be simulated by an RMESH of size cn1/d cn1/d cn1/d for some
constant c.
Given a list L, a subset S of L is a d-good ruling set of L if
1. S includes the last node of L,
2. S contains at most n3/2d nodes, and
3. no p-sublist for p S contains more than 2(d1)/d nodes.
Each of our two algorithms consists of two parts. In the first part, we obtain
the d-good ruling set of L using the bus embedding. In the second part, we rank
L recursively, using the d-good ruling set obtained in the first part. We will
describe the second part first.
268
To use recursion in the second part, we extend the list ranking problem
slightly so that a number of lists L1 , L2 , . . . , Lm are to be individually ranked,
where the total number of nodes do not exceed n. On RMESH, the nodes are
given one node per processor in processors P (1) through P (n) so that the nodes
in each list appear consecutively in the snake-like ordering with the boundaries
between the lists marked.
We assume, for simplicity, that exactly n nodes are given in the extended
list ranking problem. Let sj and tj be the first and the last node in each Lj ,
respectively. To reduce the problem to normal list ranking, we connect tj with
sj+1 for each 1 j < m. Then we rank the resulting list by a normal list ranking
algorithm. To obtain ranks in each list, we subtract the rank of tj from the rank
of each node in Lj . The details are omitted.
4.1
Since the second parts of the deterministic and the randomized algorithms are
analogous, we describe the second part of the deterministic algorithm only.
Assume we have a shortcut S of L. We first show that if we can rank all
p-sublists for p S in time T and rank the shortcut S in time T 0 , then we can
rank L in time T + T 0 + D, where D is a constant independent of L. First, rank
the p-sublists for p S in time T . Let sp be the first node in a p-sublist. Let
rp (sp ) be the weighted rank of sp in the p-sublist and let Wp be rp (sp ) + w,
where w is the weight of sp . Rank S using Wp as the weight of p in S. Let Rp
be the computed rank of p. Now, use packing to move the nodes in a sublist to
adjacent superprocessors and broadcast Rp among the superprocessors holding
the nodes in the p-sublist. Now, the rank of node i in the p-sublist is rp (i) + Rp ,
where rp (i) is the rank of node i in the p-sublist.
Assume that d = 2. We have n nodes on a super-RMESH of size n1/2
n1/2 n1/2 . Assume that we have obtained a 2-good ruling set S in the first
part. Now, S contains at most n3/4 nodes and each p-sublist for p S contains
at most n1/2 nodes. All the p-sublists can be ranked simultaneously in O(log n)
time by distributing the sublists to n1/2 submeshes of size n1/2 n1/2 using the
deterministic algorithm in [5].
All we have to do now is to rank S. We apply the d-good ruling set algorithm
to S and obtain a 2-good ruling set S 0 of S. Now, the p0 -sublists for p0 S 0
can be ranked as before using the deterministic algorithm in [5]. S 0 contains at
most n9/16 nodes. To rank S 0 , we apply the d-good ruling set algorithm once
again to S 0 and obtain a 2-good ruling set S 00 of S 0 . Now, S 00 contains at most
n27/64 < n1/2 nodes and S 00 and the sublists of S 0 and S 00 can be ranked using
the deterministic algorithm in [5]. The time for the second part is O(log n).
Assume that d > 2. Assume that we have obtained the d-good ruling set
S in the first part. Each p-sublist for p S contains at most n(d1)/d nodes
and hence all the sublists can be recursively ranked simultaneously in O(log n)
time by distributing the sublists to a d-dimensional super-RMESH of size n1/d
n1/d n1/d . Also, S has at most n3/2d < n(d1)/d nodes and can be ranked
recursively. The time for the second part is O(log n).
4.2
269
Bus Embedding
The main difficulty in generalizing the list ranking algorithms is that the bus
embedding itself is not easy in high dimensions. To construct a bus embedding,
we develop a new technique called path embedding, which can be used along
with any data movement algorithm. By a data movement algorithm we mean
an algorithm where a data item is treated as one object and nothing is assumed
about its internal representation. The number of processors increases slightly
with path embedding but the technique introduces only constant factor in the
number of processors if the data movement algorithm works in constant time.
Algorithm Path-Embed
Stage 1. Let C be the number of steps of the data movement algorithm.
Run the data movement algorithm while using the j-th ports in each direction of a superprocessor in the j-th step of the data movement algorithm.
Each superprocessor retains the bus configuration and remembers every bus
operation it performs.
Stage 2. If a superprocessor read an item in the j-th step and wrote the
item in the k-th step, j < k, the superprocessor connects its X(j) and Y (k)
ports together, where X(j) is the direction it read the node in the j-th step
and Y (k) is the direction it wrote the node in the k-th step. Repeat for all
possible values of j and k.
Now we can implement the bus embedding in constant time as follows. We
assume that there are C ports in each direction of a superprocessor, where C is
the number of steps of the sorting algorithm.
Algorithm Embed
Step 1. Identify the first node in the list by sorting the nodes (i, l(i)) by
l(i) and checking for the unique integer between 1 and n that is not present
among the l(i)s. Let (s, l(s)) be the first node.
Step 2. Temporarily replace the last node (t, t) by (t, s), that is l(t) = s.
Run algorithm Path-Embed with the sorting algorithm that sorts the nodes
(i, l(i)) by l(i) (into the snake-like ordering).
Step 3. For each i that is not the first or the last node in the list, SP (i)
connects its X(1) port and Y (C) port, where X(1) is the direction where it
wrote its node, (i, l(i)), in the first step of the sort and Y (C) is the direction
it read i in the final step of the sort.
4.3
270
X(1)
SPE( ki)
F B
Y(C)
X(1)
Y(C)
X(1)
Y(C)
Our randomized d-good ruling set algorithm on a (d + 1)-dimensional superRMESH is the following. Note that Step 2 can be performed in constant time
using the bus embedding and packing.
Step 1. Each SP (i) randomly selects node i as a sample in S with probability
n(54d)/4d .
Step 2. Check whether S is a d-good ruling set. If S is a d-good ruling set,
the algorithm terminates; otherwise repeat Step 1.
The proofs of the following theorems are omitted.
271
References
1. Chen, Y. C. and Chen, W. T.: Constant Time Sorting on Reconfigurable Meshes.
IEEE Transactions on Computers. Vol. 43, No. 6 (1994) 749751
2. Chen, G. H. and Wang, B. F.: Sorting and Computing Convex Hull on Processor
Arrays with Reconfigurable Bus System. Information Science. 72 (1993) 191206
3. Chen, G. H., Wang, B. F., and Lu, C. J.: On Parallel Computation of the Algebraic
Path Problem. IEEE Transactions on Parallel and Distributed Systems. Vol. 3, No.
2, Mar. (1992) 251256
4. Hao, E., MacKenzie, P. D., and Stout, Q. F.: Selection on the Reconfigurable Mesh.
Proc. of fourth Symposium on the Frontiers of Massively Parallel Computation.
(1992) 3845
5. Hayashi, T., Nakano, K., and Olariu, S.: Efficient List Ranking on the Reconfigurable Mesh, with Applications. Proc. of 7th International Simposium on Algorithms and Computation, ISAAC96. (1996) 326-335
6. Jang, J. and Prasanna, V. K.: Efficient Parallel Algorithms for Geometric Problems
on Reconfigurable Mesh. Proc. of International Conference on Parallel Processing.
3 (1992) 127130
7. Jang, J. and Prasanna, V. K.: An Optimal Sorting Algorithm on Reconfigurable
Mesh. International Parallel Processing Symposium. (1992) 130137
8. Jenq, J. F. and Sahni, S.: Reconfigurable Mesh Algorithms for the Hough Transform. Proc. of International Conference on Parallel Processing. 3 (1991) 3441
9. Li, H. and Maresca, M.: Polymorphic-torus Network. IEEE Transactions on Computers. 38 (1989) 13451351
10. Maresca, M.: Polymorphic Processor Arrays. IEEE Transactions on Parallel and
Distributed Systems. 4 (1993) 490506
11. Miller, R., Prasanna Kumar, V. K., Reisis, D. I., and Stout, Q. F.: Parallel Computations on Reconfigurable Mesh. Technical Report # 229. USC, Mar. (1922)
12. Miller, R. and Stout, Q. F.: Efficient Parallel Convex Hull Algorithms. IEEE Transactions on Computer. Vol 37, No. 12, Dec. (1988) 16051618
13. Niven, I., Zuckerman, H. S., and Montgomery, H. L.: An Introduction to the Theory
of Numbers, Fifth Edition. (1991) John Wiley & Sons
14. Olariu, S., Schwing, J. L., and Jhang, J.: Fundamental Algorithms on Reconfigurable Meshes. Proc. of 29th Annual Allerton Conference on Communication, Control, and Computing. (1991) 811820
15. Wang, B. F. and Chen, G. H.: Constant Time Algorithms for the Transitive Closure
and Some Related Graph Problems on Processor Arrays with Reconfigurable Bus
System. IEEE Transactions on Parallel and Distributed Systems. Vol. 1, No. 4,
Oct. (1990) 500507
16. Wylie, J. C.: The Complexity of Parallel Computation. Doctoral Thesis, Cornell
University. (1979)
Introduction
273
Preliminaries
Throughout this paper we use the standard language of graph theory, slightly
adapted for our convenience. A graph G is defined by its set of nodes V (G),
and its set of edges E(G). All considered graphs are simple and undirected.
The size of a graph G is the number of its nodes |V (G)|; the edge count is the
number of its edges |E(G)|. A graph H is a subgraph of G, denoted H G, iff
V (H) V (G), E(H) E(G). Subgraph H G is a spanning subgraph of G,
denoted H v G, iff V (H) = V (G).
A complete graph on r nodes is denoted Kr . The term k-partite graph is
synonymous with k-coloured. We write bipartite for 2-partite, and tripartite
for 3-partite. Complete bipartite and tripartite graphs are denoted Krs and
Krst , where r, s, t are sizes of the colour classes. Graph K2 = K11 (short for K1,1 )
2 (an empty graph on two nodes) a
is a single edge; we call its complement K
nonedge. Graph K3 = K111 is called a triangle; graph K121 is called a diamond
(see Figure 2). We call a k-partite graph equi-k-partite, if all its colour classes
are of equal size.
The density of a graph is the ratio of its edge count to the edge count of a
complete graph of the same size: if G v Kn , then
n
.
dens(G) = |E(G)|/|E(Kn )| = |E(G)|/
2
274
Alexandre Tiskin
b
275
t
u
t
u
The given form of the Regularity Lemma is slightly weaker than the standard
one. In particular, we allow to remove a small number of nodes and edges
from the graph G, whereas the standard version only allows to remove a small
276
Alexandre Tiskin
Packing Tripods
277
its three edges must come from triangles representing three different tripods;
denote these tripods (i, j, k 0 ), (i, j 0 , k), (i0 , j, k), where i 6= i0 , j 6= j 0 , k 6= k 0 .
Consider the differences i0 i, j 0 j, k 0 k, all of which are non-zero. At least
two of these three differences must have the same sign; without loss of generality
assume that i0 i, j 0 j are of the same sign. Thus, we have either i0 < i, j 0 < j,
or i0 > i, j 0 > j. In both cases, the tripods (i, j 0 , k), (i0 , j, k) collide. Hence,
our assumption must be false, and the triangle {(ui , vj ), (vj , wk ), (wk , ui )} not
representing any tripod cannot exist. Therefore, no triangles in G can share an
edge in other words, G is diamond-free.
t
u
Thus, tripod packing graphs are equitripartite, triangle-covered and diamondfree. Note that these graph properties are invariant under any permutation of
graph nodes within colour classes, whereas the property of a tripod packing
being overlap-free is not invariant under permutation of indices within each dimension. Hence, the converse of Lemma 2 does not hold. However, even the loose
characterisation of tripod packing graphs by Lemma 2 is sufficient to obtain our
results.
The following theorem is a special case of an observation attributed to Szemeredi by Erd
os (see [Erd87], [CG98, p. 48]). Since Szemeredis proof is apparently unpublished, we give an independent proof of our special case.
Theorem 3. Consider an equitripartite, triangle-covered, diamond-free graph of
size n. The maximum density of such a graph tends to 0 as n .
Proof. Suppose the contrary: for some constant d > 0, and for an arbitrarily
large n (i.e. for some n n0 for any n0 ), there is a tripartite, triangle-covered,
diamond-free graph G of size n, such that dens3 (G) d > 0. The main idea
of the proof is to apply the Regularity Lemma and the Blow-up Lemma to the
graph G. This will allow us to distil from G a new graph, also triangle-covered
and diamond-free, with tripartite density higher than dens3 (G) by a constant
factor . Repeating this process, we can raise the density to 2 d, 3 d, etc., until
the density becomes higher than 1, which is an obvious contradiction.
278
Alexandre Tiskin
Let us now fill in the details of the distilling process. We start with a
constant , 0 < < 1; its precise numerical value will be determined later.
Select a constant > 0, such that (d )3 /5, as required by the Blow-up
Lemma. By the Regularity Lemma, graph G admits an -regular partitioning,
the order of which is constant and independent of the size of G. Denote by M
the d-map of this partitioning, and let : G M be the mapping function.
Consider the superedge subgraph 1 (E(M )). Let G4 v 1 (E(M )) v G
be a spanning subgraph of G, consisting of all triangles completely contained in
1 (M ); in other words, each triangle in G4 is completely contained in some supertriangle of G. We claim that G4 contains a significant fraction of all triangles
(and, hence, of all edges) in G. Indeed, the bipartite density of a super-nonedge is
by definition at most d, hence the super-nonedge subgraph has at most 3d n2
edges. Every triangle not completely contained in 1 (E(M )) must have at least
one edge in the super-nonedge subgraph; since triangles in G are edge-disjoint,
the total number of such triangles cannot exceed 3d n2 . By initial assumption,
the total number of triangles in G is at least d n2 , therefore the number of
triangles in G4 must be at least (1 3)d n2 . By selecting a sufficiently small
, we can make the number of triangles in G4 arbitrarily close to d n2 . For
the rest the proof, let us fix the constant within the range 0 < < 1/12, e.g.
= 1/24. As a corresponding we can take e.g. = (d/2)3 /5 = d3 /(5 483 ).
It only remains to observe that, since graph G is diamond-free, its d-map
M is diamond-free by the Blow-up Lemma. By Lemma 1, dens(M ) 3/4. This
means that among all superpairs of G, the fraction of superedges is at most 3/4.
All edges of G4 are contained in superedges of G, therefore the average density
of a superedge in G4 is at least 4/3dens(G4 ). In particular, there must be some
superpair in G4 with at least such density. Since G4 consists of edge-disjoint
supertriangles, this superpair is contained in a unique supertriple F G4 , with
dens3 (F ) 4/3 dens3 (G4 ) 4/3 (1 3)d =
4/3 (1 3 1/24)d = 7/6 d.
In our previous notation, we have = 7/6 > 1.
We define the supertriple F to be our new distilled equitripartite trianglecovered diamond-free graph. Graph size has only been reduced by a constant
factor, equal to the size of the -partitioning. By taking the original graph G
large enough, the distilled graph F can be made arbitrarily large. Its density
dens3 (F ) d = 7/6 d > d. By repeating the whole process, we can increase
the graph density to (7/6)2 d, (7/6)3 d, . . . , and eventually to values higher
than 1, which contradicts the definition of density (in fact, values higher than
3/4 will already contradict Lemma 1). Hence, the initial assumption of existence
of arbitrarily large equitripartite triangle-covered diamond-free graphs with constant positive density must be false. Negating this assumption, we obtain our
theorem.
t
u
The solution of Stein and Szab
os problem is now an easy corollary of Lemma 2
and Theorem 3.
279
Conclusion
We have proved that the density of a tripod packing must be infinitely small
as its size tends to infinity. Since the Regularity Lemma only works for dense
graphs, the question of determining the precise asymptotic growth of a maximum
tripod packing size remains open.
Nevertheless, we can obtain an upper bound on this growth. Let d be the
maximum density of tripod packing of size n. In our proof of Theorem 3, it is
established that the maximum density of tripod packing of size m(d3 /(5483 ))n
is at most 6/7 d, where m() is the function defined by the Regularity Lemma.
5
In [ADL+ 94, DLR95] it is shown that for tripartite graphs, m(t) 4t . These
two bounds together yield a desired upper bound on d as a function of n, which
turns out to be a rather slow-growing function. By applying the descending
technique from [SS94], we can also obtain an upper bound on the size of a
maximal r-pod, which can tile (without any gaps) an r-dimensional space. The
resulting bound is a fast-growing function of r. In [SS94] it is conjectured that
this bound can be reduced to r 2 for any r 4. The conjecture remains open.
Acknowledgement
The author thanks Sherman Stein, Chris Morgan and Mike Paterson for fruitful
discussion.
References
[ADL+ 94] N. Alon, R. A. Duke, H. Lefmann, V. R
odl, and R. Yuster. The algorithmic aspects of the regularity lemma. Journal of Algorithms, 16(1):80109,
January 1994.
[CG98]
F. Chung and R. Graham. Erd
os on Graphs: His Legacy of Unsolved Problems. A K Peters, 1998.
[Die00]
R. Diestel. Graph Theory. Number 173 in Graduate Texts in Mathematics.
Springer, second edition, 2000.
[DLR95]
R. A. Duke, H. Lefmann, and V. R
odl. A fast approximation algorithm for
computing the frequencies of subgraphs in a given graph. SIAM Journal
on Computing, 24(3):598620, 1995.
[Erd87]
P. Erd
os. Some problems on finite and infinite graphs. In Logic and Combinatorics. Proceedings of the AMS-IMS-SIAM Joint Summer Research Conference, 1985, volume 65 of Contemporary Mathematics, pages 223228,
1987.
[Gal98]
D. Gale. Tracking the Automatic Ant, and Other Mathematical Explorations. Springer, 1998.
[Gou88]
R. Gould. Graph Theory. The Benjamin/Cummings Publishing Company,
1988.
280
Alexandre Tiskin
[Kom99]
[KS96]
[SS94]
[Ste95]
J. Koml
os. The Blow-up Lemma. Combinatorics, Probability and Computing, 8:161176, 1999.
J. Koml
os and M. Simonovits. Szemeredis Regularity Lemma and its
applications in graph theory. In D. Mikl
os, V. T. S
os, and T. Sz
onyi,
editors, Combinatorics: Paul Erd
os is Eighty (Part II), volume 2 of Bolyai
Society Mathematical Studies. 1996.
S. K. Stein and S. Szab
o. Algebra and Tiling: Homomorphisms in the
Service of Geometry. Number 25 in The Carus Mathematical Monographs.
The Mathematical Association of America, 1994.
S. K. Stein. Packing tripods. The Mathematical Intelligencer, 17(2):3739,
1995. Also appears in [Gal98].
Introduction
The work was done when the author was visiting School of Information Science,
Japan Advanced Institute of Science and Technology, Ishikawa 923-1292, Japan
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 281290, 2000.
c Springer-Verlag Berlin Heidelberg 2000
282
Subhas C. Nandy
Geometric Preliminaries
First we mention that if the query line is vertical, we maintain an array with
the points in P , sorted with respect to their x coordinates. This requires O(n)
space and can be constructed in O(nlogn) time. Now, given a vertical query line
we position it on the x-axis by performing a binary search. To find the k-nearest
neighbors, a pair of scans (towards left and right) are required in addition. So,
the query time complexity is O(k + logn). It is easy to understand that the kfarthest neighbors can be obtained in O(k) time by scanning the array from its
left and right ends.
In this paper, we shall consider the non-vertical query line. We use geometric
duality for solving these problems. It maps (i) a point p = (a, b) of the primal
plane to the line p : y = ax b in the dual plane, and (ii) a non-vertical line
` : y = mx c of the primal plane to the point ` = (m, c) in the dual plane.
Needless to say, a point p is below (resp., on, above) a line ` in the primal plane
if and only if p is above (resp., on, below) ` in the dual plane.
Let H be the set of dual lines corresponding to the points in P . Let A(H) denote
the arrangement of the set of lines H. The number of vertices, edges and faces in
A(H) are all O(n2 ) [4]. Given a query line `, the problem of finding its nearest
or farthest point can be solved as follows:
283
Nearest neighbor algorithm : [8] Consider the point ` which is the dual of
the line `. Next use the point location algorithm of [5] to locate the cell of A(H)
containing ` in O(logn) time. As the cells of the arrangement A(H) are split
into trapezoids, the line pi and pj lying vertically above and below ` , can be
found in constant time. The distance of a point p and the line ` in the primal
plane can be obtained from the dual plane as follows :
Let x(` ) be the x-coordinate of the point ` in the dual plane which corresponds
to the slope of the line ` in the primal plane. We draw a vertical line from
the point ` which meets the line p at a point (` , p ) in the dual plane.
Now, the perpendicular distance of the point p and the line ` in the primal
,p ))
, where d(., .) denotes the distance between two
plane is equal to d(` ,(`
x(` )
points.
Thus, the point nearest to ` in the primal plane will be any one of pi or pj
depending on whether d(` , (` , pi )) < or > d(` , (` , pj )), and it can be
computed in constant time. In order to report the nearest neighbor from any
arbitrary query line, one needs to maintain the arrangement A(H), which can
be created in O(n2 ) time and space [5].
Farthest neighbor algorithm : Here we construct the lower and upper envelope of the lines in H corresponding to the duals of the points in P , and store
them in two different arrays, say LL and LU . This requires O(nlogn) time [7].
Now, given the line `, or equivalently the dual point ` , we draw a vertical line
at x(` ) which hits the line segments 1 LL and 2 LU , and they can be
located in O(logn) time. If 1 and 2 are respectively portions of pi and pj ,
then the farthest neighbor of ` is either of pi and pj which can be identified
easily. Thus for the farthest neighbor problem, the preprocessing time and space
required are O(nlogn) and O(n) respectively, and the query can be answered in
O(logn) time.
In this paper, we consider the problem of locating the k nearest neighbors of a
query line. As a preprocessing, we construct the following data structure which
stores the arrangement of the dual lines in H. It is defined using the concept
of levels as stated below. The same data structure can answer the k farthest
neighbors query also with the same efficiency.
Definition 1. [4] A point in the dual plane is at level (0 n) if there
are exactly lines in H that lie strictly below . The -level of A(H) is the
closure of a set of points on the lines of H whose levels are exactly in A(H),
and is denoted as L (H). See Figure 1 for an illustration.
Clearly, L (H) is a poly-chain from x = to x = , and is monotone
increasing with respect to the x-axis. In Figure 1, a demonstration of levels in
the arrangement A(H) is shown. Here the thick chain represents L1 (H). Among
the vertices of L1 (H), those marked with empty (black) circles are appearing in
level 0 (2) also. Each vertex of the arrangement A(H) appears in two consecutive
levels, and each edge of A(H) appears in exactly one level. We shall store L (H),
0 n in a data structure as described in the next section.
284
Subhas C. Nandy
level-2
level-1
level-0
Fig. 1. Demonstration of levels in an arrangement of lines
Algorithm
Below we describe the data structure, called level-structure, and briefly explain
our algorithm.
3.1
Level-Structure
It is a balanced binary search tree T , called the primary structure, whose nodes
correspond to the level-id of the arrangement A(H). To avoid confusion, we shall
use the term layer to represent (different depth) levels of the tree T . The root
of T corresponds to the layer-0 and the layer-id increases as we proceed towards
the leaf level.
Initially, for each node of T (representing a level, say , of A(H)) we create a
secondary structure T () which is an array containing edges of L (H) in left
to right order. Next, to facilitate our search process, we augment the secondary
structures for all the non-leaf nodes as follows :
Consider an edge e A(H) at a certain level, say . Let 0 be the level which
appears as the left child of level in T , and Ve0 ( A(H)) be the set of vertices
whose projections on the x-axis are completely covered by the projection of e on
x-axis. If |Ve0 | > 1 then we leave the leftmost vertex of Ve0 and vertically project
the next vertex on e, and do the same for every alternate vertex of Ve0 as shown
in Figure 2. The same action is taken for all the edges of level and the edges in
its left successor level 0 . All the projections create new vertices at level , and
as a result, the number of edges in level is also increased. This augmentation
yields the following lemma :
Lemma 1. After the augmentation step, the projection of an edge of the parent
level can overlap on the projections of at most two edges at its left child level.
Proof : The following three situations may arise.
|Ve0 | = 0. Here edge e is completely covered by an edge at level 0 (Figure 2a).
|Ve0 | = 1. Here edge e overlaps with exactly two edges at level 0 (Figure 2b).
|Ve0 | > 1. In this case the truth of the lemma follows as we have projected every
t
u
alternate vertex of Ve0 on e (Figure 2c).
285
level -
level -
(a) : |Ve | = 0
(b) : |Ve | = 1
286
Subhas C. Nandy
Proof : Consider only the set of vertices of A (H) which appear in those levels
which belong to the leaf layer of T . Only half of these vertices (in total) are
propagated to the nodes in different levels at the predecessor layer of the leaves
of T . Among the set of vertices, which has been propagated from the leaves of T
to the current layer, at most half of them may further be propagated to their predecessor layer in T . This process may continue until the root (layer) is reached.
But if k be the total number of vertices at all the leaves, their contribution to
all the layers of the tree is at most k + k2 + k4 + . . ., which may be at most 2k
in the worst case. The same is true for the original vertices of A(H) appearing
in the different levels at the non-leaf layers of T also. Thus it is clear that, this
type of propagation does not cause the number of vertices of A (H) more than
twice the original number of vertices of A(H).
t
u
Next, for each edge of a level, say , appearing in a non-leaf layer of T in the
enhanced structure A (H), we keep four pointers. A pair of pointers L1 and L2
point to two edges in the level 0 which appear as left child of in T and the other
pair R1 and R2 point to a pair of edges in the level 00 appearing in the right child
of . By Lemma 1 and subsequent discussions, an edge appearing in a level, which
corresponds to a non-leaf node in T , can not overlap on more than two edges of
its left (resp. right) child level (in T ) with respect to the vertical projections. If
the x-range of an edge e (appearing at level ) is completely covered by that of
an edge e0 of its left (resp. right) child level 0 (00 ) of A (H), both the pointers
L1 and L2 (resp. R1 and R2 ) attached to e point to e0 . Otherwise, L1 and L2
(resp. R1 and R2 ) of the edge e point to two adjacent edges e1 and e2 in the
level 0 (00 ), such that the common vertex of e1 and e2 lies in the x-interval of
the edge e.
3.2
Given a query line `, we compute its dual point ` . In order to find the cell of
A (H) containing ` , we proceed as follows :
We choose the level root of A (H) attached to the root of T , and do a binary
search on the secondary structure T (root ) attached to it to locate the edge
e which spans horizontally on ` . Now, compare ` and e to decide whether to
proceed towards the left or the right child of root in the next layer. Without loss
of generality, let us assume that search proceeds towards the left child and lef t
be the level attached to it. Note that, L1 and L2 pointers uniquely determine the
edge e0 T (lef t ) by doing at most 2 comparisons. If search proceeds towards
the right of the root, we may need to use the pointers R1 and R2 attached to e.
Similarly proceeding, the cell of A (H) containing ` may be easily reached in
O(logn) steps.
Reporting of k nearest neighbors
After locating ` in the appropriate cell of A (H), let ea T () and eb T (1)
be the two edges of A (H) which are vertically above and below ` respectively.
287
We compute the vertical distances of ea and eb from ` , and report the nearest
one. Without loss of generality, let ea be the nearest neighbor of ` . Next, we
need to reach an edge at level + 1 (the inorder successor of level in T ) whose
horizontal interval spans ` . If eb is closer to ` then we need to locate the edge
in level 2 (the inorder predecessor of level 1 in T ) which horizontally
spans ` .
In order to reach an appropriate edge in the inorder predecessor or successor
of the current level during reporting, we maintain two stacks, namely DN and
UP. They contain the edges (along with the level-id) of A (H) in different layers
from the root to the relevant level ( 1 and ) whose x-interval span ` . The
initial configuration of the stacks is as follows :
Both the stacks will have same set of elements from the root layer up to
certain layer corresponding to the level, say (= or 1) depending on
which one appear in a non-leaf layer. Then one of these stacks will contain
few more elements from level to either of and 1 which appear in the
leaf layer.
These will help while moving from one level to the next level (above or below)
in A (H), as described in the following lemma.
Lemma 3. After locating a pair of edges in two consecutive levels, say 1 and
, of A (H), whose x-interval contains ` , the edges in the k levels vertically
below (above) 1 () can be reported in O(k + logn) time.
Proof : Without loss of generality, we shall consider the visiting of the edges in
k consecutive levels above the level whose x-interval contains ` .
If the level + 1, which is the inorder successor of level in T , is
in its right subtree, then we traverse all the levels that appear along the path
from to + 1 in T . In each move to the next level, we can reach an
appropriate edge whose x-interval is spanning ` , using either of (L1 and
L2 ) and (R1 and R2 ) in constant time. We need to store all these edges in
the stack UP, for backtracking, if necessary.
in some predecessor layer, then we may need to backtrack along the path
through which we reached from + 1 to during forward traversal. If
be the difference in the layer-id of the levels and + 1 in T , then the
number of elements popped from the UP stack is .
Note that, if it needs to proceed to the level + 2, we may again move layers
towards leaf. Needless to say, the edges on that path will be pushed in the UP
stack. But such a forward movement may again be required after visiting all the
levels in the right subtree rooted at level + 1. Thus apart from reporting, this
extra traversal in T may be required at most twice, and the length of the path
may at most be O(logn). Hence the proof of the lemma.
288
Subhas C. Nandy
Constrained Query
In this section, we shall discuss the complexity of the k nearest neighbors and
the k farthest neighbors problems, if k is known in advance (i.e., k is not an
input at the query time).
4.1
In this case, we need to maintain only (i) k levels from bottom starting from
level-1 up to the level-k, denoted by Lk (H), and (ii) k levels at the top starting
from level-(nk+1) up to level-n, denoted by L(nk+1) (H), of the arrangement
A(H). Here level-1 and level-n correspond to the lower and upper envelope of
the lines in H respectively.
Lemma 4. The number of edges in the Lk (H) of an arrangement A(H) of n
lines in the plane is O(nk), and it can be computed in O(nk + nlogn) time.
289
Proof : The counting part of the lemma follows from Corrolary 5.17 of [12]. The
time complexity of the construction follows from [6].
t
u
Next, we project the edges of level-k on the edges of level-(k 1) as described
in Subsection 3.1. As the horizontal interval of an edge in level (k 1) may be
spanned by at most two edges of level-k (see Lemma 1), with each edge of level
(k 1), we attach two pointers Q1 and Q2 to point to a pair of appropriate edges
of level-k as described in Subsection 3.1. The enhanced set of edges in level-(k1)
is then projected on the edges of level-(k 2). This process is repeated till we
reach level-1.
The same technique is adopted for constructing L(nk+1) (H). The projection
of edges from one level on the edges of its next higher level is continued from
level-(n k + 1) upwards till we reach the upper envelope (i.e., the level-n) of
the arrangement A(H).
As stated in Lemma 2, the number of edges in the enhanced arrangement will
remain O(nk). Next, during the k farthest neighbors query for a given line `, the
edges of level-1 and level-n of the augmented A(H) spanning the x-coordinate
of ` can be found using binary search. But, one can reach an edge from level-i
to the edge at level-(i + 1) (level-(i 1)) in Lk (H) (L(nk+1) (H)) spanning
the x-coordinate of ` using the two pointers Q1 , Q2 attached with the edge at
level-i, in constant time. Thus by Lemma 4, and the above discussions, we have
the following theorem :
Theorem 3. If k is known in advance, a data structure with a given set P of n
points can be made in O(nk + nlogn) time and O(nk) space, such that for any
query line, its k farthest neighbors can be answered in O(k + logn) time.
t
u
4.2
If the query line ` passes through a specified point q, then the dual point ` of
the line ` will always lie on the line h = q , dual of the point q.
Now consider the set H = {h1 , h2 , . . . , hn } of lines in the dual plane, where
hi = pi . Let H 0 = {h01 , h02 , . . . , h0n } denote the set of half lines, where h0i is the
portion of hi above h. Similarly, H 00 = {h001 , h002 , . . . , h00n } is defined below the
line h. We denote the ( k)level above (resp. below) h by Lk (H 0 , h+ ) (resp.
Lk (H 00 , h )).
In [10], the zone theorem for line arrangement [9] is used to show that for
the set of half lines H 0 (H 00 ) the complexity of Lk (H 0 , h+ ) (Lk (H 00 , h ) is
O(nk). A randomized algorithm is proposed in [10] which computes Lk (H 0 , h+ )
(Lk (H 00 , h ) in O(kn + min(nlog2 n, knlogn)) time.
Note that, here also, we need to enhance Lk (H 0 , h+ ) (Lk (H 00 , h )) by projecting the accumulated set of edges of its one level to the next lower level, and
290
Subhas C. Nandy
maintaining two pointers for each edge of the enhanced arrangement as stated
in the earlier subsection.
In order to answer the k nearest neighbor query for a line ` where ` h, we
first report the nearest neighbor of ` by locating the edges e1 and e2 , spanning
the x-coordinate of ` , by using binary search on the level-1 of Lk (H 0 , h+ ) and
Lk (H 00 , h ) respectively. To report the next nearest neighbor, we move to the
next level of either Lk (H 0 , h+ ) or Lk (H 00 , h ) using the pointers attached
with e1 or e2 . This process is repeated to report k nearest neighbors.
Theorem 4. If the query line is known to pass through a specified point q, and
k is known in advance, then for a given set of n points we can construct a data
structure of size O(nk) in O(nk + min(nlog2 n, knlogn)) time, which can report
the k nearest neighbors of an arbitrary query line in O(k + logn) time.
Acknowledgment : The author wishes to acknowledge Prof. T. Asano and T.
Harayama for helpful discussions.
References
1. P. K. Agarwal, M. de Berg, J. Matousek and O. Schwarzkopf, Constructing levels
in arrangements and higher order Voronoi diagram, SIAM J. on Computing, vol.
27, pp. 654-667, 1998.
2. B. Chazelle, Computational Geometry : Challenges from the Applications, CG Impact Task Force Report, 1994.
3. R. Cole and C. K. Yap, Geometric retrieval problems, Proc. 24th. IEEE Symp. on
Foundation of Comp. Sc., pp. 112-121, 1983.
4. H. Edelsbrunner, Algorithms in Combinatorial Geometry, Springer, Berlin, 1987.
5. H. Edelsbrunner, L. J. Guibas and J. Stolfi, Optimal point location in monotone
subdivision, SIAM J. on Computing, vol. 15, pp. 317-340, 1986.
6. H. Everett, J. -M. Robert and M. van Kreveld, An optimal algorithm for the ( k)levels, with applications to separation and transversal problems, Int. J. Comput.
Geom. with Appl., vol. 6, pp. 247-261, 1996.
7. J. Hershberger, Finding the upper envelope of n line segments in O(nlogn) time,
Information Processing Letters, vol. 33, pp. 169-174, 1989.
8. D. T. Lee and Y. T. Ching, The power of geometric duality revisited, Information
Processing Letters, vol. 21, pp. 117-122, 1985.
9. K. Mulmuley, Computational Geometry : An Introduction Through Randomized
Algorithms, Prentice Hall, Englewood Cliffs, NJ.
10. C. -S. Shin, S. Y. Shin and K. -Y. Chwa, The widest k-dense corridor problems,
Information Processing Letters, vol. 68, pp. 25-31, 1998.
11. P. Mitra and B. B. Chaudhuri, Efficiently computing the closest point to a query
line, Pattern Recognition Letters, vol. 19, pp. 1027-1035, 1998.
12. M. Sharir and P. K. Agarwal, Davenport-Schinzel Sequence and Their Geometric
Applications, Cambridge University Press, 1995.
Introduction
The tetrahedralization in 3D is a fundamental problem in computational geometry [1], [3], [7], [9], [10]. Unlike its 2D counterpart, where a simple polygon with
n vertices is always triangulatable and each triangulation contains exactly n 2
triangles, a simple polyhedron with n vertices may not be tetrahedralizable [11]
and the number of tetrahedra in its tetrahedralizations may vary from O(n)
to O(n2 ) [4] even if it is tetrahedralizable. Naturally, one will investigate the
following two problems: to identify some classes of polyhedra which are tetrahedralizable and to find tetrahedralization methods for these polyhedra which will
produce a linear number of tetrahedra or even optimal number of tetrahedra.
So far, very few non-trivial classes of simple polyhedra are known to be tetrahedralizable (without introducing Steiner points). One is so-called two side-byside convex polyhedra and the other is so-called two nested convex polyhedra
[8], [2], [6].
For the second class, Bern showed that the number of tetrahedra in the area
between two nested convex polyhedra is bounded by O(n log n), where n is the
number of vertices in the polyhedra. Chazelle and Shouraboura [6] presented an
algorithm which produces O(n) tetrahedra by introducing Steiner points. They
raised an open question that whether or not one can tetrahedralize the region
between two nested convex polyhedra into linear number of tetrahedra, avoiding
Steiner points?.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 291298, 2000.
c Springer-Verlag Berlin Heidelberg 2000
292
Preliminary
293
MD v
P
v
Q
Qv
b
Pv
b
P-Q
294
c
a
Q
C
d
295
at most 30 vertices and P and Q still do not share any vertex. The later case will
easily result in a linear-number of tetrahedra in P Q. For the former case, we
shall only discuss the case that P and Q share exactly one vertex, say p. For the
other cases, the following analysis can be applied with a more detail analysis.
Due to the blockage of Q, the visible area and the non-visible area in P from
vertex p must form a closed chain, say C 0 . C 0 crosses a sequence of edges in P
so that the vertices of these edges visible from p form a chain C and the vertices
of these edges not visible from p form a chain C 00 . (Refer to the right-hand side
of Figure 2.) All vertices of C are connected to p by edges in P Q due to our
removal process. In such a P Q, there must either exist three vertices in C,
say a, b, and c, such that b is visible to both a and c, and ac crosses Q or no such
three vertices so that ac crosses Q. In the latter case, the convex hull of P in
P Q would not cross Q. Then, by choosing a vertex in C, say b, as tip-vertex,
the corresponding maximum dome will be the desired dome. In the former case,
let C 000 denote the chain consisting of all these vertices in P of P Q such that
every vertex in C 000 is visible to b and one of its neighboring vertices is not visible
to b. Then, the convex hull of the vertices in C 000 must cross Q since at least one
edge of the convex hull, say ac crosses Q. Then, b as the tip-vertex determines
the desired maximum dome.
The lemma below follows the fact that Pbv and Qvb are subsets of P v and Qv ,
respectively.
Lemma 3. | Pbv Qvb | is bounded by | P v Qv |.
Let P and Q be two nested convex polyhedra with triangle faces. After a M Dv
process, the remainder P Q is still two nested convex polyhedra. They share
the faces (or edges or vertices) formed by Q0v . The outer surface of P Q is
the convex hull of Q and (P P v ) Pbv which includes the bridge faces, and
the inner surface is still Q. However, the visible part of the inner surface must
exclude the faces of Q on the convex hull CH(Q ((P P v ) Pbv ).
The following figures show how a maximum dome with tip vertex v is removed
from convex polyhedron P . It is easy to see that after the removal, the remainder
P Q is still a nested convex polyhedra case.
The property of nest convexity invariant with respect to the maximum domeremoval operation ensures the correctness of our decomposition. Lemma 1,
Lemma 2, and Lemma 3 ensure the number of tetrahedra produced by our
maximum dome-removal decomposition is linear.
The Algorithm
MaxD-REMOVE(P, Q)
Input: Two nested convex polyhedra P and Q (a straight-line planar
graph in DCEL and vertex-edge incident list).
296
P
Q
Q
P-Q
bridge
bridge
eP
p
bridge
bridge
297
eQ
(1)
(2)
Remarks
298
Acknowledgments
This work is partially supported by NSERC grant OPG0041629 and ERA grant
in Memorial University of NFLD.
References
1. D.Avis and H.ElGindy, Triangulating point sets in space, Discrete and Computational Geometry , 2(1987)99111.
2. M.Bern, Compatible tetrahedralizations, In Proc. 9th ACM Symp. Computational
Geometry 281288, 1993.
3. M.Bern and D.Eppstein, Mesh generation and optimal triangulation, In Computing
in Euclidean Geometry , (D. Du and F. Hwang eds.), World Scientific Publishing
Co. 1992.
4. B.Chazelle, Convex partitions of polyhedra: a lower bound and worst-case optimal
algorithm, SIAM J. Computing , 13(1984)488507.
5. B.Chazelle and L.Palios, Triangulating a nonconvex polytope, Discrete and computational geometry , 5(1990)505526.
6. B.Chazelle and N.Shouraboura, Bounds on the size of tetrahedralizations, In Proc.
10th ACM Symp. Computational Geometry , 231239, 1994.
7. H.Edelsbrunner, F.Preparata, and D.West, Tetrahedralizing point sets in three dimensions, Journal of Symbolic Computation , 10(1990)335347.
8. J.Goodman and J.Pach, Cell Decomposition of Polytopes by Bending, Israel J. of
Math, 64(1988)129138.
9. J.Goodman and J.ORourke, Handbook of Discrete and Computational Geometry,
CRC Press, New York, 1997.
10. J.Rupert and R.Seidel, On the difficulty of tetrahedralizing 3-dimensional nonconvex polyhedra, Discrete and Computational Geometry, 7(1992)227253.
11. E.Schonhardt, Uber die Zerlegung von Dreieckspolyedern in Tetraeder, Math. Annalen 98(1928)309312.
Introduction
Let A be a set of n points in the plane. The standard two-center problem for
A is to cover A by a union of two congruent closed disks whose radius is as
small as possible. The standard two-center problem has been studied extensively.
Sharir [14] firstly presented a near-linear algorithm running in O(n log9 n) time,
and Eppstein [8] subsequently proposed a randomized algorithm with expected
O(n log2 n) running time. Chan [3] recently gave a randomized algorithm that
runs in O(n log2 n) time with high probability, as well as a deterministic algorithm that runs in O(n log2 n(log log n)2 ) time. As a variant, we consider the
discrete two-center problem for A that finds two congruent closed disks whose
union covers A and whose centers are at points of A. Recently, this problem was
solved in O(n4/3 log5 n) time by Agarwal et al. [1].
In this paper, we consider some variants of the two-center problems. Let P
be a convex polygon with n vertices in the plane. We wan to find two congruent
closed disks whose union covers P (its boundary and interior) and whose radius
is minimized. We also consider its discrete version with centers restricted to be
at some vertices of P . See Figure 1. Compared with the two-center problems for
points, differences are that (1) points to be covered by two disks are the vertices
of P in convex positions (not in arbitrary positions) and (2) two disks should
cover the edges of P as well as its vertices. By points in convex positions, we
mean that the points form the vertices of a convex polygon. (1) suggests our
problems are most likely easier than the point-set two-center problems, but (2)
tells us that they could be more difficult.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 299309, 2000.
c Springer-Verlag Berlin Heidelberg 2000
300
(a)
(b)
Fig. 1. Two center problems for a convex polygon. (a) Standard problem. (b)
Discrete problem.
We assume in this paper that the vertices of P are in general circular position,
meaning that no four or more vertices are co-circular. Our results are summarized
in Table 1. (Some improve the authors previous work of [15].)
Standard 2-center
Discrete 2-center
Convex polygon
O(n log 3 n log log n)
Thm. 3 O(n log2 n)
Thm. 5
Points in convex positions
O(n log 2 n)
Thm. 7 O(n log2 n)
Thm. 6
Points in arbitrary positions O(n log 2 n (log log n)2 ) [3] O(n4/3 log 5 n) [1]
301
and a parallel algorithm that decides, given a value r > 0, whether r r , i.e.,
whether two disks of radius r can be drawn so that their union covers P .
2.1
Our decision algorithm starts with drawing for each i a disk Di of radius r with
center at vertex i. Define
b
\
Di .
I(ha, bi) =
i=a
Define mi to be the index such that I(hi, mi i) 6= and I(hi, mi + 1i) = . The
index mi is the counterclockwise farthest vertex from i so that a disk of radius
r can include the vertices in hi, mi i. Note that the mi s are monotone increasing,
i.e., there is no pair of hi, mi i and hj, mj i such that hi, mi i hj, mj i.
Let Ji = I(hi, mi i). Then any point in Ji can be the center of a disk of radius
r that covers hi, mi i. We check each of the following cases.
(i) If there are two vertices i and j such that i, mi hj, mj i and j, mj
hi, mi i, then any two disks of radius r, one with center in Ji and the other with
center in Jj , can cover P , and the decision algorithm returns yes. To check for
a fixed i whether there is an index j such that i, mi hj, mj i and j, mj hi, mi i,
it is sufficient to consider the case of j = mi only, due to the monotonicity of
m-values.
(ii) If there are i and j such that mj + 1 = i and j hi, mi i, then hi, mj i
is guaranteed to be covered by two disks of radius r with centers in Ji and in
Jj and the edge (mj , i) of P is missing. So, we need check whether it can be
covered by two disks of radius r with centers in Ji and in Jj . To do this, find
a disk C of radius r with center on the edge (mj , i) and touching Ji at a point
p and checks whether C intersects Jj . One disk of radius r with center p and
the other with center at any point in C Jj together cover the edge (mj , i) as
well as the other boundary of P . If such point p can be found and C Jj 6= ,
then the decision algorithm returns yes. Again, for a fixed i, it does not need
to consider all js such that mj = i 1 and j hi, mi i. It is easy to see that
considering the case of j = mi is sufficient.
(iii) Finally, if there are i and j such that mi +1 = j and mj +1 = i, then two
edges (mi , j) and (mj , i) are missing. To decide whether these two edges can
simultaneously be covered by two disks of radius r with centers in Ji and in Jj ,
find as above a disk C1 of radius r with center on (mj , i) and touching Jj , and
a disk C2 of radius r with center on (mj , i) and touching Ji . Similarly, find two
disk C10 , C20 of radius r with centers on (mi , j) touching Jj and Ji , respectively.
Now, check whether both C1 C10 Jj and C2 C20 Ji are nonempty. If both are
nonempty, two disks of radius r, one with center in C1 C10 Jj and the other
with center in C2 C20 Ji , can cover both edges as well as the other boundary
of P , and thus the decision algorithm returns yes.
The decision returns no if none of the three cases above returns yes.
Implementation. Compute m0 and J0 , and then Jm0 and Jm0 +1 . For i > 0, Ji ,
Jmi , and Jmi +1 can be obtained from Ji1 , Jmi1 and Jmi1 +1 , by adapting the
302
algorithm in [9] for maintaining convex hulls of a simple chain while points are
dynamically inserted into and deleted from the ends of the chain. An intermixed
sequence of O(`) insertions and deletions on chains with a total of O(`) vertices
can be processed in time O(` log `) [9].
Whenever Ji , Jmi , and Jmi +1 are obtained, we check whether any of three
cases (i), (ii) and (iii) returns yes. Each of these checks can be done in O(log n)
time, provided that Ji , Jmi , and Jmi +1 are given. For this we need a constant
number of the following operations.
(O1) Find a touching point between the intersection of O(n) congruent disks
and another congruent disk with center on a specific edge of P .
(O2) Decide whether a congruent disk with center on a specific edge of P intersects an intersection of O(n) congruent disks. If yes, find the intersection
points on the boundary.
Both (O1) and (O2) can be done in O(log n) time by simply performing binary
searches on the boundary of the intersection of O(n) congruent disks. We assume
here that the boundaries of the intersections are stored in arrays or balanced trees
for binary searches to be applicable.
As a whole, we have the following theorem.
Theorem 1. Given a convex polygon P with n vertices and a value r > 0, we
can decide in O(n log n) time whether two disks of radius r can cover P .
2.2
303
in O(log n log log n) time using O(log n) processors [3], the whole of this step
takes O(log2 n log log n) time using O(n log n) processors.
Checking the first case (i) in parallel is easy. For each i, decide whether
mmi hi, mi i. The algorithm returns yes if any one of these n decisions is
true.
For case (ii), collect all is such that mmi = i 1, and for each such i decide
whether edge (i 1, i) can be covered by two disks of radius r with centers in
Ji and in Jmi .
For case (iii), collect all is such that mmi +1 = i1, and for each such i decide
whether both edges (mi , mi + 1) and (i 1, i) can be simultaneously covered by
two disks of radius r with centers in Ji and in Jmi +1 .
For any of cases (ii) and (iii), as in the sequential algorithm, our parallel
algorithm also needs to compute Ji for each i. Computing all Ji s and storing
them explicitly requires (n2 ) work and space, which is far from the bounds of
our parallel algorithm. Instead, whenever a Ji is needed, we compute it from
the canonical subsequences of hi, mi i with the help of the segment tree.
Assume that hi, mi i is a union of k = O(log n) canonical subsequences
S1 , . . . , Sk , and also assume that S1 , . . . , Sk are indexed counterclockwise so that
i S1 , mi Sk , and S` and S`+1 for 1 ` k 1 appear consecutively on the
boundary of P . Then, Ji = I(S1 ) . . . I(Sk ). If i > mi , then hi, mi i is divided
into hi, n 1i and h0, mi i. hi, mi i is a union of the canonical subsequences for
hi, n 1i and the canonical subsequences for h0, mi i.
Let (Ji ) be the upper chain of Ji and Uj be the upper chain of I(Sj ) for
1 j k. We show how (Ji ) is constructed from the Uj . The computation of
its lower chain is completely symmetric.
Build a minimum-height binary tree whose leaves correspond to U1 , . . . , Uk
in a left-to-right order. Let v be a node of the tree and its canonical subsequence
be ha, bi. Let Iv = I(Sa ) . . . I(Sb ) and (Iv ) be its upper chain. Then, (Iv )
consists of some subchains of Ua , Ua+1 , . . . , Ub 4 and thus can be represented by
a set of tuples, where each tuple says which subchain of which Uj contributes to
(Iv ).
In a bottom-up fashion, compute (Iv ) for each node v of the minimumheight binary tree. For each leaf v corresponding to Uj ,
(Iv ) = {(j, 1, x , x+ , 1, |Uj |)}, where x (resp., x+ ) is the x-coordinate of
the leftmost (resp., rightmost) point of Uj . For each internal node v, (Iv ) =
+ +
+ +
{(j1 , p1 , x
1 , x1 , r1 , r1 ), . . . , (jt , pt , xt , xt , rt , rt )}, where t is the number of
subchains of Uj s that consist of (Iv ). Each tuple represents a subchain which
Uj it originally comes from, the rank of its leftmost arc in its original Uj , its
x-range, and the ranks of its leftmost and rightmost arcs in (Iv ). For example,
the first tuple (Iv ) means the following three things:
+
1. the subchain of Uj1 in the x-range [x
1 , x1 ] appears in (Iv );
2. its leftmost (resp., rightmost) arc is bounded by a vertical line x = x
1 (resp.,
)
and
its
leftmost
arc
is
a
part
of
the
p
-th
arc
in
U
;
and
x = x+
1
j
1
1
4
304
3. its leftmost (resp., rightmost) arc becomes the r1 -th (resp., r1+ -th) arc in
(Iv ).
Lemma 1. Assume that v has two children w and z. Given (Iw ) and (Iz ),
(Iv ) can be obtained in O(log n (|(Iw )| + |(Iz )| + log n)) sequential time.
Proof. Let f = (Iw ) and g = (Iz ). Let S w and S z be the canonical
subsequences of w and z, respectively. In other words, Iw = iS w Di and
Iz = iS z Di . Let |S w | and |S z | be the number of vertices in S w and S z .
Let [x , x+ ] be the common x-range of f and g. The intersection points, if any,
of f and g must be in the vertical strip bounded by two lines x = x and x = x+ .
So, we may assume that f and g are functions over [x , x+ ]. Note that f and g
consist of several arcs of radius r. Lemma 1 will be proved through a series of
lemmas whose proofs are given in the full paper [11].
Lemma 2. f and g intersect at most twice.
Since both f and g are upper chains of the intersection of congruent disks,
they are upward convex with one highest point. Define h(x) = f (x) g(x) over
[x , x+ ].
Lemma 3. If both f and g are either increasing or decreasing over [x , x+ ],
f (x ) > g(x ), and |S w | 3 and |S z | 3, then h over [x , x+ ] is a downward
convex function with one lowest point.
Using Lemma 3, we can prove the following lemma.
Lemma 4. If each of f and g is either increasing or decreasing over [x , x+ ],
then their intersections, if any, can be found in O(log n(|(Iw )|+|(Iz )|+log n))
sequential time.
To compute the intersection points between f and g, find xf and xg , the
x-coordinates of the highest points of f and g, respectively. Such points, xf and
xg , can be computed in time O(|(Iw )|log n) and O(|(Iz )|log n), respectively.
Wlog, assume that xf < xg . Then, [x , x+ ] is divided into three subranges
[x , xf ], [xf , xg ], and [xg , x+ ]. In each subrange, f is either increasing or decreasing and the same is true for g. Then Lemma 4 applies to compute intersections
of f and g over each subrange. For details, see [11].
After locating the intersection points between f and g, it is easy to determine
which tuples from (Iw ) and (Iz ) are eligible to be in (Iv ). Thus, the tuples
of (Iv ) can be computed in additional O(|(Iw )| + |(Iz )|) time.
This completes the proof of Lemma 1.
Given all (Iw ) for the nodes w of some level of the minimum-height tree, if
k processors are available, then all (Iv ) for the nodes v of the next level (toward
the root) can be obtained in O(log n (|(Iw )| + log n)) = O((k + log n) log n)
time by Lemma 1. Note that |(Iw )| = O(k) for any node w. |(Iw )| is the
number of tuples, not the number of arcs in it. The minimum-height tree with
k leaves has O(log k) levels.
305
Lemma 5. For any i, (Ji ), in the form of a set of tuples, can be constructed
in O((k + log n) log k log n) time using O(k) processors.
Back to checking case (ii) or case (iii), assign k = O(log n) processors to
each i satisfying the condition of (ii) or (iii), and construct Ji , in the form of
two sets of tuples, one for its upper chain and the other for its lower chain, in
O(log2 n log log n) time by Lemma 5. Since there are at most n such is, we need
a total of O(n log n) processors.
The remaining part of (ii) or (iii) can be done using a constant number of
operations (O1) and (O2) on Ji . Each of (O1) and (O2), using the two sets of
tuples, can now be executed in O(log2 n) sequential time. As a result, we have
the theorem.
Theorem 2. Given a convex polygon P with n vertices and a value r > 0, we
can decide in O(log2 n log log n) time using O(n log n) processors whether two
disks of radius r cover P .
Combining Theorems 1 and 2, we have proved the theorem.
Theorem 3. Given a convex polygon P with n vertices, we can compute the
minimum radius r in O(n log3 n log log n) time such that two disks of radius r
cover P .
Proof. By parametric search technique, we immediately have an
O(n log4 n log log n) time algorithm. Our parallel algorithm can easily be
made to satisfy the Coles requirement [7]. The time complexity is now reduced
to O(n log3 n log log n).
Let P be a convex polygon with n vertices. We want to find the minimum value
r and two vertices i, j such that two disks of radius r with centers i and j
cover P . Since again parametric search technique will be employed, we will give
a sequential algorithm and a parallel algorithm that decides, given a value r > 0,
whether r r .
3.1
Let P denote the boundary of P . For two points a, b on P , hha, bii denotes the
subchain of P that walks counterclockwise starting at a and ending at b.
Given r > 0, draw a disk Di of radius r with center at vertex i for each i.
Then, Di P may be disconnected and thus may consist of several subchains
of P . One of them contains i, which will be denoted by i = hhai , bi ii.
Lemma 6. r r iff there exist two vertices i and j such that P = i j .
306
Our parallel algorithm first computes i for each i by locating ai and bi . Build a
segment tree on the sequence of radius r disks centered at vertices, D0 , . . . , Dn1 ,
D0 , . . . , Dn2 . For each node v with canonical subsequence S, compute the intersection of the disks, Iv = iS Di . The boundary of Iv is divided into two
(upper and lower) chains by its leftmost and rightmost points, and the upper
and lower chains are stored into two arrays, + (Iv ) and (Iv ), respectively, of
arcs sorted according to their x-coordinates. Given a point q, whether q Iv
can be decided by doing binary searches on + (Iv ) and on (Iv ).
To compute hhai , bi ii, it is sufficient to find the minimal hhci , di ii hhai , bi ii,
where ci and di are vertices of P .
For a given vertex i, di can be searched using the segment tree as follows:
Choose the left one from the two Di s at the leaves of the tree. We go upward
along the leaf-to-root path starting at the chosen Di , and locate the first node
/ Iz0 . Starting at z 0 , we now
on the path with a right child z 0 satisfying i
search downward. At a node with left child w and right child z, search under
the following rule: Go to z if i Iw , and go to w, otherwise. It is easy to verify
that when search is over at a leaf v, we have di = v.
Searching ci is completely symmetric.
Implementation. Constructing the segment tree and computing + (Iv ) and
(Iv ) for each v can be carried out in O(log n) time using O(n log n) processors
[3] as in Section 2.2.
For a fixed i, ci and di can be found in O(log2 n) sequential time as we
visit O(log n) nodes and at each node v we spend O(log n) time doing binary
search to decide whether i Iv . This type of search (i.e., searching the same
value in several sorted lists along a path of a binary tree) can be improved by
an application of fractional cascading [4,5], saving a logarithmic time to achieve
O(log n) search time.
307
Suppose that a set A of n points in convex positions are given. We assume that
as input a convex polygon with vertices at the points of A is given, so the points
are sorted counterclockwise. We want to find two disks of radius r whose union
covers A. As usual, the points are numbered 0, . . . , n 1 counterclockwise.
1
be the radius of the smallest disk
For any i, j A = h0, n 1i, let rij
2
containing hi, j 1i and let rij be the radius of the smallest disk containing
1
2
, rij
}.
hj, i 1i. Then, r = mini,jA max{rij
1
2
, r0,j
}. Let k be the index such that r0 =
Let r0 = minjA max{r0,j
1
2
, r0,k
}. Then, A is separated into h0, k 1i and hk, n 1i.
max{r0,k
Lemma 7. For any i, j such that i, j h0, k 1i or i, j hk, n 1i,
1
2
, rij
} > r0 .
max{rij
By Lemma 7 we need to consider pairs of i, j such that i h0, k 1i and
j hk, n 1i. We now apply divide-and-conquer with A1 = h0, k 1i and A2 =
hk, n1i. (i) Pick the medium-index vertex bk/2c from A1 and (ii) find the vertex
308
1
2
1
2
k 0 such that max{rbk/2c,k
0 , rbk/2c,k0 } = minjhk,n1i max{rbk/2c,j , rbk/2c,j }. A1
is separated into A11 = h0, bk/2c 1i and A12 = hbk/2c, k 1i, and A2 is
separated into A21 = hk, k 0 1i and A22 = hk 0 , n 1i. By Lemma 7, we consider
pairs of points between A11 and A21 , and between A12 and A22 . (iii) Repeat
recursively (i)(ii) with A1 = A11 and A2 = A21 , and with A1 = A12 and
A2 = A22 . Recursion stops when A1 consists of a single point `, and at that time
1
2
, r`,j
} can be found as in (ii).
minjA2 max{r`,j
Since a smallest disk containing a convex chain can be found
1
2
, rij
} for any i, j can be computed in linear
in linear time, max{rij
1
1
2
2
, . . . , r0,n1
is decreasing,
time. Since r0,1 , . . . , r0,n1 is increasing and r0,1
1
2
1
2
max{r0,1 , r0,1 }, . . . , max{r0,n1 , r0,n1 } is decreasing and then increasing. So,
r and k can be found in O(n log n) time by binary search, in which each decision takes O(n) time. Similarly, (ii) takes O(n log n) time. Since our algorithm
invokes at most O(log n) recursions, and after recursion stops a single point
` A1 requires additional O(|A2 | log |A2 |) time, we can conclude the following
theorem.
References
1. P. K. Agarwal and M. Sharir and E. Welzl, The discrete 2-center problem, Proc.
13th Ann. ACM Symp. Comput. Geom., pp. 147155, 1997.
2. L. Boxer and R. Miller, A parallel circle-cover minimization algorithm, Inform.
Process. Lett., 32, pp. 5760, 1989.
3. T. M. Chan, More planar two-center algorithms, Computational Geometry: Theory
and Applications, 13, pp. 189-198, 1999
4. B. Chazelle, and L. J. Guibas, Fractional cascading: I. A data structuring technique, Algorithmica, 1, pp. 133162, 1986.
5. B. Chazelle, and L. J. Guibas, Fractional cascading: II. Applications, Algorithmica,
1, pp. 163191, 1986.
6. S.-W. Cheng, O. Cheong, H. Everett, and R. van Oostrum, Hierarchical vertical
decompositions, ray shooting, and circular arc queries in simple polygons, Proc.
15th Ann. ACM Symp. Comput. Geom., pp. 227236, 1999.
7. R. Cole, Slowing down sorting networks to obtain faster sorting algorithms, J.
ACM, 34, pp. 200208, 1987.
8. D. Eppstein, Faster construction of planar two-centers, Proc. 8th ACM-SIAM
Symp. Discrete Algorithms, pp. 131138, 1997.
9. J. Friedman, J. Hershberger, and J. Snoeyink, Compliant motion in a simple polygon, Proc. 5th Ann. ACM Symp. Comput. Geom., pp. 175186, 1989.
10. S. K. Kim, Parallel algorithms for geometric intersection graphs, Ph.D. Thesis,
Dept. of Comput. Sci. Eng., U. of Washington, 1990.
11. S. K. Kim, and C.-S. Shin, Efficient algorithms for two-center problems for a convex
polygon, HKUST-TCSC-1999-16, Dept. of Comp. Sci., HKUST, 1999.
12. C. C. Lee and D. T. Lee, On a circle-cover minimization problem, Inform. Process.
Lett., 18, pp. 109115, 1984.
309
13. N. Megiddo, Applying parallel computation algorithms in the design of serial algorithms, J. ACM, 30, pp. 852865, 1983.
14. M. Sharir, A Near-Linear Algorithm for the Planar 2-Center Problem, Proc. 12th
Ann. ACM Symp. Comput. Geom., pp. 106112, 1996.
15. C.-S. Shin, J.-H. Kim, S. K. Kim, and K.-Y. Chwa, Two-center problems for a
convex polygon, Proc. 6th Euro. Symp. on Algo., Vol. 1461, pp. 199210, 1998.
Abstract. We are interested in computation of locating arbitrage in financial markets with frictions. We consider a model with a finite number
of financial assets and a finite number of possible states of nature. We
derive a negative result on computational complexity of arbitrage in the
case when securities are traded in integer numbers of shares and with
a maximum amount of shares that can be bought for a fixed price (as
in reality). When these conditions are relaxed, we show that polynomial
time algorithms can be obtained by applying linear programming techniques. We also establish the equivalence for no-arbitrage condition &
optimal consumption portfolio.
Introduction
Research partially supported by a CERG grant of Hong Kong UGC and an SRG
grant of City University of Hong Kong
Research partially supported by Natural Science Foundation of China
Research partially supported by Natural Science Foundation of China
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 310319, 2000.
c Springer-Verlag Berlin Heidelberg 2000
311
luckily, in most cases, it has been quite straight forward to do so, especially under
usual assumptions of frictionless and complete market conditions [24,13,23,31].
Going into a different direction, the purpose of our study is to understand
the computational complexity involving in characterization of arbitrage states
(see [11,17,25] for the importance of computation in finance or economics). To
deal with this issue, we follow a model of the market in [31] with a finite number
of financial assets, 1, 2, , n, with a finite number of possible states of nature,
s1 , s2 , . . . , sm . Assets are traded at date 0 and returns are realized at date 1.
Let R = (rij ) be an n m matrix where rij is the payoff to financial asset i if
state sj occurs. Let P = (p1 , p2 , . . . , pm )T be the price vector, where pi be the
price of asset i (i = 1, 2, . . . , m) and T denotes the transposition. A portfolio is a
vector x = (x1 , x2 , . . . , xm )T , where xi is the number of shares invested in asset i,
i = 1, 2, . . . , m. Under perfect market conditions, an arbitrage opportunity is a
solution x such that xT P 0, xT R 0, and xT P + xT Re > 0, where e is
the vector of all ones. In a frictionless market, the problem is solvable by linear
programming (see, e.g., [8]).
Since linear programming is known to be solvable in polynomial time, copmutationally this justifies the general belief that any arbitrage possibility will be
shortlived since it will be identified very quickly, and be taken advantage of, and
subsequently bring economic states to a no-arbitrage one. In real life, however,
there are various forms of friction conditions imposed on trading rules. Some
assumptions in the previous analysis may not always hold. For example, ask-bid
prices of the same stock are often different (ask-bid spread). At stock exchange
listings, one offers or bids for a stock at a certain price at a certain volume;
and one can only buy or sell a stock at an integer amount. We want to know
whether these rules, institutionalized by human, create difficulties for arbitrage,
and thus create difficulties for general equilibrium to hold. If this is the case, understanding the rationals behind the motives of making arbitrage difficult may
provide us with new insights in understanding the role of the financial market in
the economy. Indeed, we show that under the above requirements (integrality of
shares traded and the capacity constraints in the number of shares asked/bid),
the problem to find out an arbitrage portfolio (under a given price vector) is
computationally hard. We present this result in Section 2. One may notice that
removing any one of the two constraints will result in a polynomial time solution via linear programming techniques. Obviously, the ask/bid amount and the
corresponding price by investors cannot be changed. However, the integrality
condition may be removed in principle, or at least be weakened by redividing
shares so that the gain of arbitrage will be insignificant. We should consider the
case without integrality conditions in the subsequent sections.
In Section 3, we consider transaction costs, another important factor in deviation from frictionless market. Friction complicates any theory one is to develop.
Partially because of this, friction is generally ignored in asset pricing models although it is often brought up in informal discussion and debates. Recently, a
few authors have started to incorporate transaction costs into financial market
models [2,7,12,21]. In [21], Pham and Touzi established the equivalence between
312
313
n
X
pi i (xi ), x Rn
(1)
i=1
The total cost including the proportional transaction cost of the portfolio modification x = (x1 , x2 , . . . , xn )T is then (x) and the vector of state-dependent
payoffs on the modification is RT x. If (x) = 0, then the modification is costless, while if (x) < 0, then the modification generates a positive date-0 cash
flow.
For simplicity, we also define, for any y = (y1 , y2 , . . . , yk )T , z =
(z1 , z2 , . . . , zk )T Rk (where k 2),
y z if and only if yi zi (i = 1, 2, . . . , k),
y > z if and only if y z and y 6= z,
y z if and only if yi > zi (i = 1, 2, . . . , k),
314
and denote
k
k
= {y Rk : y > 0}, R++
= {y Rk : y 0}.
R+
Definition 1 The market {P, R, , } has an arbitrage opportunity if there exists a portfolio modification x = (x1 , x2 , . . . , xn )T such that the following three
conditions hold
RT x 0,
(x) 0,
(2)
(3)
RT x 6= 0 or (x) 6= 0.
(4)
In other words, the market exhibits no-arbitrage if there exists no portfolio modification x = (x1 , x2 , . . . , xn )T such that
(x), xT R
T
> 0.
(5)
315
Lemma 2 Let Q and C be two closed convex cones in a locally convex vector
space and let C be pointed and have a compact base. If Q (C) = {0}, then
there exists h C +i such that h Q+ .
Define the subset of Rm+1
K = y = (y0 , y1 , . . . , ym )T : y0 (x), (y1 , . . . , ym ) = xT R, x Rn .
Then, we have a property of K and a elementary equivalent definition of the no
arbitrage as follows.
Lemma 3 K is a closed convex cone.
Proof. By the sublinearity of functional , it is clear that K is a convex cone.
By the continuity of and the full row rank of R, it can be verified that K is
closed.
Lemma 4 The market {P, R, , } exhibits no-arbitrage if and only if
m+1
= {0}.
K R+
Proof.
m+1
6= {0}
K R+
0 6= y K
m+1
R+
(6)
T
(7)
(8)
(9)
m
X
rij qj pi i pi , i = 1, 2, . . . , n.
(10)
j=1
m
such
Proof. Sufficiency: Assume that there exists q = (q1 , q2 , . . . , qm )T R++
that (10) holds. If the market {P, R, , } had a arbitrage opportunity, then
there would exist a portfolio x such that expressions (2)(4) hold. Hence,
(x) + xT Rq > 0.
(11)
On the other hand, multiplying the first inequality of (10) by xi > 0 and the
second by xi 0 yields
m
X
i xi pi , if xi > 0,
rij qj xi pj
xi
i xi pi , otherwise.
j=1
316
That is,
xi
m
X
rij qj
j=1
(1 + i )xi pi , if xi > 0
= pi i (xi ).
(1 i )xi pi , otherwise
Hence,
(x) =
n
X
pi i (xi )
i=1
n
X
i=1
i.e,
xi
m
X
rij qj =
j=1
m
X
j=1
qj
n
X
i=1
(x) + xT Rq 0
q0 (x) + xT Rq 0, x Rn
because ( (x), xT R)T K for all x Rn . Without loss of generality, we
assume that q0 = 1. Then,
n
X
i=1
pi i (xi ) +
m
X
j=1
qj
n
X
rij xi 0, x Rn .
(12)
i=1
317
n
X
qi .
i=1
maxx
U (c1 , c2 , . . . , cm )
n
pi i (xi ) W
subject to: i=1P
(CP )
n
=
c
j
i=1 rij xi + ej , j = 1, 2, . . . , m
cj 0, j = 1, 2, . . . , m
m
is the
where W > 0 is the investors initial wealth, e = (e1 , e2 , . . . , em )T R+
T
vector of his or her endowment in every state at date 1, c = (c1 , c2 , . . . , cm ) is
m
a vector of his or her consumption in every state at date 1, and U : R+ R is
his or her utility function which is assumed throughout the paper to be concave
and strictly increasing.
The investors budget-feasible set (i.e., the set of feasible solutions to (CP ))
is
m
, x Rn , c = e + RT x, (x) W }.
B = {(c, x) : c R+
We establish that (the proof is omitted here and will be given in the full
paper):
Theorem 3 If problem (CP ) has an optimal solution, then the market
{R, P, , } exhibits no-arbitrage. Conversely, if U is continuous and the market {R, P, , } has no-arbitrage, then there exists an optimal solution to problem (CP ).
We comment that the restrictions we imposed in the beginning of the section
can be removed to by making a transformation procedure to change the states
and thus the payoff matrix R. We can obtain a similar necessary and sufficient
condition as stated below and details will be given in the full paper.
318
Theorem 4 An allocation c = (c1 , c2 , . . . , cm )T > 0 will be an optimal consumption for some investor with differentiable, strictly concave, stateindependent, vNM utility function in the market {R, P, , } if and only if the
P, , } exhibits no-arbitrage.
market {R,
Conclusion
In this paper, we first establish a negative computational complexity result for arbitrage under realistic financial market situations. Then, we move on by dropping
the integrality constraints (justifiable up to a certain extent with the bounded
rationality principle) to derive a necessary and sufficient condition for the noarbitrage market with transaction costs. The condition can be computed in polynomial time using linear programming.
Another dimension in the analysis of economic theory is the utility preferences of the participants. This determines, among all the no-arbitrage conditions,
one that is a general equilibrium state under which no participant has the incentive to shift to a different allocation of its investment, under the frictionless
assumption. Assuming risk aversion of participants, Green and Srivastava [13]
showed that the equilibrium state of the market is equivalent to no-arbitrage.
We studied an optimal consumption and portfolio selection problem in a finitestate financial market with transaction costs. We characterized the existence or
a necessary and sufficient condition of an optimal consumption-portfolio policy
by no-arbitrage of the original market as well as a transformed market.
References
1. Allingham, M., 1991. Arbitrage, St. Martins Press, New York.
2. Ardalan, K., The no-arbitrage condition and financial markets with transaction
costs and heterogeneous information: the bid-ask spread, Global Finance Journal,
1999, 10(1): 83.
3. Arrow, K. J., Debreu, G., Existence of an equilibrium for a competitive economy,
Econometrica, 1954, 22: 265.
4. Black, F., Sholes, M., The pricing of options and corporate liabilities, Journal of
Political Economy, 1973, 81: 637.
5. Borwein, J.M., 1977. Proper Efficient Points for Maximizations with Respect to
Cones. SIAM Journal on Control and Optimization 15, 1977, pp.5763.
6. J. C. Cox and C. F. Huang, Optimal consumption and portfolio policies when asset
prices follow a diffusion process, Journal of Economic Theory 49 (1989), 3383.
7. Dermody, J. C., Prisman, E. Z., No arbitrage and valuation in market with realistic
transaction costs, Journal of Financial and Quantitative Analysis 1993, 28(1): 65.
8. J. B. Detemple and F. Zapatero, Optimal consumption-portfolio policies with habit
formation, Mathematical Finance 2 (1992), no. 4, 251274.
9. Duffie, D., Dynamic asset pricing theory, 2nd ed., Princeton University Press, New
Jersey, 1996.
10. P. Dybvig and S. Ross, Arbitrage, in The New Palgrave: A Dictionary of Economics,
1, J. Eatwell, M. Milgate and P. Newman, eds., London: McMillan, 1987,, pp. 100
106.
319
11. Garey, M. R., Johnson, D. S., Computers and Intractability: a Guide to the Theory
of NP-completeness, New York : W.H. Freeman, 1979.
12. Garman, M. B., Ohlson, J. A., Valuation of risky assets in arbitrage-free economies
with transactions costs, Journal of Financial Economics, 1981, 9: 271.
13. R. C. Green, and S. Srivastava, Risk Aversion and Arbitrage, The Journal of
Finance, Vol. 40, pp. 257268, 1985.
14. N. H. Hakansson, Optimal investment and consumption strategies under risk for a
class of utility functions, Econometrica 38 (1970), no. 5, 587607.
15. H. He and N. D. Pearson, Consumption and portfolio policies with incomplete markets and short-sale constrains: the infinite dimensional case, Journal of Economic
Theory 54 (1991), 259304.
16. H. He and N. D. Pearson, Consumption and portfolio policies with incomplete markets and short-sale constrains: the finite dimensional case, Mathematical Finance
1 (1991), no. 3, 110.
17. Hirsch, M. D. , Papadimitriou, C. H., Vavasis, S. A., Exponential lower bounds for
finding brouwer fixed points, Journal of Complexity, 1979, 5: 379.
18. I. Karatzas, J. P. Lehoczky, and S. E. Shreve, Optimal portfolio and consumption
decisions for a small investor on a finite horizon, SIAM Journal on Control and
Optimization 25 (1987), no. 6, 15571586.
19. Merton, R. C., 1973. Theory of Rational Option Pricing. Bell Journal of Economics
and Management Science 4, 141183.
20. R. C. Merton, Optimum consumption and portfolio rules in a continuous-time
model, Journal of Economic Theory 3 (1971), 373413.
21. H. Pham and N. Touzi, The fundamental theorem of asset pricing with cone constraints, Journal of Mathematical Economics, 31, 265279, 1999.
22. R. T. Rockafellar, Convex Analysis, Princeton, New Jersey, Princeton University
Press, 1970.
23. Ross, S. A., The arbitrage theory of capital asset pricing, Journal of Economic
Theory, 1976, 13: 341.
24. S. A. Ross, Return, Risk and Arbitrage, Risk and Return in Finance, Friend and
Bicksler (eds.), Cambridge, Mass., Ballinger, pp. 189218, 1977.
25. Scarf, H., The Computation of Economic Equilibria, New Haven: Yale University
Press, 1973.
26. S. P. Sethi, Optimal consumption and investment with bankruptcy, Kluwer, Boston,
1997.
27. H. Shirakawa, Optimal consumption and portfolio selection with incomplete markets
and upper and lower bound constaints, Mathematical Finance 4 (1994), no. 1, 124.
28. H. Shirakawa and H. Kassai, Optimal consumption and arbitrage in incomplete,
finite state security markets, Journal of Operations Research 45 (1993), 349372.
29. S. E. Shreve, H. M. Soner, and G.-L. Xu, Optimal investment and consumption with
two bounds and transaction costs, Mathematical Finance 1 (1991), no. 3, 5384.
30. Smith, A., An Inquiry into the Nature and Causes of the Wealth of Nations, Modern
Library, 1937.
31. Spremann, K., The simple analytics of arbitrage, Capital Market Equilibria (ed.
Bamberg, G., Spremann, K.), New York: Springer-Verlag, 1986, pp.189207.
32. Wilhelm, J., Arbitrage Theory, Berlin: Springer-Verlag, 1985.
Abstract. In this paper we study the following general MaxMinoptimization problem concerning undesirable (obnoxious) facility location: Given a set of n sites S inside a convex region P , construct m
garbage deposit sites Vm such that the minimum distance between these
sites Vm and the union of S and Vm , Vm S, is maximized. We present a
general method using Voronoi diagrams to approximately solve two such
problems when the sites Ss are points and weighted convex polygons
(correspondingly, Vm s are points and weighted points and the distances
are L2 and weighted respectively). In the latter case we generalize the
Voronoi diagrams for disjoint weighted convex polygons in the plane.
Our algorithms run in polynomial time and approximate the optimal
solutions of the above two problems by a factor of 2.
Introduction
The authors would like to acknowledge the support of research grants from NSF
of China, Research Grants Council of Hong Kong SAR, China (CERG Project No.
CityU1103/99E) and City University of Hong Kong
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 320329, 2000.
c Springer-Verlag Berlin Heidelberg 2000
321
min
{d(x, q)}
{x6=q}{xVm }{qVm S}
min
{x6=q}{xVm }{qVm S}
1
d(x, q), d(x, q) being the Euclidean distance in between x
with dw (x, q) = w(q)
and q.
We remark that the Undesirable Weighted Point Placement Problem (UWPP)
is a much more complex MaxMin-optimization problem. If set Vm is chosen such
322
that the objective function of UWPP reaches its optimal value (which is called
the m-optimal value of UWPP, denoted as dm ) then we call the thus chosen set
Vm a m-extreme set of UWPP, denoted as Vm .
It is obvious that in a solution to UWPP the undesirable facilities are farther
away from those sites with larger weights. Hence the sites with larger weights
can get more protect against the undesirable facilities. Although we formulate
the problem as the Undesirable Weighted Point Placement Problem in the plane,
it can be formulated as problem in other fields like packing satellites in the sky
or packing transmitters on the earth.
It should be noted that finding the optimal solutions, Vm , for either UPP
or UWPP is not an easy task. The exhaustive search method is not possible as
the spaces of the solutions to the problems are continuous regions in R2m and
the minimizing step of the objective function concerns some continuous regions
in R2 . So far we have not been able to obtain an algorithm to find an optimal
solution for either of the two problems even if it is of exponential time complexity.
The difficulty of the problem can also be seen from the following. It is not yet
known how to pack as many as possible unit circles in a given special polygon P ,
like a square. In this setting, S is empty and we want to determine the maximum
m , Vm ) is at least two [13].
set Vm such that the distance d(V
Although the problem is hard to solve, in practice, usually an approximate
solution is acceptable as long as the solution is efficient. In this paper we present
a general incremental Voronoi diagram algorithm which approximate the optimal
solution of the two problems by a factor of 2.
In this section we present an incremental Voronoi diagram algorithm for approximating the Undesirable Point Placement Problem (UPP). The basic ideas of the
algorithm are as follows: (1). We successively choose the points of Vm from a
discrete set. At i-th step we choose the point which is the farthest away from the
points in Vi1 chosen previously and all sites in S. (2). The point in Vi Vi1
which is the farthest from Vi1 S is always among the Voronoi vertices of
Vor(Vi1 S), vertices of polygon P and the intersection points of the Voronoi
edges of Vor(Vi1 S) and P .
Basically, the algorithm uses a strategy of computing points in Vm from a
finite discrete field rather than from a continuous field. The algorithm and analysis is as follows.
Algorithm UPP
Input: A convex polygon P , a set of points S in P .
Output: The set of points Vm in P .
Procedure:
1. Initialize V := .
2. Compute the Voronoi diagram of (V S), Vor(V S).
323
3. Find the set B consisting of the Voronoi vertices of (V S), the vertices of
P and the intersection points between Voronoi edges and the edges of P .
Among the points in B, choose the point v which maximizes d(v, qv ), v B,
where qv V S and Vor region(qv ) contains point v.
4. Update V := V {v} and return to Step 2 when |V | m.
We have the following theorem regarding the above algorithm.
Theorem 1. The output Vm generated by Algorithm UPP presents a 2-approximation to the optimal solution for the Undesirable Point Placement Problem
(UPP).
The proof of Theorem 1 is based on the following lemma, which is similar to
the methods used in [6,8].
Lemma 2. Given any convex polygon P and any set S of point sites in P , for
d
any set Vt of t points in P there exists a point p P such that d(p, Vt S) t+1
2 ,
where dt+1 is the (t + 1)-optimal value of the UPP, where d(p, Vt S) denotes
the Euclidean distance between point p and set Vt S.
Proof. Suppose that the lemma is not true. Then there exists a point set Vt
in P such that for any p P ,
max d(p, Vt S) <
dt+1
.
2
d
Let r be the value of the left-hand side and we have r < t+1
2 . For each point
q Vt S, draw a circle centered at q with radius r. By the optimality of r,
every pair of points in P and Vt S must be at most r distance away. Therefore,
it is obvious that the union of these circles must cover the whole area of P .
S. ConseThis implies that one of these circles must cover two points of Vt+1
d
= d(V
, V S) 2r. This contradicts the fact that r < t+1 . t
u
quently, d
t+1
t+1
t+1
324
In practice, we advocate the use of [7] to update the Voronoi diagram when a new
point is added and the point location algorithm of [5,12].
325
there are only results on the Voronoi diagram of points in the plane [10,11] before
this work.
Let S be a set of disjoint convex polygons in the plane which are associated
with weights w(s) 1, s S. The weighted Voronoi diagram of S (for short
WVD(S)) is a subdivision of the plane consisting of Voronoi regions, Voronoi
faces, Voronoi edges, Voronoi segments, Voronoi vertices and Voronoi dividing
points. Vor region(s) is defined as
Vor region(s) = {x|
1
1
d(x, s)
d(x, t), t S}.
w(s)
w(t)
P
Fig. 1. A weighted Voronoi diagram of three convex polygons.
326
In general, Vor region(s) in WVD(S) may have O(|S|) Voronoi faces, i.e.,
the region does not need to be connected and its connected parts do not need
to be simply connected. Overall, the WVD(S) can be computed in O(|S|3 ) time
and O(|S|2 ) space, using standard techniques in computational geometry [14].
3.2
327
Algorithm
d
1
d(x, qx ) < t+1 , x P
w(qx )
2
328
Proof for Theorem 5. Let vk be the k-th chosen point for set Vm by step 3 of
Algorithm UWPP. Similar to the proof of Theorem 1 we also have the result that
vk maximizes w(q1 x ) L(x, qx ), x P where qx Vk1 S and x Vor region(qx ).
We assert that 1 d(vk , qv ) = dw (Vk , Vk S). In fact, we have
w(qvk )
Concluding Remarks
329
for computing WVD(S) in Section 3 can be further improved. Finally, all the
facilities we consider are points (or weighted points); however, in practice sometimes the facilities might be of some size as well. It is not know whether our
method can be generalized to these situations. For example, what if the facilities
are unit circles?
References
[1] F. Aurenhammer, Voronoi diagrams: a survey of a fundamental geometric data
structures, ACM Comput. Surveys, 23(3), pp. 343-405, 1991.
[2] F. Aurenhammer and H. Edelsbrunner, An optimal algorithm for constructing
the weighted Voronoi diagram in the plane, Pattern Recognition, 17, pp. 251-257, 1984.
[3] J. Boissonnat, O. Devillers, R. Schott, M. Teillaud and M. Yvinec, Applications
of random sampling to on-line algorithms in computational geometry, Disc. Comp.
Geom. 8, pp. 51-71, 1992.
[4] O. Devillers, S. Meiser and M. Teillaud, Fully dynamic Delaunay triangulation
in logarithmic expected time per operation, Comp. Geom. Theory and Appl. 2, pp.
55-80, 1992.
[5] L. Devroye, E. M
ucke and B. Zhu, A note on point location in Delaunay triangulations of random points, Algorithmica, special issue on Average Case Analysis of
Algorithms, 22(4), pp. 477-482, Dec, 1998.
[6] T. Feder and D. Greene, Optimal algorithms for approximate clustering, Proc.
20th STOC, pp. 434-444, 1988.
[7] L. Guibas, D. Knuth and M. Sharir, Randomized incremental construction of
Delaunay and Voronoi diagrams, Algorithmica, 7, pp. 381-413, 1992.
[8] T. Gonzalez, Clustering to minimize the maximum intercluster distance, Theo.
Comput. Sci., 38, pp. 293-306, 1985.
[9] R. Klein, K. Mehlhorn and S. Meiser, Randomized incremental construction of
abstract Voronoi diagrams, Comp. Geom. Theory and Appl. 3, pp. 157-184, 1993.
[10] D.T. Lee and C.K. Wong, Voronoi diagrams in the L1 (L ) metric with twodimensional storage applications, SIAM. J Comput., 9, pp. 200-211, 1980.
[11] D.T. Lee, Two-dimensional Voronoi diagrams in the Lp metric, J. ACM, 27,
pp. 604-618, 1980.
[12] E. M
ucke, I. Saias and B. Zhu, Fast Randomized Point Location Without
Preprocessing in Two and Three-dimensional Delaunay Triangulations, Comp. Geom.
Theory and Appl, special issue for SoCG96, 12(1/2), pp. 63-83, Feb, 1999.
[13] K. Nurmela and P. Ostergard, Packing up to 50 equal circles in a square, Disc.
Comp. Geom. 18, pp. 111-120, 1997.
[14] F. Preparata and M. Shamos, Computational Geometry, Springer-Verlag, 1985.
[15] P. Widmayer, Y.F. Wu, and C.K. Wong, On some distance problems in fixed
orientations. SIAM J. Comput., 16, pp. 728746, 1987.
[16] C.K. Yap, An O(n log n) algorithm for the Voronoi diagram of a set of curve
segment, Disc. Comp. Geom. 2, pp. 365-393, 1987.
Abstract. Given a length m string f over a k-ary alphabet and a positive integer n, we develop efficient algorithms to generate
(a) all k-ary strings of length n that have no substring equal to f ,
(b) all k-ary circular strings of length n that have no substring equal to
f , and
(c) all k-ary necklaces of length n that have no substring equal to f ,
where f is an aperiodic necklace.
Each of the algorithms runs in amortized time O(1) per string generated,
independent of k, m, and n.
Introduction
331
Our algorithms are recursive, generating the string from left-to-right and applying the pattern matching as each character is generated. It is straight forward
to generate unrestricted strings in such a recursive manner and adding the pattern matching is easy as well. However, when the pattern is taken circularly, the
algorithm and its analysis become considerably more complicated.
The algorithm for generating the necklaces uses the recursive scheme introduced in [4]. This scheme has been used to generate other restricted classes
of necklaces, such as unlabelled necklaces [4], fixed-density necklaces [3], and
bracelets (necklaces that can be turned over), and is ideally suited for the present
problem.
Within the context of generating combinatorial objects, usually the primary
goal is to generate each object so that the amount of computation is O(1) per
object in an amortized sense. Such algorithms are said to be CAT (for Constant
Amortized Time). Clearly, no algorithm can be asymptotically faster. Note that
we do not take into account the time to print or process each object; rather we
are counting the total amount of data structure change that occurs.
The main result of this paper is the development of CAT algorithms to generate:
all k-ary strings of length n that have no substring equal to f ,
all k-ary circular strings of length n that have no substring equal to f , and
all k-ary necklaces of length n that have no substring equal to f , given that
f is Lyndon word.
Each algorithm has an embedded automata-based pattern matching algorithm.
In principle we could use the same approach to generate unlabelled necklaces,
fixed density necklaces, bracelets, or other types of necklaces, all avoiding a
forbidden necklace pattern. We expect that such algorithms will also be CAT,
but the analysis will be more difficult.
In the following section we provide background and definitions for these objects along with a brief description of the automata-based pattern matching
algorithm. In Section 3, we outline the details of each algorithm. We analyze the
algorithms, proving that they run in constant amortized time, in Section 4.
Background
We denote the set of all k-ary strings of length n with no substring equal to f by
Ik (n, f ). The cardinality of this set is Ik (n, f ). For the remainder of this paper
we will assume that the forbidden string f has length m. Clearly if m > n, then
Ik (n, f ) = k n , and if m = n then Ik (n, f ) = k n 1. If m < n, then an exact
formula will depend on the forbidden substring f , but can be computed using
the transfer matrix method. In Section 4 we derive several bounds on the value
of Ik (n, f ).
We denote the set of all k-ary circular strings of length n with no substring
equal to f by Ck (n, f ). The cardinality of this set is Ck (n, f ). In this case, we
allow the forbidden string to make multiple passes around the circular string.
332
Thus, if a string is in Ik (n, f ) and m > n, then it is still possible for the string
to contain the forbidden string f . For example, if = 0110 and f = 11001100,
then is not in the set Ck (4, f ). We prove that Ck (n, f ) is proportional to
Ik (n, f ) in Section 4.1.
Under rotational equivalence, the set of strings of length n breaks down
into equivalence classes of sizes that divide n. We define a necklace to be the
lexicographically smallest string in such an equivalence class of strings under
rotation. An aperiodic necklace is called a Lyndon word. A word is called a prenecklace if it is the prefix of some necklace. Background information, including
enumeration formulas, for these objects can be found in [4].
The set of all k-ary necklaces of length n with no substring equal to f is
denoted Nk (n, f ) and has cardinality Nk (n, f ). The set of all k-ary Lyndon words
of length n with no substring equal to f is denoted Lk (n, f ) and has cardinality
Lk (n, f ). Of course for Nk and Lk we consider the string to be circular when
avoiding f . The set of all k-ary pre-necklaces of length n with no substring equal
to f is denoted Pk (n, f ) and has cardinality Pk (n, f ). A standard application of
Burnsides Lemma will yield the following formula for Nk (n, f ):
1X
(d)Ck (n/d, f ).
(1)
Nk (n, f ) =
n
d|n
2.1
One of the best tools for pattern recognition problems is the finite automaton.
If f = f1 f2 fm is the pattern we are trying to find in a string , then a deterministic finite automaton can be created to process the string one character at
a time, in constant time per character. In other words, we can process the string
in real-time. The preprocessing steps required to set up such an automaton
can be done in time O(km), where k denotes the size of the alphabet (see [1],
pg. 334).
The automaton has m+1 states, which we take to be the integers 0, 1, . . . , m.
The state represents the length of the current match. Suppose we have processed
t characters in the string = a1 a2 an and the current state is s. The transition
function (s, j) is defined so that if j = at+1 matches fs+1 , then (s, j) = s + 1.
Otherwise, (s, j) is the largest state q such that f1 fq = atq+2 at+1 . If
the automaton reaches state m, the only accepting state, then the string f has
been found in . The transition function is efficiently created using an auxiliary
function fail. The failure function is defined for 1 i m such that fail(i) is the
length of the longest proper suffix of f1 fi equal to a prefix of f . If there is
no such suffix, then fail(i) = 0. This fail function is the same as the fail function
in the classic KMP algorithm.
Algorithms
333
generating k-ary strings with forbidden substrings and then consider circular
strings, focusing on how to handle the wraparound.
If n is the length of the strings being generated and m is the length of the
forbidden substring f , then the following algorithms apply for 2 < m n.
We prove that each algorithm runs in constant amortized time in the following
section. In the cases where m = 1 or 2, trivial algorithms can be developed. For
circular strings and necklaces, if m > n, then the forbidden substring can be
truncated to a length n string, as long as it repeats in a circular manner after
the nth character.
3.1
A nave algorithm to generate all strings in Ik (n, f ) will generate all k-ary strings
of length n, and then upon generation of each string, perform a linear time test
to determine whether or not it contains the forbidden substring. A simple and
efficient approach for generating strings is to construct a length n string by taking
a string of length n1 and appending each of the k characters in the alphabet to
the end of the string. This strategy suggests a simple recursive scheme, requiring
one parameter for the length of the current string. Since this recursive algorithm
runs in constant amortized time, the nave algorithm will take linear time per
string generated.
A more advanced algorithm will embed a real-time automata-based string
matching algorithm into the string generation algorithm. Since an automatabased string matching algorithm takes constant time to process each character,
we can generate each new character in constant time. We store the string being
generated in = a1 a2 an and at each step, we maintain two parameters: t
and s. The parameter t represents the next position in the string to be filled,
and the parameter s represents the state in the finite automata produced for the
string f . Recall that each state s is an integer value that represents the length
of the current match. Thus if we begin a recursive call with parameters t and
s, then f1 fs = ats at1 . We continue generating the current string as
long as s 6= m. When t > n, we print out the string using the function PrintIt().
Pseudocode for this algorithm is shown in Figure 1. The transition function
(s, j) is used to update the state s as described in Section 2.1. The initial call
is GenStr(1,0).
Following this approach, each node in the computation tree will correspond
to a unique string in Ik (j, f ) where j ranges from 1 to n. Since the amount of
computation at each node is constant, the total computation is proportional to
CompT reek (n, f ) =
n
X
Ik (j, f ).
j=1
We can show that this sum is proportional to Ik (n, f ), which proves the following
theorem. (Recall that the preprocessing required to set up the automata for
f takes time O(km). This amount is negligible compared to the size of the
computation tree.)
334
335
336
Fig. 4. An algorithm for generating k-ary circular strings with no substring equal
to f .
m1
X
m1
X
j=1
j=1
(m j)Ik (j, f ) +
Ik (n j, f )
The first sum represents the work done by SetMatch and the second the work
done by CheckSuffix. In Section 4.1 we show that this extra work is proportional
to Ik (n, f ). In addition, we also prove that Ck (n, f ) is proportional to Ik (n, f ).
These results prove the following theorem.
Theorem 2. The algorithm GenCirc(t, s) for generating k-ary circular strings
of length n with no substring equal to f is CAT.
3.3
Using the ideas from the previous two algorithms, we now outline an algorithm to
generate necklaces with forbidden necklace substrings. First, we embed the realtime automata based string matching algorithm into the necklace generation
algorithm described in [4]. Then, since we must also test the wraparound for
necklaces, we add the same tests as outlined in the circular string algorithm.
Applying these two simple steps will yield an algorithm for necklace generation
with no substring equal to the forbidden necklace f . Pseudocode for such an
algorithm is shown in Figure 5. The additional parameter p in GenNeck(t, p, s),
represents the length of the longest Lyndon prefix of the string being generated.
Lyndon words can be generated by replacing the test n mod p = 0 with the
test n = p. The initial call is GenNeck(1,1,0).
To analyze the running time of this algorithm, we again must show that
the number of necklaces generated, Nk (n, f ), is proportional to the amount of
computation done. In this case the size of the computation tree is
N eckCompT reek (n, f ) =
n
X
j=1
Pk (j, f )
337
However, as with the circular string case, not all nodes perform a constant
amount of work. The extra work performed by these nodes is bounded by
N eckExtraW orkk (n, f )
m1
X
m1
X
j=1
j=1
(m j)Pk (j, f ) +
Pk (n j, f )
Note that this expression is the same as the extra work in the circular string
case, except we have replaced Ik (n, f ) with Pk (n, f ).
In Section 4.2 we show that N eckCompT reek (n, f ) and NeckExtraWorkk (n, f ) are both proportional to n1 Ik (n, f ). In addition, we also prove that
Nk (n, f ) is proportional to n1 Ik (n, f ). These results prove the following theorem.
Theorem 3. The algorithm GenNeck(t, p, s) for generating k-ary necklaces of
length n with no substring equal to f is CAT, so long as f is a Lyndon word.
We remark that the algorithm works correctly even if f is not a Lyndon word
and appears to be CAT for most strings f .
In this section we will state the results necessary to prove that the work done
by each of the forbidden substring algorithms is proportional to the number of
strings generated. The constants in the bounds derived in this section can be
reduced with a more complicated analysis. The algorithms are very efficient in
practice. Space limitations prevent us from giving proofs or analyzing the first
algorithm, which has the simplest analysis. We do however, need one lemma
from that analysis.
Pn
Lemma 1. If |f | > 2, then j=1 Ik (j, f ) 3Ik (n, f ).
338
4.1
Circular Strings
In the circular string algorithm, the size of the computation tree is the same as
the previous algorithm, where it was shown to be proportional to Ik (n, f ). In
this case, however, there is some extra work required to test the wrap-around
of the string. Recall that this extra work is proportional to ExtraW orkk (n, f )
which is bounded as follows.
m1
m1
X
X
(m j)Ik (j, f ) +
Ik (n j, f )
ExtraW orkk (n, f )
j=1
j=1
j
n X
X
Ik (t, f ) +
j=1 t=1
n
X
Ik (j, f ).
j=1
n
X
Ik (j, f ) +
j=1
n
X
j=1
We have now shown that the total work done by the circular string algorithm is proportional to Ik (n, f ). Since the total number of strings generated is
Ck (n, f ), we must show that Ck (n, f ) is proportional to Ik (n, f ).
Theorem 4. If |f | > 2, then 3Ck (n, f ) Ik (n, f ).
These lemmas and Theorem 4 prove Theorem 2.
4.2
Necklaces
To prove Theorem 3, we must show that the computation tree along with the
extra work done by the necklace generation algorithm is proportional to Nk (n, f ).
To get a good bound on N eckCompT reek (n, f ) we need three additional lemmas;
the bound of the first lemma does not necessarily hold if f is not a Lyndon word.
P
Lemma 2. If f is Lyndon word where |f | > 2, then Pk (n, f ) nj=1 Lk (j, f ).
Lemma 3. If |f | > 2, then Lk (n, f ) n1 Ck (n, f ).
Pn
Lemma 4. If |f | > 2, then j=1 1j Ik (j, f ) n8 Ik (n, f ).
Applying the previous three lemmas, we show that the computation tree is
proportional to n1 Ik (n, f ).
N eckCompT reek (n, f ) =
n
X
Pk (j, f )
j
n X
X
1
j=1 t=1
n
X
j=1
Lk (t, f )
j=1 t=1
j=1
j
n X
X
Ck (t, f )
j
n X
X
1
j=1 t=1
Ik (t, f )
144
12
Ik (j, f )
Ik (n, f ).
j
n
339
This inequality is now used to show that the extra work done by the necklace
algorithm is also proportional to n1 Ik (n, f ). Recall that the extra work is given
by:
N eckExtraW orkk (n, f )
m1
X
m1
X
j=1
j=1
(m j)Pk (j, f ) +
j
n X
X
Pk (t, f ) +
j=1 t=1
n
X
Pk (n j, f )
Pk (j, f ).
j=1
Further simplification of this bound follows from the bound on NeckCompTreek (n, f ) along with Lemma 4.
N eckExtraW orkk (n, f ) 144
n
X
1
j=1
Ik (j, f ) +
144
Ik (n, f )
n
12 + 122
Ik (n, f ).
n
We have now shown that the total computation performed by the necklace
generation algorithm is proportional to n1 Ik (n, f ). From equation (1), Nk (n, f )
1
1
n Ck (n, f ), and since Ck (n, f ) 3 Ik (n, f ), Theorem 3 is proved.
References
1. A. Aho, J. Hopcroft, and J. Ullman, The Design and Analysis of Computer Algorithms, Addisom-Wesley , 1974.
2. D. Gusfield, Algorithms on Strings, Trees, and Sequences, Cambridge University
Press, 1997.
3. F. Ruskey, J. Sawada, An efficient algorithm for generating necklaces of fixed density, SIAM Journal on Computing, 29 (1999) 671-684.
4. F. Ruskey, J. Sawada, A fast algorithm to generate unlabeled necklaces, 11th Annual ACM-SIGACT Symposium on Discrete Algorithms (SODA), 2000, 256-262.
5. R.P. Stanley, Enumerative Combinatorics, Volume I, Wadsworth & Brooks/Cole,
1986.
MPI f
ur Informatik, Saarbr
ucken, Germany.
Currently TU Wien, Austria.
[email protected]
2
TU Wien, Austria.
[email protected]
Abstract.
We investigate the label number maximisation problem
(lnm): Given a set of labels , each of which belongs to a point feature
in the plane, the task is to find a largest subset P of so that each
P labels the corresponding point feature and no two labels from
P overlap.
Our approach is based on two so-called constraint graphs, which code
horizontal and vertical positioning relations. The key idea is to link the
two graphs by a set of additional constraints, thus characterising all
feasible solutions of lnm. This enables us to formulate a zero-one integer
linear program whose solution leads to an optimal labelling.
We can express lnm in both the discrete and the slider labelling model.
The slider model allows a continuous movement of a label around its
point feature, leading to a significantly higher number of labels that can
be placed. To our knowledge, we present the first algorithm that computes provably optimal solutions in the slider model. First experimental
results on instances created by a widely used benchmark generator indicate that the new approach is applicable in practice.
Introduction
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 340350, 2000.
c Springer-Verlag Berlin Heidelberg 2000
341
342
Four-slider
Two-slider
One-slider
Four-position
Two-position
One-position
343
Fig. 2. Optimal labelling of 700 point features in the four-slider model. Instance
randomly generated with a standardised procedure described in [2]
as long as the graphs satisfy certain conditions. The following theorem expresses
an important connection between constraint graphs and coordinate assignments.
Theorem 1. Let D = (V, A) be a constraint graph with arc weights Q|A| .
There exists a coordinate assignment c that respects A if and only if A does not
contain a directed cycle of positive weight.
Proof. For the forward direction assume
otherwise. Without loss of generality, let
C = (v1 , v2 ), (v2 , v3 ), . . . , (v|C| , v1 ) be a directed cycle of positive weight in A.
Since c respects A, it must respect in particular the arcs in C. It follows c(v2 )
c(v1 ) (1,2) , c(v3 ) c(v2 ) (2,3) , . . . , c(v1 ) c(v|C| ) (|C|,1)
P . Summing up
the left
sides
yields
zero,
summing
up
the
right
sides
yields
aC a . We get
P
0 aC a > 0, a contradiction.
For the backward direction of the proof, let A c be the set of inequalities
describing the requirements for a coordinate assignment. By Farkas Lemma,
there is a feasible solution if and only if there does not exist a vector y 0
with y T A = 0 and y T > 0. Assume otherwise, i.e., there is such a vector y.
Then y corresponds to a flow in A with positive weight. Since all supplies in the
corresponding network are zero, this flow must be circular and thus corresponds
to a directed cycle of positive weight.
t
u
In the following, we describe the construction of the pair (Dx , Dy ) for a given
instance of the label number maximisation problem.
344
Modelling point features. The positions of the k point features are specified in the
input set P . For each pi P with coordinates x(pi ) and y(pi ) we introduce a node
xi in Vx and a node yi in Vy ; one for its x-, one for its y-coordinate. We fix the
positions of the point features by inserting four directed paths Px = (x1 , . . . , xk ),
Px = (xk , . . . , x1 ), Py = (y1 , . . . , yk ) and Py = (yk , . . . , y1 ) with weights
xi xi+1 = x(pi+1 ) x(pi ), xi+1 xi = x(pi ) x(pi+1 ), yi yi+1 = y(pi+1 ) y(pi )
and yi+1 yi = y(pi ) y(pi+1 ) for i {1, . . . , k 1}.
We call the directed edges on these paths fixed distance arcs and refer to
them as AF . Figure 3 shows a set of point features and its representation in the
constraint graphs.
Lemma 1 (Proof omitted). A coordinate assignment c that respects AF results in a correct placement of point features (up to translation).
Modelling labels. Each label has to be represented by a rectangle r()
of width w() and height h(). Additionally, we have to ensure that will be
placed correctly with respect to its point feature a(), i.e., a() must lie on the
boundary of r().
Straightforwardly, we model a label by two nodes in Vx and two nodes
in Vy , representing the coordinates of r(). We call these nodes the left, right,
bottom and top limit of and refer to them as l , r , b and t , respectively.
We introduce four label size arcs AL () = {(l , r ), (r , l ), (b , t ), (t , b )} in
order to model the size of r(). The weights of these arcs are l r = w(),
r l = w(), b t = h() and t b = h(), see Fig. 4(a).
A label must be placed close to its point feature a(). Let x and y be the
nodes representing point a() in the constraint graphs. We add four proximity
arcs AP () = {(x, r ), (l , x), (y, t ), (b , y)}, as illustrated in Fig. 4(b). These
arcs have zero weight and exclude that the point feature a() lies outside the
rectangle r().
The point feature may still lie inside r(). We disallow this by adding at least
one of the four boundary arcs {(r , x), (x, l ), (t , y), (y, b )}, each of weight zero.
Note that these arcs are inverse to the proximity arcs for label . If, e.g., (r , x)
is present in Dx , it forcestogether with its inverse proximity arc (x, r )the
p4
p4
p2
14
p2
9
-9
8
-8
-14
p3
p1
p6
10
-11
-23
23
Px and Px
-7
13
11
7
-10
p5
-20
p3
-3
p1
p6
20
-13
p5
Py and Py
Fig. 3. Modelling the placement of point features with fixed distance arcs
t
h()
h()
w()
w()
b
x
345
r
0
b
x
Fig. 4. Modelling labels. (a) Label size arcs. (b) Proximity arcs. (c) Boundary
arcs
coordinate of the right side of r() to be equal to the coordinate of x; the label
has to be placed at its leftmost position. See also Fig. 4(c).
At this point we can influence the labelling model. We define a set AB ()
containing the boundary arcs for the different models:
Labelling model
Boundary arcs AB ()
Four-slider {(r , x), (x, l ), (t , y), (y, b )}
Slider
Two-slider {(t , y), (y, b )}
model
One-slider
{(y, b )}
Four-position {(r , x), (x, l ), (t , y), (y, b )}
Discrete
Two-position {(y, b ), (r , x), (x, l )}
model
One-position {(y, b ), (x, l )}
For a slider model, at least one arc a AB () must be contained in the constraint graph, for a discrete model at least two. E.g., for the four-slider model,
the set AB () consists of all four boundary arcs, one of which must be present in
the appropriate constraint graph. Note that we can express all six axis-parallel
rectangular labelling models we have introduced in Sect. 1 as additional requirements on the constraint graphs.
Lemma 2 (Proof omitted). Let be a label, c be a coordinate assignment
respecting AL (), AP () and at least d boundary arcs from AB (). Then c results
in a placement in which is represented by a rectangle r() of width w() and
height h(). The label is placed so that point feature a() lies on the boundary
of r() if d = 1 and on a corner of r() if d = 2.
Avoiding label overlaps. Until now we have assured that each label is placed
correctly with respect to its point feature. It remains to guarantee that the
intersection of rectangles is empty. A crucial observation is that it suffices to
consider only the pairs of labels that can possibly interact. If there is any overlap,
such a pair must be involved.
346
If
If
If
If
Note that the only case in which AS (, ) contains all four label separation
arcs occurs if and label the same point feature, i.e., a() = a().
Lemma 3 (Proof omitted). Let and be two labels that can possibly overlap
and let c be a coordinate assignment respecting AL (), AL () and A AS (, )
with |A| 1. Then c results in a placement in which the two rectangles r() and
r() do not overlap.
the boundary and label separation arcs as potential arcs Apot =
S We refer to S
A
()
b
R
a()
l
R
a()
347
In the previous section we have shown how to transform the label number maximisation problem into the combinatorial optimisation problem cgf. We propose
a zero-one integer linear programming formulation and a branch-and-cut algorithm for solving cgf. The goal is to find the set of additional boundary and
label separation arcs A and to determine which labels are to be placed.
We introduce two types of binary variables for this task: For each label there
is a variable y {0, 1}, indicating whether will be placed or not. Additionally,
there are variables xa {0, 1} for potential additional arcs a Apot . We get
(
y =
1
0
P
\ P
(
and xa =
1 aA
0 a Apot \ A .
We present the zero-one integer linear program (ILP) and show that it corresponds to cgf. We define Cp = Apot C.
348
max
(ILP)
subject to
xa 2y d 2
(ILP.1)
, , 6=
(ILP.2)
positive cycles C
(ILP.3)
a Apot
(ILP.4)
(ILP.5)
aAB ()
xa y y 1
aAS (,)
xa |Cp | 1
aCp
y {0, 1}
xa {0, 1}
First Experiments
We have implemented a simple strategy to solve the integer linear program based
on LEDA [6] and the ILP-solver in CPLEX [3]. Due to the fact that the ILP
may have an exponential number of positive cycle inequalities, we solve it iteratively, using a cutting plane approach: We start with an integer linear program
containing inequalities (ILP.1), (ILP.2), (ILP.4), (ILP.5) and a set of local cycle inequalities of type (ILP.3). We determine these inequalities by looking at
possible positive cycles involving up to two labels.
Let x
be a solution of an ILP in the iteration. If the corresponding constraint
graphs do not contain any positive cycles, x is an optimal solution for cgf.
Otherwise, we find a positive cycle and add the corresponding inequality to the
new integer linear program. Our separation procedure uses the Bellman-Ford
algorithm for detecting negative cycles applied to the constraint graphs after
multiplying the arc weights Q|Ax Ay | by 1. Our implementation is based
on the one given in [1].
349
Extensions
350
References
[1] B. V. Cherkassky and A. V. Goldberg, Negative-cycle detection algorithms, Mathematical Programming 85 (1999), no. 2, 277311.
[2] J. Christensen, J. Marks, and S. Shieber, An empirical study of algorithms for
point-feature label placement, ACM Transactions on Graphics 14 (1995), no. 3,
203232.
[3] ILOG, CPLEX 6.5 Reference Manual, 1999.
[4] G. W. Klau and P. Mutzel, Combining graph labeling and compaction, Proc. 8th In rn Castle, Czech Republic) (J. Kraternat. Symp. on Graph Drawing (GD 99) (Sti
tochvl, ed.), LNCS, no. 1731, SpringerVerlag, 1999, pp. 2737.
[5] G. W. Klau and P. Mutzel, Optimal compaction of orthogonal grid drawings, Integer
Programming and Combinatorial Optimization (IPCO 99) (Graz, Austria) (G. P.
Cornuejols, R. E. Burkard, and G. J. Woeginger, eds.), LNCS, no. 1610, Springer
Verlag, 1999, pp. 304319.
[6] K. Mehlhorn and S. N
aher, LEDA. A platform for combinatorial and geometric
computing, Cambridge University Press, 1999.
[7] M. van Kreveld, T. Strijk, and A. Wolff, Point labeling with sliding labels, Computational Geometry: Theory and Applications 13 (1999), 2147.
[8] B. Verweij and K. Aardal, An optimisation algorithm for maximum independent set
with applications in map labelling, Proc. 7th Europ. Symp. on Algorithms (ESA 99)
(Prague, Czech Republic), LNCS, vol. 1643, SpringerVerlag, 1999, pp. 426437.
[9] A. Wolff and T. Strijk, The map labeling bibliography,
http://www.math-inf.uni-greifswald.de/map-labeling/bibliography.
Abstract. Since the divergence between the processor speed and the
memory access rate is progressively increasing, an efficient partition of
the main memory into multibanks is useful to improve the overall system performance. The effectiveness of the multibank partition can be degraded by memory conflicts, that occur when there are many references
to the same memory bank while accessing the same memory pattern.
Therefore, mapping schemes are needed to distribute data in such a way
that data can be retrieved via regular patterns without conflicts. In this
paper, the problem of conflict-free access of arbitrary paths in bidimensional arrays, circular lists and complete trees is considered for the first
time and reduced to variants of graph-coloring problems. Balanced and
fast mappings are proposed which require an optimal number of colors
(i.e., memory banks). The solution for bidimensional arrays is based on a
combinatorial object similar to a Latin Square. The functions that map
an array node or a circular list node to a memory bank can be calculated
in constant time. As for complete trees, the mapping of a tree node to a
memory bank takes time that grows logarithmically with the number of
nodes of the tree.
Introduction
In recent years, the traditional divergence between the processor speed and the
memory access rate is progressively increasing. Thus, an efficient organization
of the main memory is important to achieve high-speed computations. For this
purpose, the main memory can be equipped with cache memories which have
about the same cycle time as the processors or can be partitioned into multibanks. Since the cost of the cache memory is high and its size is limited, the
multibank partition has mostly been adopted, especially in shared-memory multiprocessors [3]. However, the effectiveness of such a memory partition can be
limited by memory conflicts, that occur when there are many references to the
same memory bank while accessing the same memory pattern. To exploit to
the fullest extent the performance of the multibank partition, mapping schemes
?
This work has been supported by the Provincia Autonoma di Trento under a
research grant.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 351361, 2000.
c Springer-Verlag Berlin Heidelberg 2000
352
can be employed that avoid or minimize the memory conflicts [10]. Since it is
hard to find universal mappings mappings that minimize conflicts for arbitrary
memory access patterns several specialized mappings, designed for accessing
regular patterns in specific data structures, have been proposed in the literature (see [7,2] for a complete list of references). In particular, mappings that
provide conflict-free access to complete subtrees, root-to-leaves paths, sublevels,
and composite patterns obtained by their combination, have been investigated
in [4,5,1,6,9].
In the present paper, optimal, balanced and fast mappings are designed for
conflict-free access of paths in bidimensional arrays, circular lists, and complete
trees. With respect to the above mentioned papers, paths in bidimensional arrays
and circular lists are dealt with for the first time. Moreover, access to any (not
only to root-to-leaves) paths in complete trees is provided.
Conflict-Free Access
353
mapping U will be called fast if the color of each node can be computed quickly
(possibly in constant time) without knowledge of the coloring of the entire data
structure. Among all possible conflict-free mappings for a given template of a
data structure, the more interesting ones are those that use the minimum possible number of memory banks. These mappings are called optimal. It is worth
to note that not only the template size but also the overlapping of template
instances in the data structure determine a lower bound on the number of memory banks necessary to guarantee a conflict-free access scheme. This fact will be
more convincing by the argument below for accessing paths in D.
Let GD = (V, E) be the graph representing the data structure D. The
template Pk is a path of length k in D. The template instance Pk [x, y] is the
path of length k between two vertices x and y in V , that is, the sequence
x = v1 , v2 , . . . , vk+1 = y of vertices such that (vh , vh+1 ) E for h = 1, 2, . . . k.
The conflicts can be eliminated on Pk [x, y] if v1 , v2 , . . . , vk+1 are assigned to
all different memory banks. The conflict-free access to Pk can be reduced to a
classical coloring problem on the associated graph GDPk obtained as follows.
The vertex set of GDPk is the same as the vertex set of GD , while the edge
(r, s) belongs to the edge set of GDPk iff the distance drs between the vertices r
and s in GD satisfies drs k, where the distance is the length of the shortest
path between r and s. Now, colors must be assigned to the vertices of GDPk so
that every pair of vertices connected by an edge is assigned a couple of different
colors and the minimum number of colors is used. Hence, the role of maximum
clique in GDPk is apparent for deriving lower bounds on the conflict-free access
on paths. A clique K for GDPk is a subset of the vertices of GDPk such that
for each pair of vertices in K there is an edge. By well-known graph theoretical
results, a clique of size n in the associated graph GDPk implies that at least n
different colors are needed to color GDPk . In other words, the size of the largest
clique in GDPk is a lower bound for the number of memory banks required to
access paths of length k in D without conflicts.
On the other hand, the conflict-free access to Pk on GD is equivalent to color
the nodes of GD in such a way that any two nodes which are at distance k or less
apart have assigned different colors. Unfortunately, this latter coloring problem is
NP-complete [8] for general graphs. In the next three sections, optimal mappings
for bidimensional arrays, circular lists and complete binary trees will be derived
for conflict-free accessing Pk .
354
x
(a)
x
(b)
355
0
3
6
1
4
7
2
5
0
3
6
1
4
7
2
5
1
4
7
2
5
0
3
6
1
4
7
2
5
0
3
6
2
5
0
3
6
1
4
7
2
5
0
3
6
1
4
7
3
6
1
4
7
2
5
0
3
6
1
4
7
2
5
0
4
7
2
5
0
3
6
1
4
7
2
5
0
3
6
1
5
0
3
6
1
4
7
2
5
0
3
6
1
4
7
2
6
1
4
7
2
5
0
3
6
1
4
7
2
5
0
3
7
2
5
0
3
6
1
4
7
2
5
0
3
6
1
4
0
3
6
1
4
7
2
5
0
3
6
1
4
7
2
5
1
4
7
2
5
0
3
6
1
4
7
2
5
0
3
6
2
5
0
3
6
1
4
7
2
5
0
3
6
1
4
7
3
6
1
4
7
2
5
0
3
6
1
4
7
2
5
0
4
7
2
5
0
3
6
1
4
7
2
5
0
3
6
1
5
0
3
6
1
4
7
2
5
0
3
6
1
4
7
2
6
1
4
7
2
5
0
3
6
1
4
7
2
5
0
3
7
2
5
0
3
6
1
4
7
2
5
0
3
6
1
4
0
3
6
1
4
7
2
5
0
3
6
1
4
7
2
5
1
4
7
2
5
0
3
6
1
4
7
2
5
0
3
6
2
5
0
3
6
1
4
7
2
5
0
3
6
1
4
7
3
6
1
4
7
2
5
0
3
6
1
4
7
2
5
0
4
7
2
5
0
3
6
1
4
7
2
5
0
3
6
1
5
0
3
6
1
4
7
2
5
0
3
6
1
4
7
2
6
1
4
7
2
5
0
3
6
1
4
7
2
5
0
3
7
2
5
0
3
6
1
4
7
2
5
0
3
6
1
4
356
k/2
(k+1)/2
k/2 + 1
(k+1)/2+1
(k+1)/2
k/2 + 1
(k+1)/2-1
k/2
(a)
(b)
Fig. 3. Relative positions in A of two nodes which are assigned to the same
color: (a) k even, (b) k odd.
Let a circular list C be the data structure D to be mapped into the multibank
memory system. A circular list of n nodes, indexed consecutively from 0 to n 1,
is a sequence of n nodes such that node i is connected to both nodes (i1) mod n
and (i + 1) mod n.
The graph GC = (V, E) representing C is a ring, whose vertices correspond
to the elements of C and whose arcs correspond to any pair of adjacent elements
of C. For the sake of simplicity, C will be used instead of GC since there is no
ambiguity.
Lemma 2. Let M =
n
(k + 1) +
n mod
(k+1)
n
(k+1)
if n < k + 1,
if n k + 1.
357
0
1
5
4
2
5
1
0
Set M =
(k + 1) +
n mod
(k+1)
n
(k+1)
if n < k + 1
if n k + 1
C,
the
color
x mod M
if x <
(x) =
(x ) mod (M 1) if x
Set = sM where s =
Note that a linear (that is, non circular) list L can be optimally colored to
conflict-free access Pk with M 0 = k + 1 colors, which matches the trivial lower
bound given by the number of nodes in Pk . In fact, L can be optimally colored
by a naive algorithm which assigns to node x the color (x) = x mod M 0 . Such
a naive algorithm does not work for circular lists.
Theorem 2. The Circular-List-Coloring mapping is optimal, fast, and balanced.
Let a rooted complete binary tree B be the data structure to be mapped into
the multibank memory system. The level of node x B is defined as the number
of edges on the path from x to the root, which is at level 0. The maximum level
of the nodes of B is the height of B. Let LevB (i) be the set of all nodes of B at
level i 0. A complete binary tree of height H is a rooted tree B in which all
the leaves are at the same level and each internal node has exactly 2 children.
358
Thus, LevB (i) contains 2i nodes. The h-th ancestor of the node (i, j) is the node
(i h, b 2jh c), while its children are the nodes (i + 1, 2j) and (i + 1, 2j + 1), in the
left-to-right order.
From now on, the generic node x, which is the j-th node of LevB (i), with
j 0 counting from left to right, will be denoted by x = (i, j). Therefore, the
generic path instance Pk [x, y] will be denoted by Pk [(i, j), (r, s)], where x = (i, j)
and y = (r, s).
k
k
Lemma 3. At least M = 2b 2 c+1 + 2d 2 e 2 memory banks are required to
conflict-free access Pk in B.
k
Proof
Consider a generic node x = (i, j). All the 2b 2 c+1 1 nodes in the
subtree S of height b k2 c rooted at the b k2 c-th ancestor of x are mutually at
distance not greater than k.
In addition, consider the d k2 e nodes, 1 , 2 , . . . d k e , ancestors of x, on the
2
path I of length d k2 e from the b k2 c-th ancestor of x up to the k-th ancestor of
x. All these nodes are at distance not greater than k from node x, and together
with the nodes of S they are at mutual distance not greater than k.
Moreover, for 1 j d k2 e 1, consider the 2j +1 1 nodes in the complete
subtree of height j = k b k2 c j 1, rooted at the j s child which does not
belong to I. Such nodes are at distance not greater than k from x. Furthermore,
these nodes, along with the nodes of S and I, are all together at mutual distance
not greater than k.
Hence, in the associated graph GDPk there is at least a clique of size
2
bk
2 c+1
k
k
dX
dX
2 e1
2 e2
k
k
j +1
bk
c+1
1+
1 =2 2
1+
2
2h+1 1 .
+
+
2
2
j=1
h=0
From that, the claim easily follows. Figure 5 shows a subset KB (k) of nodes of
B which are at pairwise distance not greater than k, for k = 3 and 4, and hence
forms a clique in the associated graph GBPk .
An optimal conflict-free mapping to color a complete binary tree B acts as
follows.
A basic subtree KB (k) defined as in the proof of Lemma 3 is identified and
colored. Such a tree is then overlaid to B in such a way that the uppermost k2
levels of B coincide with the lowermost k2 levels of KB (k). Then, the complete
coloring of B is produced level by level by assigning to each node the same color
as an already colored node.
Formally, for a given k, define the binary tree KB (k) as follows:
KB (k) has a leftmost path of k + 1 nodes.
the root of KB (k) has only the left child;
a complete subtree of height i 1 is rooted at the right child of the node at
level i on the leftmost path of KB (k).
k
359
2
1
(a)
2
1
S
x
(b)
For the sake of simplicity, to color the remaining part of B, the levels are
counted starting from the
root of KB (k). That is, the level of the root of B will
be renumbered as level k2 + 1. Now, xed x = (0, k), the algorithm to color B
acts as follows.
Algorithm Binary-Tree-Coloring (B, k);
k
Set M = 2 2 +1 + 2 2 2;
Color KB (k) with M colors;
Visit the tree B in breadth rst search, and for each node x = (i, j)
of B, with j k + 1, do:
k
Set
= jmod2 2 , = log( + 1), = k + 1 and
j
1 mod 2;
= 21
Assign to x the same color as that of the node y = (r, s), where
r =i+
and
j
if = 0
2
s=
j
2 + 21 + mod 21 if = 0
2
Examples of colorings to conict-free access P3 and P4 are illustrated in
Figure 6.
360
4
(a)
6
1
(b)
Conclusions
In this paper, the problem of conflict-free accessing arbitrary paths Pk in particular data structures, such as bidimensional arrays, circular lists and complete
trees, has been considered for the first time and reduced to variants of graphcoloring problems. Optimal, fast and balanced mappings have been proposed.
Indeed, the memory bank to which a node is assigned is computed in constant
time for arrays and circular lists, while it is computed in logarithmic time for
complete trees. However, it remains as an open question whether a tree node
can be assigned to a memory bank in constant time.
References
1. V. Auletta, S. K. Das, M. C. Pinotti, and V. Scarano, Toward a Universal
Mapping Algorithm for Accessing Trees in Parallel Memory Systems, Proceedings
of IEEE Intl Parallel Processing Symposium, Orlando, pp. 447-454, Apr. 1998.
2. V. Auletta, A. De Vivo, V. Scarano, Multiple Template Access of Trees in Parallel Memory Systems. Journal of Parallel and Distributed Computing, Vol. 49,
1998, pp. 22-39.
3. G.E. Blelloch, P.B. Gibbons, Y. Mattias and M. Zagha, Accounting for Memory
Bank Contention and Delay in High-Bandwidth Multiprocessors, IEEE Trans.
on Parallel and Distrib. Systems, Vol. 8, 1997, pp. 943-958.
361
Introduction
The Fibonacci heap was invented by Fredman and Tarjan [3] in 1987. Since
then, there have been two alternatives that can support n insert and delete-min
operations, and m decrease-key operations in O(m + n log n) time. The relaxed
heaps by Driscoll, et. al [2] have the same overall complexity with decrease-key
with O(1) worst case time, but are difficult to implement. The other alternative is
the 2-3 heap invented by the author [5], which supports the same set of operations
with the same time complexity. Although the 2-3 heap is simpler and slightly
more efficient than the Fibonacci heap, the O(1) time for decrease-key is in
the amortized sense, meaning that the time from one decrease key to the next
can not be smooth. Two representative application areas for these operations
will be the single source shortest path problem and the minimum cost spanning
tree problem. Direct use of these operations in Dijkstras [1] and Prims [4]
algorithms with those data structures will solve these two problems in O(m +
n log n) time, where n and m are the numbers of vertices and edges of the given
graph. Logarithm here is with base 2, unless otherwise specified.
A Fibonacci heap is a generalization of a binomial queue invented by Vuillemin
[6]. When the key value of a node v is decreased, the subtree rooted at v is removed and linked to another tree at the root level in the Fibonacci and 2-3 heap.
This removal of a subtree may cause a chain effect to keep structural properties of those heaps, resulting in worst case time greater than O(1), although it
is O(1) amortized time. As an alternative to the Fibonacci heap, Driscoll, et.
al. proposed a data structure called a relaxed heap, whose shape is the same
as that of a binomial queue. The requirement of heap order is relaxed in the
relaxed heap; a certain number of nodes are allowed to have smaller key values
than those of their parents. Those nodes are called bad children in [2] and inconsistent nodes in this paper. On the other hand, the 2-3 heaps is proposed as
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 362372, 2000.
c Springer-Verlag Berlin Heidelberg 2000
363
another alternative to the Fibonacci heap. While the Fibonacci heap is based
on binary linking, 2-3 heaps are based on ternary linking; we link three roots of
three trees in increasing order according to the key values. We call this path of
three nodes a trunk. We allow a trunk to shrink by one. If there is requirement
of further shrink, we make adjustment by moving a few subtrees from nearby
positions. This adjustment may propagate, taking time more than O(1).
In this paper, we combine the ideas of the relaxed heap and 2-3 heap; we
use ternary linking and allow a certain number of inconsistent nodes. Ternary
linking gives us more flexibility to keep the number of inconsistent nodes under
control. The new data structure is called a trinomial heap, and is simpler and
easier to implement than the relaxed heap. In the relaxed heap which is based
on binary linking, we must keep each bad child at the rightmost branch of its
parent, causing difficult book-keeping. The trinomial heap is constructed by
ternary linking of trees repeatedly, that is, repeating the process of making the
product of a linear tree and a tree of lower dimension. This general description
of r-ary trees is given in Section 2. The definition of trinomial heaps and their
operations are given in Section 3. In Section 4, we implement decrease-key in
O(1) amortized time. In Section 5, we implement it with O(1) worst case time.
In Section 6, we give several practical considerations for implementation. Section
7 concludes the paper.
In this paper we analyze the number of key comarisons for computing time
as the times for other operations are proportional to it. We mainly deal with
decrease-key and delete-min in this paper since the main application areas are
the single source shortest path problem and the minimum cost spanning tree
problem and we can build up the heap of size n at the beginning. The nodes
not adjacent with the source can be inserted with infinite key values at the
beginning. As shown in Section 2, the time for building the heap can be O(n).
Thus we can concentrate our discussion on decrease-key and delete-min after the
heap is built.
We borrow some materials from [5] in this section, as the trinomal heap and the
2-3 heap share the same basic structure. We define algebraic operations on rooted
trees as the basis for priority queues. A tree consists of nodes and branches, each
branch connecting two nodes. The root of tree T is denoted by root(T ). A linear
tree of size r is a liner list of r nodes such that its first element is regarded as
the root and a branch exists from a node to the next. The linear tree of size r is
expressed by bold face r. Thus a single node is denoted by 1, which is an identity
in our tree algebra. The empty tree is denoted by 0, which serves as the zero
element. A product of two trees S and T , P = ST , is defined in such a way that
every node of S is replaced by T and every branch in S connecting two nodes
u and v now connects the roots of the trees substituted for u and v in S. Note
that 2 2 6= 4, for example, and also that ST 6= T S in general. The symbol
364
Tadao Takaoka
365
4 e
2 e
3 e
,
@
@
,@`@`````````5
6 ,
e
7 e
e
16 ,
e
15@e
19@e
,
,
@
@
,
,
,
e
@e 13 ,e 11@e 20 ,e 17,,e
8 ,
10 ,
e
9
, 22 e , 21 ,e ,@18@e 26 ,e
,
14 ,
e
23 ,
e
, ,
,
,
25 ,
e
30 ,
e
29 ,
e
,
31 ,
e
Trinomial Heaps
We linked r trees in heap order in form (1). We relax this condition in the
following way. A node is said to be inconsistent if its key value is smaller than
that of its head node. Otherwise the node is said to be consistent. An active
node is either an inconsistent node or a node which was once inconsistent. The
latter case occurs when a node becomes inconsistent and then the key value of
366
Tadao Takaoka
its head node is decreased, and the node becomes consistent again. Since it is
expensive to check whether the descendants of a node become consistent when
the key value of the node is decreased, we keep the children intact. Note that we
need to look at the roots and active nodes to find the minimum key in the heap.
If the number of active nodes in the given r-nomial queue is bounded by t, the
queue is said to be an r-nomial heap with tolerance t. We further require that
the nodes except for the head node on each trunk are sorted in non-decreasing
order of their key values, and that there are no active nodes in each main trunk,
that is, main trunks are sorted. Note that an r-nomial queue in the previous
section is an r-nomial heap with tolerance 0.
When r = 3, we call it a trinomial heap. In a trinomial heap we refer to the
three nodes on a trunk of dimension i as the head node, the first child and the
second child. Note that each node of dimension i(> 0) is connected downwards
with first children of dimension 1, ..., i 1. It is further connected downward
and/or upward with trees of dimension i or higher. We refer to the trees in (2)
and their roots as those at the top level, as we often deal with subtrees at lower
levels and need to distinguish them from the top level trees. The sum P + Q
of the two trinomial heaps P and Q is defined similarly to that for polynomial
queues. Note that those sum operations involve computational process based on
merging. We set t = dlog3 (n + 1)e 1 as the default tolerance.
Example 2. A trinomial heap with tolerance 3 with an underlying polynomial
of trees P = 2 32 + 2 3 + 2 is given below. Active nodes are shown by black
circles. We use t = 3 just for explanation purposes, although the default is 2.
6 `
e ``
4 e
3 e
``````9
@
,
@
@19@e
,
7 ,
e
16 ,
e
17@e
@2 u
`e
, 10 ,e ,@5@u 13 ,e ,@11@e 20 ,e , 15 ,u ,
e
8 ,
,
, , , ,@
14 ,
e
23 ,
e
22 ,
e
21 ,
e
18@e
26 ,
e
, 29 ,e ,
,
25 ,
e
30 ,
e
,
31 ,
e
367
368
Tadao Takaoka
queues with r=3 and trinomial heaps. As shown in Section 2, the amortized
time for insert is O(1) with r = 3.
@ e
@
u
,,@@
v u
,
wu
,
@ or e
@u
v
,,@@
we
,
u e
,
(Before)
(After)
Fig. 3. reordering
(Before)
,,
v u
v e
,,
(After)
,,
wu
w e
,,
,
e
v ,
,
w ,
e
,,
w
,
u,
Fig. 4. Rearrangement
Example 3. Let us perform delete-min on the trinomial heap in Fig. 2. Then the
biggest tree is broken up as in Fig. 5. After the subtrees rooted at nodes with
key 6 and 5 are swapped, the resulting trees and the trees at the top level will
be merged.
6 e
4 e
3 e
,
@
@
,@
9 e
7 ,
e
16 ,
e
17@e
@
@
@
, , 19@e
,
,
8 e
, 10,e 5@,u 13,,e 11,@@e 20 ,e 15,,u
14 ,
e
23 ,
,e 22 ,e 21,,e 18,@e 26 ,e
25 ,
e
30 ,
e
29 ,
e
,
31 ,
e
369
We prepare an array, called active, of size t(= k 1), whose elements are active nodes of dimension i (i = 1, ..., k 1). That is, we have at most one active
node for each dimension greater than 0. If there is no active node of dimension
i, we denote active[i] = . Suppose we perform decrease-key on node v of dimension i, which is now active. If active[i] = , we set active[i] = v and finish.
If active[i] = u, we perform rearrangement and/or reordering on u and v, and
adjust active accordingly. If we perform reordering, rearrangement and/or reordering will proceed to higher dimensions. This is like carry propagation over
array active, so the worst case time is O(log n). Similarly to the insert operation, we can easily show that the amortized time for decrease-key is O(1). As
370
Tadao Takaoka
In this section, we implement trinomial heaps with O(1) worst case time for
decrease-key. We prepare a one-dimensional array point of pointers to the list
of active nodes for each dimension, an array count, and counter. The variable
counter is to count the total number of active nodes. The size of the arrays is
bounded by the number of dimensions in the heap. The list of nodes for dimension
i contains the current active nodes of dimension i. The element count[i] shows the
size of the i-th list. To avoid scanning arrays point and count, we prepare another
linked list called candidates, which maintains a first-in-first-out structure for
candidate dimensions for the clean-up operation. With these additional data
structures, we can perform decrease-key with a constant number of operations.
Note that we need to modify these data structures on delete-min as well, details
of which are omitted.
Example 5. In this example, we have t = 7. If we create an active node of
dimension 1, we go beyond the tolerance bound, and we perform clean-up using
nodes a and b. Suppose this is a rearrangement not followed by reordering. Then
a or b is removed from the 3rd list and the first item in candidates is removed.
Next let us perform reordering using e and f . First we remove e and f from
the 6-th list. Suppose label(e) label(f ), and e becomes active in the 7-th
dimension. Then we append e to the 7-th list, and remove 6 from and append
7 to the list of candidates. See Fig. 7. This is a simplified picture. To remove
an active node from a list of active nodes in O(1) time, those lists need to be
doubly linked.
Practical Considerations
count
point
? e?
h
?
? a?
c
? b?
371
candidates
3
and dim = i, a pointer to the head node of the i-th trunk, and an array of size
d, whose elements are pairs (f irst, second). The f irst of the j-th element of the
array points to the first node on the j-th trunk of v. The second is to the second
node. If we prepare the fixed size d for all the nodes, we would need O(n log n)
space. By implementing arrays by pointers, we can implement our algorithm
with O(n) space, although this version will be less time-efficient.
Concluding Remarks
References
1. Dijkstra, E.W., A note on two problems in connexion with graphs, Numer. Math.
1 (1959) 269-271.
372
Tadao Takaoka
!"#
$
%
()% *)
()( ) *)%)*
#
$ )
* )
!"
+ , -
*
."
&/0123'
-
#
+
#
$
)
$ /!453
.
$ !"$
& , '
&/0%163'
7
8!"
9
:
) 7"
+
!"
- * -
;
-
<
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 373-382, 2000.
Springer-Verlag Berlin Heidelberg 2000
374
2.
01
B
B
B
B
@
101
B
C
B
C
B
C
B
C
B
A
1 B
@0
1
1
1
.. ..
.
.
1
1 0 ::: 0 1
01
B
@0
1
0
0 0
0 1
1
0 0
1 1
0
1
0C
B
1 1
0C
.. C
.. ..
B
.. C
.
.
.. ..
.C
C
B
.
.
.C
C
B
C
1 1 0C@
A
1
1
0
1 ::: 1 1 1A
0 1 ::: 1 0 1
1 1 ::: 1 0 1
0
1
0
0
0
1
0
1
1
1
0
0
1
0
01
0C
1A
1
01
B
@1
1
1
0 0
1 0
0
1
1
0
0
1
1
1
01
0C
0A
1
and
M5
Tucker has shown that a 0/1-matrix A is C1P if and only if it is not possible to
permute the rows and columns of A such that any of the ve forbidden matrices
occurs as a submatrix.
Based on tis result we can obtain an integer programming formulation of
WC1P. We will rst introduce appropriate notations.
For a given WC1P we are looking for an (m; n)-matrix with 0/1 entries which
has the consecutive ones property for rows and minimizes a certain objective
function. This matrix will be represented by variables xij , i = 1; : : : ; m, j =
1; : : : ; n, where xij represents the matrix entry of row i and column j . We will
interpret x = (x11 ; : : : ; x1n ; : : : ; xm1 ; : : : ; xmn ) as vector or as matrix whatever
is more appropriate. In the following we deal with inequalities that have to be
satised by x. In most cases, the coecients of these inequalities are specied
by a matrix. Let A be an (l; k )-matrix of coecients. For an ordered l-tuple
I = (r1 ; : : : ; rl ) with pairwise distinct entries ri 2 f1; : : : ; mg and an ordered
k -tuple J = (c1 ; : : : ; ck ) with pairwise distinct entries cj 2 f1; : : : ; ng we dene
A xI J =
XX
l
=1 =1
aij xri cj :
For simplicity we will just say, for example, \A xI J a0 for all (l; k )-tuples
(I; J )", meaning that all l-tuples I = (r1 ; : : : ; rl ) and all k -tuples J = (c1 ; : : : ; ck )
are allowed for mapping A to x. Whenever we use A x we assume that I =
(1; : : : ; m) and J = (1; : : : ; n).
375
Now let a 0/1-matrix B be given as input. We are looking for a C1P matrix x
that resembles B as closely as possible. If x contains a 1 where B contains a 0, we
add a penalty co , if x contains a 0, where 1 would be preferred, we add a penalty
cz . Therefore the following objective function value (penalty) is associated with
x:
X
X
co
xij + cz
(1 xij )
i;j
bij
i;j
bij
=0
= co
=1
xij
cz
i;j
bij
xij +
i;j
=0
bij
cz
i;j
=1
bij
=1
ij
M1 x
M2 x
M3 x
M4 x
M5 x
k
IJ
IJ
IJ
IJ
IJ
xij
i;j
2k + 3
4k + 5
3k + 2
8
10
2 f0; 1g
cij xij
The validity of this formulation is clear, since for a 0/1-matrix x all Tucker
matrices are forbidden as submatrices by this set of inequalities.
3.
We will now show that the IP formulation given above is not a suitable one in
the sense that stronger inequalities can be derived. To this end we will associate
a polytope with the consecutive ones problem. For background in polyhedral
combinatorics we refer to [P95].
We dene the consecutive ones polytope as
m;n
PC1
= convfM j M is an (m; n)-matrix with C1Pg:
m;n
It is easy to see that PC1
has full dimension m n. Namely, the zero matrix
is C1P and, for every 1 i m and 1 j n, the matrix consisting of zeroes
only except for a one in position ij is C1P. This gives a set of n m + 1 anely
independent C1P matrices.
376
m;n
Let aT x a0 be a valid inequality for PC1
and let m0 m and n0 n. We
m ;n
is obtained from aT x a0 by trivial
say that the inequality aT x a0 for PC1
lifting if
n
aij = aij if i m and j n,
0 otherwise.
0
Theorem 1
Let a x a0 be a facet-dening inequality for PC1 and let m0 m and
0
n n. If a x a0 is trivially lifted then the resulting inequality denes a facet
of PC1 .
m;n
m ;n
Theorem 2
xij
For all m 1, n 1, 1 i
m;n
1 dene facets of PC1
.
377
m;n
We are interested in getting more insight into the facet structure of PC1
.
In this section we will desribe four types of facet-dening inequalities that can
then be used to replace the IP formulation above with a stronger formulation.
The rst two inequalities are based on two classes of matrices F1 and F2 ,
for k 1. These matrices are (k +2; k +2)-, respectively (k +2; k +3)-matrices and
have entries 1, 0 and +1, where for convenience we write \ " (\+") instead
of \ 1" (\+1"). The matrices are shown in Figure 2.
k
0+
B
B
B
B
B
B
@
1
C
.. C
.C
C
C
C
+A
+
+
+
.. ..
.
.
+ +
0 ::: 0 +
+ 0 ::: 0
+
0+
B
B
B
B
B
B
@
Figure 2: Matrices
F1
1
C
.. C
.C
C
C
C
A
+
+
+
..
.. ..
.
.
.
+ +
0 ::: 0 + +
0 ::: 0 +
+
and
F2
Proof. Due to Theorem 1, we only need to show that this class of inequalities is
m;n
facet-dening for PC1
with m = n = k + 2. Moreover, we only need to consider
the canonical ordered index sets I = f1; 2; : : : ; mg and J = f1; 2; : : : ; ng. Let
m;n
aT x a0 denote this inequality and let F = fx j aT x = a0 g \ PC1
denote the
induced face.
We rst show that the inequality is valid. Let x be a 0/1-matrix such that
F1 x > 2k + 3. Then x must have 0 entries at the \ "-positions of F1 and 1
entries at the \+"-positions. We now show that we cannot obtain a C1P matrix
no matter how the remaining entries of x are assigned and how the columns of
x are permuted. We call a row bad if and only if there is a forced 0 between
two forced 1 entries. Note that x has exactly one bad row. Now consider any
sequence of permutations of adjacent columns of x. The status of a row changes
if and only if the entries of this row in the two columns are a forced 0 and a
forced 1. For each pair of columns of x there is an even number (0 or 2) of rows
with this property. Thus for any column permutation of x the number of bad
rows remains odd and therefore at least one. But a matrix with a bad row cannot
be C1P and validity of the inequality follows.
m;n
Since PC1
is full-dimensional, facet-dening inequalities dening the same
facet only dier by multiplication with a positive scalar. Now let bT x b0 be
m;n
m;n
a facet-dening inequality for PC1
such that F fx j bT x = b0 g \ PC1
. If
we can show that b = a, for some > 0, then is is proven that aT x a0
k
378
is facet-dening. We will show this in three steps. Let = b11 . We call C1P
matrices x that satisfy aT x = a0 solutions.
Every 0/1-matrix with 2k + 3 1's in the \+" positions and 0's otherwise is a
solution. We call such matrices standard solutions in the following. Let x1 and
x2 be two standard solutions where x111 = 0 and x212 = 0. Then we have
0 = bT x1
bT x2 = b12
b11
and therefore b12 = b11 = . By using appropriate matrices we can thus show
that bij = for all \+"-positions ij .
Consider the standard solution x1 with xk+2;k+2 = 0. Let x2 be a matrix
which is identical to x1 except for an additional 1 in a \0"-position next to an
\+"-position in any row i. Let this position be il. Then x2 is a solution and we
obtain
0 = bT x1 bT x2 = bil ;
i.e., bil = 0. Extending the chain of 1's to the next \0"-positions eventually shows
that bis = 0 for all \0"-positions is of row i. Since this holds for every row i we
can show that bij = 0 for all \0"-positions ij .
Finally let x1 be a standard solution with x11 = 0. Construct x2 from x1 as
follows. Set x211 = 1 and x21;k+2 = 1 and insert column k + 2 after column 1.
This matrix is not C1P, but if all 0-entries of row k + 1 are changed to 1, then
we obtain a C1P matrix. Now
0 = bT x1
bT x2 = b11
b1;k+2 ;
Proof. The proof is similar to the previous one. Here rows of x are called bad if
and only if there is forced 0 between two forced 1 entries and a forced 1 between
two forced 0 entries. Then the verication of validity and the proof that the
inequalities are facet-dening follows along the same lines as for F1 .
ut
Corresponding to the two single Tucker matrices M4 and M5 we have the
(4; 6)-matrix F3 and the (4; 5)-matrix F4 shown in Figure 3.
k
Theorem 5
(a) The inequalities F3 xI J
for all m 4 and n 6.
m;n
0+
B
@
+
0
01
0 + +
0C
0
0 + +A
+
+
+
0+
B
@+
1
+ 0 +
0 0 +
C
A
0 + +
+
+ +
Figure 3: Matrices
379
F3 and F4
m;n
xij
0
@
0
B
@
0
B
@
0
B
@
0
B
@
0
xij
1
1
1
1
1
1
1
1
1
1
1
1A x 5
1
1
1
1
1
1
1
1
1
0
1
1
1
11
0C
x7
1A
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
1
1
2
2
1
2
1
2
2
1
1
11
1C
x7
1A
1
11
1C
x 10
1A
1
21
2C
x 15
2A
2
0
@
0
B
@
0
B
@
0
B
@
0
B
@
0
B
@
1
1
1
1
1
1
1
1A x 5
1
1
1
0
0
1
0
1
1
0
1
1
1
1
1
1
1
1
0
1
1
0
1
1
0
1
1
0
1
1
0
1
1
1
1
1
0
2
2
2
2
2
1
2
1
1
2
2
1
2
2
1
1
2
1
2
1
2
1
1
2
4;4
PC1
11
1C
x7
1A
1
11
1C
x7
1A
1
11
1C
x8
1A
1
21
2C
x 13
2A
2
21
2C
x 15
2A
2
380
i)
ii)
iii)
iv)
v)
F1 M1 = 2k + 4,
F1 +1 M2 = 2k + 6,
F2 M3 = 2k + 4,
F3 M4 = 9,
F4 M5 = 9.
k
F1 x
F2 x
F3 x
F4 x
k
IJ
IJ
IJ
IJ
xij
4.
i;j
cij xij
2k + 3
2k + 3
8
8
2 f0; 1g
Separation
In this section we address how to solve the LP relaxation obtained from the
IP formulation by dropping the integrality requirement. To this end we have
to give separation algorithms for the given classes of inequalities. We will only
discuss exact separation of the F1 -inequalities in detail. Separation for the F2 inequalities works along similar lines, F3 - and F4 -inequalites can be separated
using quadratic assignment heuristics.
Actually, in the case of F1 -inequalities we will separate a more general class
of inequalities. These inequalities can be obtained by observing that the \ 1"
entry in the last row can be moved to any position changing the rst and last
column in an appropriate way. The corresponding F 1 -inequalities can also be
k
381
m;n
shown to be facet-dening for PC1
and can be visualized as follows where the
left hand side matrix F 1 is a (k + 2; k + 2)-matrix:
k
0+
B
0
B
..
B
.
B
B
0
B
r1 B
B
B
..
..
B
.
.
B
r 1B
B
@
+
+
+
.. ..
.
.
+ +
+
rd
l
+ 0 :::
Figure 5:
c2
: : : cd
1
C
.. C
.C
C
C
C
0C
C x 2k + 3
.. C
.C
C
0C
C
A
+
.. ..
.
.
+ +
+ +
0 ::: 0 +
F 1k -inequality
#"! 1
#"!
j
c2
xr1j
#"!
#"!
+ 21 x
r1 i
r1
r
#"!1
#"!
...
#"!
...
xrd cd
...
+ 21 x
rd i
rd
h
cd
and
xli + xlj
xlh = 2k + 2
F 1 x:
k
382
For every expression that has value less than 1 we can construct a violated F 1 inequality using the shortest paths computed above to include columns c2 ; : : : ; cd
and rows r1 ; : : : ; rd . If none of these values is less than 1, then no violated F 1 inequality and thus no violated F1 -inequality exists.
The running time is dominated by the all-pairs shortest path computation
for every column, and we obtain time complexity O(n3 (n + m)). Therefore the
F1 -inequalities can be separated in polynomial time.
We do not elaborate on the similar separation procedure for F2 -inequalities.
The time complexity for the respective procedure turns out to be O(n4 m2 ).
In total we have shown that all inequalities constituting the canonical LP
relaxation of our IP formulation can be separated in polynomial time. Note that
for this result we can just enumerate all possible F3 - and F4 -inequalities. Thus
the LP relaxation can be solved in polynomial time.
It is an interesting future research project to employ these separation algorithms in a branch-and-cut algorithm for solving the weighted consecutive ones
problem.
k
References
[Boo75] K.S. Booth 1975 PQ-Tree Algorithms PhD Thesis, University of California,
Berkeley
[BL76] K.S. Booth and G. Lueker 1976x Testing for the Consecutive Ones Property,
Interval Graphs, and Graph Planarity Using PQ-Tree Algorithms Journal of Computer and System Sciences, 13, 335{379
[CL98] T. Christof, A. Loebel 1998 PORTA - A Polyhedron Representation Algorithm
www.iwr.uni-heidelberg.de/iwr/comopt/software/PORTA/
[COR98] T. Christof, M. Oswald and G. Reinelt 1998 Consecutive Ones and A Betweenness Problem in Computational Biology Proceedings of the 6th IPCO Conference,
Houston, 1998, 213{228
[P95] M. Padberg 1995 Linear Optimization and Extensions Springer, Berlin
[T72] A. Tucker 1972 A Structure Theorem for the Consecutive 1's Property Journal
of Combinatorial Theory B, 12, 153{162
Introduction
384
Let M be a binary matrix with r rows and c columns. The i-th row (resp.
j-th column) in M is denoted by mi, (resp. m,j ). The number of 1s in mi,
(resp. m,j ) is given by ||mi, || (resp. ||m,j ||). [a, b] denotes the interval of
natural numbers i with a i b . The set of columns given by a set S [1, c]
is denoted by m,S ; it defines a submatrix of M containing exactly the columns
385
of the set m,S with retention of the previous order. A row will also be identified
by the set of column indices containing a 1, i.e. mi, {j | mi,j = 1} .
Definition 1 A clone library is a set F of elements f1 , . . . , fr called fragments. Each fragment f is characterized by a set called its fingerprint, a
subset of the set P = {p1 , . . . , pc } of probes.
A clone library can be represented by a binary matrix M such that the fragments
are associated to its rows and the probes to its columns. An entry of M equals 1
iff the corresponding fragment and probe hybridize. We call ||mi, ||, the number
of probes that stick to fragment fi , the length of fi , and ||m,j ||, the number
of fragments to which pj sticks, the degree of overlap of the j-th probe.
Definition 2 Let M be a binary r c-matrix and k a natural number. Row
mi, is k-chimeric iff mi, = [s1 , t1 ] [s2 , t2 ] [sk , tk ] for some
s1 , t1 , s2 , t2 , . . . , sk , tk [1, c] with s1 t1 < s2 1 , s2 t2 < s3 1, . . . ,
sk tk . This means that mi, consists of k blocks of 1s, which are separated
by one ore more 0s.
mi, is strict k-chimeric iff it is k-chimeric and for each of its k blocks [sa , ta ]
there exists another row mia , = [sa , ta ]. These mi1 , , . . . , mik , are called the
isolated fragments of the chimeric row mi, .
M obeys the (strict) k-consecutive ones order iff each of its rows mi, is
(strict) k 0 -chimeric for some k 0 k .
The strictness property requires that each of the pieces that stick together to
form a chimeric fragment must itself be a non-chimeric fragment of the clone library. Figure 1 illustrates the difference between chimerism and strict chimerism.
This scenario can be extended to require strict k-chimeric fragments, for arbitrary k > 3 . The special cases k-chimeric for k = 0 and k = 1 , that means the
row is either identical 0 or has only a single block of 1s, we will call also nonchimeric. In the following we will assume that the binary matrices considered
do not have rows or columns that are identical 0 since such fragments or probes
do not provide any information about the relative order of the others.
Definition 3 For k 2 , row mi, of a matrix M is called potentially kchimeric iff there exists nonempty rows p1 , . . . , pk [1, `1 ]\{i} such that mi, =
mp1 , . . . mpk , . It is potentially chimeric iff there exists a k > 1 such
that mi, is potentially k-chimeric.
The problem exact cover by 3-sets, which is known to be N P -complete
[9], can be reduced to the question whether a row is potentially k-chimeric. We
therefore get for the case that k is part of the input:
Lemma 1 It is N P -complete to decide whether a specific row of a matrix is
potentially k -chimeric.
For constant k , however, this question can easily be solved in time polynomial
in the size of the matrix.
386
Definition 4 M has the (strict) k-consecutive ones property iff by permuting its columns it can be reordered to a matrix M 0 that is in (strict) kconsecutive ones order.
1 -consecutive equals the consecutive ones property as defined in [5, 4]. Figure 1
also shows that it is necessary to know the largest k , for which a row is potentially
k-chimeric, in order to estimate the degree of chimerism for a strict ordering: In
the example it does not suffice to know that the two highlighted fragments are
potentially 2-chimeric.
387
This can be achieved to some extent when we ignore those fragments that might
destroy the consecutive ones property, i.e. the potentially chimeric fragments.
Definition 6 The overlap graph of a hybridization matrix M is given by
G = (P, E) with E := { {pj , pj 0 } | fi , fi0 with pj mfi , , pj 0 mfi0 , and
mfi , mfi0 , 6= } . Let M be a matrix and M 0 the submatrix that contains
exactly those rows of M that are not potentially chimeric. Let G = (P, E) be
the overlap graph of M 0 and G1 = (P1 , E1 ), . . . , Gz = (Pz , Ez ) its connected
components. The vertex sets Px are called islands of M .
We will show that the decision problem already becomes intractable for sparse
clone libraries. Compared to the results about potential chimerism the following
result goes a step further and shows that in general the strictness property does
not help to reduce the complexity of PHYSICAL-MAPPING (cf. [3]).
Theorem 2 (11|5)PHYSICAL-MAPPING with strict 2-chimeric errors is N P complete.
Proof: By reduction of the following version of the Hamiltonian path problem
[10],[16]: Given an undirected graph G = ({v1 , . . . , vn }, E) with two marked
nodes v1 and vn of degree 2 and all other nodes of degree 3, does there exist a
Hamiltonian path between v1 and vn ?
Note that n has to be even because of the degree properties. Let m := |E| =
3n/2 1 . We construct a matrix M with n islands I1 , . . . , In . I1 consists of
388
I2
I3
I4
I5
I6
I1
I2
I3
I5
389
I4 I6
MI
{v1 , v2 }
{v1 , v3 }
{v2 , v3 }
{v2 , v4 }
{v3 , v5 }
{v4 , v5 }
{v4 , v6 }
{v5 , v6 }
MV 1st
ME1st
{v1 , v2 }
{v1 , v3 }
{v2 , v3 }
{v2 , v4 }
{v3 , v5 }
{v4 , v5 }
{v4 , v6 }
{v5 , v6 }
Fig. 2. On the left: the matrix M obtained for a graph G (with 6 nodes and edges
as listed in the middle) according to the reduction in the proof of Theorem 2. Rows
containing only a single 1 that is, the rows of M11st and M12nd are projected
to a single row at the bottom of the diagram, i.e. every 1 there means that M has a
row which consists of exactly this 1.
On the right: an optimal permutation of M .
390
M11st and M12nd have rows of single 1s, one row for every pole- and
-column, except for the third -column column of I1 , for which no such
row exists.
MV 1st has with the same exception one row for every -column with
one 1 in that -column and one 1 in the pole of the island of that -column.
It remains to define ME1st and ME2nd . Consider an arbitrary row mi,
in ME and let mi, = {p1 , 1 , p2 , 2 } such that p1 and p2 are the poles
where mi, has a 1 each. Add the two rows {p1 , 1 , 2 } and {1 , p2 , 2 }
to ME1st and the row {1 , 2 } to ME2nd .
This concludes the construction of M . It remains to show the existence of a
permutation that fulfills the strictness property in case that a Hamiltonian path
exists in G. This can be done using similar ideas as in [3]. This finishes the proof
sketch. A complete elaboration is given in [16].
The two cases (4|2) and (3|3) turn out to be the frontiers of intractability. Their
reductions are related.
Theorem 3 The optimization problem (4|2)PHYSICAL-MAPPING with strict 2chimeric errors is N P -hard.
Proof: By reduction from the following version of the directed Hamiltonian path
problem, which has been established as N P -complete [17]:
Given a directed graph G = ({v1 , . . . , vn }, E) with two marked nodes v1
and vn of indegree, resp. outdegree in (v1 ) = out (vn ) = 0 , out (v1 ) =
in (vn ) = 2 and each other node either of indegree 2 and outdegree 1 or
vice versa, does there exist a Hamiltonian path from v1 to vn ?
The matrix M to be constructed consists of n islands. Let E = {e1 , . . . , em } ,
with m := |E| = 3n/2 1 . G has a Hamiltonian path from v1 to vn iff M
can be permuted to a strict 2-consecutive ones order that has no more than
m n + 1 = n/2 strict chimeric rows. Let
110
100
and Miso :=
.
Md :=
011
001
M is divided vertically into three parts. The first part is a (2n 3n)-matrix
with n occurrences of Md on its diagonal, all other entries are 0. This structure
defines the islands of M . The second part is constructed similarly, with the
diagonal submatrices Miso . The third part consists of m = 3n/2 1 rows, such
that the i-th row has a 1 in the first column of the a-th island and one in the
third column of the b-th island iff ei = (va , vb ). M has the strict 2-consecutive
391
ones property and is a valid instance for the (4|2)-problem. The left of Fig. 3
shows M for a graph of 6 vertices and edge set as listed in the middle.
Any permutation of M has n 1 transitions between islands. Each such
transition allows to remove chimerism in no more than one row, and only when
the two islands are in proper orientation to form an edge in G. To obtain a
solution with n/2 chimeric rows, the islands associated to v1 and vn have to
be placed at the borders of the matrix. Using this observation, one can easily
deduce the correctness of the reduction.
(v1 , v2 )
(v1 , v3 )
(v2 , v3 )
(v2 , v4 )
(v3 , v5 )
(v5 , v4 )
(v4 , v6 )
(v5 , v6 )
Fig. 3. The (4|2)-matrix and the (3|3)-matrix for a 6-node graph with edge set
as listed. The submatrix that is spread out by the diagonal structure Miso of
isolated fragments is projected to a single row in the middle.
Theorem 4 The optimization problem (3|3)PHYSICAL-MAPPING with strict 2chimeric errors is N P -hard.
Proof: We modify the construction with the goal that the third part of the
matrix has no two 1s in the same column. This decreases the degree of overlap
in the clone library, but we need fragments of length 3. Let
1000
1100
and Miso := 0010 .
Md :=
0111
0001
In the third part, the two 1s of a row corresponding to edge e = (va , vb ) are
placed as follows. If va (resp. vb ) is incident with another edge that has the
same direction as e relative to it, place a 1 in one of the two right columns of
392
the a-th (resp. b-th) island, thereby select a column that does not yet have a
1 in the third part of the matrix. Otherwise put a 1 into the left column of
the a-th (resp. b-th) island. See the right part of figure 3 for an example. The
correctness follows similarly as in the proof of Theorem 3.
In this section we consider the only efficiently solvable case where a skillful ordering of the probes leads to a substantial reduction of chimerism. Usually there
exists a large set of solutions to the optimization problem. However, these are
equally valid merely from a combinatorial point of view, whereas in the underlying biological context only very few of them might be meaningful. Therefore,
it is desirable to generate all solutions out of which the biologicaly meaningful
ones have to be selected with the aid of other criteria. Below we will develop a
method to describe the complete set of optimal solutions in a compact form.
E) be the corresponding
Given a hybridization matrix M, let GM := (F P,
bipartite graph with F = {f1 , . . . , fr } , P = {p1 , . . . , pc } , and {fi , pj } E iff
mi,j = 1 . Let n denote the length of a compact coding of this sparse graph, and
(f ) P the neighbors of f , and similarly (p) F .
Theorem 5 The optimization problem (3|2)PHYSICAL-MAPPING with strict 2chimeric errors can be solved in time O(n log n).
Proof: For short, we call a permutation of M allowed if it turns M into strict
2-consecutive ones order. Let M 0 be the submatrix of M without the potentially
chimeric rows. These rows can easily be identified with the help of GM , since
they exactly correspond to all nodes f F in GM with the property
(1)
(f ) = 2 p (f ) f 0 (p) : (f 0 ) = 1 .
Of course, M 0 has the consecutive ones property. For M 0 we construct GM 0 ,
which can be derived from GM by deleting all edges incident to a fragment
f having property (1). Let IM 0 be the set of islands of M 0 . Such an island
corresponds to a set of probes that form a connected component in the graph
GM 0 .
Consider an island which consists of more than two probes. Because the
length of a fragment is bounded by 2 (and by the definition of an island) no two
probes overlap with exactly the same set of fragments. This forces a unique order
of the start and end points of all fragments that belong to the island. Therefore,
a consecutive ones order of the columns of an island in M 0 is unique except for
inversion. It remains to add the potentially chimeric rows. While doing so, we
construct an ordering of the islands together with the orientation of each island
that leaves as few as possible rows 2 -chimeric.
Let us now examine how an potentially chimeric row mi, added can distribute its two 1s to the islands. Since the inner columns of a consecutive ones
ordering of an island in IM 0 have at least two 1s, there can be no additional
1 forming a potentially chimeric row. Thus, every potentially chimeric row has
393
its 1s at the coasts of the islands in the final permutation. Let mi, = {1 , 2 }
and distinguish four cases. For an illustration see figure 4.
Case 1. m,1 and m,2 belong to the same island I . Observe that I consists
of at least three columns. Neither m,1 nor m,2 overlap with a potentially
chimeric row different from mi, . Any allowed permutation of M leaves mi,
chimeric.
Case 2. m,1 I1 , m,2 I2 with I1 6= I2 , and both Ij are more than one
column wide. Again, no other potentially chimeric row can overlap with m,1
or m,2 .
Case 3. m,1 = I1 and m,2 = I2 . Similar to case 2, except that there might
exist an mi0 , = mi, , i0 6= i .
Case 4. Either I1 or I2 is one column wide, say I1 = m,1 . Only m,1 might
overlap with another potentially chimeric row mi0 , , i0 6= i .
11
11
11
11
11
1
1
1
1
Case 1
11
11
11
11
11
11
1
1
1
1
1
11
1
11
11
11
11
Case 2
Case 3
Case 4a
11
11
1
11
1
Case 4b
394
(1)
2
(1)
Case 1
Cases 2 and 3
Case 3
(1)
Cases 3 and 4a
Case 4b
Conclusions
We have shown that the strictness property for chimeric errors does not reduce
the complexity of PHYSICAL-MAPPING this problem remains N P -hard in general. This even holds for sparse clone libraries, for which potential chimerism can
be detected fast. A tight complexity estimate for computing an optimal ordering has been obtained based on the sparseness parameters maximum fragment
length and maximum degree of probe overlap.
For very sparse cases, the problem can be solved in linear or almost linear time, where the algorithmically interesting case turns out to be overlap 3
and fragment length 2 . Any relaxation of sparsity beyound this point makes
PHYSICAL-MAPPING intractable.
395
References
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
[12]
[13]
[14]
[15]
[16]
[17]
F. Alizadeh, R. Karp, L. Newberg, D. Weisser, Physical mapping of chromosomes: a combinatorial problem in molecular biology, Algorithmica 13, 5276,
1995.
F. Alizadeh, R. Karp, D. Weisser, G. Zweig, Physical mapping of chromosomes
using unique probes, Proc. 5th Annual ACM-SIAM Symposium on Discrete Algorithms SODA94, 489500, 1994.
J. Atkins, M. Middendorf, On physical mapping and the consecutive ones property for sparse matrices, DAMATH: Discrete Applied Mathematics and Combinatorial Operations Research and Computer Science 71, 1996.
K. Booth, G. Lueker, Testing for the consecutive ones property, interval graphs,
and graph planarity using PQ-tree algorithms, J. Computer and System Sciences
13, 335379, 1976.
D. Fulkerson, O. Gross, Incidence matrices and interval graphs, Pacific Journal
of Mathematics 15, 835856, 1965.
P. Goldberg, M. Golumbic, H. Kaplan, R. Shamir, Four strikes against physical
mapping of DNA, J. Computational Biology 2, 139152, 1995.
D. Greenberg, S. Istrail, The chimeric mapping problem: Algorithmic strategies
and performance evaluation on synthetic genomic data, Computers and Chemistry 18, 207220, 1994.
D. Greenberg, S. Istrail, Physical Mapping by STS Hybridization: Algorithmic
Strategies and the challenge of Software Evaluation, J. Comp. Biology 2, 219-273,
1995.
M. Garey, D. Johnson, Computers and Intractability: A Guide to NPCompleteness, Freeman, 1979.
M. Garey, D. Johnson, R. Tarjan, The planar Hamiltonian circuit problem is
NP-complete, SIAM J. Computing 5, 704714, 1976.
To Know Ourselves. Human Genome Program, U.S. Department of Energy, 1996.
W. Hsu. A simple test for the consecutive ones property, Proc. 3rd Int. Symposium on Algorithms and Computation ISAAC92, LNCS 650, 459468, 1992.
W. Hsu, On physical mapping algorithms: an error tolerant test for the consecutive ones property, Proc. 3rd Int. Conf. Computing and Combinatorics, COCOON97, LNCS 1267, 242250, 1997.
H. Kaplan, R. Shamir, R. Tarjan. Tractability of parameterized completion problems on chordal and interval graphs: Minimum fill-in and physical mapping,
Proc. 35th Symp. on Foundations of Computer Science FOCS94, 780793, 1994.
N. Korte, R. M
ohring. An incremental linear-time algorithm for recognizing interval graphs, SIAM J. Computing 18, 6881, 1989.
S. Weis, Das Entscheidungsproblem Physikalische Kartierung mit starkchimerischen Fehlern, Technical Report A-99-05, Med. Uni. L
ubeck, Institut f
ur Theoretische Informatik, 1999.
S. Weis, Zur algorithmischen Komplexit
at des Optimierungsproblems Physikalische Kartierung mit starkchimerischen Fehlern, Technical Report A-99-06, Med.
Uni. L
ubeck, Institut f
ur Theoretische Informatik, 1999.
Abstract. In such areas as knowledge discovery, data mining and logical analysis of data, methodologies to find relations among attributes
are considered important. In this paper, given a data set (T, F ) of a
phenomenon, where T {0, 1}n denotes a set of positive examples and
F {0, 1}n denotes a set of negative examples, we propose a method to
identify decomposable structures among the attributes of the data. Such
information will reveal hierarchical structure of the phenomenon under
consideration. We first study computational complexity of the problem
of finding decomposable Boolean extensions. Since the problem turns out
to be intractable (i.e., NP-complete), we propose a heuristic algorithm
in the second half of the paper. Our method searches a decomposable
partition of the set of all attributes, by using the error sizes of almost-fit
decomposable extensions as a guiding measure, and then finds structural
relations among the attributes in the obtained partition. The results of
numerical experiment on synthetically generated data sets are also reported.
Introduction
Extracting knowledge from given data sets has been intensively studied in such
fields as knowledge discovery, knowledge engineering, data mining, logical analysis of data, artificial intelligence and database theory (e.g., [4,3,5]). We assume in
this paper that the data set is given by a pair of a set T of true vectors (positive
examples) and a set F of false vectors (negative examples), where T, F {0, 1}n
and T F = are assumed. We denote by S = {1, 2, . . . , n} the set of attributes.
We are interested in finding a decomposable structure; i.e., given a family S =
{S0 , S1 , . . . , Sk } of subsets of S , we want to establish the existence of Boolean
functions g, h1 , h2 , , hk , if any, so that f (S) = g(S0 , h1 (S1 ), . . . , hk (Sk )) is true
(resp., false) in every given true (resp., false) vector in T (resp., F ).
In the above scheme, the sets Si may represent intermediate groups of attributes, and we ask whether these groups define new meta-attributes, which
can completely specify the positive or negative character of the examples. This
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 396406, 2000.
c Springer-Verlag Berlin Heidelberg 2000
397
2
2.1
Preliminaries
Extensions and Best-Fit Extensions
398
Decomposable Functions
For a vector a {0, 1}n and a subset S S, let a[S ] denote the projection of
a on S , and let {0, 1}S denote the vector space defined by an attribute set S .
For example, if a = (1011100), b = (0010011) and S = {2, 3, 5}, then a[S ] =
(011), b[S ] = (010), and a[S ], b[S ] {0, 1}S . Furthermore, for a subset of
n
399
v {0, 1}n. Given subsets S0 , S1 S, a function f is called F0 (S0 , F1 (S1 ))decomposable [2,11] if there exist Boolean functions h1 , and g satisfying the
following conditions, where Fi stands for the class of all Boolean functions:
(i) f (v) = g(v[S0 ], h1 (v[S1 ])), for all v {0, 1}n,
(ii) h1 : {0, 1}S1 {0, 1},
0
(iii) g: {0, 1}S {0, 1}, where S 0 = S0 {h1 }.
We denote by CF0 (S0 , F1 (S1 )) the class of F0 (S0 , F1 (S1 )-decomposable functions.
In some cases, we further assume that a pair (S0 , S1 ) is a partition, i.e., S0 S1 =
and S = S0 S1 .
It is known that, given a pair of subsets (S0 , S1 ), problem EXTENSION(C
F0 (S0 ,F1 (S1 )) ) can be solved in polynomial time if one exists [2] (see Proposition
1), while problem BEST-FIT(CF0 (S0 ,F1 (S1 )) ) is NP-hard [3].
Given a pdBf (T, F ) and a pair of sets of attributes S0 and S1 , we define its
conflict graph G(T,F ) = (V, E) by V = {v[S1 ] | v T F }, E = {(a[S1 ], b[S1 ]) |
a T, b F, a[S0 ] = b[S0 ]}. For example, (T, F ) in Fig. 1, and Consider the
pdBf given in the truth table of Fig.1, S0 = {x1 , x2 , x3 } and S1 = {x4 , x5 , x6 }
have the conflict graph G of Fig. 1. This is not F0 (S0 , F1 (S1 ))-decomposable
by the next proposition [2].
S0
110
T 011
110
011
F
110
S1
101
101
010
010
110
101
110
010
3
3.1
400
Input:
Given an instance of ONE-IN-THREE 3SAT, let Ep denote the set of attributes corresponding to a clause Cp C (e.g., if Cp = x1 x2 x3 , then
Ep = {x1 , x2 , x3 }), and let E denote the family of all Ep . The instance has answer yes if there exists a partition (U0 , U1 ) of U such that |U0 Ep | = 2 and
|U1 Ep | = 1 hold for all Ep E. We assume without the loss of generality that
|U0 | 3 and |U1 | 2.
Corresponding to the above instance of ONE-IN-THREE 3SAT, we now construct the instance (i.e., pdBf (T, F )) of F0 (S0 , F1 (S1 ))-DECOMPOSABILITY
as follows: S = U, T = T1 T3 , F = F2 F4 F5 , where
T1 = {v {0, 1}S | |ON (v)| = 1},
T3 = {v {0, 1}S | ON (v) = Ep and Ep E},
F2 = {v {0, 1}S | |ON (v)| = 2 and ON (v) Ep , for some Ep E},
F4 = {v {0, 1}S | |ON (v)| = 4 and ON (v) Ep for some Ep E},
F5 = {v {0, 1}S | |ON (v)| = 5 and ON (v) Ep for some Ep E},
For example, if there is a clause C = x1 x2 x3 , we construct the true vectors {(100000 ), (010000 ), (001000 ), (111000 )} and the false vectors
{(110000 ), (101000 ), (011000 ), (111100 ), (111010 ), (111001 ),
. . . , (111110 ), (111101 ), (111011 ), . . .}.
Then, using Proposition 1, we can show that there is a partition (S0 , S1 ) with
|S0 | 3 and |S1 | 2 such that pdBf (T, F ) is F0 (S0 , F1 (S1 ))-decomposable if
and only if a given collection of clauses C has a partition (U0 , U1 ) with |U0 | 3
and |U1 | 2 such that |U0 Ep | = 2 and |U1 Ep | = 1 hold for all Ep E. We
however omit the details for the sake of space.
t
u
401
402
TION, or VDB for short. VDB is known to be MAX SNP-hard, but has an
approximation algorithm with approximation ratio O(log |V |) [9,10,6].
Theorem 2. Given a pdBf (T, F ) and a pair of attribute sets (S0 , S1 ), there
is an approximate algorithm for BEST-FIT(CF (S0 ,F1 (S1 )) ), which attains the approximation ratio of
e(f ; (T, F ))
= O(log(|T | + |F |)),
e(f ; (T, F ))
(1)
Step 1. Construct the conflict graph G = G(T,F ) for pdBf (T, F ) and (S0 , S1 ).
Set e := 0
Step 2. Apply the DFS to the conflict graph G . If a cycle of odd length is found,
then delete one vector from (T, F ) in the above manner, reconstruct the conflict
graph G , set e := e + 1 and return to Step 2. If there is no odd cycle, output e as
e(f ; (T, F )) and halt. (f is an extension of the resulting pdBf (T, F ).)
t
u
4.2
403
In this section, we propose a local search algorithm to find decomposable partitions (S0 , S1 ), by making use of the error size obtained by the heuristic algorithm ALMOST-FIT of section 4.1. A local search algorithm is defined by
specifying the neighbourhood of the current solution (S0 , S1 ). In our algorithm,
N (S0 , S1 ) = {(S0 {j} \ {i}, S1 {i} \ {j}) | i S0 , j S1 }. However, as
all partitions (S00 , S10 ) N (S0 , S1 ) satisfy |S00 | = |S0 | and |S10 | = |S1 |, we
apply local search to initial solutions (S0 , S1 ) with |S0 | = k, separately, for
k = 2, 3, . . . , |S| 1.
Algorithm Decomp
Input: A pdBf (T, F ), where T, F {0, 1}S and S is the attribute set.
Output: Partitions (S0 , S1 ) with |S1 | = k, for k = 2, 3, . . . , |S| 1, having
almost-fit F0 (S0 , F1 (S1 ))-decomposable extensions of small error sizes.
Step 0: k := 2.
Step 1: Choose a partition (S0 , S1 ) with |S1 | = k randomly, and compute the
error size e(S0 , S1 )) of an almost-fit F0 (S0 , F1 (S1 ))-decomposable extension
f by algorithm ALMOST-FIT. Set := e(S0 , S1 ).
Step 2: For each (S00 , S10 ) N (S0 , S1 ), apply ALMOST-FIT. If there is a
partition (S00 , S10 ) with a smaller error size than , then set S0 := S00 , S1 := S10 ,
:= e(S00 , S10 ), and return to Step 2. Otherwise, output partition (S0 , S1 ) and
its error size for the current k.
Step 3: If k := |S| 1, then halt. Otherwise, let k := k + 1 and return to Step
1.
t
u
Numerical Experiments
Generation of (T, F )
For our experiment, we generate random data sets (T, F ), T, F {0, 1}n, which
are F0 (S0 , F1 (S1 ))-decomposable. To ensure a decomposable structure, we first
specify a partition (S0 , S1 ) and then construct a function f : {0, 1}n {0, 1}
S1 )),
h : {0, 1}S1 {0, 1}, g : {0, 1}S0{h} {0, 1}
such that f = g(S0 , h(
{0, 1}. Then for a given rate r, where 0 r 1, we randomly draw a set Qr of
r 2n vectors from {0, 1}n as samples, and classify all u Qr into T (resp., F ) according to whether f(u) = 1 (resp., f(u) = 0) holds. Obviously T F = hold. In
our experiment, we use n = 18, and test r = 0.01, 0.02, . . . , 0.09, 0.1, 0.2, . . . , 0.5.
The original partitions (S0 , S1 ) satisfy |S0 | = |S1 | = 9. For the hidden function
f, we used the following three types.
404
Computational Results
We generate 5 pdBfs for each type, and execute DECOMP 10 times for each
pdBf (i.e., 50 times in total). Let the success rate denote the ratio with which
DECOMP could find decomposable partitions and the cpu time denote the average of total cpu time of 10 time executions of DECOMP for one function. We
show the results of success rate and cpu time for the randomly assigned functions
in Fig. 2. The success rates for DNF functions and threshold functions are given
in Fig. 3. We omit the results of cpu time for other two types, since they have
similar tendency with random assigned functions.
6000
success rate
0.8
0.6
0.4
original
delusive
0.2
0
5000
4000
3000
2000
1000
0
Fig. 2. (i) Success rate (left) and (ii) average cpu time (right) for randomly
assigned functions
1
original
delusive
0.8
success rate
success rate
0.8
0.6
0.4
0.4
original
delusive
0.2
0.2
0
0.6
Fig. 3. (i) Success rate for DNF functions (left) and (ii) for threshold functions
(right)
405
Fig. 2 (i) and Fig. 3 show the success rate of finding the original partition
(S0 , S1 ) (solid curves) as well as that of finding delusive partitions (broken
curves), when sampling rate r (%) is changed from 0.01 to 0.5.
The results for randomly assigned functions (Fig. 2) say that DECOMP can
almost always find the original (S0 , S1 ) if sampling rate satisfies r 0.5%.
For DNF functions and threshold functions (Fig. 3), similar tendency is also
observed. If sampling rate r is lower than 0.5%, each pdBf (T, F ) has only a small
number of edges in its conflict graph, and many partitions (S0 , S1 ) 6= (S0 , S1 )
also turn out to be decomposable. These partitions are called delusive, and also
depicted in Fig. 2 (i) and Fig. 3. These indicate that a sampling rate larger than
a certain threshold value is necessary to ensure the discovery of the original
decomposable structure (S0 , S1 ).
Conclusion
In this paper, we used the concept of decomposability to extract the structural information from the given data (T, F ). Such information can explain the
hierarchical relations that exist among the attributes. We first clarified the computational complexity of the problem of finding a decomposable structure. Since
it is NP-complete, we proposed a heuristic algorithm, which is based on local
search method. As a guiding measure in this local search, we used the error sizes
of almost-fit F0 (S0 , F1 (S1 ))-decomposable extensions, for which a fast heuristic
algorithm is developed.
We then performed numerical experiments on three types of synthetically
generated data sets. Judging from the experimental results, our approach appears to be able to detect decomposition structures reasonably effectively. However, its performance critically depends on the number of data vectors in the
data sets; it appears essential to have enough number of data vectors for our
method to be effective. The number of necessary data vectors depends on the
types of data sets, and the sizes of the variable sets. More theoretical and experimental studies appear necessary in order to know the effect of these parameters
more accurately.
Acknowledgement
This work was partially supported by the Scientific Grant-in-Aid by the Ministry
of Education, Science, Sports and Culture of Japan.
References
1. M. Anthony and N. Biggs, Computational Learning Theory (Cambridge University
Press, 1992).
2. E.Boros, V.Gurvich, P.L.Hammer, T.Ibaraki and A.Kogan, Decompositions of partially defined Boolean functions, Discrete Applied Mathematics, 62 (1995) 51-75.
406
Abstract. We give an algorithm to PAC-learn the coefficients of a multivariate polynomial from the signs of its values, over a sample of real
points which are only known approximately. While there are several papers dealing with PAC-learning polynomials (e.g. [3,11]), they mainly
only consider variables over finite fields or real variables with no roundoff error. In particular, to the best of our knowledge, the only other work
considering rounded-off real data is that of Dennis Cheung [6]. There,
multivariate polynomials are learned under the assumption that the coefficients are independent, eventually leading to a linear programming
problem. In this paper we consider the other extreme: namely, we consider the case where the coefficients of the polynomial are (polynomial)
functions of a single parameter.
Introduction
In the PAC model of learning one often finds concepts parameterized by (exact)
real numbers. Examples of such concepts appear in the first pages of well-known
textbooks such as [9]. The algorithmics for learning such concepts follows the
same pattern as that for learning concepts parameterized by Boolean values. One
randomly selects some elements x(1) , . . . , x(m) in the instance space X. Then,
with the help of an oracle, one decides which of them satisfy the target concept
c . Finally, one computes an hypothesis ch which is consistent with the sample,
i.e., a concept ch which is satisfied by exactly those x(i) which satisfy c .
A main result from Blumer et al. [5] provides a bound for the sample size
m which guarantees that the error of ch is less than with probability at least
1 , namely
1
1
VCD(C)
log
log
+
,
(1)
m C0
where C0 is a universal constant and VCD(C) is the Vapnik-Chervonenkis dimension of the concept class at hand. This result is especially useful when the
concepts are not discrete entities (i.e., not representable using words over a finite
alphabet), since in this case one can bound the size of the sample without using
the VC dimension.
A particularly important case of concepts parameterized by real numbers is
where the membership test of an instance x X to a concept c in the concept
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 407415, 2000.
c Springer-Verlag Berlin Heidelberg 2000
408
(2)
Here d is a bound for the degrees of the polynomials appearing in n,N and s is
a bound for the number of distinct atomic predicates in n,N .
One may say that at this stage the problem of PAC learning a concept c
Cn,N is solved. Given , > 0 we simply compute m satisfying (1) with the VCdimension replaced by the bound in (2). We then randomly draw x(1) , . . . , x(m)
X and finally compute a hypothesis ch Cn,N consistent with the membership
of x(i) to c , i = 1, . . . , m (which we obtain from some oracle). To obtain ch we
may use any of the algorithms proposed recently to solve the first-order theory
of the reals (cf. [10,2]).
It is at this stage, however, that our research begins: from a practical viewpoint, we can not read the elements x(i) exactly. Instead, we typically obtain
rational approximations x(i) . The membership of x(i) to c depends nevertheless
on x(i) and not on x(i) . Our problem thus becomes that of learning c from
approximate data. A key assumption is that we know the precision of these
approximations and that we can actually modify in our algorithm to obtain
better approximations.
In this paper, we will not deal with general concepts in Cn,N as defined
above but with a subclass where the membership test is given by applying the
sign function to a single polynomial. We will design an algorithm PAC-learning a
concept in this class from approximate data. In studying the complexity of this
algorithm we will naturally deal with a classical theme in numerical analysis
conditioning and we will find yet another instance of the dependence of
running time on the condition number of the input (cf. [7]).
The Problem
d
X
gi (
x)ci
i=0
where gi (
x) is a polynomial of degree at most d i in x1 , . . . , xN .
Replacing the parameter c for a given c IR, F becomes a polynomial in
x1 , . . . , xN which we will denote by Fc . Let M IR, M > 0. When c varies in
[M, M], Fc describes a class of polynomials C(F). For an instance x X, we
409
say that x satisfies c when Fc (x) 0. This makes C(F) into a concept class
by associating to each f C(F) the concept set {x X | f (x) 0}.
Our goal is to PAC learn a target polynomial Fc C(F) with parameter
c [M, M]. The instance space X is a subset of IRN and we assume a
probability distribution D over it. The error of a hypothesis Fch is given by
Error(ch ) = Prob (sign(Fc (x)) 6= sign(Fch (x)))
where the probability is taken according to D and the sign function is defined
by
1 if z 0
sign(z) =
0 otherwise
As usual, we will suppose that an oracle EXc : X {0, 1} is available computing EXc (x) = sign(Fc (x)). We finally recall that a randomized algorithm PAC
learns Fc with error and confidence when it returns a concept ch satisfying
Error(ch ) with probability at least 1 .
The goal of this paper is to PAC-learn Fc from approximate data. In the
next section we briefly explain how to do so from exact data since some of the
ideas used in the exact case will come handy in the approximate one.
Should we be able to deal with arbitrary real numbers, the following algorithm
would PAC learn Fc .
Algorithm 1
Input (F, , , M)
Compute m using (1) and (2) with s = 1
Draw m random points x(i) IRN
Use the function EXc to obtain sign(Fc (x(i) )) for i = 1, . . . , m
From step 4, we obtain a number of polynomial inequalities in c
f1 (c) 0, f2 (c) < 0, f3 (c) < 0, . . . , fm (c) 0
6. Find any real ch [M, M] satisfying the system in step 5
7. Output: ch
1.
2.
3.
4.
5.
Here fi (c) = F(c, x(i) ) IR[c] and the sign ( 0 or < 0) is given by EXc (x(i) ).
Denote by the system of inequalities in step 5 above.
Note that, to execute step 6, we dont need the general algorithms for solving
the first-order theory over the reals mentioned in the preceding section but only
an algorithm to find a point satisfying a polynomial system of inequalities in one
variable (whose solution set is non-empty since c belongs to it). We next briefly
sketch how this may be done.
First, we need to know how to isolate the roots of a single polynomial f IR[c].
410
Definition 1. Suppose 1 < 2 < < r are all the real roots of f in [M, M].
Then a finite union of intervals J = I1 I` is called an interval set for
f iff the following conditions hold:
1.
2.
3.
4.
411
In the previous section, we assumed that exact data instances were used by our
algorithm. Now, we assume that we can select the value of a parameter such
that, for x IRN , each coordinate xi of x is read with relative precision . That
i satisfying
is, instead of xi , we read x
i | |xi |.
|xi x
Denote by f the polynomial obtained from evaluating F at x
instead of x.
If we get fi instead of fi Algorithm 1 will find a set L whose points all satisfy
.
Our question now is how to ensure that (c) is true as well, when c L and
(c)
is true. The rest of this paper is devoted to solve this question. Through it,
we will search for a solution ch which is not in the boundary of the solution set
of . This makes sense since solutions in the boundary of this set are unstable
under arbitrarily small perturbations. Thus, replacing fi by fi if necessary, we
will assume that our system has the form
f1 > 0, . . . , fm > 0.
This assumption simplifies
notation in the rest of this paper.
P
Consider F = i ai ci x , f ZZ[c, x1 , . . . , xN ]. Recall that we write F =
P
P
x)ci , i.e., gi (
x) =
. Here = (1 , . . . , N ) INN denotes a
i gi (
ai x
multiindex and || = 1 + + N d i.
1
Define = (1 + )d 1 and assume in the sequel that (3/2) d 1 (and
thus, that 1/2).
We now propose a new algorithm for learning fc when instances are read
only approximately. Its main loop can be written as follows.
Algorithm 2
1. Input (F, , , M)
2. Compute m using (1) and (2) with s = 1
3. Pick x(1) , . . . , x(m) X randomly and use the oracle EXc
to get sign(F(c , x(i) )) for all i {1, . . . , m}
1
4. Set := (3/2) d 1 and 0 = 1/8
5. Let := (1 + )d 1
For all i {1, . . . , m}
(i)
a. For j = 1, . . . , N read xj with precision , i.e.
(i)
(i)
(i)
such that |
xj xj | |xj |
b. Compute fi (c)
6. Call procedure SEARCH(f1, . . . , fm , , M), possibly halting here.
7. Set := 2 and goto step 5
Procedure SEARCH, which will be described in Subsection 4.2, attempts to
find a solution of knowing and . If SEARCH finds a solution of then it
halts the algorithm and returns a solution.
412
gi (x)ci =
We define kf k =
4.1
P
i
ai x ci .
Newtons Method
Recall that Newtons method for f , starting at the point c0 IR, consists of
the following recurrence:
ci+1 = Nf (ci ), where Nf (ci ) := ci f (ci )/f 0 (ci ).
We call ci the ith Newton iterate of c0 , and we call the sequence (ci )
i=1 the
Newton iterates of c0 .
Definition 4. Consider a univariate polynomial f IR[x]. A point b IR is an
approximate zero of f iff the Newton iterates of b are all well-defined, and
there exists IR (the associated zero of b ) such that f () = 0 and
2i 1
1
|b |, for all i 0.
|bi |
2
Definition 5. Suppose f is analytic and f 0 (c) 6= 0. Define
(f, c) = (f, c)(f, c)
where
f (c)
(f, c) = |Nf (c) c| = 0
f (c)
and
1
(k) k1
f (c)
(f, c) = sup 0
.
k2 f (c)k!
By definition, (f, c) is the length of the Newtons step for f at c. The next
result provides insight on the nature of (f, c).
Theorem 1. [4] There exists a universal constant 0 1/8 such that (f, c)
0 = c is an approximate zero of f . Also, if is the associated zero of c, then
|c | 2(f, c).
Note that Theorem 1 gives us a sufficient condition to guarrantee the existence
of a root of f near a point c. In addition, it provides a bound for the distance
from c to that root.
4.2
413
414
C() = min
Theorem 3. If C() < then Algorithm 2 halts and returns a solution ch . The
number of iterations it performs (i.e. the number of times the procedure SEARCH
is executed) is bounded by
!'
&
1
log2 ([1 + min ] d 1)
.
log2
log2 (0 )
where min =
0
3
4d2
840d M
[5C()]3
of the algorithm.
The arithmetic complexity (number of arithmetic operations performed by the
algorithm) is bounded by
O[d3 m(d log M + log(C())) log(d log M + log(C()))].
Remark. In the previous discussion we have not considered the situation
where M (or M) belongs to Sol() but it is not a root of fi for i = 1, . . . , m.
A simple modification of procedure SEARCH would deal with that situation. The
definition of C() needs to be slightly modified as well. Theorem 3 remains unchanged.
References
1. A. Akritas. Elements of Computer Algebra with Applications. John Wiley & Sons,
1989.
2. S. Basu, R. Pollack, and M.-F. Roy. On the combinatorial and algebraic complexity
of quantifier elimination. In 35th annual IEEE Symp. on Foundations of Computer
Science, pages 632641, 1994.
3. F. Bergadano, N.H. Bshouty, and S. Varrichio. Learning multivariate polynomials
from substitutions and equivalence queries. Preprint, 1996.
4. L. Blum, F. Cucker, M. Shub, and S. Smale. Complexity and Real Computation.
Springer-Verlag, 1998.
5. A. Blumer, A. Ehrenfeucht, D. Haussler, and M.K. Warmuth. Learnability and
the Vapnik-Chervonenkis dimension. Journal of the ACM, 36:929965, 1989.
6. D. Cheung. Learning real polynomials with a Turing machine. In O. Watanabe, and
T. Yokomori, editor, ALT99, volume 1720 of Lect. Notes in Artificial Intelligence,
pages 231240. Springer-Verlag, 1999.
7. F. Cucker. Real computations with fake numbers. In J. Wiedermann, P. van
Emde Boas, and M. Nielsen, editors, ICALP99, volume 1644 of Lect. Notes in
Comp. Sci., pages 5573. Springer-Verlag, 1999.
8. P.W. Goldberg and M.R. Jerrum. Bounding the Vapnik-Chervonenkis dimension
of concept classes parameterized by real numbers. Machine Learning, 18:131148,
1995.
415
9. M.J. Kearns and U.V. Vazirani. An Introduction to Computational Learning Theory. The MIT Press, 1994.
10. J. Renegar. On the computational complexity and geometry of the first-order
theory of the reals. Part I. Journal of Symbolic Computation, 13:255299, 1992.
11. R.E. Shapire and L.M. Sellie. Learning sparse multivariate polynomials over a field
with queries and counterexamples. In 6th annual ACM Symp. on Computational
Learning Theory, pages 1726, 1993.
Keywords:
Digital fingerprint, traceability schemes, cryptography, information security
Introduction
417
two colluders have differing marks. Colluders then may change the marks to
construct an illegal copy. In an illegal copy the data is intact but the mark
sequence is not in the fingerprinting code.
The aim of the fingerprinting code are the following.
1. to ensure that a collusion of buyers cannot remove or tamper with the fingerprint and produce a legal copy other than their own copies.
2. to allow identification of at least one member of a colluding group who has
produced an illegal copy.
We use the term piracy to refer to the generation of illegal copies of digital
objects. In this paper we only consider binary marks.
1.1
Previous Works
Fingerprinting schemes have been widely studied in recent years. The main aim
of these schemes is to discourage illegal copying of digital objects such as softwares, by allowing the merchant to identify the original buyer of a copy.
Frameproof codes are introduced by Boneh and Shaw [1], [7], and provide
a general method of fingerprinting digital objects. The code is a collection of
binary marks and protects against generation of illegal copies. They also defined
c-secure codes that allow deterministic identification of at least one colluder if
an illegal copy of the object is constructed by a collusion of up to c colluders.
They showed [1] that c-secure codes for c 2 can not exist, and proposed a code
which determines the colluders with a very high probability.
Traceability schemes are introduced by Chor, Fiat and Naor [2] in the context of broadcast encryption schemes used for pay television. In their proposed
scheme each authorised user has a decoder with a set of keys that uniquely
determines the owner and allows him to decrypt the broadcast. Colluders attempt to construct a decoder that decodes the broadcast by combining the key
sets in their decoders. A subset of keys given to an authorised user defines a
fingerprinting codeword and the set of all such codewords defines the code
this is also called key fingerprinting. Traceability schemes allow detection of at
least one of the colluders in the above scenario. Stinson and Wei in [7] defined
traitor tracing schemes as set systems, studied their combinatorial properties,
and showed constructions using combinatorial designs. Kurosawa and Desmedt
gave a construction of one-time traceability scheme for broadcast encryption
in which the decryption key will be revealed once it is used. It was shown [8]
that this construction is not secure and colluders can construct a decoder that
can decrypt the broadcast and is not identical to the decoder set of any of the
colluders.
1.2
Asymmetric Tracing
In all the above schemes the merchant is assumed to be honest and so his knowledge of the fingerprints of all the buyers is not a security threat. This however
418
is not always true and in particular in open environments such as the Internet
assuming full trust on the merchant is not realistic. If the merchant is dishonest
he may frame a buyer by inserting his unique code in another copy. In this case
there is no way for the buyer to prove his innocence.
Asymmetric traceability schemes proposed by Pfitzmann and Schunter [5]
remove honesty assumption of the merchant and in the case of piracy allow the
merchant to identify the original buyer, and be able to construct a proof for a
judge. The fingerprinted data can only be seen by the buyer but if a merchant
can capture such an object he can prove the identity of the buyer to the judge.
Their system requires four protocols, key-gen, fing, identify and dispute and are
all polynomial-time in the security parameter k. The security requirements are:
(i) a buyer should obtain a fingerprinted copy if all protocol participants honestly
execute the protocols; (ii) the merchant is protected from colluding buyers who
would like to generate an illegal copy of the data; and (iii) buyers must be protected from the merchant and other buyers. Although security of the merchant
is against collusions of maximum size c, a buyer must remain secure against any
size collusion. The proposed general scheme has computational security and uses
a general 2-party protocol, a signature scheme and a one-way function.
Pfitzmann and Waidners [6] extended this work by giving constructions that
are efficient for larger collusions. In these schemes a symmetric fingerprinting
scheme with unconditional security is combined with a number of computationally secure primitives such as signature schemes and one-way functions, and so
the final security is computational.
Kurosawa and Desmedt [4] also constructed a computationally secure asymmetric scheme in which there are ` agents that cooperatively generate the key.
The agents are not required in the tracing of a traitor, or providing a proof for
the judge (this is done by the merchant). They also proposed the first unconditionally secure scheme which uses polynomials over finite fields. However in
this scheme merchant cannot trace the traitor and the tracing is performed by
the arbiter. Moreover the scheme can be subjected to an extension of the attack
pointed out by Stinson and Wei [8]. Details of this attack is omitted because of
space limitation.
In our model of asymmetric traceability there is a set of publicly known
codewords that is used for fingerprinting objects. The merchant chooses the
codeword to be inserted into an object, but only inserts part of it. The scheme
consists of three procedures.
Fingerprinting is performed in two steps, starting with the merchant and
then completed by the arbiter.
First, the merchant chooses a fingerprint B and then inserts his partial
fingerprint B|M in the object O to produce OB|M . Merchant then gives
(OB|M , M, B|M , B) to the arbiter, who verifies that the object OB|M has
fingerprint B|M inserted in positions given by M . Then he inserts the rest
of the fingerprint to produce OB which is the fingerprinted object which will
be given directly to the buyer without merchant being able to access it. Both
419
Model
420
421
The above definition implies that if a merchant accuses a traitor only based
on his suspicion and not by following the algorithm, the arbiter may accept
or reject his accusation. That is merchants correct application of his tracing
algorithm will serve as a proof for the arbiter.
A Combinatorial Approach
(1)
Note that in this theorem it is assumed that |F | = w for every pirate decoder
F . It is not difficult to show that this theorem is also true after relaxing the
assumption on F .
Theorem 2. There exists a (symmetric) c-traceability scheme if and only if
there exists a set system (X, B) such that |B| = w for every B B, with the
following property
for any d c blocks B1 , B2 , , Bd B and for any subset F
Sd
such that F j=1 Bj , there does not exist a block
B B \ {B1 , B2 , , Bd } such that |F Bj | |F B|
for 1 j d.
(2)
422
(3)
where
|F Bj M | = max |F B M |.
BB
From theorem 3 it follows that both the fingerprinting code and the sub-code
inserted by the merchant are (symmetric) c-traceability schemes, and buyers
collusions are tracable.
Constructions
423
Therefore using Lemma 61 of [8] the system (M, BM ) forms a symmetric ctraceability scheme. Hence condition 1 of theorem 3 is satisfied.
Now suppose
P F B1 B2 Bd and d c. Assume |F | w. Let xi =
|Bi F |. Then i xi w and so maxi {xi } w/c = c+2s. Let aF = maxi {xi }.
For any B B \ {B1 , B2 , , Bd } we have
aF |B F | > c + 2s |B (di=1 Bi )| = c + 2s | di=1 (B Bi )|
c + 2s c = 2s.
(4)
Noting that
|Bj0 F ||Bj F | = (|(Bj F )M ||(Bj0 F )M |)+(|(Bj0 F )X1 ||(Bj F )X1 |),
and
|(Bj F )M | |(Bj0 F )M | |(Bj0 F )X1 | |(Bj F )X1 | s.
We have
aF |Bj F | 2s.
(5)
Construction 1
424
Construction 2
s+
s2 +(t1)(q+1)
c.
t1
Conclusions
In this paper we propose a model for unconditionally secure asymmetric traceability scheme in which the merchant can independently trace a traitor and as
long as he correctly follows the tracing algorithm, his decision will also be approved by the arbiter. The system ensures that an innocent buyer can neither
be framed nor accused unlawfully by the merchant. In the latter case merchants
accusation will always be rejected by the arbiter. We gave a characterisation of
asymmetric traceable system in terms of set systems and constructed two classes
of such systems.
425
References
1. D. Boneh and J. Shaw. Collusion-secure fingerprinting for digital data. In Advanced in Cryptology - CRYPTO95, Lecture Notes in Computer Science, volume
963, pages 453-465. Springer-Velag, Berlin, Heidelberg, New York, 1995
2. B. Chor, A. Fiat, and M Naor. Tracing traitors In Advanced in Cryptology CRYPTO94, Lecture Notes in Computer Science, volume 839, pages 257-270.
Springer-Velag, Berlin, Heidelberg, New York, 1994
3. C. J. Collbourn and J. H. Dinitz Eds. CRC Handbook of Combinatorial Designs.
CRC Press, 1996.
4. K. Kurosawa and Y. Desmedt. Optimum traitor tracing and asymmetric schemes.
In Advanced in Cryptology - EUROCRYPT98, Lecture Notes in Computer Science, volume 1462, pages 502-517. Springer-Velag, Berlin, Heidelberg, New York,
1998
5. B. Pfitzmann and M. Schunter. Asymmetric fingerprinting. In Advanced in Cryptology - EUROCRYPT96, Lecture Notes in Computer Science, volume 1070,
pages 84-95. Springer-Velag, Berlin, Heidelberg, New York, 1996
6. B. Pfitzmann and M. Waidner. Asymmetric fingerprinting for large collusions. In
proceedings of 4th ACM conference on computer and communications security,
pages 151-160, 1997.
7. D. Stinson and R. Wei. Combinatorial properties and constructions of traceability
schemes and framproof codes. SIAM Journal on Discrete Mathematics, 11:41-53,
1998.
8. D. Stinson and R. Wei. Key preassigning traceability schemes for broadcast encryption. In Proceedings of SAC98, Lecture Notes in Computer Science, volume
1556, pages 144-156. Springer-Velag, Berlin, Heidelberg, New York, 1999
Abstract. Zero-knowledge proofs are a powerful tool for the construction of several types of cryptographic protocols. Recently, motivated by
practical considerations, such protocols have been investigated in a concurrent and asynchronous distributed model, where protocols have been
proposed relying on various synchronization assumptions and unproven
complexity assumptions.
In this paper we present the first constructions of proof systems that are
concurrent zero-knowledge without relying on unproven complexity assumptions. Our techniques transform a non-concurrent zero-knowledge
protocol into a concurrent zero-knowledge one. They apply to large
classes of languages and preserve the type of zero-knowledge: if the original protocol is computational, statistical or perfect zero-knowledge, then
so is the transformed one.
Introduction
The notion of zero-knowledge (zk) proof systems was introduced in the seminal
paper of Goldwasser, Micali and Rackoff [13]. Using a zk proof system, a prover
can prove to a verifier that a certain string x is in a language L without revealing
any additional information that the verifier could not compute alone. Since their
introduction, zk proofs have proven to be very useful as a building block in
the construction of several cryptographic protocols, as identification schemes,
private function evaluation, electronic cash schemes and election schemes. Due
to their importance, considerable attention has been given to the study of which
adversarial settings and complexity assumptions are necessary for implementing
zk protocols, the ultimate goal being that of achieving the most adversarial
possible setting together with the minimal possible assumptions or none at all.
Complexity assumptions for zk proofs. Computational zk proofs were
shown to be constructible first for all languages in NP [12] and then for all
languages having an interactive proof system [1,14]. These proofs have interesting generality features but rely on unproven complexity assumptions, such as the
existence of one-way functions. Perfect zk proofs, instead, require no unproven
?
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 426435, 2000.
c Springer-Verlag Berlin Heidelberg 2000
427
complexity assumption; it is known that they cannot be given for all languages
in NP, unless the polynomial time hierarchy collapses [4,11]. These proofs seem
to capture the intrinsic notion of zk and are notoriously harder to achieve; only
a class of random self-reducible languages [13,12,17] and formula composition
over them [6] are known to have perfect zk proofs. We also note that perfect zk
proofs are the ones used in practical applications, because of their efficiency.
Settings for zk proofs: concurrent zk. Recently, a lot of attention has been
paid to the setting where many concurrent executions of the same protocol take
place, capturing practical scenarios as, for instance, the Internet. Here the zk
property is much harder to achieve since an adversary can corrupt many verifiers
that are executing protocols with different provers. Constructions of concurrent
zk protocols in such a setting have been given in [2,9,10,16,7], relying on unproven
complexity assumptions and various synchronization assumptions. A negative
result on the possibility of obtaining small round complexity in this setting was
showed in [15].
Our results. In this paper we present the first protocols (i.e., proof systems or
arguments) that are proved to be concurrent zk without using unproven complexity assumptions. Our techniques transform a non-concurrent zk protocol to
a concurrent one by preserving the type of zk: if the original protocol is computational or perfect zk then so is the resulting protocol. We present two techniques,
the first being applicable to a larger class of languages but making stronger
synchronization assumptions than the second. We note that the synchronization
assumptions of our protocols are probably stronger than those made previously
in the literature. However we believe that our techniques provide a crucial step
towards the construction of concurrent zk proofs in the asynchronous model
without complexity assumption, an important open question, and probably the
ultimate in the area.
In the asynchronous model, we show some relationship between the problem
of obtaining concurrent zk proofs and the well studied problem of reducing the
soundness error of non-concurrent zk proofs. This relationship allows to derive,
under some assumptions, lower bounds on the round complexity of concurrent
zk proofs, and gives some evidence of round-optimality of our techniques.
Formal descriptions of protocols and proofs are omitted for lack of space.
Definitions
428
Giovanni Di Crescenzo
private random tape and a private work tape. An interactive protocol (A,B) is
a pair of interactive Turing machines A,B sharing their public input tape and
communication tape. An interactive protocol = (A, B) is an interactive proof
system with soundness parameter k for the language L if B runs in polynomial
time and the following two requirements are satisfied: completeness, stating that
for any input x L, at the end of the interaction between A and B, B accepts
with probability at least 1 2|x| , and soundness, stating that for any input
x 6 L, and any algorithm A0 , the probability that, at the end of the interaction
between A0 and B, B accepts is at most 2k . We say that an interactive proof
system is public-coin if the messages of the verifier only consist of uniformly
chosen bits.
Zk proof systems. We define zk proof systems in various settings, under a
unified framework. Informally, a zk proof system for a language L in a certain
setting is an interactive proof system for L such that any efficient adversary cannot use his power in this setting to gain any information from his view that he
did not know before running the protocol. An efficient adversary is modeled as
a probabilistic polynomial time algorithm. The concept of gaining no information not known before the protocol is modeled using the simulation notion put
forward in [13]. The specification of the power of the adversary and of his view,
given below, depend on the specific setting. In the two-party setting a prover
and a verifier are intended to run a protocol for proving that x L, for some
language L and some common input x. In the multi-party settings we consider
a set of provers P = {P1 , . . . , Pq } and a set of verifiers V = {V1 , . . . , Vq }, such
that for i = 1, . . . , q, prover Pi and verifier Vi are intended to run a protocol (for
simplicity, the same protocol) for proving that xi L, for some language L and
some input xi common to Pi and Vi .
Two-party setting. In this setting the adversarys power consists of corrupting a
single verifier; namely, the adversary can impersonate such verifier and therefore
use his randomness and send and receive messages on his behalf.
Multi-party strongly-synchronous setting. Here the adversarys power consists of
corrupting up to all verifiers V1 , . . . , Vq ; namely, the adversary can impersonate
all such verifiers and therefore use their randomness and send and receive messages on their behalf. In fact, we can assume wlog that he always corrupts all of
them. In this setting there exists a global clock and the time measured by such
clock is available to all provers, to all verifiers and to the adversary. No matter
what the adversary does, however, each message takes at most a certain fixed
amount of time, denoted as d, in order to arrive to its receiver, where the value d
is known to all parties. The adversary is allowed to start any of the q executions
at any time (i.e., not necessarily the same time); however, the number q of pairs
of parties is known to all parties and cannot be changed by the adversary.
Multi-party weakly-synchronous setting. As in the previous setting, in this setting
there is a global clock, the adversary can corrupt up to all verifiers and he is
allowed to start any of the q executions at any time (i.e., not necessarily the
same time). Contrarily to the previous setting, here there is no fixed amount of
time delay d that a message can take to arrive to its destination (for instance, d
429
could depend on the number of messages currently sent in the system); however,
we assume that at any time d is the same for all messages. Here, for instance, the
adversary could at any time modify d to his advantage. Also, the absolute time
measured by the global clock does not need to be available to all parties. Still,
each party can measure relative time according to such clock (i.e., can measure
whether d seconds have passed since the end of some other event).
Multi-party asynchronous setting. As in the previous two settings, in this setting
the adversary can corrupt up to all verifiers; namely, the adversary can impersonate all such verifiers, use their randomness and send and receive messages on
their behalf; moreover, the adversary is allowed to start any of the q executions
at any time (i.e., not necessarily the same time). As in the weakly-synchronous
setting, the global clock is not available to all parties in the system, and there is
no fixed bound on the amount of time that each message takes in order to arrive
to its receiver. However, contrarily to the previous two settings, the local clock of
each party can measure time and at a rate possibly different from that of another
party. This can be used by the adversary to arbitrarily delay the messages sent
by the various verifiers that he is impersonating, and eventually create arbitrary
interleavings between the concurrent executions of a certain protocol. Moreover,
in this setting the number q of pairs of parties is not fixed in advance; therefore,
the adversary can generate any polynomial number (on the size of the inputs)
of executions of the same protocol.
We call the adversary in model X the X model adversary and his view, including
all public inputs and all verifiers random and communication tapes, the X model
adversarys view. We are now ready to define zk proof systems in each of the
above settings. We note that there exist three notions of zk: computational,
statistical and perfect, in order of increasing strength. Here, we define the third
one (although our results hold for all three).
Definition 1. Let X { two-party, multi-party strongly-synchronous, multiparty weakly-synchronous, and asynchronous }, let 1n be a security parameter,
let q be a polynomial and let = (A, B) be an interactive proof system with
soundness parameter k for the language L. We say that is q-concurrent perfect zk in model X if for all X model probabilistic polynomial time adversaries
A, there exists an efficient algorithm SA , called the simulator, such that for
all x1 , . . . , xq(n) L, where |x1 | = = |xq(n) | = n, the two distributions
SA (x1 ,. . ., xq(n) ) and V iewA (x1 ,. . ., xq(n) ) are equal, where V iewA (x1 ,. . ., xq(n) )
is the X model adversarys view.
Remarks. Variants of synchronous and asynchronous distributed models are
being widely investigated in the research field of Distributed Computing; our
approach of investigating these models was partially inspired by the research in
this field as well. Among all these models, the most adversarial scenario is in
the asynchronous model; the models considered in [2,9,10,16,7] all make some
synchronization assumptions, our weakly-synchronous and strongly-synchronous
models make probably more restricting synchronization assumptions (the first
430
Giovanni Di Crescenzo
being less restricting than the second). Note that a protocol that is zk in a certain
model is also zk in a model with stronger synchronization assumptions.
431
In this section we present a technique for constructing concurrent zk proof systems in the strongly synchronous model. The technique consists of transforming,
in this setting, a protocol that is two-party zk and satisfies a certain special property into a protocol that is concurrent zk. We stress that this result does not
use any unproven complexity assumption and preserves the type of zk of the
original proof system. We define CL1 as the class of languages having a twoparty zk proof system for which there exists an efficient simulator S running
in time cq(n) t(n), for some constant c, some polynomial t, and on inputs of
length n. Note that a language in CL1 is (log n)-concurrent zk but not necessarily poly(n)-concurrent zk. We remark that class CL1 contains essentially all
languages of interest. In particular, we do not know of a language that has been
given a two-party zk proof system in the literature and does not belong to it.
Theorem 2. Let L be a language belonging to class CL1 and let be the
two-party zk proof system associated with it. Also, let q be a polynomial. Then
L has a (q(n))-concurrent zk proof system 0 for L in the strongly-synchronous
model, where n is the length of the inputs. Moreover, if is computational,
statistical, or perfect zk then so is 0 .
The rest of this section is devoted to the proof of Theorem 2.
Description of the technique. Assume for simplicity that the protocol 0
starts at time 0. Let = (A,B) be the two-party zk proof system associated with
language L, let r be the number of rounds of , let q, k be the desired concurrency
and soundness parameters for 0 , respectively, and let z = dq(n)/(log q(n) +
log k)e. Also, let d be the bound on the time that a message takes to arrive to
its recipient, and let tmi be time marks, such that tmi = i (2dr), for all positive
integers i. We construct a protocol 0 =(P,V), as follows. On input the n-bit
string x, P uniformly chooses an integer w {1, . . . , z} and starts executing ,
by running As program, on input x, at the time step corresponding to the w-th
time mark following the current time (i.e., if the current time is t, P will start
protocol when the current time is (bt/2drc + w) (2dr)). V checks that the
execution of protocol on input x was accepting by running Bs program.
Properties of protocol 0 . We stress that protocol 0 assumes that party P
knows the current time measured by the global clock (for instance, P needs to
check the value of the current time). Here we need the assumption that the global
time is available to all parties, and this is one reason for which this technique does
not seem to directly extend to the weakly synchronous model. The completeness
and soundness of the protocol 0 directly follow from the analogue properties of
. The simulator S 0 for 0 consists of running Ps program when choosing the
time marks, and then simulator S for when simulating all concurrent proofs
within each time mark. It is not hard to show that the quality of the simulation
of S is preserved by S 0 . In order to show that S 0 runs in expected polynomial
time, we observe that the execution of S 0 is analogous to a variant of a classical
occupancy game of randomly tossing balls into bins, and analyze this game.
432
Giovanni Di Crescenzo
Prob [E ] (k q(n))
Prob [Ed ] c
d=z0
poly(kn)+
d
z
X
log q(n) + log k
q(n)
d=z0
q(n)
q(n)d
cd t(n)
poly(kn) +
d
d
q(n)
X
3q(n)
log q(n) + log k
d=z0
q(n)
433
cd t(n)
where the first inequality follows from (1) and (2) above, and the second from
the expression of the distribution of the number of balls into a bin.
434
Giovanni Di Crescenzo
d=1
q(n)
d
1
2log q(n)1
d
q(n)
X
3q(n)
2log q(n)1
d=1
d
1
2log q(n)1
2d
2d (q(n)),
435
final executions using the lucky prover, and summing over all d = 1, . . . , q(n).
We note that the number of rounds of 0 is kq(n) log q(n) but can be reduced to
kq(n) by replacing the sequential repetitions of 00 with a sequential pipelined
repetition (details omitted).
Acknowledgements. Many thanks to Alfredo De Santis, Russell Impagliazzo,
Rafail Ostrovsky, Giuseppe Persiano and Moti Yung for interesting discussions.
References
1. M. Ben-Or, J. Hastad, J. Kilian, O. Goldreich, S. Goldwasser, S. Micali, and P.
Rogaway, Everything Provable is Provable in Zero-Knowledge, CRYPTO 88.
2. T. Beth and Y. Desmedt, Identification Tokens - or: Solving the Chess Grandmaster
Problem, in Proc. of CRYPTO 90.
3. M. Blum, How to Prove a Theorem So No One Else Can Claim It, in Proc. of the
International Congress of Mathematicians, 1986.
4. R. Boppana, J. H
astad, and S. Zachos, Does co-NP have Short Interactive Proofs
?, in Inf. Proc. Lett., vol. 25, May 1987.
5. I. Damgaard, Interactive Hashing Simplifies Zero-Knowledge Protocol Design Without Complexity Assumptions, in Proc. of CRYPTO 93.
6. A. De Santis, G. Di Crescenzo, G. Persiano and M. Yung, On Monotone Formula
Closure of SZK, in Proc. of FOCS 94.
7. G. Di Crescenzo and R. Ostrovsky, On Concurrent Zero-Knowledge with PreProcessing, in Proc. of CRYPTO 99.
8. G. Di Crescenzo, K. Sakurai and M. Yung, On Zero-Knowledge Proofs: From
Membership to Decision, in Proc. of STOC 2000.
9. C. Dwork, M. Naor, and A. Sahai, Concurrent Zero-Knowledge, STOC 98.
10. C. Dwork and A. Sahai, Concurrent Zero-Knowledge: Reducing the Need for Timing Constraints, in Proc. of CRYPTO 98.
11. L. Fortnow, The Complexity of Perfect Zero-Knowledge, in Proc. of STOC 87.
12. O. Goldreich, S. Micali, and A. Wigderson, Proofs that Yield Nothing but their
Validity or All Languages in NP Have Zero-Knowledge Proof Systems, in Journal
of the ACM, vol. 38, n. 1, 1991.
13. S. Goldwasser, S. Micali, and C. Rackoff, The Knowledge Complexity of Interactive
Proof-Systems, in SIAM Journal on Computing, vol. 18, n. 1, February 1989.
14. R. Impagliazzo and M. Yung, Direct Minimum-Knowledge Computation, in Proc.
of CRYPTO 87.
15. J. Kilian, E. Petrank, and C. Rackoff, Lower Bounds for Zero-Knowledge on the
Internet, in Proc. of FOCS 98.
16. R. Richardson and J. Kilian, On the Concurrent Composition of Zero-Knowledge
Proofs, in Proc. of EUROCRYPT 99.
17. M. Tompa and H. Woll, Random Self-Reducibility and Zero-Knowledge Interactive
Proofs of Possession of Information, in Proc. of FOCS 87.
Introduction
It has been widely considered that quantum mechanism gives new great power
for computation after Shor [8] showed the existence of quantum polynomial time
algorithm for integer factoring problem. However, it has been still unclear why
quantum computers are so powerful. In this context, it is worth considering
simpler models such as finite automata.
Quantum finite automata were introduced by Moore and Crutchfield [6] and
Kondacs and Watrous [3], independently. The latter showed that the class of languages recognizable by bounded error 1-way quantum finite automata (1QFAs)
is properly contained in the class of regular languages. This means that 1QFAs
are strictly less powerful than classical 1-way deterministic finite automata. This
weakness comes from the restriction of reversibility. Since any quantum computation is performed by unitary operators and unitary operators are reversible,
any transition function of quantum computation must be reversible. Ambainis
and Freivalds [2] studied the characterizations of 1QFAs in more detail by comparing 1QFAs with 1-way probabilistic reversible finite automata (1PRFAs), for
1PRFAs are clearly special cases of 1QFAs. They showed that there exist languages, such as {a b }, which can be recognized by bounded error 1QFAs but
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 436446, 2000.
c Springer-Verlag Berlin Heidelberg 2000
437
not by bounded error 1PRFAs. However, as we show in this paper, this situation
seems different in case of automata with one counter.
Kravtsev [4] introduced 1-way quantum 1-counter automata (1Q1CAs),
and
that several non-context-free
languages such
as L1 =
i j k
i jshowed
k
ba
ba
|
i
=
j
=
k
,
L
=
a
ba
ba
|
k
=
i
=
6
j
k
=
j
=
6
i
,
and
L3 =
a
2
i j k
a ba ba | exactly 2 of i, j, k are equal , can be recognized by bounded
error 1Q1CAs. No clear comparisons with other automata such as 1-way
deterministic 1-counter automata (1D1CAs) or 1-way probabilistic reversible
1-counter automata (1PR1CAs) were done in [4]. In this paper, we investigate
the power of 1Q1CAs in comparison with 1PR1CAs and 1D1CAs.
We first show that all of these non-context-free languages can be also recognized by bounded error 1PR1CAs (and so 1Q1CAs). Moreover, the accepting
probability of each of these 1PR1CAs is strictly greater than, or at least equal
to, that of corresponding Kravtsevs original 1Q1CA.
Second, we show that there exists a bounded error 1PR1CA (and so 1Q1CA)
which recognizes Lk,4 = {a1 a2 ak }, for each k 2. This result is in contrast
to the case of no counter shown by Ambainis and Freivalds [2]. We extend this
result by showing that there exists a bounded error 1PR1CA (and so 1Q1CA)
which recognizes Lk,5 = {an1 an2 ank }, for each k 2. We also show that, in
a quantum case, we can improve the accepting probability in a strict sense by
using quantum interference.
Third, we state the relation between 1D1CAs and 1Q1CAs. On one hand, all
of above mentioned languages cannot be recognized by 1D1CAs because they are
non-context-free. On the other hand, we show that a regular language {{a, b} a}
cannot be recognized by bounded error 1Q1CAs.
Definitions
438
it updates its state to q 0 and the counter value according to d. The automaton
accepts w if it enters the final state in Qacc and rejects if it enters the final state
in Qrej .
Definition 2 A 1-way reversible 1-counter automaton (1R1CA) is defined as a
1D1CA such that, for any q Q, and s {0, 1}, there is at most one
state q 0 Q such that (q 0 , , s) = (q, d).
Definition 3 A 1-way probabilistic 1-counter automaton (1P1CA) is defined by
M = (Q, , , q0 , Qacc , Qrej ), where Q, , q0 , Qacc , and Qrej are the same as for
1D1CAs. A transition function is defined as QS Q{1, 0, +1} R+ ,
where , c|, $, and S are the same as for 1D1CAs. For any q, q 0 Q, , s
{0, 1}, d {1, 0, +1}, satisfies the following condition:
P
q0 ,d
(q, , s, q 0 , d) = 1.
P
P
q 0 ,d
0
0
q 0 ,d (q1 , , s1 , q , d)(q2 , , s2 , q , d) =
1
0
(q1 = q2 )
,
(q1 6= q2 )
q 0 ,d
(q1 , , s1 , q 0 , +1)(q2 , , s2 , q 0 , 1) = 0.
439
Recognizability of L1 , L2 , and L3
Kravtsev
languages
i j [4]k showed that several
inon-context-free
such as L1
j
k
=
a
ba
ba
|
i
=
j
=
k
,
L
=
a
ba
ba
|
k
=
i
=
6
j
k
=
j
=
6
i
, and L3 =
2
i j k
a ba ba | exactly 2 of i, j, k are equal , can be recognized by bounded error
1Q1CAs. In this section, we show that all of these languages can be also recognized by bounded error 1PR1CAs. Moreover, the accepting probability of each of
these 1PR1CAs is strictly greater than, or at least equal to, that of corresponding Kravtsevs original 1Q1CAs. This also indicates the existence of a 1Q1CA for
each of these languages whose accepting probability is strictly greater than, or
at least equal to, that of corresponding Kravtsevs original one, since a 1PR1CA
is regarded as a special
case of a 1Q1CA.
Let Li=j = ai baj bak | i = j and Li=(j+k)/2 = ai baj bak | i = (j +k)/2 .
The existence of a 1R1CA for each of these can be shown easily.
Lemma 1 There exist 1R1CAs MR (Li=j ), MR (Lj=k ), MR (Lk=i ) for Li=j ,
Lj=k , Lk=i , respectively.
MR (Lj=(k+i)/2 ),
Lemma 2 There
exist
1R1CAs
MR (Li=(j+k)/2 ),
MR (Lk=(i+j)/2 ) for Li=(j+k)/2 , Lj=(k+i)/2 , Lk=(i+j)/2 , respectively.
Proof: We show the case of Li=(j+k)/2 . Other cases of Lj=(k+i)/2 , Lk=(i+j)/2
can be shown in similar ways.
Let the state set Q = {q0 , q1 , q2 , q3 , q4 , q5 , qacc , qrej1 , qrej2 , qrej3 , qrej4 , qrej5 },
where q0 is an initial state, qacc is an accepting state, and qrej1 , qrej2 , qrej3 , qrej4 ,
440
qrej5 are rejecting states. Define the transition matrices V,s and the counter
function D of MR (Li=(j+k)/2 ) as follows:
Vc|,0 |q0 i = |q1 i, V$,0 |q1 i = |qrej1 i, Va,0 |q1 i = |q1 i,
Vb,0 |q1 i = |q2 i,
V$,0 |q2 i = |qrej2 i, Va,0 |q2 i = |qrej2 i, Vb,0 |q2 i = |q4 i,
V$,0 |q4 i = |qacc i, Va,0 |q4 i = |qrej4 i, Vb,0 |q4 i = |qrej4 i,
D(q1 , a) = +1,
D(q2 , a) = 1,
D(q4 , a) = 1,
D(q, ) = 0,
otherwise,
441
Next we show that L3 = ai baj bak | exactly 2 of i, j, k are equal can be
recognized by 1PR1CA with bounded error.
Theorem 2 There exists a 1PR1CA MPR (L3 ) which recognizes L3 with probability 4/7.
Proof: After reading the left end-marker c|, MPR (L3 ) enters one of the following
four paths, path-1, path-2, path-3, path-4, with probability 1/6, 1/6, 1/6, 1/2,
respectively.
In path-1(path-2)[path-3], MPR (L3 ) checks whether i = j(j = k)[k = i] or
not, by behaving in the same way as MR (Li=j )(MR (Lj=k ))[MR (Lk=i )] except for
the treatment of acceptance and rejection. The input is accepted with probability
6/7 if i = j(j = k)[k = i] is satisfied, while it is always rejected if i 6= j(j 6=
k)[k 6= i].
In path-4, MPR (L3 ) checks whether i 6= (j + k)/2 or not, by behaving in
the same way as MR (Li=(j+k)/2 ) except for the treatment of acceptance and
rejection. The input is accepted with probability 6/7 if i 6= (j + k)/2 is satisfied,
while it is always rejected if i = (j + k)/2.
Then the input x L3 always satisfies the condition of path-4 and exactly one
of the conditions of first three paths. Hence, MPR (L3 ) accepts it with probability
4/7. On the other hand, MPR (L3 ) rejects any input x 6 L3 with probability at
least 4/7. Indeed, when the input satisfies i = j = k, the conditions of path-1,
path-2, and path-3 are satisfied while the condition of path-4 is not satisfied,
hence, MPR (L3 ) rejects it with probability at least 4/7. Next, when i, k, j differ
from one another, none of the conditions of first three paths are satisfied, hence,
MPR (L3 ) rejects it with probability at least 4/7. Finally, when the input is not
in the form of ai baj bak , it is always rejected, obviously.
2
Reversibility of this automaton is clear by its construction.
Corollary 2 There exists a 1Q1CA MQ (L3 ) which recognizes L3 with probability 4/7.
Note that the accepting probability 4/7 of this 1Q1CA MQ (L3 ) for L3 is greater
than the original Kravtsevs 1/2 + .
n
n
Recognizability of Lk;5 = an
1 a2 ak
442
Proof: Let the state set Q = {q0 , q1 , qacc , qrej }, where q0 is an initial state, qacc
is an accepting state, and qrej is a rejecting state. Define the transition matrices
V,s and the counter function D of MR (Lk,i|i+1 ) as follows:
Vc|,0 |q0 i = |q1 i,
D(q1 , aj ) = +1, i + 1 j k
otherwise.
Theorem 3 For each k 2, there exists a 1PR1CA MPR (Lk,4 ) for Lk,4 with
probability 1/2 + 1/(4k 6).
Proof: After reading the left end-marker c|, one of the following k 1 paths is
chosen with the same probability 1/(k 1).
In the ith path, MPR (Lk,4 ) checks whether the input is in Lk,i|i+1 or not,
utilizing MR (Lk,i|i+1 ), for 1 i k 1. If the input is in Lk,i|i+1 , MPR (Lk,4 )
accepts it with probability p, while if the input is not in Lk,i|i+1 , MPR (Lk,4 )
always rejects it.
Since the input x Lk,4 satisfies the condition in any path, MPR (Lk,4 )
accepts it with probability p. On the other hand, for any input x 6 Lk,4 , there
exists at least one path whose condition is not satisfied. Thus, the probability
MPR (Lk,4 ) is at most p (k 2)/(k 1). Hence, if we take p such that p
(k 2)/(k 1) < 1/2 < p, MPR (Lk,4 ) recognizes Lk,4 with bounded error. To
maximize the accepting probability, we solve 1 p (k 2)/(k 1) = p, which
gives p = 1/2 + 1/(4k 6).
2
Reversibility of this automaton is clear by its construction.
Corollary 3 For each k 2, there exists a 1Q1CA MQ (Lk,4 ) for Lk,4 with
probability 1/2 + 1/(4k 6).
It has been known that, while there exists a 1QFA which recognizes Lk,4 with
bounded error, any 1PRFA cannot recognize Lk,4 with bounded error [2]. In this
point, Theorem 3 gives a contrastive result between no-counter and one-counter
cases.
Before showing the recognizability of Lk,5 , we prove one more lemma. Let
each Lk,#ai =#ai+1 = {x | (# of ai in x) = (# of ai+1 in x)} for 1 i k 1.
Lemma 4 For each k 2, there exists a 1R1CA MR (Lk,#ai =#ai+1 ) for each
Lk,#ai =#ai+1 , 1 i k 1.
Proof: Let the state set Q = {q0 , q1 , qacc , qrej }, where q0 is an initial state, qacc
is an accepting state, and qrej is a rejecting state. Define the transition matrices
V,s and the counter function D of MR (Lk,#ai =#ai+1 ) as follows:
443
{an1 an2
ank }.
Theorem 4 For each k 2, there exists a 1PR1CA MPR (Lk,5 ) which recognizes
Lk,5 with probability 1/2 + 1/(8k 10).
Proof: After reading the left end-marker c|, one of the following 2(k 1) paths,
path-1-1, . . . , path-1-(k 1), path-2-1, . . . , path-2-(k 1), is chosen with the
same probability 1/2(k 1).
In each path-1-i, MPR (Lk,5 ) checks whether the input is in Lk,i|i+1 or not,
utilizing MR (Lk,i|i+1 ), for 1 i k 1. If the input is in Lk,i|i+1 , MPR (Lk,5 )
accepts it with probability p, while if the input is not in Lk,i|i+1 , MPR (Lk,5 )
always rejects it.
In each path-2-i, MPR (Lk,5 ) checks whether the input is in Lk,#ai =#ai+1 or
not, utilizing MR (Lk,#ai =#ai+1 ), for 1 i k1. If the input is in Lk,#ai =#ai+1 ,
MPR (Lk,5 ) accepts it with probability p, while if the input is not in Lk,#ai =#ai+1 ,
MPR (Lk,5 ) always rejects it.
Since the input x Lk,5 satisfies the condition in any path, MPR (Lk,5 )
accepts it with probability p. On the other hand, for any input x 6 Lk,5 , there
exists at least one path whose condition is not satisfied. Thus, the probability
MPR (Lk,5 ) accepts it is at most p(2k 3)/(2k 2). Hence, if we take p such that
p (2k 3)/(2k 2) < 1/2 < p, MPR (Lk,5 ) recognizes Lk,5 with bounded error.
To maximize the accepting probability, we solve 1 p (2k 3)/(2k 2) = p,
which gives p = 1/2 + 1/(8k 10).
2
Reversibility of this automaton is clear by its construction.
Corollary 4 For each k 2, there exists a 1Q1CA MQ (Lk,5 ) which recognizes
Lk,5 with probability 1/2 + 1/(8k 10).
In the previous subsection, we showed that Lk,5 = {an1 an2 ank } is recognizable
by a bounded error 1PR1CA. In this section, we also show that, in a quantum
case, we can improve the accepting probability in a strict sense by using quantum
interference. We utilize the following result.
Theorem 5 (Ambainis et. al. [1]) Lk,4 = {a1 a2 ak } can be recognized by
a 1QFA M1QFA (Lk,4 ) with probability p, where p is the root of p(k+1)/(k1) +p = 1
in the interval of (1/2, 1).
By using M1QFA (Lk,4 ), we prove the existence of a 1Q1CA which recognizes
Lk,4 . The following two lemmas can be shown easily.
444
Wc|,0 = N
Vc| O
Vc| O
,
O Ik
O Ik
Wa2i1 ,0 =
Va2i1 O
O Ik
Wa2i ,0 =
Va2i O
O Ik
W$,0 =
, for k 3, Wc|,0 =
Vc| O
O Ik
Va2i O
, Wa2i ,1 =
O Ik
V$ O
, W$,1 =
O Ik
Va2i1 O
, Wa2i1 ,1 =
O Ik
V$ O
O Ik
O I2k
Ik O
Va2i O
O Ik
O I2k
Ik O
I O
k
, for k = 2,
O Ik
O I2k
Ik O
Va2i1 O
,
O Ik
O I2k
Ik O
445
1 m2
If k = 2, the input string is of the form am
1 a2 , and m1 6= m2 , in the first
path, the input string is rejected and the states in the second path are never
entered. Thus, the input is always rejected.
mk
1 m2
If k 3, the input string is of the form am
1 a2 . . . ak , and there exists
at least one pair of (i, j) such that mi 6= mj , in at least one of two paths, the
counter value is not 0 upon reading the right end-marker. Thus, the probability
of accepting is at most (p/2) 1 = p/2. By Lemma 5, the probability of rejecting
is at least 1 p/2 > 1 (2/3) (1/2) = 2/3 > p.
Finally, if the input string is not of the form a1 a2 . . . ak , in each of two paths,
the input string is rejected with probability at least p, since each path is equivalent to M1QFA (Lk,4 ) when the counter is left out of consideration. Therefore,
2
the probability of rejecting is at least p.
In this paper, we proved that there are non-context-free languages which can
be recognized by 1PR1CAs and 1Q1CAs, but cannot be recognized by 1D1CAs.
We also showed that there is a regular language which can be recognized by a
1D1CA, but cannot be recognized by a 1Q1CA.
One interesting question is what languages are recognizable by 1Q1CAs but
not by 1PR1CAs. Similarly, what are the languages recognizable by 1Q1CAs
but not by 1P1CAs?
446
References
[1] A. Ambainis, R. Bonner, R. Freivalds, and A. K
ikusts. Probabilities to accept
languages by quantum finite automata. In Proceedings of the 5th Annual International Conference on Computing and Combinatorics (COCOON99), Lecture Notes
in Computer Science, volume 1627, pages 174183, 1999.
[2] A. Ambainis and R. Freivalds. 1-way quantum finite automata: Strengths, weakness
and generalizations. In Proceedings of the 39th Annual Symposium on Foundation
of Computer Science, pages 332341, 1998.
[3] A. Kondacs and J. Watrous. On the Power of Quantum Finite State Automata. In
Proceedings of the 38th Annual Symposium on Foundation of Computer Science,
pages 6675, 1997.
[4] M. Kravtsev. Quantum finite one-counter automata. In Proceedings of the
26th Conference on Current Trends in Theory and Practice of Informatics (SOFSEM99), Lecture Notes in Computer Science, volume 1725, pages 431440, 1999.
[5] M. L. Minsky. Recursive unsolvability of posts problem of tag and other topics
in the theory of turing machines. Annals of Math., 74:3:437455, 1961.
[6] C. Moore and J. Crutchfield. Quantum automata and quantum grammars. Technical Report 97-07-02, Santa-Fe Institute Working Paper, 1997. Also available at
http://xxx.lanl.gov/archive/quant-ph/9707031.
[7] A. Nayak. Optimal lower bounds for quantum automata and random access codes.
In Proceedings of the 40th Annual Symposium on Foundation of Computer Science,
pages 369376, 1999.
[8] P. Shor. Algorithms for quantum computation: Discrete log and factoring. In
Proceedings of the 35th Annual Symposium on Foundation of Computer Science,
pages 5665, 1994.
Introduction
448
WFA, to set up the basic structure and develop interrelated properties of the
extended WFA, and to establish a mechanism that determines systematically
what type of similarity enrichment is theoretically legitimate for a WFA based
compression. In fact we shall also devise a simplified yet still fully-fledged image
compression codec based on a newly extended WFA, and demonstrate explicitly
that, under otherwise the same conditions, a codec based on similarity enriched
WFA will outperform those without such an enrichment.
Throughout this work we shall follow the convention and assume that all
images are square images, and that all WFA based compressors are lossy compressors. We recall that an image x of the resolution of n n pixels is mathematically an n n matrix whose (i, j)-th element xi,j takes a real value. For
any image of 2d 2d pixels, we define its multiresolution representation (x) by
(x) = {D (x) : D N }, where N = {0, 1, 2, 3, ...} and D (x) denotes the same
image at the resolution of 2D 2D pixels. In fact we will identify any image x
with its multiresolution representation (x) unless otherwise stated.
In order to address pixels of all resolutions in (x),
we follow the convention in [2] and divide x into 4
31
33
equal-sized quadrants, numbering them clockwise from
1
301 303
the top left by 1, 3, 2 and 0 respectively. These numbers
32
300 302
are the addresses of the corresponding quadrant subimages. Let be an empty string and Q = {0, 1, 2, 3} be
0
2
the set of alphabet. Then a (x) with a Q will denote all four quadrant subimages of x. Furthermore
the subimage defined by
Fig. 1. Subimages addressable via a quadtree
(1)
for a1 , a2 , ..., ak Q will thus represent ak -th quadrant of ak1 -th quadrant of
of a2 -th quadrant of a1 -th quadrant of x. For instance, 32 (x) represents the
larger shaded block in Fig. 1 and 300 (x), the smaller shaded block.
S
Let the set of quadrant addresses be given by Q where Q = m=0 Qm
with Q0 = {} and Qm = {a1 am : a1 , ..., am Q} for m 1. If we define
a multiresolution function as aPmapping : Q R satisfying the area1
preserving condition () = |Q|
aQ (a), where |Q| is the cardinality of
Q and R denotes the set of all real numbers, then each multiresolution image
(x) corresponds to a unique multiresolution function x : Q R defined
by x () = (x). In fact all images of finite resolution will be automatically
promoted to multiresolution images. For simplicity we shall always denote (x)
for any Q by x when no confusion is to occur, typically when x is in bold
face, and denote by (x) the average intensity of the image x.
There exist so far two forms of WFA that have been applied to image compression. The first was adopted by Culik et al [2,5] while the second was due to
Hafner [3,4]. For convenience, Culik et als WFA will be referred to as a linear
WFA while Hafners (m)-WFA will be termed a hierarchic WFA due to its hierarchic nature. We note that a linear WFA may also be regarded as a generalised
449
stochastic automaton [6], and can be used to represent real functions [7] and
wavelet coefficients [8], to process images [9], as well as to recognise speech [10].
In a WFA based image compressor, the design of an inference algorithm plays
an important role. An inference algorithm will typically partition a given image
into a collection of range blocks, i.e. subimages of the original given image,
then find proper domain blocks to best approximate the corresponding range
blocks. In general, the availability of a large number of domain blocks will result
in fewer number states when encoding a given image. This will in turn lead
to better compression performance. Some initial but inconclusive attempts to
engage more domain blocks have already been made in [11] for bi-level images.
The extra blocks there were in the form of certain transformations such as some
special rotations, or in the form of some unions of such domain blocks. Due to
the lack of theoretical justification there, it is not obvious whether and what
extra image blocks can be legitimately added to the pool of domain images.
Hence one of the main objectives of this work is to provide a sound theoretical
background on which one may readily decide how additional domain images may
be artificially generated by the existing ones, resulting in a similarity enriched
pool of domain images.
This paper is organised as follows. We first in the next section propose and
study two types of important mappings that are indispensible to a proper extension of WFA. They are the resolution-wise and resolution-driven mappings,
and are formulated in practically the broadest possible sense. Section 3 then sets
out to the actual extension of WFA, its associated graph representation as well
as the unification of the existing different forms of WFA. A number of relevant
properties and methods, such as the determination of minimum states for an
extended WFA, have also been established. Finally in section 4, the benefits of
the proposed similarity enrichment are demonstrated on the compression of the
Lena image through a complete codec based on a specific extended WFA.
We note that the important results in this work are often summarised in the
form of theorems. Although all proofs are fairly short, they are not explicitly
presented here due to the lack of space. Interested readers however may consult
[12] for further details.
450
tations of Qs
elements. A typical permutation p P can be written as p =
0 1 2 3
which means symbol i Q will be permuted to symbol ni Q.
n0 n1 n2 n3
As a convention, every permutation of k elements can be represented by a product of some disjoint cycles of the form (n1 , n2 , ..., nm ), implying that n1 will be
permuted to n2 and n2 will be permuted to n3 and so on and that nm will be
permuted back to n1 . Any elements that are not in any
thus not be
cycles will
012 345
permuted at all. Hence for instance the permutation 4 3 2 1 5 0 can be written as (1, 3)(0, 4, 5), or equivalently (0, 4, 5)(1, 3)(2) because the (2) there is
redundant.
Let p = {p }Q be
1 2 5 6
13 14 1 2
16 15 1 2
a sequence of permutations
4 3 8 7
16 15 4 3
13 14 4 3
p
pa
p P, then p represents an
- 9 10 5 6
- 10 9 7 6
13 14 9 10
invertible
resolution-wise mapaQ
16 15 12 11
12 11 8 7
11 12 8 5
ping in the following sense:
for any multiresolution image
Fig. 2. A resolution-wise mapping in action
x, the mapped multiresolution
image p(x) at any resolution of 2k 2k pixels is defined by, for m = 0 to k 1
in sequence, permuting the |Q| quadrants of the subimage x according to p
for all Qm . The horizontal mirror mapping m thus corresponds to {p }
with p = (0, 2)(1, 3) for all Q . As another example, let p = {p } with
p = (0, 1, 3, 2), p0 = (0, 2)(1, 3), p1 = (0, 1)(2, 3), p2 = (0, 3), p3 = (1, 2) and
p = (0) for all || > 1. Then the mapping process of p is shown in Fig. 2 in
which the leftmost image is gradually transformed to the rightmost resulting
image. Additional properties are summarised in the next theorem.
451
S
Theorem 2. Let P =
Pm = p I : p = {p }Q such that
m=0 Pm and
0
p0 = p00 0 , 00 Qm with m0 m , and let m be any non-negative integer.
Then
(i) Pm Pm+1 P I F G .
(ii) For any p Pm , its inverse, p1 , is also in Pm .
(iii) For any p, q Pm , the composition p q p(q) is again in Pm .
(iv) Pm is a finite group under the mapping composition.
(v) For any p = {p }Q Pm and any zoom-in operator za with a Q, we
set a0 = p (a) Q, q = {pa0 }Q , and P1 P0 in the case of m = 0.
0
Then q Pm1 and za p = qza . Moreover the mapping a a0 on Q is
one-to-one and onto.
For easy reference, a resolution-wise mapping
will be called permutative if it belongs to P. Fig. 3
exemplifies some of the typical operators in G: m is
the horizontal mirror, d is the diagonal mirror, r is
an anticlockwise rotation, (0, 3) is a quadrant permutation/exchange and z3 is a zoom-in operation
into quadrant 3. In fact, m, d and r all belong to
P0 . Moreover we can conclude from the properties
of G that the image negation is for instance also
a resolution-wise mapping. We note that the function space F is of great importance as is manifested
in the following theorem.
m-
?d
Rr
0 3z
(
Fig. 3.
Some
typical
resolution-driven mappings
(2)
qQ
(k)
(3)
fia F ,
iI .
(4)
Conversely if (4) holds for all i I , then (2) must be valid for i = (xi ).
In the case that corresponds eventually to a linear WFA, the results can be
represented in a very concise matrix, see [12] for details. To conclude this section,
we note that the symbols such as Pm , I, F, G and za will always carry their
current definitions, and that resolution-driven mappings can be regarded as the
similarity generating or enriching operators.
452
fia F , gj G,
r
X
a
fi,k
(xk ) , xj =
k=1
j1
X
(5)
k=1
= x4 + d(x4 ) ,
x11
= x4 ,
x21
x31
x05
x25
x02 = x4 , x03 = x5 ,
x04
1
1
= x2 ,
x12 = x2 , x13 = x3 + x4 , x14
2
2
1
2
2
= x1 ,
x2 = x2 , x3 = x3 ,
x24
2
= d(x1 ), x32 = 0 , x33 = 0 ,
x34
1
1
1
1
= x5 , x15 = x5 + x4 + d(x4 ) ,
2
2
4
4
1
1
1
1
3
= x5 , x5 = x5 + x4 + d(x4 ) ,
2
2
4
4
= x4 ,
= 0,
(6)
453
0(1)
2(1)
2(1)
3(1)
0(1)
1(1)
3(1)
1(1)
1,2( 12 )
1,2( 12 )
1,2(1)
1,2(1)
1( 12 )
0(1)
0(1)
0,1,2,3( 21 )
3(1)
1,2(1)
1( 12 )
3( 12 )
0,1,2,3( 12 )
1,2(1)
0,1,2,3(1)
1,3( 14 )
3.2
0(1)
3(1)
0,1( 14 )
n X
X
k=1
a,
Wi,k
(xk ) ,
x=
n X
X
k=1
k (xk ) , a Q , 0 q < i n ,
(7)
a,
, k R and R F is a nonempty finite set of resolution-wise
where Wi,k
mappings. The target image x corresponds to the only relay state, implicitly the
454
state n + 1. However x may be absent if the target state is just one of the generic
states. An extended WFA defined through (7) will be called a packed WFA, and
the WFA is also said to be packed under R.
To analyse properly the properties of packed WFA, we first introduce a feature that refines a set of resolution-driven mappings. More specifically, a set
R I is said to be quadrantly-supportive if all mappings in R are linear and0
and a Q, there exist 0 R and a0 Q such that za = 0 za ,
thatfor all
a R
0 a0
i.e. (x) = (x ) holds for all multiresolution images x. As an example, P
and Pm for m 0 are all quadrantly-supportive. With these preparations, we
now summarise some additional finer properties for packed WFA in the next two
theorems.
Theorem 4. A packed WFA under a finite group R can always be expanded into
a linear WFA if R is also quadrantly-supportive. In particular, a WFA packed
under a finite subset of P can always be expanded into a linear WFA.
Alternatively, a packed WFA can be regarded as a linear WFA reduced or
packed under the similarities or symmetries dictated by R. We note that symmetries or similarities are immensely useful in various applications, including
for example the group theoretical analysis by Segman and Zeevi in [13], the image processing and understanding in [14], and the solutions and classification of
differential and difference systems in [15,16].
Given a linear WFA and a set R of resolution-wise mappings, we may reduce
the linear WFA to a packed WFA of fewer number of states. For this purpose
we sayPa set P
of images {xi } are R-dependent if there exists an i0 such that
finite
xi0 = finite
i6=i0
R ci (xi ) for some constants ci R. It is easy to see that
R-independent images are also linearly independent if 1 R. Moreover one can
show for a WFA packed under a finite group R I, if the generic state images
are R-dependent, then the WFA can be shrunk by at least 1 generic state.
Naturally it is desirable to have a WFA with as few states as possible while
not incurring too many additional edges. For any given image there is a lower
bound on the number of states a packed WFA can have if the WFA is to regenerate the given image.
Theorem 5. Suppose R I is a finite group and is quadrantly-supportive, and
that a packed WFA A under R has a target image x and has no pump states. Let
{xi }ni=1 be all the state images of the WFA. Then A has the minimum number
of states, the minimum required to reconstruct the target image x, if and only if
(i) all the state images xi are R-independent;
(ii) all state images are combinations of addressible subimages of x, i.e. all
state images are of the form
finite
X X
c, (x ) , c, R ;
R Q
455
assumptions for the above two theorems are in fact automatically satisfied if R
is just a finite group. As far as WFA based image compression is concerned, R
doesnt even have to be a group: it suffices to be just a finite subset of F. We
also remark that the two apparently different formulations of WFA due to Culik
et al and Hafner respectively can be easily unified: for each hierarchic WFA due
to Hafner we can struct explicitly a linear WFA adopted by Culik et al, but not
vice versa. The details are again available in [12].
45
35
40
30
35
30
20
PSNR
RMSE
25
15
25
10
20
15
0.5
1.5
2
2.5
bpp: bit per pixel (x=JPEG, o=WFA)
3.5
10
0.5
1
1.5
2
2.5
3
bpp: bit per pixel (o=use rotations, x=no rotations)
3.5
456
similarity enrichment is turned off. We finally note that the above benchmark
codec, for simplicity and speed, made use of only a topdown non-recursive inference algorithm. Hence a sizable improvement is naturally expected if a more
computation-intensive recursive inference algorithm, akin to that adopted in [5]
for the linear WFA, is instead implemented to the codec. These will however be
left to our future pursuit.
References
1. Jiang Z, Wavelet based image compression under minimum norms and vanishing
moments, in Yan H, Eades P, Feng D D and Jin J (edrs), Proceedings of PSA
Workshop on Visual Information Processing, (1999)15.
2. Culik II K and Kari J, Image compression using weighted finite state automata,
Computer Graphics 17 (1993)305313.
3. Hafner U, Refining image compression with weighted finite automata, Proceedings
of Data Compression Conference , edrs. Storer J and Cohn M, (1996)359368.
4. Hafner U, Weighted finite automata for video compression, IEEE Journal on Selected Areas in Communications , edrs. Enami K, Krikelis A and Reed T R,
(1998)108119.
5. Culik II K and Kari J, Inference algorithm for WFA and image compression, in
Fisher Y (edr), Fractal Image Compression: theory and application, Springer, New
York 1995.
6. Litow B and De Vel O, A recursive GSA acquisition algorithm for image compression, TR 97/2, Department of Computer Science, James Cook University 1997.
7. Culik II K and Karhumaki, Finite automata computing real functions, SIAM Journal of Computations 23 (1994)789814.
8. Culik II K, Dube S and Rajcani P, Effective compression of wavelet coefficients for
smooth and fractal-like data, Proceedings of Data Compression Conference , edrs.
Storer J and Cohn M, (1993)234243.
9. Culik II K and Fris I, Weighted finite transducers in image processing, Discrete
Applied Mathematics 58 (1995)223237.
10. Pereira F C and Riley M D, Speech recognition by composition of weighted finite
automata, At&T Labs, Murray Hill 1996.
11. Culik II K and Valenta V, Finite automata based compression of bi-level and simple
color images, presented at the Data Compression Conference, Snowbird, Utah 1996.
12. Jiang Z, Litow B and De Vel O, Theory of packed finite state automata, Technical
Report 99-173, University of New England, June 1999.
13. Laine A (edr), Wavelet Theory and Application: A Special Issue of the Journal of
Mathematical Imaging and Vision, Kluwer, Boston 1993.
14. Lenz R, Group Theoretical Methods in Image Processing, Lecture Notes in Computer Science 413, Springer, Berlin 1990.
15. Jiang Z, Lie symmetries and their local determinancy for a class of differentialdifference euqations, Physics Letters A 240 (1998)137143.
(k)
16. Jiang Z, The intrinsicality of Lie symmetries of un (t) = Fn (t, un+a , ..., un+b ),
Journal of Mathematical Analysis and Applications 227 (1998)396419.
Introduction
Studying the power of synchronization in parallel computations is one of important problems in the field of computer science, and several researchers [2,5,6,7,9]
have studied the power of synchronization by using alternating machines. They
have shown that synchronization increases the power of alternating machines.
This paper is concerned with alternating finite automata with a new kind of synchronization, called an input-synchronized alternating finite automata (i-SAFAs),
which have a different synchronization from the existing synchronized alternating machines. Yamamoto [11] has shown an efficient recognition algorithm for
semi-extended regular expressions by using a variant of i-SAFAs. Thus the inputsynchronization is an important concept in the practical point of view as well as
the theoretical point of view. We show an interesting result that i-SAFAs have
a different characteristic from the existing models. In this paper, two types of iSAFAs are discussed; one is one-way i-SAFAs whose input head is permitted only
to move right or to remain stationary and the other is two-way i-SAFAs whose
input head is permitted to move left, to move right or to remain stationary.
Chandra et al. [1] introduced alternating finite automata (AFAs for short)
as a generalization of NFAs and showed that one-way AFAs also exactly accept
regular languages. Ladner et al. [8] studied two-way AFAs and showed that twoway AFAs also accept only regular languages. Thus one-way AFAs and two-way
AFAs have the same power.
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 457466, 2000.
c Springer-Verlag Berlin Heidelberg 2000
458
Hiroaki Yamamoto
The concept of synchronization was first introduced by Hromkovic. Slobodova [9] studied the power of synchronized alternating finite automata (SAFAs
for short), which are an extension of AFAs, and showed that SAFAs can accept
a wider class of languages than the class of regular languages. Dassow et al. [3]
showed that two-way SAFAs accept exactly context-sensitive languages, that
is, languages in Nspace(n). Here, for any function S(n) from natural numbers
to real numbers, by Nspace(S(n)) we denote the class of languages accepted
by nondeterministic Turing machines (NTMs) in O(S(n)) space. Hromkovic et
al. [5] improved this result and showed that the class of languages accepted by
one-way SAFAs is exactly equal to the class of context-sensitive languages. Thus
SAFAs are more powerful than AFAs, but one-way SAFAs and two-way SAFAs
also have the same power.
We will here show that one-way i-SAFAs accept only regular languages, but
two-way i-SAFAs accept a wider class than the class of regular languages. In
addition, we also show an upper bound of the power of two-way i-SAFAs.
The difference between i-SAFAs and SAFAs is in the synchronization system. SAFAs have a set of synchronizing symbols, and each time one of the
processes working in parallel enters a state with a synchronizing symbol, it must
wait until all other processes working in parallel enter accepting states or states
with the same synchronizing symbol. Thus all processes of an SAFA are synchronized by the same synchronizing symbol. Other models of synchronized automata also adopt a similar definition. On the other hand, i-SAFAs have a family
S = {S1 , . . . , St } of synchronizing sets such that each Si is a set of synchronizing
states, and processes of an i-SAFA are synchronized by the position of the input
head when entering a synchronizing state. That is, each time several processes
working in parallel enter synchronizing states belonging to the same synchronizing set Si , they all must start their computations from the same position of the
input. Note that it is not necessary that all processes of an i-SAFA working in
parallel enter synchronizing states in the same synchronizing set. For example,
it is possible that a process enters a synchronizing state in a synchronizing set
Si and other process enters a synchronizing state in a different synchronizing set
Sj . This time, these processes do not need to synchronize. Clearly, i-SAFAs are
also a generalization of AFAs because i-SAFAs without any synchronizing states
are AFAs.
In this paper, we will show the following results:
1. The class of languages accepted by one-way i-SAFAs is equal to the class of
regular languages,
2. There exists a language L such that L is accepted by a two-way i-SAFA but
not accepted by any one-way i-SAFAs. In fact, we show that there is a twoway i-SAFA accepting non-regular language L = {w#w# | w {0, 1}}.
In addition, we show that the class of languages accepted by f (n) parallelbounded two-way i-SAFAs is included in Nspace(S(n)), where S(n) =
min{n log n, f (n) log n}. We say that a two-way i-SAFA M is f (n) parallelbounded if, for any accepted input w of length n, the number of universal
459
2
2.1
One-Way i-SAFAs
Definitions
460
Hiroaki Yamamoto
2.2
461
We will here define -free one-way i-SAFAs, and show an algorithm to construct
an -free one-way i-SAFA from any given one-way i-SAFA. The only difference
from one-way i-SAFAs is that -free one-way i-SAFAs have no -moves. Thus
an -free one-way i-SAFA on an input w of length n always halts in n steps.
Unlike one-way i-SAFAs, we define the transition function of an -free one-way
i-SAFA to be a mapping from a pair (state, input symbol) to a monotone boolean
function in order to make the construction easier. Below is the formal definition.
Definition 6. An -free one-way i-SAFA M is a six-tuple M= (Q, S, , , q0 , F ),
where
Q is a finite set of states,
S = {S1 , . . . , St } is a family of synchronizing sets such that each Si ( Q)
is a set of synchronizing sates and Si Sj = for any 1 i, j t,
is a finite input alphabet,
q0 ( Q) is the initial state,
F ( Q) is a set of final states,
is a transition function mapping Q to F,
where F is a set of monotone boolean functions mapping {0, 1}|Q| to {0, 1}.
Definition 7. The full computation tree of an -free one-way i-SAFA M on an
input word w = a1 an is a labelled tree T such that
462
Hiroaki Yamamoto
1. if i = n + 1, then
(q, i) =
1
0
if q F ,
if q
/ F,
2.3
463
Now, we extend the definition of -CLOSURE defined for an NFA with moves (see [4]) to a one-way i-SAFA.
Definition 11. Let M = (Q, S, , , q0 , , F ) be a one-way i-SAFA. Then, for
any state q Q, two sets -CL1 (q) and -CL2 (q) are defined as follows.
-CL1 (q)= { f | for i 0, f is the boolean function denoted by a computation
tree T1i ,q of M }.
-CL2 (q)= { f | for i 0, f is the boolean function denoted by a computation
tree T2i ,q of M }.
Let M = (Q, S, , , q0 , , F ) with Q = {q0 , . . . , ql } be a one-way i-SAFA.
Then the boolean function denoted by a computation tree of M has l + 1 variq }, S,
ables. We will construct an -free one-way i-SAFA M1 = (Q {
{#}, 1 , q, F1 ) from M , where q is a new state and # is a new symbol. The
differences between M and M1 are just in the transition functions and the sets
of final states. Let q be any state in Q. Then we define 1 as follows:
X
h(q0 , q1 , . . . , ql ),
(1)
1 (q, a) =
hH
where
H=
(2)
gG
and
G=
(3)
f -CL1 (q)
464
Hiroaki Yamamoto
Theorem 13. Let M be a one-way i-SAFA with m states. Then we can construct an -free one-way i-SAFA M1 such that M1 has m+1 states and L(M1 ) =
{#w | w L(M )}.
2.4
In the previous section, we have shown that one-way i-SAFAs can be converted
to -free one-way i-SAFAs. We here show that -free one-way i-SAFAs can be
simulated by AFAs, and thus one-way i-SAFAs accept exactly the class of regular
languages by Theorem 13.
Lemma 14. Let M be an -free one-way i-SAFA with m states including t synchronizing states. Then there exists an AFA N with m 2t states such that
L(M ) = L(N ).
Theorem 15. The class of languages accepted by one-way i-SAFAs is equal to
the class of regular languages.
Two-Way i-SAFAs
In this section, we show two results; one is that a two-way i-SAFAs can accept a
non-regular language, the other is that the class of languages accepted by f (n)
parallel-bounded two-way i-SAFAs is included in Nspace(S(n)), where S(n) =
min{n log n, f (n) log n}. Thus two-way i-SAFAs are more powerful than one-way
i-SAFAs.
3.1
Definitions
465
466
3.2
Hiroaki Yamamoto
We show that two-way i-SAFAs are more powerful than one-way i-SAFAs, and
then show an upper bound for the power of two-way i-SAFAs.
Theorem 20. There exists a language L such that L can be accepted by a twoway i-SAFA but not accepted by any one-way i-SAFAs.
Let us consider L = {w#w# | w {0, 1}}. Since the language L is not
regular, it is clear that any one-way i-SAFAs cannot accept L because one-way
i-SAFAs accept only regular languages. Hence the following lemma leads to the
theorem.
Lemma 21. The language L = {w#w# | w {0, 1}} can be accepted by a
two-way i-SAFA.
The following theorem states an upper bound.
Theorem 22. The class of languages accepted by f (n) parallel-bounded two-way
i-SAFAs is included in Nspace(S(n)), where S(n) = min{n log n, f (n) log n}.
References
1. A.K. Chandra, D.C. Kozen and L.J. Stockmeyer, Alternation, J. Assoc. Comput.
Mach. 28,1, 114-133, 1981.
2. O.H. Ibarra and N.Q. Tran, On communication-bounded synchronized alternating
finite automata, Acta Informatica, 31, 4, 315-327, 1994.
3. J.Dassow, J.Hromkovic, J.Karhuaki, B.Rovan and A. Slobodova, On the power of
synchronization in parallel computation, In Proc. 14th MFCS89, LNCS 379,196206, 1989.
4. J.E. Hopcroft and J.D. Ullman, Introduction to automata theory language and
computation, Addison Wesley, Reading Mass, 1979.
5. J. Hromkovic, K. Inoue, B. Rovan, A. Slobodova, I. Takanami and K.W. Wagner,
On the power of one-way synchronized alternating machines with small space,
International Journal of Foundations of Computer Science, 3, 1, 65-79, 1992.
6. J. Hromkovic and K. Inoue, A note on realtime one-way synchronized alternating
one-counter automata, Theoret. Comput. Sci., 108, 2, 393-400, 1993.
7. J. Hromkovic, B. Rovan and A. Slobodova, Deterministic versus nondeterministic
space in terms of synchronized alternating machines, Theoret. Comput. Sci., 132,
2, 319-336, 1994.
8. R.E. Ladner, R.J. Ripton and L.J. Stockmeyer, Alternating pushdown and stack
automata, SIAM J. Computing, 13, 1, 1984.
9. A. Slobodova, On the power of communication in alternating machines, In Proc.
13th MFCS88, LNCS 324,518-528, 1988.
10. M.Y. Vardi, Alternating automata and program verification, In Computer Science
Today-Recent Trends and Developments, LNCS 1000, 471-485, 1996.
11. H. Yamamoto, An automata-based recognition algorithm for semi-extended regular
expressions, manuscript, 2000.
Abstract. One of important questions on quantum computing is whether there is a computational gap between the model that may use
quantum effects and the model that may not. Researchers have shown
that some quantum automaton models are more powerful than classical
ones. As one of classical computational models, branching programs have
been studied intensively as well as automaton models, and several types
of branching programs are introduced including read-once branching programs and bounded-width branching programs. In this paper, we introduce a new quantum computational model, a quantum branching program, as an extension of a classical probabilistic branching program, and
make comparison of the power of these two models. We show that, under
a bounded-width restriction, ordered quantum branching programs can
compute some function that ordered probabilistic branching programs
cannot compute.
Introduction
There are many results that quantum computers might be more powerful than
classical computers [2,5], it is unclear whether there is a computational gap between the model that may use quantum effects and the model that may not.
Researchers have shown that some quantum automaton models are more powerful than classical ones [1,3]. It would give hints on the power of quantum computation to study about other computational models to see whether quantum
computational models can be more powerful than classical ones.
As one of classical computational models, branching programs have been
studied intensively as well as automaton models, and several types of branching
programs are introduced including read-once branching programs and boundedwidth branching programs [4].
In this paper, we introduce a new quantum computational model, a quantum
branching program, as an extension of a classical probabilistic branching program, and make comparison of the power of these two models. We show that,
under a bounded-width restriction, ordered quantum branching programs can
D.-Z. Du et al. (Eds.): COCOON 2000, LNCS 1858, pp. 467476, 2000.
c Springer-Verlag Berlin Heidelberg 2000
468
Preliminaries
eE1 (v)
A PBP reads n inputs and returns a boolean value as follows: Starting at the
source, the value of the labeled variable of the node is tested. If this is 0 (1), an
edge in E0 (v) (E1 (v)) is chosen according to the probability distribution given
as the weights of the edges. The next node that will be tested is the node pointed
by the chosen edge. Arriving at the terminal node, the labeled boolean value is
returned.
We say that a PBP P computes a function f (with error rate 1/2 ) if
P returns the correct value of f for any inputs with probability at least 1/2 +
( > 0).
t
u
We show examples of PBPs in Fig. 1.
Definition 2. Quantum Branching Programs
A quantum branching program (a QBP) is an extension of a probabilistic
branching program, and its form is same as a probabilistic branching program
except for edge weights. In a QBP, the weight of each edge has a complex number
w(e) (0 ||w(e)|| 1). The sum of the squared magnitude of the weights of the
edges in E0 (v) and E1 (v) is 1. That is,
X
X
||w(e)||2 = 1,
||w(e)||2 = 1 .
eE0 (v)
eE1 (v)
0.2
1-edge
0-edge
0.8
0.8
469
y
0.2
1
1
1
1
where x denotes the input of a QBP, and x(v) denotes the assigned value in x
to the labeled variable of the node v. If the time evolution operator is unitary,
we say that the corresponding QBP is well-formed, that is, the QBP is valid in
terms of the quantum theory.
We define the observable O to be Eacc Erej Enon , where
Eacc = span {|vi |v Qacc } , Erej = span {|vi |v Qrej } ,
Enon = span {|vi |v Qnon } .
A QBP reads n inputs and returns a boolean value as follows: The initial state
|0 i is the source |vs i. At each step, the time evolution operator is applied to the
state |i i, that is, |i+1 i = Ux |i i. Next, |i+1 i is observed with respect to
Eacc Erej Enon . Note that this observation causes the quantum state |i+1 i to
470
0-edge
+
-
+
y
+
+
+
0
+
+
+
1
471
In this section, we show that ordered bw-QBPs can compute some function
that ordered bw-PBPs cannot compute. We define the function HALFn and the
language LHALF .
Definition 6. The Function HALFn and the Language LHALF
We define HALFn : Bn B as follows:
1
|{xi |xi = 1}| = n2
.
HALFn (x1 , . . . , xn ) =
0
otherwise
In the following, we denote the variables on which HALFn depends as X =
{xi |1 i n}. We define LHALF as follows:
LHALF = x x {0, 1}k , HALFk (x) = 1 .
t
u
472
3.1
473
1-edge
n-1
0-edge
1-edge
and 0-edge
v3
vrej2
v2
vrej1
v1
vacc
v3,x1
vs
v2,x1
v1,x1,1,T
v1,x1
v1,x2
v1,x1,1,F
v1,x1,3,F
v1,x1,2,F
474
t
u
t
u
Lemma 1. Let m be the set that consists of all probability distributions of m
events, that is,
m = {(a1 , . . . , am ) |a1 0, . . . , am 0, a1 + . . . + am = 1 } .
For a finite set S m and a constant ( > 0), if the cardinality of S is
sufficiently large, the following holds.
D1 S, D2 S
(the variation distance of D1 and D2 ) <
Proof. We prove by induction on m. It is obvious that the lemma holds when
m = 2. We assume that the lemma holds when m = k 1. We consider the case
of m = k. We assume that the cardinality of S k is sufficiently large, and,
for any two distinct Di , Dj S, the variation distance of Di and Dj is greater
than or equal to . For ai , we define N (l ai r) as follows:
a 0(1 j N ), a1 + . . . + aN = 1,
.
N (l ai r) = (a1 , a2 , . . . , aN ) j
l ai r
475
476
Let the arest be the assignment to the variables of the latter half of the
variable ordering such that, for the complete assignment a1 arest , HALFn (a1
arest ) = 1. Then if we compute according to a1 arest , we arrive at the terminal
node of 1 with probability at least 1/2 + . On the other hand, if we compute
according to a2 arest , we arrive at the terminal node of 1 with probability at
least 1/2 + = 1/2. We show the reason in the following.
Let I be
I = {i|Da1 (i) > Da2 (i)} .
Since the variation distance of Da1 and Da2 is less than ,
X
X
(Da1 (i) Da2 (i)) =
(Da2 (i) Da1 (i)) < .
iI
i6I
Thus comparing the probabilities with which we arrive at the terminal node of
1 computing according to a1 arest and a2 arest , the difference is at most .
Therefore we arrive at the terminal node of 1 with probability at least 1/2 +
= 1/2 if we compute according to a2 arest . However this probability must be
less than 1/2 . This is a contradiction.
t
u
Conclusion
In this paper, we show that there is a function that can be computed by ordered
bw-QBPs but cannot be computed by ordered bw-PBPs. This is an evidence
that introducing quantum effects to a computational model increases its power.
It is still the future work to study what results we obtain if we remove the restriction of bounded-width and variable ordering. Since quantum computational
models must be reversible, introducing classical reversible branching programs
and comparing them with quantum branching programs can also be future work.
References
1. A. Ambainis and R. Freivalds, 1-way quantum finite automata: strengths, weakness and generalizations, Proc. 39th Symp. on Foundations of Computer Science,
pp. 332341, 1998.
2. L. Grover, A fast quantum mechanical algorithm for database search, Proc. 28th
Symp. on the Theory of Computing, pp. 212219, 1996.
3. A. Kondacs and J. Watorus, On the power of quantum finite state automata, Proc.
38th Symp. on Foundations of Computer Science, pp. 6675, 1997.
4. C. Meinel, Modified branching programs and their computational power, Lecture
Notes in Computer Science 370, Springer-Verlag, Berlin, 1989.
5. P. Shor, Algorithms for quantum computation: discrete logarithms and factoring,
Proc. 35th Symp. on Foundations of Computer Science, pp. 124134, 1994.
Author Index
Aurenhammer, Franz, 23
Bach, Eric, 221
Barequet, Gill, 44
Bertossi, Alan A., 351
Boyar, Joan, 221
Brent, Richard P., 3
Chen, Zhi-Zhong, 105, 115
Cheung H.C., Shirley, 407
Cicalese, Ferdinando, 159
Deng, Xiaotie, 310
Di Battista, Giuseppe, 64
Di Crescenzo, Giovanni, 426
Dinneen, Michael J, 180
Duckworth, William, 34
478
Author Index
Whitesides, Sue, 64
Wormald, Nicholas C., 34
Xiong, Liu, 180
Xu, Yinfeng, 23, 320
Yamamoto, Hiroaki, 457
Yamasaki, Tomohiro, 436
Yang, Boting, 291
Yang, Chang-Biau, 252
Zheng, Xizhong, 170
Zhu, Binhai, 320
Zito, Michele, 34