Cover

Preface

Contents

Index

Glossary

Models

Rogues

Models of the Theory of Computation

In an effort to make Snapshots as helpful as possible, we plan to include interactive models of most of the key concepts in the theory of computing, such as various machine models (finite state automata, pushdown automata. and Turing machines), grammar models, and models of problem reductions and NP-Completeness, to name a few. 

In each case, the models included will be Java applets designed for active learning.  This just means that the reader will be able (and sometimes required) to provide input to a model in order to observe the model's behavior.  It is well known that active learning (learning in which the learners are active participants in exploring the topics to be learned, as opposed, say, to being passive listeners to lectures) is very effective.

Since the models are included as Java applets, they can (and will be) embedded within the textual material wherever appropriate, so that learners can interact with the models in the context of the subject matter being presented.  However, it is also sometimes useful to have direct access to the models in a standalone fashion.  Below is a compendium of the models so far completed for Snapshots.  As more are completed, they will be available on this page.

(At this point, the links are not active.)

bullet

The finite state automaton model

bullet

The context free grammar model

bullet

The regular expression model

bullet

The LL(k) parser model