Computational Geometry Through the Information Lens Mihai Pdtracu
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Persistent Predecessor Search and Orthogonal Point Location on the Word
Persistent Predecessor Search and Orthogonal Point Location on the Word RAM∗ Timothy M. Chan† August 17, 2012 Abstract We answer a basic data structuring question (for example, raised by Dietz and Raman [1991]): can van Emde Boas trees be made persistent, without changing their asymptotic query/update time? We present a (partially) persistent data structure that supports predecessor search in a set of integers in 1,...,U under an arbitrary sequence of n insertions and deletions, with O(log log U) { } expected query time and expected amortized update time, and O(n) space. The query bound is optimal in U for linear-space structures and improves previous near-O((log log U)2) methods. The same method solves a fundamental problem from computational geometry: point location in orthogonal planar subdivisions (where edges are vertical or horizontal). We obtain the first static data structure achieving O(log log U) worst-case query time and linear space. This result is again optimal in U for linear-space structures and improves the previous O((log log U)2) method by de Berg, Snoeyink, and van Kreveld [1995]. The same result also holds for higher-dimensional subdivisions that are orthogonal binary space partitions, and for certain nonorthogonal planar subdivisions such as triangulations without small angles. Many geometric applications follow, including improved query times for orthogonal range reporting for dimensions 3 on the RAM. ≥ Our key technique is an interesting new van-Emde-Boas–style recursion that alternates be- tween two strategies, both quite simple. 1 Introduction Van Emde Boas trees [60, 61, 62] are fundamental data structures that support predecessor searches in O(log log U) time on the word RAM with O(n) space, when the n elements of the given set S come from a bounded integer universe 1,...,U (U n). -
Acknowledgements
Acknowledgements So many people have made a significant contribution to this thesis in various ways. Al- though all of them provided me with valuable information, a few played a more direct role in the preparation of this thesis. First of all, I extend my gratitude to my promotor, Mark Overmars, and my co-promotor, Otfried Cheong for their perfect supervision. During the writing of my Ph.D. thesis, Mark Overmars provided many corrections and suggestions for improvement of the manuscript, for which I’m grateful. I am deeply indebted to Otfried Cheong: When I was a M.Sc. student at POSTECH in Korea, he motivated me to do a Ph.D. in Computational Geometry and provided me an offer of being his first Ph.D. student. With unfailing courtesy and monumental patience, he have supervised me in a perfect way, in Hong Kong and the Netherlands. I would also like to thank Siu-Wing Cheng and Mordecai Golin. Siu-Wing Cheng had advised me in various ways, and we had worked together on several problems. Mordecai Golin had showed me interesting geometry problems that I challenged to solve. I should also thank Rene´ van Oostrum. When we were in Hong Kong, I learned from him how to develope films and print photographs. He also helped me a lot when I settled down to the life in the Netherlands, and translated “Summary” into Dutch for this thesis. I must acknowledge my debt to the co-authors of the papers of which this thesis is com- posed: apart from Otfried Cheong, Siu-Wing Cheng and Rene´ van Oostrum, these are Mark de Berg, Prosenjit Bose, Dan Halperin, Jirˇ´ı Matousek,ˇ and Jack Snoeyink. -
3SUM with Preprocessing
Data Structures Meet Cryptography: 3SUM with Preprocessing Alexander Golovnev Siyao Guo Thibaut Horel Harvard NYU Shanghai MIT [email protected] [email protected] [email protected] Sunoo Park Vinod Vaikuntanathan MIT & Harvard MIT [email protected] [email protected] Abstract This paper shows several connections between data structure problems and cryptography against preprocessing attacks. Our results span data structure upper bounds, cryptographic applications, and data structure lower bounds, as summarized next. First, we apply Fiat{Naor inversion, a technique with cryptographic origins, to obtain a data-structure upper bound. In particular, our technique yields a suite of algorithms with space S and (online) time T for a preprocessing version of the N-input 3SUM problem where S3 · T = Oe(N 6). This disproves a strong conjecture (Goldstein et al., WADS 2017) that there is no data structure that solves this problem for S = N 2−δ and T = N 1−δ for any constant δ > 0. Secondly, we show equivalence between lower bounds for a broad class of (static) data struc- ture problems and one-way functions in the random oracle model that resist a very strong form of preprocessing attack. Concretely, given a random function F :[N] ! [N] (accessed as an oracle) we show how to compile it into a function GF :[N 2] ! [N 2] which resists S-bit prepro- cessing attacks that run in query time T where ST = O(N 2−") (assuming a corresponding data structure lower bound on 3SUM). In contrast, a classical result of Hellman tells us that F itself can be more easily inverted, say with N 2=3-bit preprocessing in N 2=3 time. -
Lecture 1 — 24 January 2017 1 Overview 2 Administrivia 3 The
CS 224: Advanced Algorithms Spring 2017 Lecture 1 | 24 January 2017 Prof. Jelani Nelson Scribe: Jerry Ma 1 Overview We introduce the word RAM model of computation, which features fixed-size storage blocks (\words") similar to modern integer data types. We also introduce the predecessor problem and demonstrate solutions to the problem that are faster than optimal comparison-based methods. 2 Administrivia • Personnel: Jelani Nelson (instructor) and Tom Morgan (TF) • Course site: people.seas.harvard.edu/~cs224 • Course staff email: [email protected] • Prerequisites: CS 124/125 and probability. • Coursework: lecture scribing, problem sets, and a final project. Students will also assist in grading problem sets. No coding. • Topics will include those from CS 124/125 at a deeper level of exposition, as well as entirely new topics. 3 The Predecessor Problem In the predecessor, we wish to maintain a ordered set S = fX1;X2; :::; Xng subject to the prede- cessor query: pred(z) = maxfx 2 Sjx < zg Usually, we do this by representing S in a data structure. In the static predecessor problem, S does not change between pred queries. In the dynamic predecessor problem, S may change through the operations: insert(z): S S [ fzg del(z): S S n fzg For the static predecessor problem, a good solution is to store S as a sorted array. pred can then be implemented via binary search. This requires Θ(n) space, Θ(log n) runtime for pred, and Θ(n log n) preprocessing time. 1 For the dynamic predecessor problem, we can maintain S in a balanced binary search tree, or BBST (e.g. -
Jean-Paul Laumond
San Francisco CA 1:51:39 m4v Jean-Paul Laumond An interview conducted by Selma Šabanović with Matthew R. Francisco September 27 2011 Q: So if we can start with your name, and where you were born and when? Jean-Paul Laumond: Okay I'm Jean-Paul Laumond. I born in '53 in countryside North from Toulouse in France, in a small village in France. Q: And where did you go to school? Jean-Paul Laumond: I have been to school in Brive which is the main city of the area in that countryside, and after that I entered the university in Toulouse, first by following special training in French which is what we call the “classe préparatoire” for the engineering school. But in fact after two years I moved to university to in the mathematics department and I got a diploma to be a teacher in mathematics. Q: What did you study while you were in university and how did you decide on that particular direction? Jean-Paul Laumond: <clears throat> At the very beginning, I was not very convinced by the choice I made to enter into engineering, because engineering is to go towards the industry world while I was more interested by the academic position. And at that time I didn't know that engineering could be a possibility to enter the university or to make then. Then for me it was just pure abstraction or like literature, and then this is why and of course I was very enthusiastic with mathematics, and this is why I chosen to enter in the university in the department of mathematics. -
Creative and Coordinated Computation
Creative and Coordinated Computation Inaugural address delivered by Marc van Kreveld Professor in Computational Geometry and its Application Department of Information and Computing Sciences Faculty of Science Utrecht University on Friday, January 17, 2014 Utrecht, The Netherlands c Marc van Kreveld, 2014 Rector magnificus, colleagues, family, friends, ... I am honored to stand before you today, and have the opportunity to tell you all about my work, my research, and some other things that I will get to later. It is Friday afternoon, after 4 o'clock, and I realize that most people would call this the beginning of the weekend. However, I am going to be talking about scientific work for a while, so bear with me. I promise that I will not show any formulas, but I will show many illustrations. I truly hope that everyone in the audience will hear something worthwhile in this lecture. My research is related to geometry, a branch of mathematics that deals with objects, like points, lines, triangles and circles, and addresses rela- tions between these objects, like distances, intersections, and containment, or properties like lengths, areas, and angles. My research is also about al- gorithms, the use of automated methods to execute tasks, and the formal study of these methods. The third aspect of my research is applications, because points, triangles and circles can have a concrete meaning in appli- cations only, and the application dictates which tasks we want to perform on the geometry. The title of this speech, \Creative and Coordinated Computation", may seem contradictory: a creative process is often not coordinated, and more- over, coordination may obstruct creativity. -
Geometric Problems in Cartographic Networks
Geometric Problems in Cartographic Networks Geometrische Problemen in Kartografische Netwerken (met een samenvatting in het Nederlands) PROEFSCHRIFT ter verkrijging van de graad van doctor aan de Universiteit Utrecht op gezag van de Rector Magnificus, Prof. Dr. W.H. Gispen, ingevolge het besluit van het College voor Promoties in het openbaar te verdedigen op maandag 29 maart 2004 des middags te 16:15 uur door Sergio Cabello Justo geboren op 1 december 1977, te Lleida Promotor: Prof. Dr. Mark H. Overmars Copromotor: Dr. Marc J. van Kreveld Faculteit Wiskunde en Informatica Universiteit Utrecht Advanced School for Computing and Imaging This work was carried out in the ASCI graduate school. ASCI dissertation series number 99. This work has been supported mainly by the Cornelis Lely Stichting, and par- tially by a Marie Curie Fellowship of the European Community programme \Combinatorics, Geometry, and Computation" under contract number HPMT- CT-2001-00282, and a NWO travel grant. Dankwoord / Agradecimientos It is my wish to start giving my deepest thanks to my supervisor Marc van Kreveld and my promotor Mark Overmars. I am also very grateful to Mark de Berg, who also participated in my supervision in the beginning. Without trying it, you made me think that I was in the best place to do my thesis. I would also like to thank Pankaj Agarwal, Mark de Berg, Jan van Leeuwen, Gun¨ ter Rote, and Dorothea Wagner for taking part in the reading committee and giving comments. I would also like to thank the co-authors who directly par- ticipate in this thesis: Mark de Berg, Erik Demaine, Steven van Dijk, Yuanxin (Leo) Liu, Andrea Mantler, Gun¨ ter Rote, Jack Snoeyink, Tycho Strijk, and, of course, Marc van Kreveld. -
Computational Geometry
Computational Geometry Third Edition Mark de Berg · Otfried Cheong Marc van Kreveld · Mark Overmars Computational Geometry Algorithms and Applications Third Edition 123 Prof. Dr. Mark de Berg Dr. Marc van Kreveld Department of Mathematics Department of Information and Computer Science and Computing Sciences TU Eindhoven Utrecht University P.O. Box 513 P.O. Box 80.089 5600 MB Eindhoven 3508 TB Utrecht The Netherlands The Netherlands [email protected] [email protected] Dr. Otfried Cheong, ne´ Schwarzkopf Prof. Dr. Mark Overmars Department of Computer Science Department of Information KAIST and Computing Sciences Gwahangno 335, Yuseong-gu Utrecht University Daejeon 305-701 P.O. Box 80.089 Korea 3508 TB Utrecht [email protected] The Netherlands [email protected] ISBN 978-3-540-77973-5 e-ISBN 978-3-540-77974-2 DOI 10.1007/978-3-540-77974-2 ACM Computing Classification (1998): F.2.2, I.3.5 Library of Congress Control Number: 2008921564 © 2008, 2000, 1997 Springer-Verlag Berlin Heidelberg 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, reuse of illustrations, recitation, broadcasting, reproduction on microfilm 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. Violations are liable for prosecution under the German Copyright Law. The use of general descriptive names, registered names, trademarks, etc. -
Algorithms for Robotic Motion and Manipulation Taylor &Francis Taylor & Francis Group Algorithms for Robotic Motion and Manipulation
Algorithms for Robotic Motion and Manipulation Taylor &Francis Taylor & Francis Group http://taylorandfrancis.com Algorithms for Robotic Motion and Manipulation 1996 Workshop on the Algorithmic Foundations of Robotics edited, by Jean-Paul Laumond LAAS-CNRS Toulouse, France Mark Overmars Utrecht University Utrecht, The Netherlands Boca Raton London New York CRC Press is an imprint of the Taylor & Francis Group, an informa business First published 1997 by AK Peters Ltd. Published 2018 by CRC Press Taylor & Francis Group 6000 Broken Sound Parkway NW, Suite 300 Boca Raton, FL 33487-2742 © 1997 by Taylor & Francis Group, LLC CRC Press is an imprint ofTaylor & Francis Group, an Informa business No claim to original U.S. Government works ISBN-13: 978-1-56881-067-6 (hbk) This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. The authors and publishers have attempted to trace the copyright holders of all material reproduced in this publication and apologize to copyright holders if permission to publish in this form has not been obtained. If any copyright material has not been acknowledged please write and let us know so we may rectify in any future reprint. Except as permitted under U.S. Copyright Law, no part of this book may be reprinted, reproduced, transmitted, or utilized in any form by any electronic, mechanical, or other means, now known or hereafter invented, including photocopying, microfilming, and recording, or in any information storage or retrieval system, without written permission from the publishers. -
On Data Structures and Memory Models
2006:24 DOCTORAL T H E SI S On Data Structures and Memory Models Johan Karlsson Luleå University of Technology Department of Computer Science and Electrical Engineering 2006:24|: 402-544|: - -- 06 ⁄24 -- On Data Structures and Memory Models by Johan Karlsson Department of Computer Science and Electrical Engineering Lule˚a University of Technology SE-971 87 Lule˚a, Sweden May 2006 Supervisor Andrej Brodnik, Ph.D., Lule˚a University of Technology, Sweden Abstract In this thesis we study the limitations of data structures and how they can be overcome through careful consideration of the used memory models. The word RAM model represents the memory as a finite set of registers consisting of a constant number of unique bits. From a hardware point of view it is not necessary to arrange the memory as in the word RAM memory model. However, it is the arrangement used in computer hardware today. Registers may in fact share bits, or overlap their bytes, as in the RAM with Byte Overlap (RAMBO) model. This actually means that a physical bit can appear in several registers or even in several positions within one regis- ter. The RAMBO model of computation gives us a huge variety of memory topologies/models depending on the appearance sets of the bits. We show that it is feasible to implement, in hardware, other memory models than the word RAM memory model. We do this by implementing a RAMBO variant on a memory board for the PC100 memory bus. When alternative memory models are allowed, it is possible to solve a number of problems more efficiently than under the word RAM memory model. -
Computational Geometry Lectures
Computational Geometry Lectures Olivier Devillers & Monique Teillaud Bibliography Books [30, 19, 18, 45, 66, 70] 1 Convex hull: definitions, classical algorithms. • Definition, extremal point. [66] • Jarvis algorithm. [54] • Orientation predicate. [55] • Buggy degenerate example. [36] • Real RAM model and general position hypothesis. [66] • Graham algorithm. [50] • Lower bound. [66] • Other results. [67, 68, 58, 56, 8, 65, 7] • Higher dimensions. [82, 25] 2 Delaunay triangulation: definitions, motivations, proper- ties, classical algorithms. • Space of spheres [31, 32] • Delaunay predicates. [42] • Flipping trianagulation [52] • Incremental algorithm [57] • Sweep-line [48] • Divide&conquer [74] • Deletion [35, 20, 37] 1 3 Probabilistic analyses: randomized algorithms, evenly dis- tributed points. • Randomization [29, 73, 14] – Delaunay tree [16, 17] and variant [51] – Jump and walk [63, 62] – Delaunay hierarchy [34] – Biased random insertion order [6] – Accelerated algorithms [28, 72, 33, 26] • Poisson point processes [71, 64] – Straight walk [44, 27] – Visibility walk [39] – Walks on vertices [27, 41, 59] – Smoothed analysis [75, 38] 4 Robustness issues: numerical issues, degenerate cases. • IEEE754 [49] • Orientation with double [55] • Solution 1: no geometric theorems [76] • Exact geometric computation paradigm [81] • Perturbations – controlled [61] – symbolic: SoS [46], world [2], 4th dim [43], “qualitative” [40] 5 Triangulations in the CGAL library. • https://doc.cgal.org/latest/Manual/packages.html#PartTriangulationsAndDelaunayTriangulations -
Predecessor Search
Predecessor Search GONZALO NAVARRO and JAVIEL ROJAS-LEDESMA, Millennium Institute for Foundational Research on Data (IMFD), Department of Computer Science, University of Chile, Santiago, Chile. The predecessor problem is a key component of the fundamental sorting-and-searching core of algorithmic problems. While binary search is the optimal solution in the comparison model, more realistic machine models on integer sets open the door to a rich universe of data structures, algorithms, and lower bounds. In this article we review the evolution of the solutions to the predecessor problem, focusing on the important algorithmic ideas, from the famous data structure of van Emde Boas to the optimal results of Patrascu and Thorup. We also consider lower bounds, variants and special cases, as well as the remaining open questions. CCS Concepts: • Theory of computation → Predecessor queries; Sorting and searching. Additional Key Words and Phrases: Integer data structures, integer sorting, RAM model, cell-probe model ACM Reference Format: Gonzalo Navarro and Javiel Rojas-Ledesma. 2019. Predecessor Search. ACM Comput. Surv. 0, 0, Article 0 ( 2019), 37 pages. https://doi.org/0 1 INTRODUCTION Assume we have a set - of = keys from a universe * with a total order. In the predecessor problem, one is given a query element @ 2 * , and is asked to find the maximum ? 2 - such that ? ≤ @ (the predecessor of @). This is an extension of the more basic membership problem, which only aims to find whether @ 2 -. Both are fundamental algorithmic problems that compose the “sorting and searching” core, which lies at the base of virtually every other area and application in Computer Science (e.g., see [7, 22, 37, 58, 59, 65, 75]).