Вы находитесь на странице: 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
language.

• 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%).