CSE150


Course

CSE150

Title

Foundations of Computer Science - Honors

Credits

4

Course Coordinator

Leo Bachmair

Current Catalog Description

Introduction to the logical and mathematical foundations of computer science for computer science honors students. Topics include functions, relations, and sets; recursion and functional programming; basic logic; and mathematical induction and other proof techniques.

Prerequisite

One MAT course that satisfies DEC C or an MPE score of 4; CSE honors student or the Honors College or WISE or permission of the instructor

Course Goals
  • To provide students with a rigorous introduction to proof techniques including propositional logic and mathematical induction.
  • Introduce recursion as a basic paradigm for computing with functions
  • Introduce fundamental discrete structures such as functions, graphs, and trees.
  • To build a strong theoretical foundation for subsequent courses in the computer science curriculum.
Textbook

James A. Anderson, Discrete Mathematics with Combinatorics, Prentice Hall, 2001.

Major Topics Covered in Course
  • Propositional logic
  • Syntax and semantics (truth tables); logical equivalences and logical consequence; basic proof theory (e.g., modus ponens); boolean algebra; application: digital logic circuits; application: number systems
  • Functions
  • Basic concepts and standard functions; sequences; basic properties of functions; composition of functions
  • Recursion
  • Recursive definitions of functions and sequences; application: functional programming
  • Mathematical induction
  • Principle of mathematical induction; examples of induction proofs; strong induction principle
  • Lists and trees
  • Basic definitions and operations; for both data structures; specific examples of list operations and tree algorithms to illustrate functional programming and mathematical induction
Laboratory Projects

 

Course Webpage http://www.cs.sunysb.edu/~cse150