Top Banner
Logical Fundamentals of Programming Scott Uk-Jin Lee Department of Computer Science and Engineering Hanyang University ERICA Campus 1 st Semester 2016 Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming
13

Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Jun 27, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Logical Fundamentals of Programming

Scott Uk-Jin Lee

Department of Computer Science and EngineeringHanyang University ERICA Campus

1st Semester 2016

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 2: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Introduction

Welcome to the world of

Computer Science&

to the Logic course

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 3: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Course Outline

Course Information

compulsory course for all students majoring in CSE

classified as MSC in ABEEK

Course Contents

LOGIC

Propositional Logic & Natural Deduction Proof SystemPredicate Logic & Natural Deduction Proof SystemMathematical Induction

Course Objectives

Learn how to formulate logical statements and mechanicallyvalidate them using formal (symbolic) proof techniques

Apply proof techniques to verify the correctness of programs

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 4: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

People

Lecturer: Scott LeeOffice: 403 @ Engineering Building No. 3Email: [email protected]: 031-400-5238Homepage: http://selab.hanyang.ac.kr

Teaching Assistant: Gayeon Kim & Gwanggyu ChoiOffice: 421 @ Engineering Building No. 3Email: [email protected] & [email protected]: 031-400-4754

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 5: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Course Webpage

http://selab.hanyang.ac.kr/courses/cse107/2016

General information about the course

Course schedule

Downloadable lecture slides

Announcements (lecture, assignment, quiz, exam)

Attendance status and assessment marks

Please visit & check the website frequently!!

Forum : TBA

Google Groups: forum for the course!

Q & A on lecture contents, assignments, and examsexpress opinions and suggestions about the coursemust register with a real-name

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 6: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

English Lecture

Official language for this course is English!

All the lectures will be given in English

Students are expected to use English throughout the course

exercises/homework/assignments should be done in Englishquiz/test/exam questions must be answered in Englishanswers in Korean will not be marked! (0 mark)

Students may ask questions in either English or Korean duringthe lecture and office hours

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 7: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Textbooks

1.

second edition

Dave Barker-Plummer, John Barwise & John Etchemendy

CSLI, Stanford, California, 2011

https://ggweb.gradegrinder.net/lpl

SoftwareTarski’s World - Application to create & test (true/false) first-

order sentences in 3D world with geometric blocks

Fitch - Application to construct Formal Proofs in first-order logic

Boole - Application to construct Truth Tables

Submit - Exercise Submission Program

Grade Grinder - Automated Grading Program

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 8: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Textbooks

2. The Universal Computer: The Road from Leibniz to Turing

Martin DavisW. W. Norton & Company, 2000

3. Logicomix: An Epic Search for Truth

Apostolos Doxiadis, Christos H. Papadimitriou,Alecos Papadatos, & Annie Di DonnaBloomsbury USA, 2009

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 9: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Assessment

Attendance 20% (online 10% & offline 10%)

Unexcused absence: 1% demeritUnexcused late: 0.3% demerit4 or more unexcused absence will be treated as a fail (F Grade)

Assignment or Quiz 20%

4 Assignments: Textbook Exercises (5% each)

Mid-term Exam 30%

Final Exam 30%

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 10: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Assessment

Active participation during the lecture will be awarded!actively participating during the lecture through questions orsugestionsacting towards improving the quality of the lecturehelp other students to better understand concepts learned inthe lectureother positive behaviors during the lecture

1% towards total mark will be awarded

Cheating will be punished Heavily!Sharing/Copying in Quiz: 1st time → 0 mark

2nd time → F Grade for the CourseSharing/Copying in Exam → F Grade for the Course

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 11: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Lecture Rules

switch off your mobile phone or put them in Silent mode(same goes for other noise-making electronic devices)

laptop/touchpad can be used but only for course related use

do NOT arrive late to lectures

do NOT leave the lecture theatre during lectures

do NOT sleep during lectures

violating these rules : 1% demerit

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 12: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Study Tips

Read & study lecture notes in advance

Don’t be late or miss a lecture

Try to understand everything in the lecture

Ask question on what is unclear or what you do notunderstand during the lecture

Master the concepts learned during the lecture throughhomework & exercises

Utilize office hours effectively (me & TA)

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming

Page 13: Logical Fundamentals of Programming - Hanyangselab.hanyang.ac.kr/courses/cse107/2016/lectures/... · 2016-03-06 · Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming. Lecture

Why do we learn Logics ?

“Computer Science islogic implemented in electronic computer”

logic provides the ability to read, write and think logically asa program developer

logic provides frameworks to infer rationality of a sentence ora program

logic is a basic knowledge that every programmer must have

Scott Uk-Jin Lee CSE1007 Logical Fundamentals of Programming