COMPUTATIONAL LOGIC AND LOGIC PROGRAMMING

Course Information
TitleΥΠΟΛΟΓΙΣΤΙΚΗ ΛΟΓΙΚΗ ΚΑΙ ΛΟΓΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ / COMPUTATIONAL LOGIC AND LOGIC PROGRAMMING
CodeNIS-06-02
FacultySciences
SchoolInformatics
Cycle / Level1st / Undergraduate
Teaching PeriodSpring
CoordinatorNick Bassiliades
CommonYes
StatusActive
Course ID40002952

Programme of Study: PPS-Tmīma Plīroforikīs (2019-sīmera)

Registered students: 0
OrientationAttendance TypeSemesterYearECTS
GENIKĪ KATEUTHYNSĪYPOCΗREŌTIKO KATA EPILOGĪ635

Class Information
Academic Year2016 – 2017
Class PeriodSpring
Faculty Instructors
Weekly Hours4
Class ID
600096720
Course Type 2016-2020
  • Scientific Area
  • Skills Development
Course Type 2011-2015
Specific Foundation / Core
Mode of Delivery
  • Face to face
Erasmus
The course is also offered to exchange programme students.
Language of Instruction
  • Greek (Instruction, Examination)
Prerequisites
General Prerequisites
Basic knowledge of discrete mathematics, Basic knowledge of programming, Basic knowledge of data structures
Learning Outcomes
Knowledge: Familiarization with Mathematical Logic principles, Familiarization with using Logic as a Programming Languages, Training on Prolog programming language. Skills: Representing and solving logical expressions. Programming with the Prolog programming language.
General Competences
  • Apply knowledge in practice
  • Retrieve, analyse and synthesise data and information, with the use of necessary technologies
  • Adapt to new situations
  • Make decisions
  • Work autonomously
  • Work in teams
  • Advance free, creative and causative thinking
Course Content (Syllabus)
Mathematical Logic (Propositional calculus, normal forms, inference mechanisms, resolution principle, predicate calculus, variables and quantifiers, variable substitution and unification). From Logic to Logic Programming (Kowalski form, Horn clauses). Logic Programming (Basic concepts, history, Prolog language). Syntax of Logic programs (Queries, Rules, Predicates, Complex Terms). Unification. Execution control mechanism. Recursion. Lists. Number representation (arithmetic operations, comparison, mathematical functions). String handling. Input/Output. Variable Goals. Term type testing. Term construction/decomposition. Cut (effect on the computation tree, usage). Negation as failure. Solution management. Clause management. Programming methodology. Logic Programming Applications.
Keywords
mathematical logic, computational logic, logic programming, Prolog
Educational Material Types
  • Slide presentations
  • Book
  • Programs
Use of Information and Communication Technologies
Use of ICT
  • Use of ICT in Course Teaching
  • Use of ICT in Laboratory Teaching
  • Use of ICT in Communication with Students
Description
Powerpoint slides, Multimedia Programming guide, Prolog programming language demonstration
Course Organization
ActivitiesWorkloadECTSIndividualTeamworkErasmus
Lectures39
Tutorial13
Project69
Exams3
self-study26
Total150
Student Assessment
Description
Written exams (75%), Programming Projects (25%)
Student Assessment methods
  • Written Exam with Multiple Choice Questions (Summative)
  • Written Exam with Short Answer Questions (Summative)
  • Written Assignment (Formative, Summative)
  • Written Exam with Problem Solving (Summative)
Bibliography
Course Bibliography (Eudoxus)
- ΣΑΚΕΛΛΑΡΙΟΥ, Η., ΒΑΣΙΛΕΙΑΔΗΣ, Ν., ΚΕΦΑΛΑΣ, Π., ΣΤΑΜΑΤΗΣ, Δ., 2016. Τεχνικές Λογικού Προγραμματισμού. [ηλεκτρ. βιβλ.] Αθήνα:Σύνδεσμος Ελληνικών Ακαδημαϊκών Βιβλιοθηκών. Διαθέσιμο στο: http://hdl.handle.net/11419/777 - Μανόλης Μαρακάκης, “Prolog: Προγραμματισμός σε Λογική για Τεχνητή Νοημοσύνη”, ΕΚΔΟΣΕΙΣ ΝΕΩΝ ΤΕΧΝΟΛΟΓΙΩΝ, ISBN: 978-960-6759-98-7, 2014. - Σημειώσεις-Διαφάνειες διδάσκοντος για το μάθημα. - Πολυμεσικός οδηγός εκμάθησης Prolog.
Additional bibliography for study
- Programming in Prolog, W. Clocksin, C. Mellish, Springer-Verlag. - Prolog Programming for Artificial Intelligence, Ivan Bratko, Addison-Wesley, (2nd or 3rd ed.).
Last Update
02-06-2016