CENG424 LOGIC FOR COMPUTER SCIENCE
Course Code: | 5710424 |
METU Credit (Theoretical-Laboratory hours/week): | 3 (3.00 - 0.00) |
ECTS Credit: | 6.0 |
Department: | Computer Engineering |
Language of Instruction: | English |
Level of Study: | Undergraduate |
Course Coordinator: | Prof.Dr. FERDA NUR ALPASLAN |
Offered Semester: | Fall or Spring Semesters. |
Course Objectives
During this course, students will learn
- Introduction
- Basic Definitions (Satisfiability and Validity)
- Boolean Functions
- Normal Forms
- Satisfiability
- Semantic Tableaux
- Relational Logic
- Relational Proofs
- Unificaton
- Relational Resolution,
- Resolution Strategies
- Applications
- Answer set programming
- ASP systems and tools
Course Content
Overview of propositional and first-order logic. Computational aspects of logic: definite clauses, resolution, unification, and clausal forms. Modal, temporal, and other non-standard logics. Applications of various logics in computer science.
Course Learning Outcomes
At the end of this course, students will be able to:
- Recall and explain the syntax and semantics of Propositional Logic (PL) and First-Order Logic (FOL)
- Recall and explain the definition and use of Natural Deduction rules for reasoning within PL and FOL
- Construct Natural Deduction proofs for PL and FOL, and analyze the correctness of existing proofs
- Recall and construct proof terms to annotate PL proofs and interpret their correspondance to lambda calculus
- Recall and explain the syntax and semantics of Answer Set Programming (ASP)
- Model computational systems with ASP, apply model checking tools towards their verification
- Explain the correspondence between Horn-Clauses, its proof theory and Logic Programming
- Write ASP programs to solve simple programming problems and correlate their execution to proof construction
Program Outcomes Matrix
Contribution | |||||
# | Program Outcomes | No | Yes | ||
1 | An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics | ✔ | |||
2 | An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors | ✔ | |||
3 | An ability to communicate effectively with a range of audiences | ✔ | |||
4 | An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts | ✔ | |||
5 | An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives | ✔ | |||
6 | An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions | ✔ | |||
7 | An ability to acquire and apply new knowledge as needed, using appropriate learning strategies | ✔ |