| Course |
CSE215 |
| Title |
Foundations of Computer Science |
| Credits |
3 |
| Course Coordinator |
|
| Current Catalog Description |
Introduction to the logical and mathematical foundations of computer science. Topics include functions, relations, and sets; recursion and functional programming; elementary logic; and mathematical induction and other proof techniques.
|
| Prerequisite |
AMS 151 or MAT 125 or MAT 131
|
| Course Goals |
- Introduce discrete structures such as functions, relations, and sets, and methods for constructively defining them.
- Introduce recursion as a basic paradigm for computing with functions.
- Provide a rigorous introduction to logic and basic proof techniques, such as mathematical induction.
|
| Textbook |
James L. Hein, Discrete Structures, Logic, and Computability, 2nd edition, Jones and Bartlett, 2002
|
| Major Topics Covered in Course |
- Introduction: sets, functions, logic
- Functions
- Recursive Functions
- Programming in Standard ML
- Inductive Definitions of Sets
- Examples of Induction Proofs
- Binary Relations
- Equivalence Relations
- Cardinality of Sets
- Countability and Uncountability
- Propositional Logic
- Formal Reasoning
- Predicate Logic and Quantifiers
|
| Laboratory Projects |
|
| Course Webpage |
/~cse215 |