Programming Logics and Their Applications
Course: Informatics
Structural unit: Faculty of Computer Science and Cybernetics
Title
Programming Logics and Their Applications
Code
ДВС.2.05
Module type
Вибіркова дисципліна для ОП
Educational cycle
Second
Year of study when the component is delivered
2023/2024
Semester/trimester when the component is delivered
3 Semester
Number of ECTS credits allocated
5
Learning outcomes
LO19.2. To choose source data for software systems design, guided by formal methods of requirements description and modelling.
LO21.2. To know and apply program-oriented logical formalisms.
Form of study
Distance form
Prerequisites and co-requisites
Know: basic concepts of programming, methods of formalization of programming languages and specification languages, methods of modeling subject areas, logical calculi.
Be able to: formalize the languages of specifications and programs, model subject areas with the help of appropriate languages, apply software tools for the analysis of specifications.
Possess elementary skills: programming in modern languages, checking the truth and satisfiability of logic language formulas.
Course content
The goal of the discipline is to deepen knowledge of programming theory and mastering knowledge of program logic. Understanding the principles of building software logics, their application to prove the correctness of software systems, the use of formal methods in the development of information systems.
The educational discipline "Program logic and their application" is a component of the educational and scientific program of training specialists at the educational and qualification level "master" in the field of knowledge 12 "Information technologies" from the specialty 122 "Computer science", elective block "Theory and technology of programming" educational and scientific program "Informatics".
This discipline is optional under the program "Informatics" under the optional block "Theory and technology of programming".
It is taught in the 3rd semester (2nd course of the master's degree) in the amount of 150 hours. (5 ECTS credits),
in particular: seminar classes - 44 hours, independent work - 106 hours.
The course includes 3 parts and 3 tests.
The discipline ends with a credit in the 3rd semester.
Recommended or required reading and other learning resources/tools
1. Nikitchenko M.S., Shkilniak S.S. Aplied logic. – K., 2013 (in Ukr).
2. Nikitchenko M.S. Theory of programming. – K., 2020 (in Ukr)..
3. Kryvyi S.L. Introduction to software development methods. Kyiv, 2018 (in Ukr).
4. Doroshenko A.Y. et all. Formal methods of parallel system construction, Kropivnytsky, 2016.– 440 p. (in Ukr).
5. Schneider K.: Verification of Reactive Systems. Formal Methods and Algorithms. – Berlin-Heidelberg: Springer-Verlag, 2004.
6. Nielson H.R. Semantics with Applications: A Formal Introduction / H.R. Nielson, F. Nielson //John Wiley & Sons Inc. P. 240., 1992.
Planned learning activities and teaching methods
Lecture, practical classes, independent work.
Tests 1 – 3, current evaluation.
Assessment methods and criteria
Semester assessment:
1. Test 1: РН1.1, РН2.1 – 35 points / 21 points.
2. Test 2: РН1.2, РН2.2 – 25 points / 15 points.
3. Test 3: РН1.2, РН2.2 – 25 points / 15 points.
4. Current evaluation: РН3.1, РН4.1, РН4.2 – 15 points / 9 points.
Final assessment in the form of credit. It is awarded based on the results of students' work throughout the semester and does not provide for additional assessment measures for successful students.
Language of instruction
Ukrainian
Lecturers
This discipline is taught by the following teachers
Mykola
S.
Nikitchenko
Theory and Technology of Programming
Faculty of Computer Science and Cybernetics
Faculty of Computer Science and Cybernetics
Departments
The following departments are involved in teaching the above discipline
Theory and Technology of Programming
Faculty of Computer Science and Cybernetics