Undergraduate Elective 1071

Από Περιγράμματα - Τμήμα Μαθηματικών
Αναθεώρηση ως προς 16:55, 16 Σεπτεμβρίου 2025 από τον Outlines-mw-admin (συζήτηση | συνεισφορές) (Νέα σελίδα με '{{DISPLAYTITLE:<span style="position: absolute; clip: rect(1px 1px 1px 1px); clip: rect(1px, 1px, 1px, 1px);">{{FULLPAGENAME}}</span>}} <ul class="nav nav-pills mb-2 justify-content-end" id="pills-tab-lang" role="tablist"> <li class="nav-item"><btn id="pills-gr-tab" data-toggle="pill" class="nav-link active" role="tab" aria-controls="pills-gr" aria-selected="true">#pills-gr|Ελληνικά</btn></li> <li class="nav-item"><btn id="pills-en-tab" data-toggle="pill"...')
(διαφορά) ← Παλαιότερη αναθεώρηση | Τελευταία αναθεώρηση (διαφορά) | Νεότερη αναθεώρηση → (διαφορά)
Μετάβαση σε: πλοήγηση, αναζήτηση


Γενικά

Σχολή Σχολή Θετικών Επιστημών
Τμήμα Τμήμα Μαθηματικών
Επίπεδο Σπουδών Προπτυχιακό
Κωδικός Μαθήματος MAE544
Εξάμηνο 5
Τίτλος Μαθήματος ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΛΟΓΙΚΗΣ
Αυτοτελείς Διδακτικές Δραστηριότητες Διαλέξεις (Εβδομαδιαίες Ώρες Διδασκαλίας: 3, Πιστωτικές Μονάδες: 6)
Τύπος Μαθήματος Ειδίκευσης
Προαπαιτούμενα Μαθήματα
Γλώσσα Διδασκαλίας και Εξετάσεων Ελληνική
Το Μάθημα Προσφέρεται σε Φοιτητές Erasmus Ναι (στην Αγγλική γλώσσα)
Ηλεκτρονική Σελίδα Μαθήματος (URL) Δείτε το eCourse, την Πλατφόρμα Ασύγχρονης Εκπαίδευσης του Πανεπιστημίου Ιωαννίνων.


Μαθησιακά Αποτελέσματα

Μαθησιακά Αποτελέσματα Σκοπός είναι η βαθύτερη κατανόηση της Γλώσσας Προγραμματισμού PROLOG, αναλυτικότερα:
  • Γενικά περί διαδικαστικού και δηλωτικού προγραμματισμού
  • Ο Προγραμματισμός, Λογικής μία εκδοχή του δηλωτικού προγραμματισμού
  • Η γλώσσα προγραμματισμού Prolog (Σύνταξη προγραμμάτων, Λίστες, Τελεστές, Αριθμητική, Έλεγχος οπισθοδρόμησης, Άρνηση στην Prolog, Ενσωματωμένα κατηγορήματα, Χειρισμός δομών δεδομένων, Απλές εφαρμογές της Prolog σε προβλήματα αναζήτησης, συμβολική επεξεργασία, κατανόηση φυσικής γλώσσας και μεταπρογραμματισμό)
  • Θεωρία Προγραμματισμού Λογικής
  • Προγραμματισμός Λογικής με περιορισμούς
  • Τεχνικές υλοποίησης συστημάτων Προγραμματισμού Λογικής
  • Παράλληλος Προγραμματισμός Λογικής
  • Προγραμματισμός Λογικής για αναπαράσταση γνώσης

Μετά την ολοκλήρωση του μαθήματος ο φοιτητής / τρια μπορεί να χειριστεί:

  • τον προγραμματισμό σε PROLOG
  • επίλυση ασκήσεων
  • υλοποίηση εφαρμογών

στα προαναφερθέντα θέματα της Προγραμματισμού Λογικής με PROLOG.

Γενικές Ικανότητες
  • Προγραμματισμό σε PROLOG
  • Εφαρμογή της PROLOG στα Μαθηματικά, στη Φυσική Γλώσσα, στα Έμπειρα συστήματα, κ.λ.π.
  • Υλοποίηση - Εμπέδωση


Περιεχόμενο Μαθήματος

Εξοικείωση με:

  • τη γλώσσα προγραμματισμού Prolog
  • τη Θεωρία Προγραμματισμού Λογικής
  • τις Τεχνικές υλοποίησης συστημάτων Προγραμματισμού Λογικής
  • τον Παράλληλο Προγραμματισμό Λογικής
  • τον Προγραμματισμός Λογικής για αναπαράσταση γνώσης
  • τις Εφαρμογές της PROLOG στα Μαθηματικά, στη Φυσική Γλώσσα στα Έμπειρα Συστήματα κ.λ.π.


Διδακτικές και Μαθησιακές Μέθοδοι - Αξιολόγηση

Τρόπος Παράδοσης Πρόσωπο με πρόσωπο
Χρήση Τεχνολογιών Πληροφορίας και Επικοινωνιών Ναι. Χρήση του Εργαστηρίου Επεξεργασίας Φυσικής Γλώσσας και Μαθηματικών προβλημάτων
Οργάνωση Διδασκαλίας
Δραστηριότητα Φόρτος Εργασίας Εξαμήνου
Διαλέξεις (13Χ3) 39
Αυτοτελής Μελέτη 78
Επίλυση Ασκήσεων - εργασίες 33
Σύνολο Μαθήματος 150
Αξιολόγηση Φοιτητών Τελική γραπτή εξέταση


Συνιστώμενη Βιβλιογραφία

Δείτε την υπηρεσία Εύδοξος. Συγγράμματα και άλλες πηγές εκτός της υπηρεσίας Εύδοξος:

General

School

School of Science

Academic Unit

Department of Mathematics

Level of Studies

Undergraduate

Course Code

MAE544

Semester

5

Course Title

Logic Programming

Independent Teaching Activities

Lectures (Weekly Teaching Hours: 3, Credits: 6)

Course Type

Special Background

Prerequisite Courses -
Language of Instruction and Examinations

Greek

Is the Course Offered to Erasmus Students

Yes (in English)

Course Website (URL) See eCourse, the Learning Management System maintained by the University of Ioannina.


Learning Outcomes

Learning outcomes

The goal of this course is the deeper understanding of PROLOG. During the course a detailed examination of the following topics are done:

  • Procedural and Declarative Programming
  • Logic Programming a version of Declarative Programming
  • The programming language PROLOG (PROLOG programs syntax, Lists, Operators, Arithmetic, Backtracking control, The negation in PROLOG, Recursive predicates, Data Structure manipulation, PROLOG implementation to searching problems, symbolic processing, natural language understanding and metaprogramming)
  • Logic Programming Theory
  • Logic Programming under restrictions
  • Logic Programming systems implementation techniques
  • Parallel Logic Programming
  • Logic Programming for knowledge representation

After completing the course the student can handle:

  • programming in PROLOG
  • solving exercises in PROLOG
  • tracking applications in PROLOG
General Competences
  • Programming in PROLOG
  • Implement PROLOG to Mathematics, Natural Language, Expert Systems, e.t.c.
  • Implementation- Consolidation.


Syllabus

  • Introductory concepts of Automata , Computability and Complexity as well as basic definitions, basic theorems and inductive proofs
  • Finite State Machines and Languages, Finite Automata (Deterministic FA, Nondeterministic FA, FA with Epsilon-Transitions) and their applications, Regular Expressions and Languages, derivation trees. Removing Nondeterminism . Equivalence NFA and NFA with ε-moves. Minimization of DFA, Pumping Lemma
  • FA and Grammars. Grammars of Chomsky Hierarchy. Regular Sets (RS). Properties of Regular Languages. RS and FA. Finding a correspondence Regular Expression of a FA. Abilities and disabilities of FA.
  • Context-Free Grammars and Languages, Pushdown Automata (Deterministic PDA, Acceptance by Final State, Acceptance by Empty Stack) , Properties of Context-Free Languages. Correspondence PDA and Context-Free Languages.
  • Introduction of Turing Machines. Standard TM, useful techniques for TM constructions. Modification of TM. TM as procedure.
  • Unsolvability. The Church-Turing Thesis. The Universal TM. The Halting Problem for TM. Computational Complexity. NP-complete problems.


Teaching and Learning Methods - Evaluation

Delivery

Face to face

Use of Information and Communications Technology Yes, Use of Natural Language and Mathematical Problems Processing Laboratory
Teaching Methods
Activity Semester Workload
Lectures 39
Self study 78
Exercises 33
Course total 150
Student Performance Evaluation

Final test


Attached Bibliography

See the official Eudoxus site. Books and other resources, not provided by Eudoxus:

  • Π. Σταματόπουλος, "Λογικός και Συναρτησιακός Προγραμματισμός", Σύνδεσμος Ελληνικών Ακαδημαϊκών Βιβλιοθηκών, http://hdl.handle.net/11419/3587 (με διορθωμένα παροράματα εδώ)
  • Η. Σακελλαρίου, Ν. Βασιλειάδης, Π. Κεφαλάς, Δ. Σταμάτης, "Τεχνικές Λογικού Προγραμματισμού", Σύνδεσμος Ελληνικών Ακαδημαϊκών Βιβλιοθηκών, http://hdl.handle.net/11419/777
  • I. Bratko, "Prolog Programming for Artificial Intelligence", Third Edition, Addison-Wesley, 2000.
  • L. Sterling, E. Shapiro, "The Art of Prolog", The MIT Press, 1994.
  • J. W. Lloyd, "Foundations of Logic Programming", Springer Verlag, 1993