What Is 173?

173 and the CS Curriculum

CSC 173 is no longer in the pre-major sequence for the BS in Computer Science degree. And there are no pre-major requirements for the BA in CS, so a fortiori it isn't necessary for the BA either. See
BS, BA, and Minor Curricula Descriptions for full details.

CSC 173 is a core course for CS BS majors, and should be taken as needed for either curiosity or to fulfill prerequisites for other CS courses.

173 and the Classical Curriculum

In terms of the "classical" system of education, or trivium , it's mostly concerned with grammar and logic , with a whiff of rhetoric. The link above relates the trivium to childhood development and early education, but it's a general concept. For 173, maybe we can say:

I see all my computer science courses as part of a liberal education , in the sense that it is the education a free person (as opposed to a slave) needs to get the most out of life. Here's the Op-Ed page of the Wall Street Journal on the long-term economic and quality-of-life benefits of a liberal education.


Prerequisites for enjoying 173 are curiosity, appreciation for learning diverse elegant things, and the lust for hard work.

Enjoyment may not be the word that comes to mind for you: true, 173 is aimed at future needs rather than current gratification. There are immediate benefits too: you'll become competent, independent, invulnerable, and hence fearless. Maybe not a bad investment of sweat equity.

There are three technical prerequisites for CSC 173:

All of these prerequisites would be met by taking, for example, CSC 162 or 172: Data Structures or an equivalent course somewhere else. If you are unsure of your background, just look more deeply at the course details and expectations, and decide whether it's for you.

173 Content and Goals

Our goal is to get acquainted with several formal systems that have been influential in computer science, and to investigate some of their applications (e.g. inspiring and providing the foundation for a computer programming style, or providing the basis for solving important practical problems like communications protocols, compiling, system analysis, graphics ...)

In more detail, we shall study:

"Textbook" and Readings

There is no single text: we shall use reserve materials from the former text for CSC173 as well as current texts for other CS courses and other materials, plus lots on on-line resources. The subject matter of this course is well-understood and there are many resources...finding them and using them wisely will mostly be the student's responsibility, though we indicate required, suggested, and extra readings.

Check out the "How To" page and the Extra and Alternative Readings.

Syllabus, Grading, Exercises and Projects

Back to the course home page

Last Change: 6/27/11