CS:4350:0001 Logic in Computer Science Fall 2020

5:00-6:15pm, Zoom from ICON


Course website: http://www.cs.uiowa.edu/~hzhang/c188/

For the information on Instructor and Teaching Assistant, please see the course website.

Purpose: The main objective of this course is to expose undergraduate and beginning graduate students to mathematical logic. Mathematical logic, used called symbolic logic, is a powerful tool for modeling and reasoning formally about computation and computational devices. It provides a unifying foundational framework for several areas of computer science such as databases, artificial intelligence, hardware design, programming languages, software engineering, and concurrent systems. This course introduces several logics (propositional, predicate or first-order, Hoare, temporal, ...), differing in their expressive power and focus, and discusses some of their uses in computer science. Main themes are how to represent knowledge in these logics, what represents a valid argument, and how to prove or disprove, possibly automatically, the validity of a logical statement. Since computer science is about problem solving using computers, the focus will be on how to use logic as problem-solving tools, and how the tools based on logic are created and used. Students should be prepared to put in considerable time and effort into reading to become familiar with the course's topics, and into homeworks and exercises to gain experience with the techniques seen in class.

Prerequisite: C- or better in CS:3330 Algorithms

Textbook: The textbook for this course is titled as "Logic in Computer Science", and will be provided by the instructor free of charge. Computer Facility: You will provide access to the departmental computers or use your own computer to develop computer programs.

Course Accounts: You will need a HawkID and a password to login to ICON to electronically submit your assigned work.

Grading: Plus/Minus grading and curving will be used for the course. There are two components that will determine your grade.

Late submissions will not be accepted and in general you will be better off turning in what you have on time rather than seeking extra time to complete your work. Starting early is the key, and the TA and I will be glad to help with any questions you may have on the assignments. So please visit us often during our office hours and if necessary, outside our office hours as well. There will be no make-up exams in general and exceptions will be rare and only for students whose reasons are included in the University's policy on "Excused Absences from Examinations".

Students with disabilities: I would like to hear from anyone who has a disability which may require seating modifications or testing accommodations or accommodations of other class requirements, so that appropriate arrangements may be made. Please contact me by email or during my office hours.

Academic Integrity: Academic dishonesty will not be tolerated. Under no circumstances should you pass off someone else's work as your own. This also applies to code or other material that you might find on the internet. Note that we will routinely use available software systems for detecting software plagiarism, to test any suspicions we might have. If you are unclear about what constitutes academic integrity contact your advisor or consult the policy in the CLAS Bulletin (online version). We do want students to talk to each other about concepts and ideas that relate to the class. However, it is important to ensure that these discussions do not lead to the actual exchange of written material.

Required Legalese: This course is run by the College of Liberal Arts and Sciences. This means that class policies on matters such as requirements, grading, and sanctions for absences and academic integrity are governed by the College of Liberal Arts and Sciences. Details of the University policy of cross enrollments may be found online: https://clas.uiowa.edu/faculty/teaching-policies-resources-syllabus-insert.

Student Complaints: If you have any complaints or concerns about how the course is being conducted by me or by the TA please feel free to talk to me. You are also welcome to get in touch the Computer Science department chair, Prof. Alberto Segre (alberto-segre@uiowa.edu). Consult the college policy on Student Complaints Concerning Faculty Actions (online version) for more information.