Book picks similar to
Logic for Problem Solving by Robert Kowalski
logic-programming
puzzles
miai
mathematics
Bayesian Reasoning and Machine Learning
David Barber - 2012
They are established tools in a wide range of industrial applications, including search engines, DNA sequencing, stock market analysis, and robot locomotion, and their use is spreading rapidly. People who know the methods have their choice of rewarding jobs. This hands-on text opens these opportunities to computer science students with modest mathematical backgrounds. It is designed for final-year undergraduates and master's students with limited background in linear algebra and calculus. Comprehensive and coherent, it develops everything from basic reasoning to advanced techniques within the framework of graphical models. Students learn more than a menu of techniques, they develop analytical and problem-solving skills that equip them for the real world. Numerous examples and exercises, both computer based and theoretical, are included in every chapter. Resources for students and instructors, including a MATLAB toolbox, are available online.
How to Think Clearly: A Guide to Critical Thinking
Doug Erlandson - 2012
Dr. Doug Erlandson draws on concrete examples of good and bad reasoning from the political and social realm and everyday life to make his points in a sometimes lighthearted but always meaningful way. Here's a Preview of What's in the Book
Identifying the differences between good and bad arguments
Avoiding fallacies
Creating good explanations
Assessing probabilities
Recognizing that statistics and numbers can lie
˃˃˃ Here's How You Benefit How to Think Clearly gives you the tools you need to critically assess the claims and counterclaims with which you are bombarded by politicians, pundits, commentators and editors, as well as coworkers, friends and family, and will aid you in developing skills to present your view in ways that are clear, coherent, sensible and persuasive. ˃˃˃ Suitable as a classroom text and for independent study How to Think Clearly is easy to understand and suitable for independent study. At the same time it offers the content and intellectual rigor that you would expect in a text for an introductory college-level course in critical thinking. ˃˃˃ What Others Are Saying About How to Think Clearly: A Guide to Critical Thinking Dr. Erlandson has given a wonderful introduction to good critical thinking: how to recognize good and bad arguments, helpful and non-helpful explanations, the ways that numbers can be manipulated. You can tell that he must be a good teacher. (G. Feltner)The author offers a refuge of reason within our culture of disregard for open-mindedness and rational discourse where the popular debate of serious issues or ideas is often a shouting match from the margins. (Cubs Fan)A great read for anyone who is new to logic and critical thinking, or someone who just wants to review and refresh their knowledge. (Paul D.)
Scroll up and grab a copy today.
Computability and Logic
George S. Boolos - 1980
Including a selection of exercises, adjusted for this edition, at the end of each chapter, it offers a new and simpler treatment of the representability of recursive functions, a traditional stumbling block for students on the way to the Godel incompleteness theorems.
PROLOG: Programming for Artificial Intelligence
Ivan Bratko - 1986
Divided into two parts, the first part of the book introduces the programming language Prolog, while the second part teaches Artificial Intelligence using Prolog as a tool for the implementation of AI techniques. Prolog has its roots in logic, however the main aim of this book is to teach Prolog as a practical programming tool. This text therefore concentrates on the art of using the basic mechanisms of Prolog to solve interesting problems. The third edition has been fully revised and extended to provide an even greater range of applications, which further enhance its value as a self-contained guide to Prolog, AI or AI Programming for students and professional programmers alike.
The Puzzler's Dilemma: From the Lighthouse of Alexandria to Monty Hall, a Fresh Look at Classic Conundrums of Logic, Mathematics, and Life
Derrick Niederman - 2012
Among the old chestnuts he cracks wide open are the following classics: Knights and knaves The monk and the mountain The dominoes and the chessboard The unexpected hanging The Tower of HanoiUsing real-world analogies, infectious humor, and a fresh approach, this deceptively simple volume will challenge, amuse, enlighten, and surprise even the most experienced puzzle solver.
Microsoft Windows Internals: Microsoft Windows Server(TM) 2003, Windows XP, and Windows 2000 (Pro-Developer)
Mark E. Russinovich - 2004
This classic guidefully updated for Windows Server 2003, Windows XP, and Windows 2000, including 64-bit extensionsdescribes the architecture and internals of the Windows operating system. You’ll find hands-on experiments you can use to experience Windows internal behavior firsthand, along with advanced troubleshooting information to help you keep your systems running smoothly and efficiently. Whether you’re a developer or a system administrator, you’ll find critical architectural insights that you can quickly apply for better design, debugging, performance, and support.Get in-depth, inside knowledge of the Windows operating system: Understand the key mechanisms that configure and control Windows, including dispatching, startup and shutdown, and the registry Explore the Windows security model, including access, privileges, and auditing Investigate internal system architecture using the kernel debugger and other tools Examine the data structures and algorithms that deal with processes, threads, and jobs Observe how Windows manages virtual and physical memory Understand the operation and format of NTFS, and troubleshoot file system access problems View the Windows networking stack from top to bottom, including mapping, APIs, name resolution, and protocol drivers Troubleshoot boot problems and perform crash analysis
Clojure Applied: From Practice to Practitioner
Ben Vandgrift - 2015
You want to develop software in the most effective, efficient way possible. This book gives you the answers you’ve been looking for in friendly, clear language.We’ll cover, in depth, the core concepts of Clojure: immutable collections, concurrency, pure functions, and state management. You’ll finally get the complete picture you’ve been looking for, rather than dozens of puzzle pieces you must assemble yourself. First, we focus on Clojure thinking. You’ll discover the simple architecture of Clojure software, effective development processes, and how to structure applications. Next, we explore the core concepts of Clojure development. You’ll learn how to model with immutable data; write simple, pure functions for efficient transformation; build clean, concurrent designs; and structure your code for elegant composition. Finally, we move beyond pure application development and into the real world. You’ll understand your application’s configuration and dependencies, connect with other data sources, and get your libraries and applications out the door.Go beyond the toy box and into Clojure’s way of thinking. By the end of this book, you’ll have the tools and information to put Clojure’s strengths to work.https://pragprog.com/book/vmclojeco/c...
The Master Algorithm: How the Quest for the Ultimate Learning Machine Will Remake Our World
Pedro Domingos - 2015
In The Master Algorithm, Pedro Domingos lifts the veil to give us a peek inside the learning machines that power Google, Amazon, and your smartphone. He assembles a blueprint for the future universal learner--the Master Algorithm--and discusses what it will mean for business, science, and society. If data-ism is today's philosophy, this book is its bible.
Working at the Ubuntu Command-Line Prompt
Keir Thomas - 2011
His books have been read by over 1,000,000 people and are #1 best-sellers. His book Beginning Ubuntu Linux recently entered its sixth edition, and picked-up a Linux Journal award along the way. Thomas is also the author of Ubuntu Kung Fu. * * * * * * * * * * * * * * * * * Get to grips with the Ubuntu command-line with this #1 best-selling and concise guide. "Best buck I've spent yet" — Amazon review.* Readable, accessible and easy to understand;* Learn essential Ubuntu vocational skills, or read just for fun;* Covers Ubuntu commands, syntax, the filesystem, plus advanced techniques;* For ANY version of Linux based on Debian, such as Linux Mint--not just Ubuntu!;* Includes BONUS introduction to Ubuntu chapter, plus a glossary appendix and a guide to reading Linux/Unix documentation.
How to Create a Mind: The Secret of Human Thought Revealed
Ray Kurzweil - 2012
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.
Category Theory for Programmers
Bartosz Milewski - 2014
Collected from the series of blog posts starting at: https://bartoszmilewski.com/2014/10/2...Hardcover available at: http://www.blurb.com/b/9008339-catego...
Web Development with Clojure: Build Bulletproof Web Apps with Less Code
Dmitri Sotnikov - 2013
Web Development With Clojure shows you how to apply Clojure programming fundamentals to build real-world solutions. You'll develop all the pieces of a full web application in this powerful language. If you already have some familiarity with Clojure, you'll learn how to put it to serious practical use. If you're new to the language, the book provides just enough Clojure to get down to business.You'll learn the full process of web development using Clojure while getting hands-on experience with current tools, libraries, and best practices in the language. You'll develop Clojure apps with both the Light Table and Eclipse development environments. Rather than frameworks, Clojure development builds on rich libraries. You'll acquire expertise in the popular Ring/Compojure stack, and you'll learn to use the Liberator library to quickly develop RESTful services. Plus, you'll find out how to use ClojureScript to work in one language on the client and server sides.Throughout the book, you'll develop key components of web applications, including multiple approaches to database access. You'll create a simple guestbook app and an app to serve resources to users. By the end, you will have developed a rich Picture Gallery web application from conception to packaging and deployment.This book is for anyone interested in taking the next step in web development.Q&A with Dmitri SotnikovWhy did you write Web Development with Clojure?When I started using Clojure, I found that it took a lot of work to find all the pieces needed to put together a working application. There was very little documentation available on how to organize the code, what libraries to use, or how to package the application for deployment. Having gone through the process of figuring out what works, I thought that it would be nice to make it easier for others to get started.What are the advantages of using a functional language?Over the course of my career, I have developed a great appreciation for functional programming. I find that it addresses a number of shortcomings present in the imperative paradigm. For example, in a functional language any changes to the data are created via revisions to the existing data. So they only exist in the local scope. This fact allows us to safely reason about individual parts of the program in isolation, which is critical for writing and supporting large applications.Why use Clojure specifically?Clojure is a simple and pragmatic language that is designed for real-world usage. It combines the productivity of a high-level language with the excellent performance seen in languages like C# or Java. It's also very easy to learn because it allows you to use a small number of concepts to solve a large variety of problems.If I already have a preferred web development platform, what might I get out of this book?If you're using an imperative language, you'll get to see a very different approach to writing code. Even if you're not going to use Clojure as your primary language, the concepts you'll learn will provide you with new ways to approach problems.Is the material in the book accessible to somebody who is not familiar with Clojure?Absolutely. The book targets developers who are already familiar with the basics of web development and are interested in learning Clojure in this context. The book introduces just enough of the language to get you productive and allows you to learn by example.
Algorithmic Puzzles
Anany V. Levitin - 2011
This logic extends far beyond the realm of computer science and into the wide and entertaining world of puzzles. In Algorithmic Puzzles, Anany and Maria Levitin use many classic brainteasers as well as newer examples from job interviews with major corporations to show readers how to apply analytical thinking to solve puzzles requiring well-defined procedures.The book's unique collection of puzzles is supplemented with carefully developed tutorials on algorithm design strategies and analysis techniques intended to walk the reader step-by-step through the various approaches to algorithmic problem solving. Mastery of these strategies--exhaustive search, backtracking, and divide-and-conquer, among others--will aid the reader in solving not only the puzzles contained in this book, but also others encountered in interviews, puzzle collections, and throughout everyday life. Each of the 150 puzzles contains hints and solutions, along with commentary onthe puzzle's origins and solution methods. The only book of its kind, Algorithmic Puzzles houses puzzles for all skill levels. Readers with only middle school mathematics will develop their algorithmic problem-solving skills through puzzles at the elementary level, while seasoned puzzle solvers will enjoy the challenge of thinking throughmore difficult puzzles.
The Emperor's New Mind: Concerning Computers, Minds and the Laws of Physics
Roger Penrose - 1989
Admittedly, computers now play chess at the grandmaster level, but do they understand the game as we do? Can a computer eventually do everything a human mind can do? In this absorbing and frequently contentious book, Roger Penrose--eminent physicist and winner, with Stephen Hawking, of the prestigious Wolf prize--puts forward his view that there are some facets of human thinking that can never be emulated by a machine. Penrose examines what physics and mathematics can tell us about how the mind works, what they can't, and what we need to know to understand the physical processes of consciousness. He is among a growing number of physicists who think Einstein wasn't being stubborn when he said his little finger told him that quantum mechanics is incomplete, and he concludes that laws even deeper than quantum mechanics are essential for the operation of a mind. To support this contention, Penrose takes the reader on a dazzling tour that covers such topics as complex numbers, Turing machines, complexity theory, quantum mechanics, formal systems, Godel undecidability, phase spaces, Hilbert spaces, black holes, white holes, Hawking radiation, entropy, quasicrystals, the structure of the brain, and scores of other subjects. The Emperor's New Mind will appeal to anyone with a serious interest in modern physics and its relation to philosophical issues, as well as to physicists, mathematicians, philosophers and those on either side of the AI debate.
Learning SAS by Example: A Programmer's Guide
Ron Cody - 2007
In an instructive and conversational tone, Cody clearly explains how to program SAS, illustrating with one or more real-life examples and giving a detailed description of how the program works.