Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 533 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
533
Dung lượng
9,56 MB
Nội dung
The Spirit of Computing
David Harel
with
Yishai Feldman
David Harel
with
Yishai Feldman
The Spirit of Computing
The Spirit of Computing
THIRD EDITION
THIRD EDITION
THIRD EDITION
Algorithmics
Algorithmics
Algorithmics
From a review of the first edition:
‘This book is a veritable tour de force. Harel writes with uncommon verve,
clarity and imagination.
‘Through the use of tantalizing questions and aptly chosen and often amusing examples,
the author transmits to the reader the excitement and intellectual satisfaction of computer
science research. Without the use of formal mathematics and without any sacrifice of
intellectual integrity, he conveys to the general reader the profound principles on which
computer science is founded and which hitherto were only accessible in abstruse and
esoteric textbooks and papers.
‘This is scientific writing at its best.’
Dr Stan Scott, Queen's University Belfast The Times Higher Education Supplement.
This book tells the story of the concepts, ideas, methods and results fundamental to computer
science, in a form independent of the details of specific computers, languages and formalisms. It
concerns the true ‘spirit’ of computers; with the ‘recipes’ that make them tick – their algorithms.
New to this edition
■ Chapters on software engineering and on reactive systems.
■ Thoroughly revised chapter on programming languages.
■ New material on quantum and molecular computing.
■ Whole text thoroughly updated to include new material on many topics, including abstract
data types, the object–oriented paradigm, primality testing, and system verification and
validation.
David Harel is Professor and Dean of the Faculty of Mathematics and Computer Science at the
Weizmann Institute of Science. He is renowned for outstanding research in many areas of the
field, and has recently been awarded the Israel Prize in Computer Science. Yishai Feldman is on
the faculty of the Efi Arazi School of Computer Science at the Interdisciplinary Centre, Herzliya.
He specializes in the use of artificial–intelligence techniques in software engineering and their
real–world applications.
www.pearson-books.com
an imprint of
Harel Cvr.QXD 16/01/2006 09:40 PM Page 1
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
Algorithmics
The Spirit of Computing
i
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
We work with leading authors to develop the
strongest educational materials in computing,
bringing cutting-edge thinking and best learning
practice to a global market.
Under a range of well-known imprints, including
Addison-Wesley, we craft high quality print and
electronic publications which help readers to understand
and apply their content, whether studying or at work.
To find out more about the complete range of our
publishing, please visit us on the World Wide Web at:
www.pearsoned.co.uk
ii
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
Algorithmics
The Spirit of Computing
THIRD EDITION
David Harel
The Weizmann Institute
with
Yishai Feldman
The Interdisciplinary Center, Herzliya
iii
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
Pearson Education Limited
Edinburgh Gate
Harlow
Essex CM20 2JE
England
and Associated Companies throughout the world
Visit us on the World Wide Web at:
www.pearsoned.co.uk
First published 1987
Second edition 1992
Third edition published 2004
C
Addison-Wesley Publishers Limited 1987, 1992
C
Pearson Education Limited 2004
The rights of David Harel and Yishai Feldman to be identified as authors of this work
have been asserted by them in accordance with the Copyright, Designs and Patents Act 1988.
All rights reserved. No part of this publication may be reproduced, stored in a retrieval
system, or transmitted in any form or by any means, electronic, mechanical,
photocopying, recording or otherwise, without either the prior written permission of the
publisher or a licence permitting restricted copying in the United Kingdom issued by the
Copyright Licensing Agency Ltd, 90 Tottenham Court Road, London W1T 4LP.
The programs in this book have been included for their instructional value. They have been
tested with care but are not guaranteed for any particular purpose. The publisher does not
offer any warranties or representations nor does it accept any liabilities with respect to the
programs.
All trademarks used herein are the property of their respective owners. The use of any
trademark in this text does not vest in the author or publisher any trademark ownership rights
in such trademarks, nor does the use of such trademarks imply any affiliation with or
endorsement of this book by such owner.
ISBN 0 321 11784 0
British Library Cataloguing-in-Publication Data
A catalogue record for this book is available from the British Library.
Library of Congress Cataloging-in-Publication Data
Harel, David, 1950–
Algorithmics : the spirit of computing / David Harel, with Yishai Feldman.–3rd ed.
p. cm.
Includes bibliographical references and index.
ISBN 0-321-11784-0
1. Computer algorithms. I. Feldman, Yishai A., 1958– II. Title.
QA76.9.A43H37 2004
005.1–dc22 2004041063
10987654321
08 07 06 05 04
Typeset by 59 in 10/12pt Times
Printed and bound in Great Britain by Biddles Ltd., Guildford and King’s Lynn
iv
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
For my dear mother, Joyce Fisch
And in memory of my dear father, Harold Fisch
Beloved parents and gifted teachers both
(D.H.)
To the memory of my dear parents,
Hadassa and Moshe Feldman
For their unfailing love and support
(Y.F.)
v
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
Tell me, I pray thee,
in what thy great strength lies
J
UDGES 16: 6
Behold, this I have found
counting one thing to another, to find out the sum
E
CCLESIASTES 7: 27
vi
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
Contents
Declare the things
that are to come
hereafter
I
SAIAH
41: 23
Preface xi
Acknowledgments xvii
Part I. Preliminaries 1
■ 1. Introduction and Historical Review 3
or, What’s It All About?
■
2. Algorithms and Data 19
or, Getting It Done
■
3. Programming Languages and Paradigms 49
or, Getting It Done by Computer
Part II. Methods and Analysis 79
■ 4. Algorithmic Methods 81
or, Getting It Done Methodically
■
5. The Correctness of Algorithms 99
or, Getting It Done Right
vii
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
viii Contents
■ 6. The Efficiency of Algorithms 129
or, Getting It Done Cheaply
Part III. Limitations and Robustness 157
■ 7. Inefficiency and Intractability 159
or, You Can’t Always Get It Done Cheaply
■
8. Noncomputability and Undecidability 191
or, Sometimes You Can’t Get It Done At All!
■
9. Algorithmic Universality and Its Robustness 219
or, The Simplest Machines That Get It Done
Part IV. Relaxing the Rules 255
■ 10. Parallelism, Concurrency, and Alternative Models 257
or, Getting Lots of Stuff Done at Once
■
11. Probabilistic Algorithms 297
or, Getting It Done by Tossing Coins
■
12. Cryptography and Reliable Interaction 317
or, Getting It Done in Secret
Part V. The Bigger Picture 335
■ 13. Software Engineering 337
or, Getting It Done When It’s Large
■
14. Reactive Systems 357
or, Getting It to Behave Properly Over Time
■
15. Algorithmics and Intelligence 379
or, Are They Better at It Than Us?
www.it-ebooks.info
P1: GIG
PE002-FM PE002-Harel PE002-Harel-FM-v1.cls March 19, 2004 19:35
Contents ix
Postscript 401
Selected Solutions 403
Bibliographic Notes 433
Index 495
www.it-ebooks.info
[...]... Second Edition See, this is new; but it has already been ECCLESIASTES 1: 10 The first edition of this book was intended to be read from beginning to end, and could be used as supplementary reading in a number of courses Teaching a course based exclusively on it was possible, but would have required the instructor to prepare exercises and add examples and more detail in certain places The present edition. .. EZEKIEL 40: 10 This time around, a significant revision was carried out There are several important changes in this edition of the book, compared to the first and second editions, including two brand new chapters, new sections, and more 2 Again, see the section below, “New to the third edition, ” as some of these chapter numbers have changed www.it-ebooks.info P1: GIG PE002-FM PE002-Harel PE002-Harel-FM-v1.cls... thanks goes to R Rosner, who co-authored the exercises and solutions, which first appeared as part of the second edition, and to Eyal Mashiah for his help in preparing the index for the present edition I am grateful to the many people who read parts of the original 1987 manuscript or later editions, identified errors, made bibliographic suggestions, or provided helpful www.it-ebooks.info xvii P1: GIG... algorithms (Chapter 11) from that on cryptography (now Chapter 12)— presented together in a single chapter in the previous editions—and extending both by discussions of some of the new developments in these fields Part V (The Bigger Picture) ends with the closing chapter of the previous editions, “Algorithmics and Intelligence,” which is now Chapter 15 However, this is now preceded by two new chapters: Chapter... the Chinese room argument While we have left the exercises and solutions essentially as they were in the second edition, the bibliographic notes were a completely different story Twelve years in Computer Science is almost an eternity The format of the notes is the same as in the previous editions; i.e., a general section at the start of each chapter, which lists relevant books and periodicals, followed... first PhD student many years ago, and) who graciously agreed to join me in the preparation of this, the third, edition I am grateful for the time, energy, and talent he put into this project There is absolutely no way the revision would have been carried out without him Parts of the original edition of the book were written while I was visiting Digital Equipment Corporation’s Systems Research Center... the first edition was written? Rather than taking this as a criticism of the field, I think that it shows that the topics selected for inclusion in the book are really of fundamental nature, so that no significant changes had to be made The issues discussed herein are thus probably basic and lasting Maybe the term “classical” is most fitting David Harel Rehovot, Israel May, 1991 I New to the Third Edition. .. questions It is hoped, however, that the book will implicitly convey something of the uniqueness and universality of algorithmics, and hence something of the importance of computer science as an autonomous—albeit, young—field of study Since computers could conceivably restrict the generality of algorithmics, some people view the unavoidable link between the two as unfortunate In fact, terming the field “computer... problems, Shor’s quantum polynomial time factoring algorithm, and the AKS polynomial-time primality test And all I can say about these is this: wouldn’t it be wonderful if the bulk of the work on the next edition of this book—if and when, of course—will be spent on results of similar caliber and importance David Harel Rehovot, Israel August, 2003 a threefold cord is not quickly broken ECCLESIASTES 4: 12... and Robustness), i.e., Chapters 4 through 9, required no sweeping changes This can again be attributed to the “classical” nature of the topics chosen for these, as mentioned in the “New to the second edition section above The first chapter of Part IV (Relaxing the Rules) was previously titled “Parallelism and Concurrency” and is now called “Parallelism, Concurrency, and Alternative Models.” It incorporates . Spirit of Computing
THIRD EDITION
THIRD EDITION
THIRD EDITION
Algorithmics
Algorithmics
Algorithmics
From a review of the first edition:
‘This book is a. World Wide Web at:
www.pearsoned.co.uk
First published 1987
Second edition 1992
Third edition published 2004
C
Addison-Wesley Publishers Limited 1987,