Вы находитесь на странице: 1из 2

SUNY Institute of Technology Fall 2010

Computer Science Department

CSC 531 Automata, Computability & Formal Languages

Instructor: Dr. Jorge Novillo

CS Dept. Kunsela Hall C220
(315) 792-7352 (O) / (315) 792-7354 (Sec)
jorge@sunyit.edu / http://jorge.sunyit.edu
Office Hours: Tuesday & Thursday 5:15 – 6 p.m.
Wednesday 2:00 – 5 p.m. & 8:30 – 9:00 p.m.
and/or by appointment (Skype/Live/Google Ok)

Textbook: Elements of the Theory of Computation, 2nd ed.

Lewis & Papadimitriou, Prentice Hall (1998).

Java Computability Toolkit – http://jorge.sunyit.edu/jct

References: Intro. to Automata Theory, Languages and Computation, 3rd ed.

Hopcroft, Motwani & Ullman, Addison Wesley (2007).

Introduction to the Theory of Computation, 2nd ed.

Michael Sipser, PWS (2004).

An Introduction to Formal Languages and Automata, 4th ed.

Peter Linz, Jones & Barlett (2006).

Overview: Many conceptual venues have merged into what

is called today the theory of computation. It
has sprung from and also generated some of
the most remarkable conceptual developments
of the last century. In this course we'll consider
models for languages, machines & computation.
Also, their properties such as expressive power,
on the one hand, and closure, decidability
and complexity on the other.

Outline: • Preliminaries. Languages.

• Finite Automata & Regular languages.

• Pushdown Automata & Context-free languages.

• Turing Machines. Variations.

• Church's Thesis. Approaches to Computation.
Notions of Decidability & Complexity.

Objectives: • To provide grounding on the basic models common

to many subject areas of Computing.

• To exhibit the basic ingredients of computation and

their effect in what may be computed with them.

• To exhibit the relation between language

generators and language recognition devices

• have a grasp of the interplay between gain

in expressive power of a language and the loss
in control of what is decidable in that

• To provide the framework for analysis of

the efficiency of algorithms.

• To provide the basic framework for the

study of unsolvability.

Outcomes: At the end of the course, students will

• have an enhanced understanding of the basic

limits of all software and hardware systems

• have many of the basic models used in all

areas of computing.

• have the common language used in most of the

research literature.

• other ...

Evaluation: Midterm (50%) and a final (50%).