WPI Computer Science: CS 5003 vs CS 503

CS 503 and CS 50003 are similar courses: they each treat the foundations of computer science: mathematical models of machine computation, grammars, computability and complexity. How do they differ?

  1. CS 503 assumes more computer science background than does CS 5003. Students in 503 will be expected to be comfortable with undergraduate-level algorithms and discrete mathematics. Most students in 503 will have had an undergraduate course in automata theory.
  2. CS 503 assumes more mathematical maturity than does CS 5003. Both courses proceed using the language of mathematics — definitions, theorems, proofs — and the ability to read and write mathematics is essential to working with the material. CS 503 students should already be comfortable with mathematical discourse, including proof by induction.
  3. The courses play different roles in the graduate curriculum:
    • CS 5003 satisfies the "theory bin" breadth requirement for the MS degree
    • 503 satisfies the "theory bin" breadth requirement for the both the MS and the PhD degrees.
    • Details about the MS and PhD breadth requirements can be found here:

      MS Breadth Requirements

      PhD Breadth Requirements