Computer Science
l Editors Alfred V. Aho Computer Science The Hardware, Software and Heart of It
Editors Department of Mathematics University of Southern California Los Angeles, CA, USA blum@usc.edu Alfred V. Aho Department of Computer Science Columbia University New York, NY, USA aho@cs.columbia.edu ISBN 978-1-4614-1167-3 e-isbn 978-1-4614-1168-0 DOI 10.1007/978-1-4614-1168-0 Springer New York Dordrecht Heidelberg London Library of Congress Control Number: 2011941144 # Springer Science+Business Media, LLC 2011 All rights reserved. This work may not be translated or copied in whole or in part without the written permission of the publisher (Springer Science+Business Media, LLC, 233 Spring Street, New York, NY 10013, USA), except for brief excerpts in connection with reviews or scholarly analysis. Use in connection with any form of information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed is forbidden. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. Printed on acid-free paper Springer is part of Springer ScienceþBusiness Media (www.springer.com)
Contents Part I 1 Introduction and Prologue... 3 2 Computation: Brief History Prior to the 1900s... 11 3 The Heart of Computer Science... 17 4 The Software Side of Computer Science Computer Programming... 53 and Walter Savitch Part II 5 The Hardware Side... 71 6 Operating Systems (OS)... 97 7 Computer Networks... 105 Fan Chung Graham and 8 High Performance Computing and Communication (HPCC)... 139 James M. Pepin 9 Programming for Distributed Computing: From Physical to Logical Networks... 155 Christian Scheideler and Kalman Graffi v
vi Contents 10 Databases... 169 Michael Benedikt and Pierre Senellart 11 Computer Security and Public Key Cryptography... 231 Wayne Raskind and 12 Complexity Theory... 241 Alfred V. Aho 13 Multivariate Complexity Theory... 269 Michael R. Fellows, Serge Gaspers, and Frances Rosamond 14 Quantum Computing... 295 Todd A. Brun 15 Numerical Thinking in Algorithm Design and Analysis... 349 Shang-Hua Teng 16 Fuzzy Logic in Computer Science... 385 Radim Belohlavek, Rudolf Kruse, and Christian Moewes 17 Statistics of the Field... 421 Frances Rosamond Epilogue... 467
vii
Contributors Alfred V. Aho Columbia University, New York, NY, USA Radim Belohlavek Palacky University, Olomouc, Czech Republic Michael Benedikt University of Oxford, Oxford, UK Pierre Senellart Télécom ParisTech, Paris, France Department of Mathematics, University of Southern California, Los Angeles, CA, USA Todd A. Brun University of Southern California, Los Angeles, CA, USA Fan Chung Graham University of California at San Diego, La Jolla, CA, USA Michael R. Fellows School of Engineering and Information Technology, Charles Darwin University, Casuarina, Australia Serge Gaspers Institute of Information Systems, Vienna University of Technology, Vienna, Austria Rudolf Kruse Otto-von-Guericke University, Magdeburg, Germany James M. Pepin Clemson University, South Carolina, USA Wayne Raskind Arizona State University, Tempe, AZ, USA Frances Rosamond School of Engineering and Information Technology, Charles Darwin University, Casuarina, Australia Shang-Hua Teng University of Southern California, Los Angeles, CA, USA Christian Scheideler Department of Computer Science, University of Paderborn, Paderborn, Germany Kalman Graffi Department of Computer Science, University of Paderborn, Paderborn, Germany Walter Savitch University of California, San Diego, La Jolla, CA, USA Christian Moewes Otto-von-Guericke University, Magdeburg, Germany ix