Elements of Programming


Alexander Stepanov - 2009
    And then we wonder why software is notorious for being delivered late and full of bugs, while other engineers routinely deliver finished bridges, automobiles, electrical appliances, etc., on time and with only minor defects. This book sets out to redress this imbalance. Members of my advanced development team at Adobe who took the course based on the same material all benefited greatly from the time invested. It may appear as a highly technical text intended only for computer scientists, but it should be required reading for all practicing software engineers." --Martin Newell, Adobe Fellow"The book contains some of the most beautiful code I have ever seen." --Bjarne Stroustrup, Designer of C++"I am happy to see the content of Alex's course, the development and teaching of which I strongly supported as the CTO of Silicon Graphics, now available to all programmers in this elegant little book." --Forest Baskett, General Partner, New Enterprise Associates"Paul's patience and architectural experience helped to organize Alex's mathematical approach into a tightly-structured edifice--an impressive feat!" --Robert W. Taylor, Founder of Xerox PARC CSL and DEC Systems Research Center Elements of Programming provides a different understanding of programming than is presented elsewhere. Its major premise is that practical programming, like other areas of science and engineering, must be based on a solid mathematical foundation. The book shows that algorithms implemented in a real programming language, such as C++, can operate in the most general mathematical setting. For example, the fast exponentiation algorithm is defined to work with any associative operation. Using abstract algorithms leads to efficient, reliable, secure, and economical software.This is not an easy book. Nor is it a compilation of tips and tricks for incremental improvements in your programming skills. The book's value is more fundamental and, ultimately, more critical for insight into programming. To benefit fully, you will need to work through it from beginning to end, reading the code, proving the lemmas, and doing the exercises. When finished, you will see how the application of the deductive method to your programs assures that your system's software components will work together and behave as they must.The book presents a number of algorithms and requirements for types on which they are defined. The code for these descriptions--also available on the Web--is written in a small subset of C++ meant to be accessible to any experienced programmer. This subset is defined in a special language appendix coauthored by Sean Parent and Bjarne Stroustrup.Whether you are a software developer, or any other professional for whom programming is an important activity, or a committed student, you will come to understand what the book's experienced authors have been teaching and demonstrating for years--that mathematics is good for programming, and that theory is good for practice.

Proofs and Refutations: The Logic of Mathematical Discovery


Imre Lakatos - 1976
    Much of the book takes the form of a discussion between a teacher and his students. They propose various solutions to some mathematical problems and investigate the strengths and weaknesses of these solutions. Their discussion (which mirrors certain real developments in the history of mathematics) raises some philosophical problems and some problems about the nature of mathematical discovery or creativity. Imre Lakatos is concerned throughout to combat the classical picture of mathematical development as a steady accumulation of established truths. He shows that mathematics grows instead through a richer, more dramatic process of the successive improvement of creative hypotheses by attempts to 'prove' them and by criticism of these attempts: the logic of proofs and refutations.

Practical Statistics for Data Scientists: 50 Essential Concepts


Peter Bruce - 2017
    Courses and books on basic statistics rarely cover the topic from a data science perspective. This practical guide explains how to apply various statistical methods to data science, tells you how to avoid their misuse, and gives you advice on what's important and what's not.Many data science resources incorporate statistical methods but lack a deeper statistical perspective. If you're familiar with the R programming language, and have some exposure to statistics, this quick reference bridges the gap in an accessible, readable format.With this book, you'll learn:Why exploratory data analysis is a key preliminary step in data scienceHow random sampling can reduce bias and yield a higher quality dataset, even with big dataHow the principles of experimental design yield definitive answers to questionsHow to use regression to estimate outcomes and detect anomaliesKey classification techniques for predicting which categories a record belongs toStatistical machine learning methods that "learn" from dataUnsupervised learning methods for extracting meaning from unlabeled data

Linear Algebra and Its Applications [with CD-ROM]


David C. Lay - 1993
    

Geometry, Relativity and the Fourth Dimension


Rudolf Rucker - 1977
    A remarkable pictorial discussion of the curved space-time we call home, it achieves even greater impact through the use of 141 excellent illustrations. This is the first sustained visual account of many important topics in relativity theory that up till now have only been treated separately.Finding a perfect analogy in the situation of the geometrical characters in Flatland, Professor Rucker continues the adventures of the two-dimensional world visited by a three-dimensional being to explain our three-dimensional world in terms of the fourth dimension. Following this adventure into the fourth dimension, the author discusses non-Euclidean geometry, curved space, time as a higher dimension, special relativity, time travel, and the shape of space-time. The mathematics is sound throughout, but the casual reader may skip those few sections that seem too purely mathematical and still follow the line of argument. Readable and interesting in itself, the annotated bibliography is a valuable guide to further study.Professor Rucker teaches mathematics at the State University of New York in Geneseo. Students and laymen will find his discussion to be unusually stimulating. Experienced mathematicians and physicists will find a great deal of original material here and many unexpected novelties. Annotated bibliography. 44 problems.

The Art of Logic in an Illogical World


Eugenia Cheng - 2018
    Cheng is a mathematician, so she knows how to make an airtight argument. But even for her, logic sometimes falls prey to emotion, which is why she still fears flying and eats more cookies than she should. If a mathematician can't be logical, what are we to do? In this book, Cheng reveals the inner workings and limitations of logic, and explains why alogic--for example, emotion--is vital to how we think and communicate. Cheng shows us how to use logic and alogic together to navigate a world awash in bigotry, mansplaining, and manipulative memes. Insightful, useful, and funny, this essential book is for anyone who wants to think more clearly.

The Strangest Man: The Hidden Life of Paul Dirac, Mystic of the Atom


Graham Farmelo - 2009
    He was one of the leading pioneers of the greatest revolution in twentieth-century science: quantum mechanics. The youngest theoretician ever to win the Nobel Prize for Physics, he was also pathologically reticent, strangely literal-minded and legendarily unable to communicate or empathize. Through his greatest period of productivity, his postcards home contained only remarks about the weather.Based on a previously undiscovered archive of family papers, Graham Farmelo celebrates Dirac's massive scientific achievement while drawing a compassionate portrait of his life and work. Farmelo shows a man who, while hopelessly socially inept, could manage to love and sustain close friendship.The Strangest Man is an extraordinary and moving human story, as well as a study of one of the most exciting times in scientific history.'A wonderful book . . . Moving, sometimes comic, sometimes infinitely sad, and goes to the roots of what we mean by truth in science.' Lord Waldegrave, Daily Telegraph

A Mind for Numbers: How to Excel at Math and Science (Even If You Flunked Algebra)


Barbara Oakley - 2014
    Engineering professor Barbara Oakley knows firsthand how it feels to struggle with math. She flunked her way through high school math and science courses, before enlisting in the army immediately after graduation. When she saw how her lack of mathematical and technical savvy severely limited her options—both to rise in the military and to explore other careers—she returned to school with a newfound determination to re-tool her brain to master the very subjects that had given her so much trouble throughout her entire life. In A Mind for Numbers, Dr. Oakley lets us in on the secrets to effectively learning math and science—secrets that even dedicated and successful students wish they’d known earlier. Contrary to popular belief, math requires creative, as well as analytical, thinking. Most people think that there’s only one way to do a problem, when in actuality, there are often a number of different solutions—you just need the creativity to see them. For example, there are more than three hundred different known proofs of the Pythagorean Theorem. In short, studying a problem in a laser-focused way until you reach a solution is not an effective way to learn math. Rather, it involves taking the time to step away from a problem and allow the more relaxed and creative part of the brain to take over. A Mind for Numbers shows us that we all have what it takes to excel in math, and learning it is not as painful as some might think!

Schaum's Outline of Discrete Mathematics (Schaum's Outline Series)


Seymour Lipschutz - 2009
    More than 40 million students have trusted Schaum's to help them succeed in the classroom and on exams. Schaum's is the key to faster learning and higher grades in every subject. Each Outline presents all the essential course information in an easy-to-follow, topic-by-topic format. You also get hundreds of examples, solved problems, and practice exercises to test your skills. This Schaum's Outline gives you:  Practice problems with full explanations that reinforce knowledge Coverage of the most up-to-date developments in your course field In-depth review of practices and applications Fully compatible with your classroom text, Schaum's highlights all the important facts you need to know. Use Schaum's to shorten your study time-and get your best test scores! Schaum's Outlines-Problem Solved.

Imagining the Tenth Dimension: A New Way of Thinking about Time and Space


Rob Bryanton - 2006
    Ten dimensions? Most of us have barely gotten used to the idea that there are four.Using simple geometry and an easygoing writing style, author Rob Bryanton starts with the lower dimensions that we are all familiar with, then uses those concepts to build one layer upon another, ultimately arriving at a way of imagining the tenth dimension.Part scientific exploration, part philosophy, this unique book touches upon such diverse topics as dark matter, Feynman's "sum over paths", the quantum observer, and the soul. It is aimed at anyone interested in leading-edge theories about cosmology and the nature of reality, but it is not about mainstream physics. Rather, Imagining the Tenth Dimension is a mind-expanding exercise that could change the way you view this incredible universe in which we live.

The Language of Mathematics: Making the Invisible Visible


Keith Devlin - 1998
    And this language is mathematics." In The Language of Mathematics, award-winning author Keith Devlin reveals the vital role mathematics plays in our eternal quest to understand who we are and the world we live in. More than just the study of numbers, mathematics provides us with the eyes to recognize and describe the hidden patterns of life—patterns that exist in the physical, biological, and social worlds without, and the realm of ideas and thoughts within.Taking the reader on a wondrous journey through the invisible universe that surrounds us—a universe made visible by mathematics—Devlin shows us what keeps a jumbo jet in the air, explains how we can see and hear a football game on TV, allows us to predict the weather, the behavior of the stock market, and the outcome of elections. Microwave ovens, telephone cables, children's toys, pacemakers, automobiles, and computers—all operate on mathematical principles. Far from a dry and esoteric subject, mathematics is a rich and living part of our culture. An exploration of an often woefully misunderstood subject, The Language of Mathematics celebrates the simplicity, the precision, the purity, and the elegance of mathematics.

Naive Set Theory


Paul R. Halmos - 1960
    This book contains my answer to that question. The purpose of the book is to tell the beginning student of advanced mathematics the basic set- theoretic facts of life, and to do so with the minimum of philosophical discourse and logical formalism. The point of view throughout is that of a prospective mathematician anxious to study groups, or integrals, or manifolds. From this point of view the concepts and methods of this book are merely some of the standard mathematical tools; the expert specialist will find nothing new here. Scholarly bibliographical credits and references are out of place in a purely expository book such as this one. The student who gets interested in set theory for its own sake should know, however, that there is much more to the subject than there is in this book. One of the most beautiful sources of set-theoretic wisdom is still Hausdorff's Set theory. A recent and highly readable addition to the literature, with an extensive and up-to-date bibliography, is Axiomatic set theory by Suppes.

Practical Algebra: A Self-Teaching Guide


Peter H. Selby - 1974
    Practical Algebra is an easy andfun-to-use workout program that quickly puts you in command of allthe basic concepts and tools of algebra. With the aid of practical, real-life examples and applications, you'll learn: * The basic approach and application of algebra to problemsolving * The number system (in a much broader way than you have known itfrom arithmetic) * Monomials and polynomials; factoring algebraic expressions; howto handle algebraic fractions; exponents, roots, and radicals;linear and fractional equations * Functions and graphs; quadratic equations; inequalities; ratio, proportion, and variation; how to solve word problems, andmore Authors Peter Selby and Steve Slavin emphasize practical algebrathroughout by providing you with techniques for solving problems ina wide range of disciplines--from engineering, biology, chemistry, and the physical sciences, to psychology and even sociology andbusiness administration. Step by step, Practical Algebra shows youhow to solve algebraic problems in each of these areas, then allowsyou to tackle similar problems on your own, at your own pace.Self-tests are provided at the end of each chapter so you canmeasure your mastery.

Course of Theoretical Physics: Vol. 1, Mechanics


L.D. Landau - 1969
    The exposition is simple and leads to the most complete direct means of solving problems in mechanics. The final sections on adiabatic invariants have been revised and augmented. In addition a short biography of L D Landau has been inserted.

Understanding Cryptography: A Textbook For Students And Practitioners


Christof Paar - 2009
    Today's designers need a comprehensive understanding of applied cryptography.After an introduction to cryptography and data security, the authors explain the main techniques in modern cryptography, with chapters addressing stream ciphers, the Data Encryption Standard (DES) and 3DES, the Advanced Encryption Standard (AES), block ciphers, the RSA cryptosystem, public-key cryptosystems based on the discrete logarithm problem, elliptic-curve cryptography (ECC), digital signatures, hash functions, Message Authentication Codes (MACs), and methods for key establishment, including certificates and public-key infrastructure (PKI). Throughout the book, the authors focus on communicating the essentials and keeping the mathematics to a minimum, and they move quickly from explaining the foundations to describing practical implementations, including recent topics such as lightweight ciphers for RFIDs and mobile devices, and current key-length recommendations.The authors have considerable experience teaching applied cryptography to engineering and computer science students and to professionals, and they make extensive use of examples, problems, and chapter reviews, while the book's website offers slides, projects and links to further resources. This is a suitable textbook for graduate and advanced undergraduate courses and also for self-study by engineers.