To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
Number theory and algebra play an increasingly significant role in computing and communications, as evidenced by the striking applications of these subjects to such fields as cryptography and coding theory. This introductory book emphasises algorithms and applications, such as cryptography and error correcting codes, and is accessible to a broad audience. The mathematical prerequisites are minimal: nothing beyond material in a typical undergraduate course in calculus is presumed, other than some experience in doing proofs - everything else is developed from scratch. Thus the book can serve several purposes. It can be used as a reference and for self-study by readers who want to learn the mathematical foundations of modern cryptography. It is also ideal as a textbook for introductory courses in number theory and algebra, especially those geared towards computer science students.
Complexity theory is a central field of the theoretical foundations of computer science. It is concerned with the general study of the intrinsic complexity of computational tasks; that is, it addresses the question of what can be achieved within limited time (and/or with other limited natural computational resources). This book offers a conceptual perspective on complexity theory. It is intended to serve as an introduction for advanced undergraduate and graduate students, either as a textbook or for self-study. The book will also be useful to experts, since it provides expositions of the various sub-areas of complexity theory such as hardness amplification, pseudorandomness and probabilistic proof systems. In each case, the author starts by posing the intuitive questions that are addressed by the sub-area and then discusses the choices made in the actual formulation of these questions, the approaches that lead to the answers, and the ideas that are embedded in these answers.
Domain theory is an established part of theoretical computer science, used in giving semantics to programming languages and logics. In mathematics and logic it has also proved to be useful in the study of algorithms. This book is devoted to providing a unified and self-contained treatment of the subject. The theory is presented in a mathematically precise manner which nevertheless is accessible to mathematicians and computer scientists alike. The authors begin with the basic theory including domain equations, various domain representations and universal domains. They then proceed to more specialized topics such as effective and power domains, models of lambda-calculus and so on. In particular, the connections with ultrametric spaces and the Kleene–Kreisel continuous functionals are made precise. Consequently the text will be useful as an introductory textbook (earlier versions have been class-tested in Uppsala, Gothenburg, Passau, Munich and Swansea), or as a general reference for professionals in computer science and logic.
In the 1990's it was realized that quantum physics has some spectacular applications in computer science. This book is a concise introduction to quantum computation, developing the basic elements of this new branch of computational theory without assuming any background in physics. It begins with an introduction to the quantum theory from a computer-science perspective. It illustrates the quantum-computational approach with several elementary examples of quantum speed-up, before moving to the major applications: Shor's factoring algorithm, Grover's search algorithm, and quantum error correction. The book is intended primarily for computer scientists who know nothing about quantum theory, but will also be of interest to physicists who want to learn the theory of quantum computation, and philosophers of science interested in quantum foundational issues. It evolved during six years of teaching the subject to undergraduates and graduate students in computer science, mathematics, engineering, and physics, at Cornell University.
With the advent of approximation algorithms for NP-hard combinatorial optimization problems, several techniques from exact optimization such as the primal-dual method have proven their staying power and versatility. This book describes a simple and powerful method that is iterative in essence and similarly useful in a variety of settings for exact and approximate optimization. The authors highlight the commonality and uses of this method to prove a variety of classical polyhedral results on matchings, trees, matroids and flows. The presentation style is elementary enough to be accessible to anyone with exposure to basic linear algebra and graph theory, making the book suitable for introductory courses in combinatorial optimization at the upper undergraduate and beginning graduate levels. Discussions of advanced applications illustrate their potential for future application in research in approximation algorithms.
The design and analysis of geometric algorithms have seen remarkable growth in recent years, due to their application in, for example, computer vision, graphics, medical imaging and CAD. The goals of this book are twofold: first to provide a coherent and systematic treatment of the foundations; secondly to present algorithmic solutions that are amenable to rigorous analysis and are efficient in practical situations. When possible, the algorithms are presented in their most general d-dimensional setting. Specific developments are given for the 2- or 3-dimensional cases when this results in significant improvements. The presentation is confined to Euclidean affine geometry, though the authors indicate whenever the treatment can be extended to curves and surfaces. The prerequisites for using the book are few, which will make it ideal for teaching advanced undergraduate or beginning graduate courses in computational geometry.
Randomization and probabilistic techniques play an important role in modern computer science, with applications ranging from combinatorial optimization and machine learning to communication networks and secure protocols. This 2005 textbook is designed to accompany a one- or two-semester course for advanced undergraduates or beginning graduate students in computer science and applied mathematics. It gives an excellent introduction to the probabilistic techniques and paradigms used in the development of probabilistic algorithms and analyses. It assumes only an elementary background in discrete mathematics and gives a rigorous yet accessible treatment of the material, with numerous examples and applications. The first half of the book covers core material, including random sampling, expectations, Markov's inequality, Chevyshev's inequality, Chernoff bounds, the probabilistic method and Markov chains. The second half covers more advanced topics such as continuous probability, applications of limited independence, entropy, Markov chain Monte Carlo methods and balanced allocations. With its comprehensive selection of topics, along with many examples and exercises, this book is an indispensable teaching tool.
This beginning graduate textbook describes both recent achievements and classical results of computational complexity theory. Requiring essentially no background apart from mathematical maturity, the book can be used as a reference for self-study for anyone interested in complexity, including physicists, mathematicians, and other scientists, as well as a textbook for a variety of courses and seminars. More than 300 exercises are included with a selected hint set. The book starts with a broad introduction to the field and progresses to advanced results. Contents include: definition of Turing machines and basic time and space complexity classes, probabilistic algorithms, interactive proofs, cryptography, quantum computation, lower bounds for concrete computational models (decision trees, communication complexity, constant depth, algebraic and monotone circuits, proof complexity), average-case complexity and hardness amplification, derandomization and pseudorandom constructions, and the PCP theorem.
Richard Stanley's two-volume basic introduction to enumerative combinatorics has become the standard guide to the topic for students and experts alike. This thoroughly revised second edition of Volume 1 includes ten new sections and more than 300 new exercises, most with solutions, reflecting numerous new developments since the publication of the first edition in 1986. The author brings the coverage up to date and includes a wide variety of additional applications and examples, as well as updated and expanded chapter bibliographies. Many of the less difficult new exercises have no solutions so that they can more easily be assigned to students. The material on P-partitions has been rearranged and generalized; the treatment of permutation statistics has been greatly enlarged; and there are also new sections on q-analogues of permutations, hyperplane arrangements, the cd-index, promotion and evacuation and differential posets.
This is the revised and expanded 1998 edition of a popular introduction to the design and implementation of geometry algorithms arising in areas such as computer graphics, robotics, and engineering design. The basic techniques used in computational geometry are all covered: polygon triangulations, convex hulls, Voronoi diagrams, arrangements, geometric searching, and motion planning. The self-contained treatment presumes only an elementary knowledge of mathematics, but reaches topics on the frontier of current research, making it a useful reference for practitioners at all levels. The second edition contains material on several new topics, such as randomized algorithms for polygon triangulation, planar point location, 3D convex hull construction, intersection algorithms for ray-segment and ray-triangle, and point-in-polyhedron. The code in this edition is significantly improved from the first edition (more efficient and more robust), and four new routines are included. Java versions for this new edition are also available. All code is accessible from the book's Web site (http://cs.smith.edu/~orourke/) or by anonymous ftp.
This paper deals with the decidability of semigroup freeness. More precisely, thefreeness problem over a semigroup S is defined as: given a finite subsetX ⊆ S, decide whether each element ofS has at most one factorization over X. To date, thedecidabilities of the following two freeness problems have been closely examined. In 1953,Sardinas and Patterson proposed a now famous algorithm for the freeness problem over thefree monoids. In 1991, Klarner, Birget and Satterfield proved the undecidability of thefreeness problem over three-by-three integer matrices. Both results led to the publicationof many subsequent papers. The aim of the present paper is (i) to presentgeneral results about freeness problems, (ii) to study the decidabilityof freeness problems over various particular semigroups (special attention is devoted tomultiplicative matrix semigroups), and (iii) to propose precise,challenging open questions in order to promote the study of the topic.
For c ∈ (0,1) let n(c) denote the set of n-vertex perfect graphs with density c and let n(c) denote the set of n-vertex graphs without induced C5 and with density c.
We show thatwith otherwise, where H is the binary entropy function.
Further, we use this result to deduce that almost all graphs in n(c) have homogeneous sets of linear size. This answers a question raised by Loebl and co-workers.
Consider the random graph process where we start with an empty graph on n vertices and, at time t, are given an edge et chosen uniformly at random among the edges which have not appeared so far. A classical result in random graph theory asserts that w.h.p. the graph becomes Hamiltonian at time (1/2+o(1))n log n. On the contrary, if all the edges were directed randomly, then the graph would have a directed Hamilton cycle w.h.p. only at time (1+o(1))n log n. In this paper we further study the directed case, and ask whether it is essential to have twice as many edges compared to the undirected case. More precisely, we ask if, at time t, instead of a random direction one is allowed to choose the orientation of et, then whether or not it is possible to make the resulting directed graph Hamiltonian at time earlier than n log n. The main result of our paper answers this question in the strongest possible way, by asserting that one can orient the edges on-line so that w.h.p. the resulting graph has a directed Hamilton cycle exactly at the time at which the underlying graph is Hamiltonian.
We prove that the rescaled costs of partial match queries in a random two-dimensional quadtree converge almost surely towards a random limit which is identified as the terminal value of a martingale. Our approach shares many similarities with the theory of self-similar fragmentations.
We show that the number of unit distances determined by n points in ℝ3 is O(n3/2), slightly improving the bound of Clarkson, Edelsbrunner, Guibas, Sharir and Welzl [5], established in 1990. The new proof uses the recently introduced polynomial partitioning technique of Guth and Katz [12]. While this paper was still in a draft stage, a similar proof of our main result was posted to the arXiv by Joshua Zahl [28].
We prove the following metric Ramsey theorem. For any connected graph G endowed with a linear order on its vertex set, there exists a graph R such that in every colouring of the t-sets of vertices of R it is possible to find a copy G* of G inside R satisfying:
• distG*(x, y) = distR(x, y) for every x, y ∈ V(G*);
• the colour of each t-set in G* depends only on the graph-distance metric induced in G by the ordered t-set.
Given a finite subset A of an abelian group G, we study the set k ∧ A of all sums of k distinct elements of A. In this paper, we prove that |k ∧ A| ≥ |A| for all k ∈ {2,. . .,|A| − 2}, unless k ∈ {2, |A| − 2} and A is a coset of an elementary 2-subgroup of G. Furthermore, we characterize those finite sets A ⊆ G for which |k ∧ A| = |A| for some k ∈ {2,. . .,|A| − 2}. This result answers a question of Diderrich. Our proof relies on an elementary property of proper edge-colourings of the complete graph.
A colouring of the vertices of a hypergraph is called conflict-free if each edge e of contains a vertex whose colour does not repeat in e. The smallest number of colours required for such a colouring is called the conflict-free chromatic number of , and is denoted by χCF(). Pach and Tardos proved that for an (2r − 1)-uniform hypergraph with m edges, χCF() is at most of the order of rm1/r log m, for fixed r and large m. They also raised the question whether a similar upper bound holds for r-uniform hypergraphs. In this paper we show that this is not necessarily the case. Furthermore, we provide lower and upper bounds on the minimum number of edges of an r-uniform simple hypergraph that is not conflict-free k-colourable.
In the present paper we prove a certain lemma about the structure of ‘lower level-sets of convolutions’, which are sets of the form {x ∈ ℤN : 1A * 1A(x) ≤ γ N} or of the form {x ∈ ℤN : 1A(x) < γ N}, where A is a subset of ℤN. One result we prove using this lemma is that if |A| = θ N and |A+A| ≤ (1 − ϵ)N, 0 < ϵ < 1, then this level-set contains an arithmetic progression of length at least Nc, c = c(θ, ϵ, γ) > 0. It is perhaps possible to obtain such a result using Green's arithmetic regularity lemma (in combination with some ideas of Bourgain [6]); however, our method of proof allows us to obtain non-tower-type quantitative dependence between the constant c and the parameters θ and ϵ. For various reasons (discussed in the paper) one might think, wrongly, that such results would only be possible for level-sets involving triple and higher convolutions.