Computer Science BooksPrograming Theory Books

Logic Programming by Frank Pfenning

Advertisement

Logic Programming by Frank Pfenning

Logic Programming by Frank Pfenning

Logic programming is a paradigm where computation arises from proof search in a logic according to a fixed, predictable strategy. It thereby unifies logical specification and implementation in a way that is quite different from functional or imperative programming. This course provides a thorough, modern introduction to logic programming. It consists of a traditional lecture component and a project component. The lecture component introduces the basic concepts and techniques of logic programming followed by successive refinement towards more efficient implementations or extensions to richer logical concepts. We plan to cover a variety of logics and operational interpretations. The project component will be one or several projects related to logic programming. 28-1-2020

Author(s):

s324 Pages
Similar Books
Coding and Cryptography

Coding and Cryptography

Coding theory includes the study of compression codes which enable us to send messages cheaply and error correcting codes which ensure that messages remain legible even in the presence of errors. Topics covered includes: Codes and alphabets, Huffman’s algorithm, Shannon’s noiseless coding theorem , Hamming’s breakthrough, Shannon’s noisy coding theorem , Linear codes, Polynomials and fields , Cyclic codes, Stream ciphers, Asymmetric systems, Commutative public key systems, Trapdoors and signatures.

s104 Pages
Introduction to Programming Lectures Notes

Introduction to Programming Lectures Notes

This note covers the following topics: Introduction to programming, Use of objects and variables, Definition of methods and classes, Primitive data types, Conditional statements, Loop statements, Arrays and matrices, Files and input/output streams, Program errors and exception handling, Recursion, Dynamic arrays and linked lists.

sNA Pages
Structure and Interpretation of Computer Programs

Structure and Interpretation of Computer Programs

This note covers the following topics: Functions, Values and Side Effects, Control and Higher-Order Functions, Environments and Lambda, Newton's Method and Recursion, Data Abstraction, Sequences and Iterables, Objects, Lists, and Dictionaries, Mutable Data Types, Object-Oriented Programming, Inheritance, Generic Functions, Coercion and Recursive Data, Functional Programming, Declarative Programming, Unification, MapReduce, Parallelism.

sNA Pages
Theory     in Programming Practice (PDF 250P)

Theory in Programming Practice (PDF 250P)

Covered topics are: Text Compression, Error Detection and Correction, Cryptography, Finite State Machines, Recursion and Induction, Relational Database, String Matching and Parallel Recursion.

s250 Pages
Algorithmic Introduction to Coding Theory

Algorithmic Introduction to Coding Theory

This note introduces the theory of error-correcting codes to computer scientists. This theory, dating back to the works of Shannon and Hamming from the late 40's, overflows with theorems, techniques, and notions of interest to theoretical computer scientists. The course will focus on results of asymptotic or algorithmic significance. Principal topics include: Construction and existence results for error-correcting codes, Limitations on the combinatorial performance of error-correcting codes, Decoding algorithms, Applications in computer science.

sNA Pages
How To Design Programs An Introduction To Programming and Computing (M. Felleisen, et al)

How To Design Programs An Introduction To Programming and Computing (M. Felleisen, et al)

The main focus of this book is the design process that leads from problem statements to well-organized solutions; it deemphasizes the study of programming language details, algorithmic minutiae, and specific application domains. It covers the following topics: Processing Simple Forms of Data, Processing Arbitrarily Large Data, Abstracting Designs, Generative Recursion, Accumulating Knowledge, Changing the State of Variables, Changing Compound Values.

sNA Pages
Programming from the Ground Up (J. Bartlett)

Programming from the Ground Up (J. Bartlett)

This book covers the following topics: Computer Architecture, Functions, Files, Reading and Writing Simple Records, Developing Robust Programs, Sharing Functions with Code Libraries, Intermediate Memory Topics, High-Level Languages and Optimization.

s326 Pages
The Programmers Stone (Alan  Colston)

The Programmers Stone (Alan Colston)

Currently this section contains no detailed description for the page, will update this page soon.

s Pages
Learning to Program (Alan Gauld)

Learning to Program (Alan Gauld)

Simple Sequences, The Raw Materials, Loops, Branching, Modules & Functions, Handling Files, Handling Text, Error Handling, Regular Expressions, Object Oriented Programming, Event Driven Programming, GUI Programming, Recursion, Python in Practice, Working with Databases, Using the Operating System, Inter-process communications and Network programming.

sNA Pages
How to Think Like a Computer Scientist

How to Think Like a Computer Scientist

Currently this section contains no detailed description for the page, will update this page soon.

s Pages

Advertisement