Digital library
Textbooks, references and open learning resources.

External
Statistical Thinking for the 21st Century
Russell Poldrack · Russell Poldrack · 2018
Statistical thinking is a way of understanding a complex world by describing it in relatively simple terms that nonetheless capture essential aspects of its structure, and that also provide us some idea of how uncertain we are about our knowledge. The foundations of statistical thinking come primarily from mathematics and statistics, but also from computer science, psychology, and other fields of study.

External
Discrete Math with SageMath: Learn math with open-source software
Zunaid Ahmed; Hellen Colman; Samuel Lubliner · Zunaid Ahmed, Hellen Colman, Samuel Lubliner · 2025
Our book is intended to provide concise and complete instructions on how to use Sage to solve problems in Discrete Math. It is appropriate for a first or second year undergraduate course for math and computer science majors. Our goal is to streamline the learning process with SageMath. This approach helps students focus more on mathematics and reduces the friction of learning how to code. Our resources are designed for all math students, regardless of programming experience. The novelty of our project is that the textbook is authored by students under faculty supervision. With Open Pedagogy as a guiding praxis, we present this student-created textbook as a more effective alternative in promoting student learning and engagement. Students present the contents in new and inventive ways, from the overall voice of the textbook to the actual examples drawn from their and their peers' lives. The text began as a support textbook for our undergraduate Discrete Math course developed at Wright College, one of the City Colleges of Chicago. Despite the fabulous capabilities of SageMath, students in Discrete Math were often frustrated by the lack of specific documentation geared towards beginning undergrad students in Discrete Math. We developed an OER for our students to use this mathematical software effectively.

External
A Cool Brisk Walk Through Discrete Mathematics
Stephen Davies · University of Mary Washington · 2023
A Cool Brisk Walk Through Discrete Mathematics - and its companion site "allthemath" - are completely-and-forever-free-and-open-source educational materials dedicated to the mathematics that budding computer science practitioners actually need to know. They feature the fun and addictive teaching of award-winning lecturer Dr. Stephen Davies of the University of Mary Washington in Fredericksburg, Virginia!

External
COMPUTATIONAL PHYSICS: A Practical Introduction to Computational Physics and Scientific Computing (using C++)
Konstantinosn Anagnostopoulos · National Technical University of Athens · 2016
This book is an introduction to the computational methods used in physics, but also in other scientific fields. It is addressed to an audience that has already been exposed to the introductory level of college physics, usually taught during the first two years of an undergraduate program in science and engineering. It assumes no prior knowledge of numerical analysis, programming or computers and teaches whatever is necessary for the solution of the problems addressed in the text. It can be used as a textbook in introductory computational physics or scientific computing classes. The book starts with very simple problems in particle motion and ends with an in-depth discussion of advanced techniques used in Monte Carlo simulations in statistical mechanics. The level of instruction rises slowly, while discussing problems like the diffusion equation, electrostatics on the plane, quantum mechanics and random walks. All the material can be taught in two semesters, but a selection of topics can form the material of a one semester course. The book aims to provide the students with the background and the experience needed in order to advance to high performance computing projects in science and engineering. It puts emphasis on hands--on programming of numerical code but also on the production, analysis and interpretation of data. But it also tries to keep the students motivated by considering interesting applications in physics, like chaos, quantum mechanics, special relativity and the physics of phase transitions. There is a C++ and a Fortran edition for the core programming. Data analysis is performed using the powerful tools of the GNU/Linux environment. All the necessary software is open source and freely available. The book and the accompanying software are given under a Creative Commons License/GNU public License as a service to the community. It can be used freely as a whole, or any part of it, in any form, by anyone. There is no official distribution of hard copies, b

External
Calculus in Context
James Callahan; David Cox; Kenneth Hoffman · Smith College Open Educational Resources: Textbooks · 1994
Designing the curriculum We believe that calculus can be for students what it was for Euler and the Bernoullis: a language and a tool for exploring the whole fabric of science. We also believe that much of the mathematical depth and vitality of calculus lies in connections to other sciences. The mathematical questions that arise are compelling in part because the answers matter to other disciplines. We began our work with a "clean slate," not by asking what parts of the traditional course to include or discard. Our starting points are thus our summary of what calculus is really about. Our curricular goals are what we aim to convey about the subject in the course. Our functional goals describe the attitudes and behaviors we hope our students will adopt in using calculus to approach scientific and mathematical questions. Starting Points Calculus is fundamentally a way of dealing with functional relationships that occur in scientific and mathematical contexts. The techniques of calculus must be subordinate to an overall view of the questions that give rise to these relationships. Technology radically enlarges the range of questions we can explore and the ways we can answer them. Computers and graphing calculators are much more than tools for teaching the traditional calculus. The concept of a dynamical system is central to science. Therefore, differential equations belong at the center of calculus, and technology makes this possible at the introductory level. The process of successive approximation is a key tool of calculus, even when the outcome of the process--the limit--cannot be explicitly given in closed form. Curricular Goals Develop calculus in the context of scientific and mathematical questions. Treat systems of differential equations as fundamental objects of study. Construct and analyze mathematical models. Use the method of successive approximations to define and solve problems. Develop geometric visualization with hand-drawn and computer graphics. Give num

External
Introduction to GNU Octave: A brief tutorial for linear algebra and calculus students
Jason Lachniet · Jason Lachniet · 2017
This brief book provides a noncomprehensive introduction to GNU Octave, a free open source alternative to MatLab. The basic syntax and usage is explained through concrete examples from the mathematics courses a math, computer science, or engineering major encounters in the first two years of college: linear algebra, calculus, and differential equations.

External
Discrete Mathematics: An Open Introduction
Oscar Levin · Oscar Levin · 2024
Discrete Mathematics: An Open Introduction is a free, open source textbook appropriate for a first or second year undergraduate course for math and computer science majors. The book is especially well-suited for courses that incorporate inquiry-based learning. Since Spring 2013, the book has been used as the primary textbook or a supplemental resource at more than 200 colleges and universities around the world (see the partial adoptions list). After many years of development, I am pleased to announce that the 4th edition of Discrete Mathematics: an Open Introduction is now available, here and on Runestone Academy. The new edition brings many improvements and a new organization of content. In particular, the book now starts with logic and proofs, then practices those proofs with graph theory. The second half of the book contains material on counting (with a new "application to probability" section) and sequences. Over the last few years, I have found that students have more success with this arrangement. There is also a stronger emphasis on discrete structures, which should make the book more useful for students in computer science, while still focusing on understanding mathematical concepts essential for math majors and future math teachers.
External
Precalculus
Thomas Tradler; Holly Carley · CUNY Academic Works · 2015
These are notes for a course in precalculus, as it is taught at New York City College of Technology - CUNY (where it is offered under the course number MAT 1375). Our approach is calculator based. For this, we will use the currently standard TI-84 calculator, and in particular, many of the examples will be explained and solved with it. However, we want to point out that there are also many other calculators that are suitable for the purpose of this course and many of these alternatives have similar functionalities as the calculator that we have chosen to use. An introduction to the TI-84 calculator together with the most common applications needed for this course is provided in appendix A. In the future we may expand on this by providing introductions to other calculators or computer algebra systems. This course in precalculus has the overarching theme of “functions.” This means that many of the often more algebraic topics studied in the previous courses are revisited under this new function theoretic point of view. However, in order to keep this text as self contained as possible we always recall all results that are necessary to follow the core of the course even if we assume that the student has familiarity with the formula or topic at hand. After a first introduction to the abstract notion of a function, we study polynomials, rational functions, exponential functions, logarithmic functions, and trigonometric functions with the function viewpoint. Throughout, we will always place particular importance to the corresponding graph of the discussed function which will be analyzed with the help of the TI-84 calculator as mentioned above. These are in fact the topics of the first four (of the five) parts of this precalculus course. In the fifth and last part of the book, we deviate from the above theme and collect more algebraically oriented topics that will be needed in calculus or other advanced mathematics courses or even other science courses. This part includes a

External
Abstract Algebra: Theory and Applications
Thomas Judson · University of Puget Sound · 2016
This text is intended for a one- or two-semester undergraduate course in abstract algebra. Traditionally, these courses have covered the theoretical aspects of groups, rings, and fields. However, with the development of computing in the last several decades, applications that involve abstract algebra and discrete mathematics have become increasingly important, and many science, engineering, and computer science students are now electing to minor in mathematics. Though theory still occupies a central role in the subject of abstract algebra and no student should go through such a course without a good notion of what a proof is, the importance of applications such as coding theory and cryptography has grown significantly. Until recently most abstract algebra texts included few if any applications. However, one of the major problems in teaching an abstract algebra course is that for many students it is their first encounter with an environment that requires them to do rigorous proofs. Such students often find it hard to see the use of learning to prove theorems and propositions; applied examples help the instructor provide motivation. This text contains more material than can possibly be covered in a single semester. Certainly there is adequate material for a two-semester course, and perhaps more; however, for a one-semester course it would be quite easy to omit selected chapters and still have a useful text. The order of presentation of topics is standard: groups, then rings, and finally fields. Emphasis can be placed either on theory or on applications. A typical one-semester course might cover groups and rings while briefly touching on field theory, using Chapters 1 through 6, 9, 10, 11, 13 (the first part), 16, 17, 18 (the first part), 20, and 21. Parts of these chapters could be deleted and applications substituted according to the interests of the students and the instructor. A two-semester course emphasizing theory might cover Chapters 1 through 6, 9, 10, 11, 13

External
An Introduction to Logic: From Everyday Life to Formal Systems
Albert Mosley; Eulalio Baltazar · Smith College Open Educational Resources: Textbooks · 2019
An introduction to the discipline of logic covering subjects from the structures of arguments, classical and modern logic, categorical and inductive inferences, to informal fallacies. Over 30 years of development provides a sound empirical based pedagogy throughout the text. Examples in ordinary language using familiar examples avoids the suggestion of an alien cultural imposition. A focus on the basic representational techniques of classical and modern logic. Students introduced to basic concepts of set theory, using Venn diagrams to represent statements and evaluate arguments. Students introduced to basic concepts of propositional logic and the use of truth-tables. Students introduced to basic concepts of predicate logic and the use of mixed quantifiers. Students introduced to the relationship between logic diagrams, circuit diagrams, and gate diagrams in computer science. Students introduced to the use of logic in ordinary and scientific contexts. Students provided a historical introduction to the development of modern probability theory and its relationship to logic. Students introduced to basic concepts of statistical inference, with non-technical treatments of hasty and biased statistical generalizations. And a unique treatment of stereotypical thinking in terms of statistical syllogisms. Students introduced to basic notions in analogical and causal inference. Exercises requiring both passive (recognition) and active (construction) skills. Exercises including locutions and examples from standard English and ethnic dialects of English (African-American, Hispanic-American, etc) Answers for sample exercises provided, making the text closer to a self-teaching module

External
Howdy or Hello?: Technical and Professional Communications
Matt McKinney; Kalani Pattison; Sarah LeMire; Kathy Anders · Texas A&M University · 2021
Technical writing courses introduce you to some of the most important aspects of writing in the worlds of science, technology, and business—in other words, the kind of writing that scientists, nurses, doctors, computer specialists, government officials, engineers, and other professionals do as a part of their regular work. The skills learned in technical writing courses can be useful in other fields as well, including education and social sciences.
External
Open Logic Project
Richard Zach; Andrew Arana; Jeremy Avigad; Walter Dean · Open Logic Text · 2016
The Open Logic Text is an open-source, collaborative textbook of formal meta-logic and formal methods, starting at an intermediate level (i.e., after an introductory formal logic course). Though aimed at a non-mathematical audience (in particular, students of philosophy and computer science), it is rigorous. The Open Logic Text is a collaborative project and is under active development. Coverage of some topics currently included may not yet be complete, and many sections still require substantial revision. We plan to expand the text to cover more topics in the future. We also plan to add features to the text, such as a glossary, a list of further reading, historical notes, pictures, better explanations, sections explaining the relevance of results to philosophy, computer science, and mathematics, and more problems and examples. If you find an error, or have a suggestion, please let the project team know. The project operates in the spirit of open source. Not only is the text freely available, we provide the LaTeX source under the Creative Commons Attribution license, which gives anyone the right to download, use, modify, re-arrange, convert, and re-distribute our work, as long as they give appropriate credit.

External
An Animated Introduction to Digital Logic Design
John Carpinelli · NJIT Library · 2023
This book is designed for use in an introductory course on digital logic design, typically offered in computer engineering, electrical engineering, computer science, and other related programs. Such a course is usually offered at the sophomore level. This book makes extensive use of animation to illustrate the flow of data within a digital system and to step through some of the procedures used to design and optimize digital circuits.

External
Elementary Differential Equations with Boundary Value Problems
William Trench · A.T. Still University · 2013
Elementary Differential Equations with Boundary Value Problems is written for students in science, engineering, and mathematics who have completed calculus through partial differentiation. An elementary text should be written so the student can read it with comprehension without too much pain. I have tried to put myself in the student's place, and have chosen to err on the side of too much detail rather than not enough. An elementary text can't be better than its exercises. This text includes 1695 numbered exercises, many with several parts. They range in difficulty from routine to very challenging. An elementary text should be written in an informal but mathematically accurate way, illustrated by appropriate graphics. I have tried to formulate mathematical concepts succinctly in language that students can understand. I have minimized the number of explicitly stated theorems and definitions, preferring to deal with concepts in a more conversational way, copiously illustrated by 250 completely worked out examples. Where appropriate, concepts and results are depicted in 144 figures. Although I believe that the computer is an immensely valuable tool for learning, doing, and writing mathematics, the selection and treatment of topics in this text reflects my pedagogical orientation along traditional lines. However, I have incorporated what I believe to be the best use of modern technology, so you can select the level of technology that you want to include in your course. The text includes 336 exercises – identified by the symbols C and C/G – that call for graphics or computation and graphics. There are also 73 laboratory exercises – identified by L – that require extensive use of technology. In addition, several sections include informal advice on the use of technology. If you prefer not to emphasize technology, simply ignore these exercises and the advice.

External
Introduction to Probability
Charles Grinstead; J. Laurie Snell · American Mathematical Society · 2006
Probability theory began in seventeenth century France when the two great French mathematicians, Blaise Pascal and Pierre de Fermat, corresponded over two problems from games of chance. Problems like those Pascal and Fermat solved continuedto influence such early researchers as Huygens, Bernoulli, and DeMoivre in establishing a mathematical theory of probability. Today, probability theory is a wellestablished branch of mathematics that finds applications in every area of scholarlyactivity from music to physics, and in daily experience from weather prediction topredicting the risks of new medical treatments. This text is designed for an introductory probability course taken by sophomores,juniors, and seniors in mathematics, the physical and social sciences, engineering,and computer science. It presents a thorough treatment of probability ideas andtechniques necessary for a form understanding of the subject. The text can be usedin a variety of course lengths, levels, and areas of emphasis. For use in a standard one-term course, in which both discrete and continuousprobability is covered, students should have taken as a prerequisite two terms ofcalculus, including an introduction to multiple integrals. In order to cover Chapter 11, which contains material on Markov chains, some knowledge of matrix theoryis necessary. The text can also be used in a discrete probability course. The material has beenorganized in such a way that the discrete and continuous probability discussions arepresented in a separate, but parallel, manner. This organization dispels an overlyrigorous or formal view of probability and o?ers some strong pedagogical valuein that the discrete discussions can sometimes serve to motivate the more abstractcontinuous probability discussions. For use in a discrete probability course, studentsshould have taken one term of calculus as a prerequisite. Very little computing background is assumed or necessary in order to obtain fullbenefits from the use of the comp

External
Teaching in a Digital Age: Guidelines for designing teaching and learning
A.W. (Tony) Bates · BCcampus · 2015
Teachers, instructors and faculty are facing unprecedented change, with often larger classes, more diverse students, demands from government and employers who want more accountability and the development of graduates who are workforce ready, and above all, we are all having to cope with ever changing technology. To handle change of this nature, teachers and instructors need a base of theory and knowledge that will provide a solid foundation for their teaching, no matter what changes or pressures they face. Although the book contains many practical examples, it is more than a cookbook on how to teach. It addresses the following questions: is the nature of knowledge changing, and how do different views on the nature of knowledge result in different approaches to teaching? what is the science and research that can best help me in my teaching? how do I decide whether my courses should be face-to-face, blended or fully online? what strategies work best when teaching in a technology-rich environment? what methods of teaching are most effective for blended and online classes? how do I make choices among all the available media, whether text, audio, video, computer, or social media, in order to benefit my students and my subject? how do I maintain high quality in my teaching in a rapidly changing learning environment while managing my workload? what are the real possibilities for teaching and learning using MOOCs, OERS, open textbooks? In summary, the book examines the underlying principles that guide effective teaching in an age when everyone, and in particular the students we are teaching, are using technology. A framework and a set of guidelines are suggested for making decisions about your teaching, while understanding that every subject is different, and every teacher and instructor has something unique and special to bring to their teaching. In the end, though, the book isn't really about teachers and instructors, although you are the target group. It's about you help

External
Yet Another Introductory Number Theory Textbook (Cryptology Emphasis Version)
Jonathan Poritz · Jonathan Poritz · 2014
This version of YAINTT has a particular emphasis on connections to cryptology. The cryptologic material appears in Chapter 4 and §§5.5 and 5.6, arising naturally (I hope) out of the ambient number theory. The main cryptologic applications – being the RSA cryptosystem, Diffie-Hellman key exchange, and the ElGamal cryptosystem – come out so naturally from considerations of Euler’s Theorem, primitive roots, and indices that it renders quite ironic G.H. Hardy’s assertion [Har05] of the purity and eternal inapplicability of number theory. Note, however, that once we broach the subject of these cryptologic algorithms, we take the time to make careful definitions for many cryptological concepts and to develop some related ideas of cryptology which have much more tenuous connections to the topic of number theory. This material therefore has something of a different flavor from the rest of the text – as is true of all scholarly work in cryptology (indeed, perhaps in all of computer science), which is clearly a discipline with a different culture from that of “pure”mathematics. Obviously, these sections could be skipped by an uninterested reader, or remixed away by an instructor for her own particular class approach.

External
Practical Game Programming
Harris Wang; Walter Ridgewell · Athabasca University Press · 2026
Practical Game Programming provides a structured, accessible introduction to game development using C++ and the Allegro 5 library. Designed for upper-level undergraduate learners, it guides students through the complete development pipeline—from programming fundamentals and user input to graphics, audio, file management, and game timing. Advanced topics such as collision detection, multithreading, optimization, custom shaders, and networking are covered in depth. This OER emphasizes both technical skills and design principles, including game conception, prototyping, UI/UX, testing, and quality assurance. Each chapter includes exercises and projects, culminating in genre-based development challenges across action, platformer, adventure, arcade, puzzle, role-playing, strategy, and more. With a focus on applied learning and creative exploration, this text equips students to build professional-quality games and prepares them for real-world development environments.

External
Discrete Mathematics for Information Technology
Simon Crothers · Kwantlen Polytechnic University · 2026
Discrete Mathematics for Information Technology is an applied, student-focused introduction to the mathematical foundations that underpin modern computing. Designed for learners in information technology and business contexts, this textbook bridges theory and practice by connecting core concepts, such as number systems, data representation, logic, proofs, relations, algorithms, Boolean algebra, and graph theory, to real-world applications in programming, networking, databases, and systems design. Each chapter is structured with clear explanations, worked examples, case studies, and programming-oriented exercises that reinforce both conceptual understanding and practical skills. Emphasis is placed on developing analytical thinking, problem-solving, and the ability to model and reason about digital systems with precision and confidence. As an open educational resource, the text is adaptable and accessible, supporting a wide range of teaching and learning environments. By integrating mathematical rigor with authentic IT scenarios, this book equips students with the essential tools needed to succeed in modern, data-driven and technology-focused careers.

External
The Future is Now: Empowering Society Through AI Literacy
Jason Wrench; Sanae Elmoudden · Milne Open Textbooks · 2025
"The Future is Now: Empowering Society Through AI Literacy" aims to educate and empower a broad audience on the nuances of artificial intelligence, ensuring that readers are not only informed about what AI is and can do but are also prepared to engage with the technology ethically and responsibly. The book adopts a multidisciplinary approach, weaving together technical explanations, ethical considerations, and socio-economic insights to provide a comprehensive overview of AI's role in society today and its potential for the future.