University of Massachusetts - Computer Science
 
 

The Theory of Computation Track

Students in the Theory of Computation track use the tools of mathematics to study computing.  This can be as practical as finding the best algorithms to route messages through networks, or as fundamental as characterization what problems can be solved quickly, or what problems can be solved at all.  The track fits well with a minor or double major in mathematics, and is excellent preparation for graduate study in any area of computer science.

Requirements

Requirements for students graduating by May 2012:

  • Four required courses:
    • 311 Algorithms
    • 320 Software Engineering
    • 401 Formal Lang Theory
    • 377 Operating Systems
  • Any two courses from the following:
    • 513 Logic in CS
    • 575 Comb. & Graph Theory
    • 601 Computation Theory
    • 611 Advanced Algorithms
    • 499Y or 496 (see note)
    • MATH 411 Int Abstract Alg I
  • Two CS electives numbered 300 or above (not including 305).
  • Note: All course numbers refer to CS courses unless designated otherwise. Only 3 credits of 499Y count towards degree. All courses x90–x99 require approval towards degree.

Requirements for students graduating after May 2012:

  • Three required courses:
    • 311 Algorithms
    • 320 Software Engineering
    • 401 Formal Lang Theory
  • Any one course from the following:
    • 377 Operating Systems
    • 445 Information Systems
    • 453 Computer Networks
    • 535 Architecture
  • Any two courses from the following:
    • 513 Logic in CS
    • 575 Comb. & Graph Theory
    • 601 Computation Theory
    • 611 Advanced Algorithms
    • 499Y or 496 (see note)
    • MATH 411 Int Abstract Alg I
  • Two CS electives numbered 300 or above (not including 305).
  • Note: All course numbers refer to CS courses unless designated otherwise. Only 3 credits of 499Y count towards degree. All courses x90–x99require approval towards degree.