Basic Category Theory for Computer Scientists

Basic Category Theory for Computer Scientists
Author: Benjamin C. Pierce
Publisher: MIT Press
Total Pages: 117
Release: 1991-08-07
Genre: Computers
ISBN: 0262326450

Basic Category Theory for Computer Scientists provides a straightforward presentation of the basic constructions and terminology of category theory, including limits, functors, natural transformations, adjoints, and cartesian closed categories. Category theory is a branch of pure mathematics that is becoming an increasingly important tool in theoretical computer science, especially in programming language semantics, domain theory, and concurrency, where it is already a standard language of discourse. Assuming a minimum of mathematical preparation, Basic Category Theory for Computer Scientists provides a straightforward presentation of the basic constructions and terminology of category theory, including limits, functors, natural transformations, adjoints, and cartesian closed categories. Four case studies illustrate applications of category theory to programming language design, semantics, and the solution of recursive domain equations. A brief literature survey offers suggestions for further study in more advanced texts. Contents Tutorial • Applications • Further Reading

Foundations of Computing

Foundations of Computing
Author: Thierry Scheurer
Publisher: Addison-Wesley Longman
Total Pages: 700
Release: 1994
Genre: Computers
ISBN:

Written for professionals learning the field of discrete mathematics, this book provides the necessary foundations of computer science without requiring excessive mathematical prerequisites. Using a balanced approach of theory and examples, software engineers will find it a refreshing treatment of applications in programming.

Foundations of Computer Technology

Foundations of Computer Technology
Author: Alexander John Anderson
Publisher: CRC Press
Total Pages: 456
Release: 1994-09-08
Genre: Computers
ISBN: 9780412598104

Foundations of Computer Technology is an easily accessible introduction to the architecture of computers and peripherals. This textbook clearly and completely explains modern computer systems through an approach that integrates components, systems, software, and design. It provides a succinct, systematic, and readable guide to computers, providing a springboard for students to pursue more detailed technology subjects. This volume focuses on hardware elements within a computer system and the impact of software on its architecture. It discusses practical aspects of computer organization (structure, behavior, and design) delivering the necessary fundamentals for electrical engineering and computer science students. The book not only lists a wide range of terms, but also explains the basic operations of components within a system, aided by many detailed illustrations. Material on modern technologies is combined with a historical perspective, delivering a range of articles on hardware, architecture and software, programming methodologies, and the nature of operating systems. It also includes a unified treatment on the entire computing spectrum, ranging from microcomputers to supercomputers. Each section features learning objectives and chapter outlines. Small glossary entries define technical terms and each chapter ends with an alphabetical list of key terms for reference and review. Review questions also appear at the end of each chapter and project questions inspire readers to research beyond the text. Short, annotated bibliographies direct students to additional useful reading.

Mathematical Foundations of Computer Science

Mathematical Foundations of Computer Science
Author: Peter A. Fejer
Publisher: Springer Science & Business Media
Total Pages: 433
Release: 2012-12-06
Genre: Mathematics
ISBN: 1461230861

Mathematical Foundations of Computer Science, Volume I is the first of two volumes presenting topics from mathematics (mostly discrete mathematics) which have proven relevant and useful to computer science. This volume treats basic topics, mostly of a set-theoretical nature (sets, functions and relations, partially ordered sets, induction, enumerability, and diagonalization) and illustrates the usefulness of mathematical ideas by presenting applications to computer science. Readers will find useful applications in algorithms, databases, semantics of programming languages, formal languages, theory of computation, and program verification. The material is treated in a straightforward, systematic, and rigorous manner. The volume is organized by mathematical area, making the material easily accessible to the upper-undergraduate students in mathematics as well as in computer science and each chapter contains a large number of exercises. The volume can be used as a textbook, but it will also be useful to researchers and professionals who want a thorough presentation of the mathematical tools they need in a single source. In addition, the book can be used effectively as supplementary reading material in computer science courses, particularly those courses which involve the semantics of programming languages, formal languages and automata, and logic programming.

Analysis for Computer Scientists

Analysis for Computer Scientists
Author: Michael Oberguggenberger
Publisher: Springer Science & Business Media
Total Pages: 338
Release: 2011-03-19
Genre: Computers
ISBN: 0857294466

This textbook presents an algorithmic approach to mathematical analysis, with a focus on modelling and on the applications of analysis. Fully integrating mathematical software into the text as an important component of analysis, the book makes thorough use of examples and explanations using MATLAB, Maple, and Java applets. Mathematical theory is described alongside the basic concepts and methods of numerical analysis, supported by computer experiments and programming exercises, and an extensive use of figure illustrations. Features: thoroughly describes the essential concepts of analysis; provides summaries and exercises in each chapter, as well as computer experiments; discusses important applications and advanced topics; presents tools from vector and matrix algebra in the appendices, together with further information on continuity; includes definitions, propositions and examples throughout the text; supplementary software can be downloaded from the book’s webpage.

Foundations of Programming Languages

Foundations of Programming Languages
Author: Kent D. Lee
Publisher: Springer
Total Pages: 365
Release: 2015-01-19
Genre: Computers
ISBN: 3319133144

This clearly written textbook introduces the reader to the three styles of programming, examining object-oriented/imperative, functional, and logic programming. The focus of the text moves from highly prescriptive languages to very descriptive languages, demonstrating the many and varied ways in which we can think about programming. Designed for interactive learning both inside and outside of the classroom, each programming paradigm is highlighted through the implementation of a non-trivial programming language, demonstrating when each language may be appropriate for a given problem. Features: includes review questions and solved practice exercises, with supplementary code and support files available from an associated website; provides the foundations for understanding how the syntax of a language is formally defined by a grammar; examines assembly language programming using CoCo; introduces C++, Standard ML, and Prolog; describes the development of a type inference system for the language Small.

On the Foundations of Computing

On the Foundations of Computing
Author: Giuseppe Primiero
Publisher:
Total Pages: 317
Release: 2020
Genre: Computers
ISBN: 0198835647

"On The Foundations of Computing is a technical, historical and conceptual investigation in the three main methodological approaches to the computational sciences: mathematical, engineering and experimental. The first part of the volume explores the background behind the formal understanding of computing, originating at the end of the XIX century, and it invesitagtes the formal origins and conceptual development of the notions of computation, algorithm and program. The second part of the volume overviews the construction of physical devices to perform automated tasks and it considers associated technical and conceptual issues. We start from the design and construction of the first generation of computing machines, explore their evolution and progress in engineering (for both hardware and software), and investigate their theoretical and conceptual problems. The third part of the volume analyses the methods and principles of experimental sciences founded on computational methods. We study the use of machines to perform scientific tasks, with particular reference to computer models and simulations. Each part aims at defining a notion of computational validity according to the corresponding methodological approach"--