The purpose of this course is to present fundamental results regarding the learning capabilities of computer programs. Basic results from computation theory and logic are languages, automata theory and logic are first presented. These are then used to show the limitations and capabilities of algorithmic strategies for various learning environments including program synthesis, language acquisition, concept learning and identification of finite state machines.
Prerequisites: CS 1511 or CS 2110 or equivalent or consent of instructor
Recitations: none
Expected class size:
Frequency:
Credits: 3