CS 15-199: Discovering Logic
(Spring 2010)

About this course  [  Description  |  Prerequisites  |  Feedback  |  Readings  |  Grading  |  Assessment  ]

Description

This course has the purpose of introducing first-year Computer Science students to elements of formal logic as well as to the historical context in which this discipline developed. As all subsequent courses in the CS curriculum rely on students having mastered basic logical notions and skills, it will test and enhance your preparation, thereby putting you in a better position to succeed in the program. It will also help you understand and appreciate how CS came about since Computer Science grew out of logic. The specific knowledge and skills you will learn in is course include:

This course is open to Computer Science freshmen only.

Prerequisites

There are no prerequisites for this course.

Feedback

It is my goal to make this course successful, stimulating and enjoyable. If at any time you feel that the course is not meeting your expectations or you want to provide feedback on how the course is progressing for you, please . If you would like to provide anonymous comments, please use this feedback page or slide a note under my door.

Readings

  

Grading

This is a 3 unit course. Because it is a mini, this means that you are expected to dedicate 6 hours a week to it on average.

Academic Integrity

You are expected to comply with the University Policy on Academic Integrity and Plagiarism.

Collaboration is regulated by the whiteboard policy: you can bounce ideas about an assignment, but when it comes to typing it down for submission, you are on your own - no notes, snapshots, etc., you can at most reconstruct the reasoning from memory.

Class etiquette

Assessment

Course Objectives

This course seeks to develop students who:

  1. can understand and formulate logical representations to problems
  2. can think abstractly, i.e., for form, analyze, and use abstractions
  3. can understand and articulate technical ideas
  4. can follow and form cogent arguments
  5. have a historical perspective of logic and Computer Science

Learning Outcomes

Upon successful completion of this course, students will be able to:

  1. express problems symbolically using propositional and predicate logic
  2. use formal logic proofs and logical reasoning to solve simple problems
  3. describe the importance and limitations of predicate logic
  4. provide examples that illustrate the concept of uncomputability
  5. gain deeper knowledge about a topic by researching it using a variety of sources and tools
  6. describe technical concepts clearly, so as to be readily understood by their peers within the discipline and by those outside the discipline
  7. follow and summarize arguments presented in texts and papers used as supporting materials for their courses or consulted to research a topic
  8. form a cogent, logical argument asserting and reiterating technical concepts that lie within the bounds of any researched topic
  9. make clear, well-articulated, well-organized and creative presentations about topics of their choice


© 2010 Iliano Cervesato