|
A Concise Introduction To Languages And Machines
This easy-to-follow text provides an accessible introduction to the key topics of formal languages and abstract machines within Computer Science. The author follows the successful formula of his first book on this subject, this time making these core computing topics more fundamental and providing an excellent foundation for undergraduates.
The
book is divided into two parts, Languages and Machines and Machines and Computation. The first part is concerned with formal language theory, as it applies to Computer Science, whereas Part 2 considers the computational properties of the machines in more detail. This text is deliberately non-mathematical and, wherever possible, links theory to practical considerations, in particular the implications for programming, computation and problem solving. Written in an informal style, this textbook assumes only a basic knowledge of programming on the part of the reader.
CONTENTS:
Introduction.- Part One: Languages and Machines.- Elements of Formal Languages.- Syntax, Semantics and Ambiguity.- Regular Languages and Finite State.- Context Free Languages and Pushdown Recognisers.- Important Features of Regular and Context Free Languages.- Phrase Structure Languages and Turing Machines.- Part Two: Machines and Computation.- Finite State Transducers.- Turing Machines as Computers.- Turing's Thesis and The Universality of the Turing Machine.- Computability, Solvability and the Halting Problem.- Dimensions of Computation.- Further Reading.- Solutions to Selected Exercises.
|