Aimed at both working programmers who are applying for a job where puzzles are an integral part of the interview, as well as techies who just love a good puzzle, this book offers a cache of exciting puzzles Features a new series of puzzles, never before published, called elimination puzzles that have a pedagogical aim of helping the reader solve an entire class of Sudoku-like puzzles Provides the tools to solve the puzzles by hand and computer The first part of each chapter presents a puzzle; the second part shows readers how to solve several classes of puzzles algorithmically; the third part asks the reader to solve a mystery involving codes, puzzles, and geography Comes with a unique bonus: if readers actually solve the mystery, they have a chance to win a prize, which will be promoted on wrox.com!
Hours of recreational reckoning. Collected and enhanced from Dennis Shasha's popular Scientific American column, here are thirty-six of the most innovative and emotive mathematical puzzles ever to appear in its pages. Edgy, challenging and representing the ultimate in recreational mathematical games, Puzzling Adventures dares the reader to work out the logic underlying venture fund investments, escape a Minotaur, catch a polar bear, play power politics, work out if a witness is lying, spy on contraband traders and verify DNA. An encrypted set of stories and commentary float above the puzzles. They need decrypting to discover their hints. The hints lead to a surprise—if the reader can work them out.
Genius mathematician, Dr. Dennis Shasha, here sets out his latest book-length mind-twister. Made up of many smaller segments, some of which can be solved by ten year-olds and some which are more challenging, the detective work requires no more than high school geometry and junior high school algebra. In every case, imagination trumps knowledge. The puzzles are set in a larger story of a mathematical detective named Dr. Ecco, his nephew and niece, and Professor Scarlet, the narrator. Scarlet is essentially the Watson to Dr. Ecco's Sherlock Holmes, asking the questions a reader might ask. Each puzzle is posed in a plausible if imaginary real-life setting. There are no hidden facts, no abduction here, just deductive logic and mathematical thought. Overlaying these puzzles are the ramblings of Dr Ecco's old nemesis, Benjamin Baskerhound. He seems to be on the run, but he's trying to tell Ecco his whereabouts in a way that only Ecco will understand. The evidence builds up and readers are invited to send in their solutions. The winner will receive a pre-paid trip to the home of modern mathematics, Sir Isaac Newton's Greenwich Observatory.
Search structures support the fundamental data storage primitives on key-value pairs: insert a pair, delete by key, search by key, and update the value associated with a key. Concurrent search structures are parallel algorithms to speed access to search structures on multicore and distributed servers. These sophisticated algorithms perform fine-grained synchronization between threads, making them notoriously difficult to design correctly. Indeed, bugs have been found both in actual implementations and in the designs proposed by experts in peer-reviewed publications. The rapid development and deployment of these concurrent algorithms has resulted in a rift between the algorithms that can be verified by the state-of-the-art techniques and those being developed and used today. The goal of this book is to show how to bridge this gap in order to bring the certified safety of formal verification to high-performance concurrent search structures. Similar techniques and frameworks can be applied to concurrent graph and network algorithms beyond search structures.
Computational analysis of natural science experiments often confronts noisy data due to natural variability in environment or measurement. Drawing conclusions in the face of such noise entails a statistical analysis. Parametric statistical methods assume that the data is a sample from a population that can be characterized by a specific distribution (e.g., a normal distribution). When the assumption is true, parametric approaches can lead to high confidence predictions. However, in many cases particular distribution assumptions do not hold. In that case, assuming a distribution may yield false conclusions. The companion book Statistics is Easy! gave a (nearly) equation-free introduction to nonparametric (i.e., no distribution assumption) statistical methods. The present book applies data preparation, machine learning, and nonparametric statistics to three quite different life science datasets. We provide the code as applied to each dataset in both R and Python 3. We also include exercises for self-study or classroom use.
Statistics is the activity of inferring results about a population given a sample. Historically, statistics books assume an underlying distribution to the data (typically, the normal distribution) and derive results under that assumption. Unfortunately, in real life, one cannot normally be sure of the underlying distribution. For that reason, this book presents a distribution-independent approach to statistics based on a simple computational counting idea called resampling. This book explains the basic concepts of resampling, then system atically presents the standard statistical measures along with programs (in the language Python) to calculate them using resampling, and finally illustrates the use of the measures and programs in a case study. The text uses junior high school algebra and many examples to explain the concepts. Th e ideal reader has mastered at least elementary mathematics, likes to think procedurally, and is comfortable with computers. Table of Contents: The Basic Idea / Pragmatic Considerations when Using Resampling / Terminology / The Essential Stats / Case Study: New Mexico's 2004 Presidential Ballots / References / Bias Corrected Confidence Intervals / Appendix B
Statistics is the activity of inferring results about a population given a sample. Historically, statistics books assume an underlying distribution to the data (typically, the normal distribution) and derive results under that assumption. Unfortunately, in real life, one cannot normally be sure of the underlying distribution. For that reason, this book presents a distribution-independent approach to statistics based on a simple computational counting idea called resampling. This book explains the basic concepts of resampling, then systematically presents the standard statistical measures along with programs (in the language Python) to calculate them using resampling, and finally illustrates the use of the measures and programs in a case study. The text uses junior high school algebra and many examples to explain the concepts. The ideal reader has mastered at least elementary mathematics, likes to think procedurally, and is comfortable with computers. Table of Contents: The Basic Idea / Bias Corrected Confidence Intervals / Pragmatic Considerations When Using Resampling / Terminology / The Essential Stats / Case Study: New Mexico's 2004 Presidential Ballots / References
Aimed at both working programmers who are applying for a job where puzzles are an integral part of the interview, as well as techies who just love a good puzzle, this book offers a cache of exciting puzzles.; Features a new series of puzzles.
Dennis Shasha is the absolute best puzzle writer alive."—David Gelernter, professor of computer science, Yale University In the tradition of Sherlock Holmes, Dr. Ecco is one of the greatest sleuths of our time, a mathematical wizard who uses logic and computer programming to solve crimes, find treasures, and explore space. Join his team, expand the frontiers of your knowledge, and match wits with him on intriguing cases like "The Virus from the Spy" and "The Secrets of Space" and "The Caribou and the Gas." The puzzles collected here require no formal background beyond arithmetic and elementary algebra—just lively curiosity and keen intelligence. With thirty-six illustrated cases organized around eight major mathematical themes (from Combinatorial Geometry and Geography to Ciphers and Secrecy) this book will encourage you to use your mind and your computer in ways you never previously imagined.
DIVThe heroic Dr. Ecco uncovers a fiendish plot in this collection of original puzzles inspired by research methods of computer science and mathematics. No sophisticated mathematical background necessary. Solutions. /div
In the history of modern computation, large mechanical calculators preceded computers. A person would sit there punching keys according to a procedure and a number would eventually appear. Once calculators became fast enough, it became obvious that the critical path was the punching rather than the calculation itself. That is what made the stored program concept vital to further progress. Once the instructions were stored in the machine, the entire computation could run at the speed of the machine. This book shows how to do the same thing for DNA computing. Rather than asking a robot or a person to pour in specific strands at different times in order to cause a DNA computation to occur (by analogy to a person punching numbers and operations into a mechanical calculator), the DNA instructions are stored within the solution and guide the entire computation. We show how to store straight line programs, conditionals, loops, and a rudimentary form of subroutines. To achieve this goal, the book proposes a complete language for describing the intrinsic topology of DNA complexes and nanomachines, along with the dynamics of such a system. We then describe dynamic behavior using a set of basic transitions, which operate on a small neighborhood within a complex in a well-defined way. These transitions can be formalized as purely syntactical functions of the string representations. Building on that foundation, the book proposes a novel machine motif which constitutes an instruction stack, allowing for the clocked release of an arbitrary sequence of DNA instruction or data strands. The clock mechanism is built of special strands of DNA called ""tick"" and ""tock."" Each time a ""tick"" and ""tock"" enter a DNA solution, a strand is released from an instruction stack (by analogy to the way in which as a clock cycle in an electronic computer causes a new instruction to enter a processing unit). As long as there remain strands on the stack, the next cycle will release a new instruction strand. Regardless of the actual strand or component to be released at any particular clock step, the ""tick"" and ""tock"" fuel strands remain the same, thus shifting the burden of work away from the end user of a machine and easing operation. Pre-loaded stacks enable the concept of a stored program to be realized as a physical DNA mechanism. A conceptual example is given of such a stack operating a walker device. The stack allows for a user to operate such a clocked walker by means of simple repetition of adding two fuel types, in contrast to the previous mechanism of adding a unique fuel -- at least 12 different types of strands -- for each step of the mechanism. We demonstrate by a series of experiments conducted in Ned Seeman's lab that it is possible to ""initialize"" a clocked stored program DNA machine. We end the book with a discussion of the design features of a programming language for clocked DNA programming. There is a lot left to do. Table of Contents: Introduction / Notation / A Topological Description of DNA Computing / Machines and Motifs / Experiment: Storing Clocked Programs in DNA / A Clocked DNA Programming Language
Reports from the cutting edge, where physics and biology are changing the fundamental assumptions of computing. Computers built from DNA, bacteria, or foam. Robots that fix themselves on Mars. Bridges that report when they are aging. This is the bizarre and fascinating world of Natural Computing. Computer scientist and Scientific American’s “Puzzling Adventures” columnist Dennis Shasha here teams up with journalist Cathy Lazere to explore the outer reaches of computing. Drawing on interviews with fifteen leading scientists, the authors present an unexpected vision: the future of computing is a synthesis with nature. That vision will change not only computer science but also fields as disparate as finance, engineering, and medicine. Space engineers are at work designing machines that adapt to extreme weather and radiation. “Wetware” processing built on DNA or bacterial cells races closer to reality. One scientist’s “extended analog computer” measures answers instead of calculating them using ones and zeros. In lively, readable prose, Shasha and Lazere take readers on a tour of the future of smart machines.
In the history of modern computation, large mechanical calculators preceded computers. A person would sit there punching keys according to a procedure and a number would eventually appear. Once calculators became fast enough, it became obvious that the critical path was the punching rather than the calculation itself. That is what made the stored program concept vital to further progress. Once the instructions were stored in the machine, the entire computation could run at the speed of the machine. This book shows how to do the same thing for DNA computing. Rather than asking a robot or a person to pour in specific strands at different times in order to cause a DNA computation to occur (by analogy to a person punching numbers and operations into a mechanical calculator), the DNA instructions are stored within the solution and guide the entire computation. We show how to store straight line programs, conditionals, loops, and a rudimentary form of subroutines. To achieve this goal, the book proposes a complete language for describing the intrinsic topology of DNA complexes and nanomachines, along with the dynamics of such a system. We then describe dynamic behavior using a set of basic transitions, which operate on a small neighborhood within a complex in a well-defined way. These transitions can be formalized as purely syntactical functions of the string representations. Building on that foundation, the book proposes a novel machine motif which constitutes an instruction stack, allowing for the clocked release of an arbitrary sequence of DNA instruction or data strands. The clock mechanism is built of special strands of DNA called "tick" and "tock." Each time a "tick" and "tock" enter a DNA solution, a strand is released from an instruction stack (by analogy to the way in which as a clock cycle in an electronic computer causes a new instruction to enter a processing unit). As long as there remain strands on the stack, the next cycle will release a new instruction strand. Regardless of the actual strand or component to be released at any particular clock step, the "tick" and "tock" fuel strands remain the same, thus shifting the burden of work away from the end user of a machine and easing operation. Pre-loaded stacks enable the concept of a stored program to be realized as a physical DNA mechanism. A conceptual example is given of such a stack operating a walker device. The stack allows for a user to operate such a clocked walker by means of simple repetition of adding two fuel types, in contrast to the previous mechanism of adding a unique fuel -- at least 12 different types of strands -- for each step of the mechanism. We demonstrate by a series of experiments conducted in Ned Seeman's lab that it is possible to "initialize" a clocked stored program DNA machine. We end the book with a discussion of the design features of a programming language for clocked DNA programming. There is a lot left to do. Table of Contents: Introduction / Notation / A Topological Description of DNA Computing / Machines and Motifs / Experiment: Storing Clocked Programs in DNA / A Clocked DNA Programming Language
Time-series data—data arriving in time order, or a data stream—can be found in fields such as physics, finance, music, networking, and medical instrumentation. Designing fast, scalable algorithms for analyzing single or multiple time series can lead to scientific discoveries, medical diagnoses, and perhaps profits. High Performance Discovery in Time Series presents rapid-discovery techniques for finding portions of time series with many events (i.e., gamma-ray scatterings) and finding closely related time series (i.e., highly correlated price and return histories, or musical melodies). A typical time-series technique may compute a "consensus" time series—from a collection of time series—to use regression analysis for predicting future time points. By contrast, this book aims at efficient discovery in time series, rather than prediction, and its novelty lies in its algorithmic contributions and its simple, practical algorithms and case studies. It presumes familiarity with only basic calculus and some linear algebra. Topics and Features: *Presents efficient algorithms for discovering unusual bursts of activity in large time-series databases * Describes the mathematics and algorithms for finding correlation relationships between thousands or millions of time series across fixed or moving windows *Demonstrates strong, relevant applications built on a solid scientific basis *Outlines how readers can adapt the techniques for their own needs and goals *Describes algorithms for query by humming, gamma-ray burst detection, pairs trading, and density detection *Offers self-contained descriptions of wavelets, fast Fourier transforms, and sketches as they apply to time-series analysis This new monograph provides a technical survey of concepts and techniques for describing and analyzing large-scale time-series data streams. It offers essential coverage of the topic for computer scientists, physicists, medical researchers, financial mathematicians, musicologists, and researchers and professionals who must analyze massive time series. In addition, it can serve as an ideal text/reference for graduate students in many data-rich disciplines.
Join math detective in solving nearly 40 puzzles inspired by methods in computer science and mathematics. The Tower of Lego, Odd Doors Problem, Spies and Double Agents, many more. Solutions.
Tuning your database for optimal performance means more than following a few short steps in a vendor-specific guide. For maximum improvement, you need a broad and deep knowledge of basic tuning principles, the ability to gather data in a systematic way, and the skill to make your system run faster. This is an art as well as a science, and Database Tuning: Principles, Experiments, and Troubleshooting Techniques will help you develop portable skills that will allow you to tune a wide variety of database systems on a multitude of hardware and operating systems. Further, these skills, combined with the scripts provided for validating results, are exactly what you need to evaluate competing database products and to choose the right one. Forward by Jim Gray, with invited chapters by Joe Celko and Alberto Lerner Includes industrial contributions by Bill McKenna (RedBrick/Informix), Hany Saleeb (Oracle), Tim Shetler (TimesTen), Judy Smith (Deutsche Bank), and Ron Yorita (IBM) Covers the entire system environment: hardware, operating system, transactions, indexes, queries, table design, and application analysis Contains experiments (scripts available on the author's site) to help you verify a system's effectiveness in your own environment Presents special topics, including data warehousing, Web support, main memory databases, specialized databases, and financial time series Describes performance-monitoring techniques that will help you recognize and troubleshoot problems
Inferring gene regulatory networks is a difficult problem to solve due to the relative scarcity of data compared to the potential size of the networks. While researchers have developed techniques to find some of the underlying network structure, there is still no one-size-fits-all algorithm for every data set. Network Inference in Molecular Biology examines the current techniques used by researchers, and provides key insights into which algorithms best fit a collection of data. Through a series of in-depth examples, the book also outlines how to mix-and-match algorithms, in order to create one tailored to a specific data situation. Network Inference in Molecular Biology is intended for advanced-level students and researchers as a reference guide. Practitioners and professionals working in a related field will also find this book valuable.
This best-selling book is now available in an inexpensive softcover format. Imagine living during the Renaissance and being able to interview that eras greatest scientists about their inspirations, discoveries, and personal interests. The latter half of our century has seen its own Renaissance - informations technology has changed irrevocable the way we live, work, and think about the world. We are fortunate, therefore, that the authors of Out of Their Minds have been able to talk so candidly with the founders of computer science.
This work has been selected by scholars as being culturally important, and is part of the knowledge base of civilization as we know it. This work was reproduced from the original artifact, and remains as true to the original work as possible. Therefore, you will see the original copyright references, library stamps (as most of these works have been housed in our most important libraries around the world), and other notations in the work. This work is in the public domain in the United States of America, and possibly other nations. Within the United States, you may freely copy and distribute this work, as no entity (individual or corporate) has a copyright on the body of the work. As a reproduction of a historical artifact, this work may contain missing or blurred pages, poor pictures, errant marks, etc. Scholars believe, and we concur, that this work is important enough to be preserved, reproduced, and made generally available to the public. We appreciate your support of the preservation process, and thank you for being an important part of keeping this knowledge alive and relevant.
This work has been selected by scholars as being culturally important, and is part of the knowledge base of civilization as we know it. This work was reproduced from the original artifact, and remains as true to the original work as possible. Therefore, you will see the original copyright references, library stamps (as most of these works have been housed in our most important libraries around the world), and other notations in the work. This work is in the public domain in the United States of America, and possibly other nations. Within the United States, you may freely copy and distribute this work, as no entity (individual or corporate) has a copyright on the body of the work. As a reproduction of a historical artifact, this work may contain missing or blurred pages, poor pictures, errant marks, etc. Scholars believe, and we concur, that this work is important enough to be preserved, reproduced, and made generally available to the public. We appreciate your support of the preservation process, and thank you for being an important part of keeping this knowledge alive and relevant.
Statistics is the activity of inferring results about a population given a sample. Historically, statistics books assume an underlying distribution to the data (typically, the normal distribution) and derive results under that assumption. Unfortunately, in real life, one cannot normally be sure of the underlying distribution. For that reason, this book presents a distribution-independent approach to statistics based on a simple computational counting idea called resampling. This book explains the basic concepts of resampling, then systematically presents the standard statistical measures along with programs (in the language Python) to calculate them using resampling, and finally illustrates the use of the measures and programs in a case study. The text uses junior high school algebra and many examples to explain the concepts. The ideal reader has mastered at least elementary mathematics, likes to think procedurally, and is comfortable with computers. Table of Contents: The Basic Idea / Bias Corrected Confidence Intervals / Pragmatic Considerations When Using Resampling / Terminology / The Essential Stats / Case Study: New Mexico's 2004 Presidential Ballots / References
Thank you for visiting our website. Would you like to provide feedback on how we could improve your experience?
This site does not use any third party cookies with one exception — it uses cookies from Google to deliver its services and to analyze traffic.Learn More.