## Similar

“Artfully envisions a breathtakingly better world.” —Los Angeles Times

“Elaborate, smart and persuasive.” —The Boston Globe

“A pleasure to read.” —The Wall Street Journal

One of CBS News’s Best Fall Books of 2005 • Among St Louis Post-Dispatch’s Best Nonfiction Books of 2005 • One of Amazon.com’s Best Science Books of 2005

A radical and optimistic view of the future course of human development from the bestselling author of How to Create a Mind and The Age of Spiritual Machines who Bill Gates calls “the best person I know at predicting the future of artificial intelligence”

For over three decades, Ray Kurzweil has been one of the most respected and provocative advocates of the role of technology in our future. In his classic The Age of Spiritual Machines, he argued that computers would soon rival the full range of human intelligence at its best. Now he examines the next step in this inexorable evolutionary process: the union of human and machine, in which the knowledge and skills embedded in our brains will be combined with the vastly greater capacity, speed, and knowledge-sharing ability of our creations.

From the Trade Paperback edition.

Artificial Intelligence helps choose what books you buy, what movies you see, and even who you date. It puts the "smart" in your smartphone and soon it will drive your car. It makes most of the trades on Wall Street, and controls vital energy, water, and transportation infrastructure. But Artificial Intelligence can also threaten our existence.

In as little as a decade, AI could match and then surpass human intelligence. Corporations and government agencies are pouring billions into achieving AI's Holy Grail—human-level intelligence. Once AI has attained it, scientists argue, it will have survival drives much like our own. We may be forced to compete with a rival more cunning, more powerful, and more alien than we can imagine.

Through profiles of tech visionaries, industry watchdogs, and groundbreaking AI systems, Our Final Invention explores the perils of the heedless pursuit of advanced AI. Until now, human intelligence has had no rival. Can we coexist with beings whose intelligence dwarfs our own? And will they allow us to?

Ray Kurzweil is arguably today’s most influential—and often controversial—futurist. In How to Create a Mind, Kurzweil presents a provocative exploration of the most important project in human-machine civilization—reverse engineering the brain to understand precisely how it works and using that knowledge to create even more intelligent machines.

Kurzweil discusses how the brain functions, how the mind emerges from the brain, and the implications of vastly increasing the powers of our intelligence in addressing the world’s problems. He thoughtfully examines emotional and moral intelligence and the origins of consciousness and envisions the radical possibilities of our merging with the intelligent technology we are creating.

Certain to be one of the most widely discussed and debated science books of the year, How to Create a Mind is sure to take its place alongside Kurzweil’s previous classics which include Fantastic Voyage: Live Long Enough to Live Forever and The Age of Spiritual Machines.

From the Hardcover edition.

Jeff Hawkins, the man who created the PalmPilot, Treo smart phone, and other handheld devices, has reshaped our relationship to computers. Now he stands ready to revolutionize both neuroscience and computing in one stroke, with a new understanding of intelligence itself.

Hawkins develops a powerful theory of how the human brain works, explaining why computers are not intelligent and how, based on this new theory, we can finally build intelligent machines.

The brain is not a computer, but a memory system that stores experiences in a way that reflects the true structure of the world, remembering sequences of events and their nested relationships and making predictions based on those memories. It is this memory-prediction system that forms the basis of intelligence, perception, creativity, and even consciousness.

In an engaging style that will captivate audiences from the merely curious to the professional scientist, Hawkins shows how a clear understanding of how the brain works will make it possible for us to build intelligent machines, in silicon, that will exceed our human ability in surprising ways.

Written with acclaimed science writer Sandra Blakeslee, On Intelligence promises to completely transfigure the possibilities of the technology age. It is a landmark book in its scope and clarity.

Considered the JavaScript expert by many people in the development community, author Douglas Crockford identifies the abundance of good ideas that make JavaScript an outstanding object-oriented programming language-ideas such as functions, loose typing, dynamic objects, and an expressive object literal notation. Unfortunately, these good ideas are mixed in with bad and downright awful ideas, like a programming model based on global variables.

When Java applets failed, JavaScript became the language of the Web by default, making its popularity almost completely independent of its qualities as a programming language. In JavaScript: The Good Parts, Crockford finally digs through the steaming pile of good intentions and blunders to give you a detailed look at all the genuinely elegant parts of JavaScript, including:

SyntaxObjectsFunctionsInheritanceArraysRegular expressionsMethodsStyleBeautiful featuresThe real beauty? As you move ahead with the subset of JavaScript that this book presents, you'll also sidestep the need to unlearn all the bad parts. Of course, if you want to find out more about the bad parts and how to use them badly, simply consult any other JavaScript book.

With JavaScript: The Good Parts, you'll discover a beautiful, elegant, lightweight and highly expressive language that lets you create effective code, whether you're managing object libraries or just trying to get Ajax to run fast. If you develop sites or applications for the Web, this book is an absolute must.

“The cool thing about this book is that it’s great for keeping the programming process fresh. The book helps you to continue to grow and clearly comes from people who have been there.”

—Kent Beck, author of Extreme Programming Explained: Embrace Change“I found this book to be a great mix of solid advice and wonderful analogies!”

—Martin Fowler, author of Refactoring and UML Distilled“I would buy a copy, read it twice, then tell all my colleagues to run out and grab a copy. This is a book I would never loan because I would worry about it being lost.”

—Kevin Ruland, Management Science, MSG-Logistics“The wisdom and practical experience of the authors is obvious. The topics presented are relevant and useful.... By far its greatest strength for me has been the outstanding analogies—tracer bullets, broken windows, and the fabulous helicopter-based explanation of the need for orthogonality, especially in a crisis situation. I have little doubt that this book will eventually become an excellent source of useful information for journeymen programmers and expert mentors alike.”

—John Lakos, author of Large-Scale C++ Software Design“This is the sort of book I will buy a dozen copies of when it comes out so I can give it to my clients.”

—Eric Vought, Software Engineer“Most modern books on software development fail to cover the basics of what makes a great software developer, instead spending their time on syntax or technology where in reality the greatest leverage possible for any software team is in having talented developers who really know their craft well. An excellent book.”

—Pete McBreen, Independent Consultant“Since reading this book, I have implemented many of the practical suggestions and tips it contains. Across the board, they have saved my company time and money while helping me get my job done quicker! This should be a desktop reference for everyone who works with code for a living.”

—Jared Richardson, Senior Software Developer, iRenaissance, Inc.“I would like to see this issued to every new employee at my company....”

—Chris Cleeland, Senior Software Engineer, Object Computing, Inc.“If I’m putting together a project, it’s the authors of this book that I want. . . . And failing that I’d settle for people who’ve read their book.”

—Ward CunninghamStraight from the programming trenches, The Pragmatic Programmer cuts through the increasing specialization and technicalities of modern software development to examine the core process--taking a requirement and producing working, maintainable code that delights its users. It covers topics ranging from personal responsibility and career development to architectural techniques for keeping your code flexible and easy to adapt and reuse. Read this book, and you'll learn how to

Fight software rot; Avoid the trap of duplicating knowledge; Write flexible, dynamic, and adaptable code; Avoid programming by coincidence; Bullet-proof your code with contracts, assertions, and exceptions; Capture real requirements; Test ruthlessly and effectively; Delight your users; Build teams of pragmatic programmers; and Make your developments more precise with automation.Written as a series of self-contained sections and filled with entertaining anecdotes, thoughtful examples, and interesting analogies, The Pragmatic Programmer illustrates the best practices and major pitfalls of many different aspects of software development. Whether you're a new coder, an experienced programmer, or a manager responsible for software projects, use these lessons daily, and you'll quickly see improvements in personal productivity, accuracy, and job satisfaction. You'll learn skills and develop habits and attitudes that form the foundation for long-term success in your career. You'll become a Pragmatic Programmer.

The book begins with a summary of the nontechnical aspects of interviewing, such as common mistakes, strategies for a great interview, perspectives from the other side of the table, tips on negotiating the best offer, and a guide to the best ways to use EPI.

The technical core of EPI is a sequence of chapters on basic and advanced data structures, searching, sorting, broad algorithmic principles, concurrency, and system design. Each chapter consists of a brief review, followed by a broad and thought-provoking series of problems. We include a summary of data structure, algorithm, and problem solving patterns.

Using everyday objects and familiar language systems such as Braille and Morse code, author Charles Petzold weaves an illuminating narrative for anyone who’s ever wondered about the secret inner life of computers and other smart machines.

It’s a cleverly illustrated and eminently comprehensible story—and along the way, you’ll discover you’ve gained a real context for understanding today’s world of PCs, digital media, and the Internet. No matter what your level of technical savvy, CODE will charm you—and perhaps even awaken the technophile within.

You will learn how to write a robust game loop, how to organize your entities using components, and take advantage of the CPUs cache to improve your performance. You'll dive deep into how scripting engines encode behavior, how quadtrees and other spatial partitions optimize your engine, and how other classic design patterns can be used in games.

The antidote to fuzzy thinking, with furry animals!

Have you read (or stumbled into) one too many irrational online debates? Ali Almossawi certainly had, so he wrote An Illustrated Book of Bad Arguments! This handy guide is here to bring the internet age a much-needed dose of old-school logic (really old-school, a la Aristotle).

Here are cogent explanations of the straw man fallacy, the slippery slope argument, the ad hominem attack, and other common attempts at reasoning that actually fall short—plus a beautifully drawn menagerie of animals who (adorably) commit every logical faux pas. Rabbit thinks a strange light in the sky must be a UFO because no one can prove otherwise (the appeal to ignorance). And Lion doesn’t believe that gas emissions harm the planet because, if that were true, he wouldn’t like the result (the argument from consequences).

Once you learn to recognize these abuses of reason, they start to crop up everywhere from congressional debate to YouTube comments—which makes this geek-chic book a must for anyone in the habit of holding opinions.

Logic For Dummies tracks an introductory logic course at the college level. Concrete, real-world examples help you understand each concept you encounter, while fully worked out proofs and fun logic problems encourage you students to apply what you’ve learned.

Topics include:

The pros and cons of braced initialization, noexcept specifications, perfect forwarding, and smart pointer make functionsThe relationships among std::move, std::forward, rvalue references, and universal referencesTechniques for writing clear, correct, effective lambda expressionsHow std::atomic differs from volatile, how each should be used, and how they relate to C++'s concurrency APIHow best practices in "old" C++ programming (i.e., C++98) require revision for software development in modern C++Effective Modern C++ follows the proven guideline-based, example-driven format of Scott Meyers' earlier books, but covers entirely new material.

"After I learned the C++ basics, I then learned how to use C++ in production code from Meyer's series of Effective C++ books. Effective Modern C++ is the most important how-to book for advice on key guidelines, styles, and idioms to use modern C++ effectively and well. Don't own it yet? Buy this one. Now".

-- Herb Sutter, Chair of ISO C++ Standards Committee and C++ Software Architect at Microsoft

Logically Fallacious is one of the most comprehensive collections of logical fallacies with all original examples and easy to understand descriptions, perfect for educators, debaters, or anyone who wants to be improve his or her reasoning skills.

"Expose an irrational belief, keep a person rational for a day. Expose irrational thinking, keep a person rational for a lifetime." - Bo Bennett

The 6th edition covers HTML5 and ECMAScript 5. Many chapters have been completely rewritten to bring them in line with today's best web development practices. New chapters in this edition document jQuery and server side JavaScript. It's recommended for experienced programmers who want to learn the programming language of the Web, and for current JavaScript programmers who want to master it.

"A must-have reference for expert JavaScript programmers...well-organized and detailed."

—Brendan Eich, creator of JavaScript, CTO of Mozilla

"I made a career of what I learned from JavaScript: The Definitive Guide.”

—Andrew Hedges, Tapulous

From the Trade Paperback edition.

This highly versatile text provides mathematical background used in a wide variety of disciplines, including mathematics and mathematics education, computer science, biology, chemistry, engineering, communications, and business.

Some of the major features and strengths of this textbook

More than 1,600 exercises, ranging from elementary to challenging, are included with hints/answers to all odd-numbered exercises.

Descriptions of proof techniques are accessible and lively.

Students benefit from the historical discussions throughout the textbook.

The fast-growing popularity of Android smartphones and tablets creates a huge opportunities for developers. If you're an experienced developer, you can start creating robust mobile Android apps right away with this professional guide to Android 4 application development. Written by one of Google's lead Android developer advocates, this practical book walks you through a series of hands-on projects that illustrate the features of the Android SDK. That includes all the new APIs introduced in Android 3 and 4, including building for tablets, using the Action Bar, Wi-Fi Direct, NFC Beam, and more.

Shows experienced developers how to create mobile applications for Android smartphones and tablets Revised and expanded to cover all the Android SDK releases including Android 4.0 (Ice Cream Sandwich), including all updated APIs, and the latest changes to the Android platform. Explains new and enhanced features such as drag and drop, fragments, the action bar, enhanced multitouch support, new environmental sensor support, major improvements to the animation framework, and a range of new communications techniques including NFC and Wi-Fi direct. Provides practical guidance on publishing and marketing your applications, best practices for user experience, and moreThis book helps you learn to master the design, lifecycle, and UI of an Android app through practical exercises, which you can then use as a basis for developing your own Android apps.

However, few mathematicians of the time were equipped to understand the young scholar's complex proof. Ernest Nagel and James Newman provide a readable and accessible explanation to both scholars and non-specialists of the main ideas and broad implications of Gödel's discovery. It offers every educated person with a taste for logic and philosophy the chance to understand a previously difficult and inaccessible subject.

Marking the 50th anniversary of the original publication of Gödel's Proof, New York University Press is proud to publish this special anniversary edition of one of its bestselling and most frequently translated books. With a new introduction by Douglas R. Hofstadter, this book will appeal students, scholars, and professionals in the fields of mathematics, computer science, logic and philosophy, and science.

Levy profiles the imaginative brainiacs who found clever and unorthodox solutions to computer engineering problems. They had a shared sense of values, known as "the hacker ethic," that still thrives today. Hackers captures a seminal period in recent history when underground activities blazed a trail for today's digital world, from MIT students finagling access to clunky computer-card machines to the DIY culture that spawned the Altair and the Apple II.

Contents include: Sets and Relations — Cantor's concept of a set, etc.

Natural Number Sequence — Zorn's Lemma, etc.

Extension of Natural Numbers to Real Numbers

Logic — the Statement and Predicate Calculus, etc.

Informal Axiomatic Mathematics

Boolean AlgebraInformal Axiomatic Set TheorySeveral Algebraic Theories — Rings, Integral Domains, Fields, etc.

First-Order Theories — Metamathematics, etc.

Symbolic logic does not figure significantly until the final chapter. The main theme of the book is mathematics as a system seen through the elaboration of real numbers; set theory and logic are seen s efficient tools in constructing axioms necessary to the system.

Mathematics students at the undergraduate level, and those who seek a rigorous but not unnecessarily technical introduction to mathematical concepts, will welcome the return to print of this most lucid work.

"Professor Stoll . . . has given us one of the best introductory texts we have seen." — Cosmos.

"In the reviewer's opinion, this is an excellent book, and in addition to its use as a textbook (it contains a wealth of exercises and examples) can be recommended to all who wish an introduction to mathematical logic less technical than standard treatises (to which it can also serve as preliminary reading)." — Mathematical Reviews.

The selection of topics conveys not only their role in this historical development of mathematics but also their value as bases for understanding the changing nature of mathematics. Among the topics covered in this wide-ranging text are: mathematics before Euclid, Euclid's Elements, non-Euclidean geometry, algebraic structure, formal axiomatics, the real numbers system, sets, logic and philosophy and more. The emphasis on axiomatic procedures provides important background for studying and applying more advanced topics, while the inclusion of the historical roots of both algebra and geometry provides essential information for prospective teachers of school mathematics.

The readable style and sets of challenging exercises from the popular earlier editions have been continued and extended in the present edition, making this a very welcome and useful version of a classic treatment of the foundations of mathematics. "A truly satisfying book." — Dr. Bruce E. Meserve, Professor Emeritus, University of Vermont.

The present volume reprints the first English translation of Giidel's far-reaching work. Not only does it make the argument more intelligible, but the introduction contributed by Professor R. B. Braithwaite (Cambridge University}, an excellent work of scholarship in its own right, illuminates it by paraphrasing the major part of the argument.

This Dover edition thus makes widely available a superb edition of a classic work of original thought, one that will be of profound interest to mathematicians, logicians and anyone interested in the history of attempts to establish axioms that would provide a rigorous basis for all mathematics. Translated by B. Meltzer, University of Edinburgh. Preface. Introduction by R. B. Braithwaite.

Beginning with a survey of set theory and its role in mathematics, the text proceeds to definitions and examples of categories and explains the use of arrows in place of set-membership. The introduction to topos structure covers topos logic, algebra of subobjects, and intuitionism and its logic, advancing to the concept of functors, set concepts and validity, and elementary truth. Explorations of categorial set theory, local truth, and adjointness and quantifiers conclude with a study of logical geometry.

The second edition adds a discussion of vector auto-regressive, structural vector auto-regressive, and structural vector error-correction models. To analyze the interactions between the investigated variables, further impulse response function and forecast error variance decompositions are introduced as well as forecasting. The author explains how these model types relate to each other.

In Automate the Boring Stuff with Python, you’ll learn how to use Python to write programs that do in minutes what would take you hours to do by hand—no prior programming experience required. Once you’ve mastered the basics of programming, you’ll create Python programs that effortlessly perform useful and impressive feats of automation to:

Search for text in a file or across multiple filesCreate, update, move, and rename files and foldersSearch the Web and download online contentUpdate and format data in Excel spreadsheets of any sizeSplit, merge, watermark, and encrypt PDFsSend reminder emails and text notificationsFill out online formsStep-by-step instructions walk you through each program, and practice projects at the end of each chapter challenge you to improve those programs and use your newfound skills to automate similar tasks.

Don’t spend your time doing work a well-trained monkey could do. Even if you’ve never written a line of code, you can make your computer do the grunt work. Learn how in Automate the Boring Stuff with Python.

Note: The programs in this book are written to run on Python 3.

Inside, you'll learn about:

Interaction design and physical computingThe Arduino hardware and software development environmentBasics of electricity and electronicsPrototyping on a solderless breadboardDrawing a schematic diagram

And more. With inexpensive hardware and open-source software components that you can download free, getting started with Arduino is a snap. To use the introductory examples in this book, all you need is a USB Arduino, USB A-B cable, and an LED.

Join the tens of thousands of hobbyists who have discovered this incredible (and educational) platform. Written by the co-founder of the Arduino project, with illustrations by Elisa Canducci, Getting Started with Arduino gets you in on the fun! This 128-page book is a greatly expanded follow-up to the author's original short PDF that's available on the Arduino website.

Two of the authors co-wrote The Elements of Statistical Learning (Hastie, Tibshirani and Friedman, 2nd edition 2009), a popular reference book for statistics and machine learning researchers. An Introduction to Statistical Learning covers many of the same topics, but at a level accessible to a much broader audience. This book is targeted at statisticians and non-statisticians alike who wish to use cutting-edge statistical learning techniques to analyze their data. The text assumes only a previous course in linear regression and no knowledge of matrix algebra.

Programming Collective Intelligence takes you into the world of machine learning and statistics, and explains how to draw conclusions about user experience, marketing, personal tastes, and human behavior in general -- all from information that you and others collect every day. Each algorithm is described clearly and concisely with code that can immediately be used on your web site, blog, Wiki, or specialized application. This book explains:Collaborative filtering techniques that enable online retailers to recommend products or mediaMethods of clustering to detect groups of similar items in a large datasetSearch engine features -- crawlers, indexers, query engines, and the PageRank algorithmOptimization algorithms that search millions of possible solutions to a problem and choose the best oneBayesian filtering, used in spam filters for classifying documents based on word types and other featuresUsing decision trees not only to make predictions, but to model the way decisions are madePredicting numerical values rather than classifications to build price modelsSupport vector machines to match people in online dating sitesNon-negative matrix factorization to find the independent features in a datasetEvolving intelligence for problem solving -- how a computer develops its skill by improving its own code the more it plays a gameEach chapter includes exercises for extending the algorithms to make them more powerful. Go beyond simple database-backed applications and put the wealth of Internet data to work for you.

"Bravo! I cannot think of a better way for a developer to first learn these algorithms and methods, nor can I think of a better way for me (an old AI dog) to reinvigorate my knowledge of the details."

-- Dan Russell, Google

"Toby's book does a great job of breaking down the complex subject matter of machine-learning algorithms into practical, easy-to-understand examples that can be directly applied to analysis of social interaction across the Web today. If I had this book two years ago, it would have saved precious time going down some fruitless paths."

-- Tim Wolters, CTO, Collective Intellect

Complete with quizzes, exercises, and helpful illustrations, this easy-to-follow, self-paced tutorial gets you started with both Python 2.7 and 3.3— the latest releases in the 3.X and 2.X lines—plus all other releases in common use today. You’ll also learn some advanced language features that recently have become more common in Python code.

Explore Python’s major built-in object types such as numbers, lists, and dictionariesCreate and process objects with Python statements, and learn Python’s general syntax modelUse functions to avoid code redundancy and package code for reuseOrganize statements, functions, and other tools into larger components with modulesDive into classes: Python’s object-oriented programming tool for structuring codeWrite large programs with Python’s exception-handling model and development toolsLearn advanced Python tools, including decorators, descriptors, metaclasses, and Unicode processing"Seamless R and C++ integration with Rcpp" is simply a wonderful book. For anyone who uses C/C++ and R, it is an indispensable resource. The writing is outstanding. A huge bonus is the section on applications. This section covers the matrix packages Armadillo and Eigen and the GNU Scientific Library as well as RInside which enables you to use R inside C++. These applications are what most of us need to know to really do scientific programming with R and C++. I love this book. -- Robert McCulloch, University of Chicago Booth School of Business

Rcpp is now considered an essential package for anybody doing serious computational research using R. Dirk's book is an excellent companion and takes the reader from a gentle introduction to more advanced applications via numerous examples and efficiency enhancing gems. The book is packed with all you might have ever wanted to know about Rcpp, its cousins (RcppArmadillo, RcppEigen .etc.), modules, package development and sugar. Overall, this book is a must-have on your shelf. -- Sanjog Misra, UCLA Anderson School of Management

The Rcpp package represents a major leap forward for scientific computations with R. With very few lines of C++ code, one has R's data structures readily at hand for further computations in C++. Hence, high-level numerical programming can be made in C++ almost as easily as in R, but often with a substantial speed gain. Dirk is a crucial person in these developments, and his book takes the reader from the first fragile steps on to using the full Rcpp machinery. A very recommended book! -- Søren Højsgaard, Department of Mathematical Sciences, Aalborg University, Denmark

"Seamless R and C ++ Integration with Rcpp" provides the first comprehensive introduction to Rcpp. Rcpp has become the most widely-used language extension for R, and is deployed by over one-hundred different CRAN and BioConductor packages. Rcpp permits users to pass scalars, vectors, matrices, list or entire R objects back and forth between R and C++ with ease. This brings the depth of the R analysis framework together with the power, speed, and efficiency of C++.

Dirk Eddelbuettel has been a contributor to CRAN for over a decade and maintains around twenty packages. He is the Debian/Ubuntu maintainer for R and other quantitative software, edits the CRAN Task Views for Finance and High-Performance Computing, is a co-founder of the annual R/Finance conference, and an editor of the Journal of Statistical Software. He holds a Ph.D. in Mathematical Economics from EHESS (Paris), and works in Chicago as a Senior Quantitative Analyst.

Rather than merely showing how to run existing exploits, author Jon Erickson explains how arcane hacking techniques actually work. To share the art and science of hacking in a way that is accessible to everyone, Hacking: The Art of Exploitation, 2nd Edition introduces the fundamentals of C programming from a hacker's perspective.

The included LiveCD provides a complete Linux programming and debugging environment-all without modifying your current operating system. Use it to follow along with the book's examples as you fill gaps in your knowledge and explore hacking techniques on your own. Get your hands dirty debugging code, overflowing buffers, hijacking network communications, bypassing protections, exploiting cryptographic weaknesses, and perhaps even inventing new exploits. This book will teach you how to:

* Program computers using C, assembly language, and shell scripts

* Corrupt system memory to run arbitrary code using buffer overflows and format strings Inspect processor registers and system memory with a debugger to gain a real understanding of what is happening

* Outsmart common security measures like nonexecutable stacks and intrusion detection systems

* Gain access to a remote server using port-binding or connect-back shellcode, and alter a server's logging behavior to hide your presence

* Redirect network traffic, conceal open ports, and hijack TCP connections

* Crack encrypted wireless traffic using the FMS attack, and speed up brute-force attacks using a password probability matrix

Hackers are always pushing the boundaries, investigating the unknown, and evolving their art. Even if you don't already know how to program, Hacking: The Art of Exploitation, 2nd Edition will give you a complete picture of programming, machine architecture, network communications, and existing hacking techniques. Combine this knowledge with the included Linux environment, and all you need is your own creativity.

The two-part selection of puzzles and paradoxes begins with examinations of the nature of infinity and some curious systems related to Gödel's theorem. The first three chapters of Part II contain generalized Gödel theorems. Symbolic logic is deferred until the last three chapters, which give explanations and examples of first-order arithmetic, Peano arithmetic, and a complete proof of Gödel's celebrated result involving statements that cannot be proved or disproved. The book also includes a lively look at decision theory, better known as recursion theory, which plays a vital role in computer science.

After a brief overview, the approach begins with elementary toposes and advances to internal category theory, topologies and sheaves, geometric morphisms, and logical aspects of topos theory. Additional topics include natural number objects, theorems of Deligne and Barr, cohomology, and set theory. Each chapter concludes with a series of exercises, and an appendix and indexes supplement the text.

Covering all the mathematical techniques required to resolve geometric problems and design computer programs for computer graphic applications, each chapter explores a specific mathematical topic prior to moving forward into the more advanced areas of matrix transforms, 3D curves and surface patches. Problem-solving techniques using vector analysis and geometric algebra are also discussed.

All the key areas are covered including: Numbers, Algebra, Trigonometry, Coordinate geometry, Transforms, Vectors, Curves and surfaces, Barycentric coordinates, Analytic geometry.

Plus – and unusually in a student textbook – a chapter on geometric algebra is included.

In science fiction, artificial intelligence takes the shape of computers that can speak like people, think for themselves, and sometimes act against us. Sometimes the machines seem to know everything, and symbolize implacable and unknowable power, as in The Matrix. Such machines can also embody the limits of logic, and by extension our own powers of reason. In Arthur C. Clarke's 2001: A Space Odyssey, HAL was a computer of vast capability driven insane by the demands of his programming – to honestly and completely report information – when those instructions conflicted with orders to keep state secrets. Star Trek has given us the android, Lieutenant Commander Data, who strives to be more human. None of these visions came true in quite the way science fiction writers imagined, even though in many ways computers surpass their fictional counterparts. This eBook reviews work in the field and covers topics from chess-playing to quantum computing. The writers tackle how to make computers more powerful, how we define consciousness, what the hard problems are and even how computers might be built once the limits of silicon chips have been reached. Artificial intelligence also raises some thorny ethical questions, such as whether morality can be programmed. These are kinds of issues that make artificial intelligence and computing fascinating. Building an intelligent machine brings together the human desire to create and the question of what makes us what we are. If anyone ever builds a true thinking machine, that last question becomes much more complicated, not less. Data and HAL would probably agree.

This major new edition features many topics not covered in the original, including graphical models, random forests, ensemble methods, least angle regression & path algorithms for the lasso, non-negative matrix factorization, and spectral clustering. There is also a chapter on methods for ``wide'' data (p bigger than n), including multiple testing and false discovery rates.

Trevor Hastie, Robert Tibshirani, and Jerome Friedman are professors of statistics at Stanford University. They are prominent researchers in this area: Hastie and Tibshirani developed generalized additive models and wrote a popular book of that title. Hastie co-developed much of the statistical modeling software and environment in R/S-PLUS and invented principal curves and surfaces. Tibshirani proposed the lasso and is co-author of the very successful An Introduction to the Bootstrap. Friedman is the co-inventor of many data-mining tools including CART, MARS, projection pursuit and gradient boosting.

The extensively revised second edition provides further clarification of matters that typically give rise to difficulty in the classroom and restructures the chapters on logic to emphasize the role of consequence relations and higher-level rules, as well as including more exercises and solutions.

Topics and features: teaches finite mathematics as a language for thinking, as much as knowledge and skills to be acquired; uses an intuitive approach with a focus on examples for all general concepts; brings out the interplay between the qualitative and the quantitative in all areas covered, particularly in the treatment of recursion and induction; balances carefully the abstract and concrete, principles and proofs, specific facts and general perspectives; includes highlight boxes that raise common queries and clear away confusions; provides numerous exercises, with selected solutions, to test and deepen the reader’s understanding.

This clearly-written text/reference is a must-read for first-year undergraduate students of computing. Assuming only minimal mathematical background, it is ideal for both the classroom and independent study.

The demand for Android apps is not slowing down but many mobile developers who want to create Android apps lack the necessary Java background. This beginner guide gets you up and running with using Java to create Android apps with no prior knowledge or experienced necessary!

Shows you the basic Java development concepts and techniques that are necessary to develop Android apps Explores what goes into creating an Android app to give you a better understanding of the various elements Addresses how to deal with standard programming challenges and debuggingBeginning Android Programming with Java For Dummies puts you well on your way toward creating Android apps quickly with Java.

With all the wit and charm that have delighted readers of his previous books, Smullyan transports us once again to that magical island where knights always tell the truth and knaves always lie. Here we meet a new and amazing array of characters, visitors to the island, seeking to determine the natives’ identities. Among them: the census-taker McGregor; a philosophical-logician in search of his flighty bird-wife, Oona; and a regiment of Reasoners (timid ones, normal ones, conceited, modest, and peculiar ones) armed with the rules of propositional logic (if X is true, then so is Y). By following the Reasoners through brain-tingling exercises and adventures—including journeys into the “other possible worlds” of Kripke semantics—even the most illogical of us come to understand Gödel’s two great theorems on incompleteness and undecidability, some of their philosophical and mathematical implications, and why we, like Gödel himself, must remain Forever Undecided!

The book begins by tracing the development of cryptology from that of an arcane practice used, for example, to conceal alchemic recipes, to the modern scientific method that is studied and employed today. The remainder of the book explores the modern aspects and applications of cryptography, covering symmetric- and public-key cryptography, cryptographic protocols, key management, message authentication, e-mail and Internet security, and advanced applications such as wireless security, smart cards, biometrics, and quantum cryptography. The author also includes non-cryptographic security issues and a chapter devoted to information theory and coding. Nearly 200 diagrams, examples, figures, and tables along with abundant references and exercises complement the discussion.

Written by leading authority and best-selling author on the subject Richard A. Mollin, Codes: The Guide to Secrecy from Ancient to Modern Times is the essential reference for anyone interested in this exciting and fascinating field, from novice to veteran practitioner.

The book's first five chapters give an exposition of the theory of infinity-categories that emphasizes their role as a generalization of ordinary categories. Many of the fundamental ideas from classical category theory are generalized to the infinity-categorical setting, such as limits and colimits, adjoint functors, ind-objects and pro-objects, locally accessible and presentable categories, Grothendieck fibrations, presheaves, and Yoneda's lemma. A sixth chapter presents an infinity-categorical version of the theory of Grothendieck topoi, introducing the notion of an infinity-topos, an infinity-category that resembles the infinity-category of topological spaces in the sense that it satisfies certain axioms that codify some of the basic principles of algebraic topology. A seventh and final chapter presents applications that illustrate connections between the theory of higher topoi and ideas from classical topology.

Predictive analytics and Data Mining techniques covered: Exploratory Data Analysis, Visualization, Decision trees, Rule induction, k-Nearest Neighbors, Naïve Bayesian, Artificial Neural Networks, Support Vector machines, Ensemble models, Bagging, Boosting, Random Forests, Linear regression, Logistic regression, Association analysis using Apriori and FP Growth, K-Means clustering, Density based clustering, Self Organizing Maps, Text Mining, Time series forecasting, Anomaly detection and Feature selection. Implementation files can be downloaded from the book companion site at www.LearnPredictiveAnalytics.com

Demystifies data mining concepts with easy to understand languageShows how to get up and running fast with 20 commonly used powerful techniques for predictive analysisExplains the process of using open source RapidMiner toolsDiscusses a simple 5 step process for implementing algorithms that can be used for performing predictive analyticsIncludes practical use cases and examples