|
Computation, Computers, and Programs2002-2003An introduction to fundamental concepts in computer science Computer Science Department |
Course DescriptionThis course focuses on the fundamental underpinnings of computer science. Topics include abstract models of computation, the limits of computation, analysis of algorithms, formal languages, automata theory, graph theory, logic, combinatorics, numeric and symbolic computation, and program translation and semantics. Practical examples are drawn from diverse areas such as computational geometry, numerical analysis, computational logic, and compiler design. Course work is both theoretical and practical, with assignments involving both proofs and programs. Students will learn to program in languages such as ML, Lisp, Prolog, and Java.
Recommended BackgroundStudents should have taken a course in calculus, acquired an in-depth knowledge of at least one programming language, preferably C++, Java, ML, or Lisp, and have some familiarity with data structures and basic set theory.
General Course InformationClass is held from 8:30 to 10:00 on Tuesdays and Thursdays in room 74 of the Jorgensen building.
Fall, 2002
Winter, 2003
Spring, 2003