Your cart is empty
This classic book on formal languages, automata theory, and computational complexity has been updated to present theoretical concepts in a concise and straightforward manner with the increase of hands-on, practical applications. This new edition comes with Gradiance, an online assessment tool developed for computer science. Please note, Gradiance is no longer available with this book, as we no longer support this product.
This book is a short, concise introduction to key mathematical ideas for computing students which develops their understanding of discrete mathematics and its application in computing. The topics are presented in a well defined, logical order that build upon each other and are constantly reinforced by worked examples. Reliance on students' previous mathematical experience is kept to a minimum, though some basic algebraic manipulation is required. This book is appropriate for CS and Math students in an undergraduate Discrete Math course.
The content constitutes an accepted core of mathematics for computer scientists (for example, the formal methods used in computer science draw heavily on the discrete methematical concepts covered here, particularly logic, sets, relations and functions). Emphasis is placed on clear and careful explanations of basic ideas and on building confidence in developing mathematical competence through carefully selected exercises. All chapters conclude with short applications/case studies relevant to computing, which provide further motivation to engage with the mathematical ideas involved, and also demonstrate how the mathematics can be applied in a computing context.
Do you want reliable code for the latest methods in scientific computing? This CD-ROM contains all the source code from the new, and all previous, editions and language versions of Numerical Recipes. Included are: Numerical Recipes, Third Edition: complete source code in C++, with many brand-new routines Numerical Recipes, Second Edition: complete source code in C, Fortran 77, and Fortran 90 Numerical Recipes, First Edition: complete source code in Pascal and BASIC plus third-party ports of the code to Modula 2 and Common Lisp The CDROM also features an archive of difficult-to-find historical materials, including Baker's C Tools and More C Tools, Lau's Numerical Library in C for Scientists and Engineers, the influential NUMAL Algol 60 library from the Mathematisch Centrum in Amsterdam, and more than 250 MB of physically generated and multiply encrypted random bytes. Compatible with all computers and operating systems, the CDROM includes a Personal Single-User License that allows an individual to use the copyrighted code on any number of computers (no more than one at a time). For support or more general license information visit at www.nr.com.
Want to kill it at your job interview in the tech industry? Want to win that coding competition? Learn all the algorithmic techniques and programming skills you need from two experienced coaches, problem setters, and jurors for coding competitions. The authors highlight the versatility of each algorithm by considering a variety of problems and show how to implement algorithms in simple and efficient code. What to expect: * Master 128 algorithms in Python. * Discover the right way to tackle a problem and quickly implement a solution of low complexity. * Classic problems like Dijkstra's shortest path algorithm and Knuth-Morris-Pratt's string matching algorithm, plus lesser known data structures like Fenwick trees and Knuth's dancing links. * A framework to tackle algorithmic problem solving, including: Definition, Complexity, Applications, Algorithm, Key Information, Implementation, Variants, In Practice, and Problems. * Python code in the book and on the companion website.
Data-driven discovery is revolutionizing the modeling, prediction, and control of complex systems. This textbook brings together machine learning, engineering mathematics, and mathematical physics to integrate modeling and control of dynamical systems with modern methods in data science. It highlights many of the recent advances in scientific computing that enable data-driven methods to be applied to a diverse range of complex systems, such as turbulence, the brain, climate, epidemiology, finance, robotics, and autonomy. Aimed at advanced undergraduate and beginning graduate students in the engineering and physical sciences, the text presents a range of topics and methods from introductory to state of the art.
Model checking is one of the most successful verification techniques and has been widely adopted in traditional computing and communication hardware and software industries. This book provides the first systematic introduction to model checking techniques applicable to quantum systems, with broad potential applications in the emerging industry of quantum computing and quantum communication as well as quantum physics. Suitable for use as a course textbook and for self-study, graduate and senior undergraduate students will appreciate the step-by-step explanations and the exercises included. Researchers and engineers in the related fields can further develop these techniques in their own work, with the final chapter outlining potential future applications.
This is a thorough introduction to the fundamental concepts of functional programming.KEY TOPICS:The book clearly expounds the construction of functional programming as a process of mathematical calculation, but restricts itself to the mathematics relevant to actual program construction. It covers simple and abstract datatypes, numbers, lists, examples, trees, and efficiency. It includes a simple, yet coherent treatment of the Haskell class; a calculus of time complexity; and new coverage of monadic input-output.MARKET:For anyone interested in the theory and practice of functional programming.
Discrete Mathematics for Computing presents the essential mathematics needed for the study of computing and information systems. The subject is covered in a gentle and informal style, but without compromising the need for correct methodology. It is perfect for students with a limited background in mathematics. This new edition includes: * An expanded section on encryption * Additional examples of the ways in which theory can be applied to problems in computing * Many more exercises covering a range of levels, from the basic to the more advanced This book is ideal for students taking a one-semester introductory course in discrete mathematics - particularly for first year undergraduates studying Computing and Information Systems. PETER GROSSMAN has worked in both academic and industrial roles as a mathematician and computing professional. As a lecturer in mathematics, he was responsible for coordinating and developing mathematics courses for Computing students. He has also applied his skills in areas as diverse as calculator design, irrigation systems and underground mine layouts. He lives and works in Melbourne, Australia.
This newly expanded and updated second edition of the best-selling classic continues to take the "mystery" out of designing algorithms, and analyzing their efficacy and efficiency. Expanding on the first edition, the book now serves as the primary textbook of choice for algorithm design courses while maintaining its status as the premier practical reference guide to algorithms for programmers, researchers, and students. The reader-friendly Algorithm Design Manual provides straightforward access to combinatorial algorithms technology, stressing design over analysis. The first part, Techniques, provides accessible instruction on methods for designing and analyzing computer algorithms. The second part, Resources, is intended for browsing and reference, and comprises the catalog of algorithmic resources, implementations and an extensive bibliography. NEW to the second edition: * Doubles the tutorial material and exercises over the first edition * Provides full online support for lecturers, and a completely updated and improved website component with lecture slides, audio and video * Contains a unique catalog identifying the 75 algorithmic problems that arise most often in practice, leading the reader down the right path to solve them * Includes several NEW "war stories" relating experiences from real-world applications * Provides up-to-date links leading to the very best algorithm implementations available in C, C++, and Java
Finite-state methods are the most efficient mechanisms for analysing textual and symbolic data, providing elegant solutions for an immense number of practical problems in computational linguistics and computer science. This book for graduate students and researchers gives a complete coverage of the field, starting from a conceptual introduction and building to advanced topics and applications. The central finite-state technologies are introduced with mathematical rigour, ranging from simple finite-state automata to transducers and bimachines as 'input-output' devices. Special attention is given to the rich possibilities of simplifying, transforming and combining finite-state devices. All algorithms presented are accompanied by full correctness proofs and executable source code in a new programming language, C(M), which focuses on transparency of steps and simplicity of code. Thus, by enabling readers to obtain a deep formal understanding of the subject and to put finite-state methods to real use, this book closes the gap between theory and practice.
This well-balanced text touches on theoretical and applied aspects of protecting digital data. The reader is provided with the basic theory and is then shown deeper fascinating detail, including the current state of the art. Readers will soon become familiar with methods of protecting digital data while it is transmitted, as well as while the data is being stored. Both basic and advanced error-correcting codes are introduced together with numerous results on their parameters and properties. The authors explain how to apply these codes to symmetric and public key cryptosystems and secret sharing. Interesting approaches based on polynomial systems solving are applied to cryptography and decoding codes. Computer algebra systems are also used to provide an understanding of how objects introduced in the book are constructed, and how their properties can be examined. This book is designed for Masters-level students studying mathematics, computer science, electrical engineering or physics.
Haskell is a purely functional language that allows programmers to rapidly develop clear, concise, and correct software. The language has grown in popularity in recent years, both in teaching and in industry. This book is based on the author's experience of teaching Haskell for more than twenty years. All concepts are explained from first principles and no programming experience is required, making this book accessible to a broad spectrum of readers. While Part I focuses on basic concepts, Part II introduces the reader to more advanced topics. This new edition has been extensively updated and expanded to include recent and more advanced features of Haskell, new examples and exercises, selected solutions, and freely downloadable lecture slides and example code. The presentation is clean and simple, while also being fully compliant with the latest version of the language, including recent changes concerning applicative, monadic, foldable, and traversable types.
This comprehensive text provides a modern and technically precise exposition of the fundamental theory and applications of temporal logics in computer science. Part I presents the basics of discrete transition systems, including constructions and behavioural equivalences. Part II examines the most important temporal logics for transition systems and Part III looks at their expressiveness and complexity. Finally, Part IV describes the main computational methods and decision procedures for model checking and model building - based on tableaux, automata and games - and discusses their relationships. The book contains a wealth of examples and exercises, as well as an extensive annotated bibliography. Thus, the book is not only a solid professional reference for researchers in the field but also a comprehensive graduate textbook that can be used for self-study as well as for teaching courses.
Modern scientific computational methods are undergoing a transformative change; big data and statistical learning methods now have the potential to outperform the classical first-principles modeling paradigm. This book bridges this transition, connecting the theory of probability, stochastic processes, functional analysis, numerical analysis, and differential geometry. It describes two classes of computational methods to leverage data for modeling dynamical systems. The first is concerned with data fitting algorithms to estimate parameters in parametric models that are postulated on the basis of physical or dynamical laws. The second is on operator estimation, which uses the data to nonparametrically approximate the operator generated by the transition function of the underlying dynamical systems. This self-contained book is suitable for graduate studies in applied mathematics, statistics, and engineering. Carefully chosen elementary examples with supplementary MATLAB (R) codes and appendices covering the relevant prerequisite materials are provided, making it suitable for self-study.
This book surveys the mathematical and computational properties of finite sets of points in the plane, covering recent breakthroughs on important problems in discrete geometry, and listing many open problems. It unifies these mathematical and computational views using forbidden configurations, which are patterns that cannot appear in sets with a given property, and explores the implications of this unified view. Written with minimal prerequisites and featuring plenty of figures, this engaging book will be of interest to undergraduate students and researchers in mathematics and computer science. Most topics are introduced with a related puzzle or brain-teaser. The topics range from abstract issues of collinearity, convexity, and general position to more applied areas including robust statistical estimation and network visualization, with connections to related areas of mathematics including number theory, graph theory, and the theory of permutation patterns. Pseudocode is included for many algorithms that compute properties of point sets.
This fifth edition continues to improve on the features that have made it the market leader. The text offers a flexible organization, enabling instructors to adapt the book to their particular courses. The book is both complete and careful, and it continues to maintain its emphasis on algorithms and applications. Excellent exercise sets allow students to perfect skills as they practice. This new edition continues to feature numerous computer science applications-making this the ideal text for preparing students for advanced study.
The Poisson process, a core object in modern probability, enjoys a richer theory than is sometimes appreciated. This volume develops the theory in the setting of a general abstract measure space, establishing basic results and properties as well as certain advanced topics in the stochastic analysis of the Poisson process. Also discussed are applications and related topics in stochastic geometry, including stationary point processes, the Boolean model, the Gilbert graph, stable allocations, and hyperplane processes. Comprehensive, rigorous, and self-contained, this text is ideal for graduate courses or for self-study, with a substantial number of exercises for each chapter. Mathematical prerequisites, mainly a sound knowledge of measure-theoretic probability, are kept in the background, but are reviewed comprehensively in the appendix. The authors are well-known researchers in probability theory; especially stochastic geometry. Their approach is informed both by their research and by their extensive experience in teaching at undergraduate and graduate levels.
This interdisciplinary reference and guide provides an introduction to modeling methodologies and models which form the starting point for deriving efficient and effective solution techniques, and presents a series of case studies that demonstrate how heuristic and analytical approaches may be used to solve large and complex problems. Topics and features: introduces the key modeling methods and tools, including heuristic and mathematical programming-based models, and queueing theory and simulation techniques; demonstrates the use of heuristic methods to not only solve complex decision-making problems, but also to derive a simpler solution technique; presents case studies on a broad range of applications that make use of techniques from genetic algorithms and fuzzy logic, tabu search, and queueing theory; reviews examples incorporating system dynamics modeling, cellular automata and agent-based simulations, and the use of big data; supplies expanded descriptions and examples in the appendices.
Classic text considersgeneral theory of computability, computable functions, operations on computable functions, Turing machines self-applied, unsolvable decision problems, applications of general theory, mathematical logic, Kleene hierarchy, computable functionals, classification of unsolvable decision problems and more.
Bringing together idiomatic Python programming, foundational numerical methods, and physics applications, this is an ideal standalone textbook for courses on computational physics. All the frequently used numerical methods in physics are explained, including foundational techniques and hidden gems on topics such as linear algebra, differential equations, root-finding, interpolation, and integration. Accompanying the mathematical derivations are full implementations of dozens of numerical methods in Python, as well as more than 250 end-of-chapter problems. Numerical methods and physics examples are clearly separated, allowing this introductory book to be later used as a reference; the penultimate section in each chapter is an in depth project, tackling physics problems which cannot be solved without the use of a computer. Written primarily for students studying computational physics, this textbook brings the non-specialist quickly up to speed with Python before looking in detail at the numerical methods often used in the subject.
This volume is a compilation of the research program of the 10th International Conference on the Integration of Artificial Intelligence (AI) and Operations Research (OR) Techniques in Constraint Programming, CPAIOR 2013, held at Yorktown Heights, NY, USA, in May 2013. This volume contains 20 full papers and 11 short papers that were carefully reviewed and selected from 71 submissions. The papers focus on new techniques or applications in the intersection of constraint programming (CP), artificial intelligence (AI) and operations research (OR).
The Foundations of Computational Mathematics meetings are a platform for cross-fertilisation between numerical analysis, mathematics and computer science. This volume is a collection of articles based on plenary presentations, given at the 2011 meeting, by some of the world's foremost authorities in computational mathematics. The topics covered reflect the breadth of research within the area as well as the richness of interactions between seemingly unrelated branches of pure and applied mathematics. As a result this volume will be of interest to researchers in the field of computational mathematics and also to non-experts who wish to gain some insight into the state of the art in this active and significant field.
The year 2009 celebrates the bicentenary of Darwin's birth and the 150th - niversary of the publication of his seminal work, On the Origin of Species.If this makes 2009 a special year for the research community working in biology and evolution, the ?eld of evolutionary computation (EC) also shares the same excitement. EC techniques are e?cient, nature-inspired planning and optimi- tion methods based on the principles of natural evolution and genetics. Due to their e?ciency and simple underlying principles, these methods can be used in the context of problem solving, optimization, and machine learning. A large and ever-increasing number of researchers and professionals make use of EC te- niques in various application domains. ThisvolumepresentsacarefulselectionofrelevantECapplicationscombined with a thorough examination of the techniques used in EC. The papers in the volume illustrate the current state of the art in the application of EC and can help and inspire researchers and professionals to develop e?cient EC methods for design and problem solving.
Co-authored by four leading scientists from academia and industry, Numerical Recipes Third Edition starts with basic mathematics and computer science and proceeds to complete, working routines. Widely recognized as the most comprehensive, accessible and practical basis for scientific computing, this new edition incorporates more than 400 Numerical Recipes routines, many of them new or upgraded. The executable C++ code, now printed in color for easy reading, adopts an object-oriented style particularly suited to scientific applications. The whole book is presented in the informal, easy-to-read style that made earlier editions so popular. Please visit www.nr.com or www.cambridge.org/us/numericalrecipes for more details. New key features: 2 new chapters, 25 new sections, 25% longer than Second Edition Thorough upgrades throughout the text Over 100 completely new routines and upgrades of many more. New Classification and Inference chapter, including Gaussian mixture models, HMMs, hierarchical clustering, Support Vector MachinesNew Computational Geometry chapter covers KD trees, quad- and octrees, Delaunay triangulation, and algorithms for lines, polygons, triangles, and spheres New sections include interior point methods for linear programming, Monte Carlo Markov Chains, spectral and pseudospectral methods for PDEs, and many new statistical distributions An expanded treatment of ODEs with completely new routines Plus comprehensive coverage of linear algebra, interpolation, special functions, random numbers, nonlinear sets of equations, optimization, eigensystems, Fourier methods and wavelets, statistical tests, ODEs and PDEs, integral equations, and inverse theory And much, much more! Visitthe authors' web site for information about electronic subscriptions www.nr.com/aboutNR3book.html
Geometric and topological inference deals with the retrieval of information about a geometric object using only a finite set of possibly noisy sample points. It has connections to manifold learning and provides the mathematical and algorithmic foundations of the rapidly evolving field of topological data analysis. Building on a rigorous treatment of simplicial complexes and distance functions, this self-contained book covers key aspects of the field, from data representation and combinatorial questions to manifold reconstruction and persistent homology. It can serve as a textbook for graduate students or researchers in mathematics, computer science and engineering interested in a geometric approach to data science.
You may like...
Computer Programming with C++
Kunal Pimparkhede Paperback R1,640 Discovery Miles 16 400
Introduction to Property Testing
Oded Goldreich Hardcover R1,815 Discovery Miles 18 150
Mathematical Modelling of the Human…
Alfio Quarteroni, Luca Dede, … Hardcover R1,777 Discovery Miles 17 770
A Computational Approach to Statistical…
Taylor Arnold, Michael Kane, … Hardcover R1,699 Discovery Miles 16 990
Chemical Engineering Primer with…
Hussein K. Abdel-Aal Paperback R1,790 Discovery Miles 17 900
Art of Computer Programming, The…
Donald Knuth Hardcover
Doing Better Statistics in…
Paul Cairns Paperback
Mathematical Programming Solver Based on…
Frederic Gardi, Thierry Benoist, … Hardcover R2,959 Discovery Miles 29 590
Logic in Computer Science - Modelling…
Michael Huth, Mark Ryan Paperback R1,338 Discovery Miles 13 380
The Discrete Charm of the Machine - Why…
Ken Steiglitz Hardcover