,
Course Summary Course Objectives Learning Outcomes Course Materials Teaching Methods Weekly Topics Course Schedule Office Hours Assestment ECTS Calculation Course Policies Learning Tips Print Syllabi Download as PNG

CS313 Theory of Computation

Syllabus   |  International University of Sarajevo  -  Last Update on Apr 04, 2026

Referencing Curricula

Syllabus Quick Jump

Search and navigate to any syllabus instantly

HOSTED BY

Computer Sciences and Engineering

Spring 2025 - 2026 | 6 ECTS Credits | International University of Sarajevo

Academic Year
2025 - 2026
Semester
Spring
Course Code
CS313
Weekly Hours
3 Teaching + 2 Practice
ECTS
6
Prerequisites
CS105 MATH204
Teaching Mode Delivery
Face-to-face
Prerequisite For
-
Teaching Mode Delivery Notes
-
Cycle
I Cycle
Prof. Jane Doe

Babatunde Kazeem Oladejo

Course Lecturer

Position
Assistant Professor Dr.
Email
koladejo@ius.edu.ba
Phone
033 957 -
Assistant(s)
Harun Hadzo
Assistant E-mail
hhadzo@ius.edu.ba

Course Objectives

The aims of this course are to understand basic theory of computation concepts that lies at the backbone of all state-of-the-art applications and program design. Students should understand the capabilities and limits of computation, particular applications and capabilities of deterministic and non-deterministic finite automata, context-free grammars, and finally Turing machines, as well as NP-completeness and complexity classes.

Learning Outcomes

After successful completion of the course, the student will be able to:

1
Design deterministic and non-deterministic finite state machines and understant their capabilities and limits
2
Design deterministic and non-deterministic context-free grammars and pushdown automata
3
Design and analyze Turing machines, their capabilities and limitations
4
Demonstrate the understanding of complexity classes and current unsolved problems in theoretical computer science
5
Apply the theoretical concepts to the practice of program design with regular expresisons, parsing, and complexity analysis

Course Materials

Required Textbook

Introduction to Theory of Computation, 3rd edition, Anil Maheshwari and Michiel Smid, Carleton University, 2024

Additional Literature
Introduction to the Theory of Computation, 3rd edition, Michael Sipser, Cengage Learning, 2012. Automata, Computability and Complexity: Theory and Applications, 1/E., Elaine A. Rich, 2008. Harry R. Lewis, and Christos H. Papadimitriou Prentice Hall, 2nd Edition, 1998

Teaching Methods

Lectures
Class discussions
Practical examples
Homework exercises

Weekly Topics

This weekly planning is subject to change with advance notice.
Week Topic Readings / References
1 Course introduction / Fundamentals
2 Fundamentals / Proof techniques Chapter 1 (Maheshwari & Smid)
3 Finite state machines (DFA) Chapter 2 (Maheshwari & Smid)
4 Non-deterministic finite state machines (NFA); Quiz 1 Chapter 2 (Maheshwari & Smid)
5 Regular Languages Chapter 2 (Maheshwari & Smid)
6 Nonregular languages; Quiz 2 Chapter 3 (Maheshwari & Smid)
7 Mid-Term Prep
8 MID-TERM EXAM (No Tutorial due to Mid-term)
9 Context-free grammars Chapter 3 (Maheshwari & Smid)
10 Pushdown automata; Chapter 3 (Maheshwari & Smid)
11 Non-context-free languages; Quiz 3 Chapter 4 (Maheshwari & Smid)
12 Turing machines; Chapter 4 (Maheshwari & Smid)
13 Church-Turing thesis; Quiz 4 Chapter 5 (Maheshwari & Smid)
14 Decidability / Undecidability; Chapter 6 (Maheshwari & Smid)
15 Final Exam Prep

Course Schedule (All Sections)

SectionTypeDay 1Venue 1Day 2Venue 2
CS313.1 Course Thursday 09:00 - 11:50 A F1.26 - -
CS313.1 Tutorial Friday 10:00 - 11:50 A F1.18 - Computer Lab - -

Office Hours & Room

DayTimeOfficeNotes
Wednesday 12:00 - 14:00 A F2.32
Thursday 14:00 - 16:00 A F2.32
Friday 09:00 - 10:00 A F2.32

Assessment Methods and Criteria

Assessment Components

40%x1
Final Exam
AI: Not Allowed

Alignment with Learning Outcomes :  1  2  3  4  5

25%x1
Mid-term Exam
AI: Not Allowed

Alignment with Learning Outcomes :  1  2  5

20%x4
Quizzes
AI: Not Allowed

Alignment with Learning Outcomes :  1  2  3  4  5

10%x2
Assignments
AI: Not Allowed

Alignment with Learning Outcomes :  1  2  3  4  5

5%x1
Participation
AI: Not Allowed

Alignment with Learning Outcomes :  1  2  3  4  5

IUS Grading System

Grading Scale IUS Grading System IUS Coeff. Letter (B&H) Numerical (B&H)
0 - 44 F 0 F 5
45 - 54 E 1
55 - 64 C 2 E 6
65 - 69 C+ 2.3 D 7
70 -74 B- 2.7
75 - 79 B 3 C 8
80 - 84 B+ 3.3
85 - 94 A- 3.7 B 9
95 - 100 A 4 A 10

IUS Grading System

Letter marks that do not affect student's CGPA:
  • "IP" – In progress is assigned for recording unfulfilled student obligations related to graduation project/thesis/dissertation and internship.
  • "S" – Satisfactory is assigned to a student who passed the examinations that are not numerically graded or whose written assignment has been accepted.
  • "U" – Unsatisfactory is assigned to a student who failed to pass the examinations that are not numerically graded.
  • "W" – Withdrawal signifies that student has withdrawn from the relevant course.
Additional letter mark that affects student's CGPA:

"N/A" – Not attending, and it is assigned to a student who is suspended from the course or who does not meet the minimal requirement for attendance on lectures or tutorials. The course lecturer must follow the attendance policy and assign "N/A" in each case of a student failing attendance.

Late Work Policy

Information about late submission policies will be shared during class and posted in this section. Please check back for official guidelines.

ECTS Credit Calculation

📚 Student Workload

This 6 ECTS credit course corresponds to 150 hours of total student workload, distributed as follows:

Lecture Hours

45 hours ⏳ (15 week × 3 h)

Mid-term Exam study

20 hours ⏳ (1 week × 20 h)

Final exam study

25 hours ⏳ (1 week × 25 h)

Quizzes

40 hours ⏳ (4 week × 10 h)

Participation

20 hours ⏳ (10 week × 2 h)

150 Total Workload Hours

6 ECTS Credits


Course Policies

Academic Integrity

All work submitted must be your own. Plagiarism, cheating, or any form of academic dishonesty will result in disciplinary action according to university policies. When in doubt about citation practices, consult the instructor.

Attendance Policy

Students are expected to adhere to the attendance requirements as outlined in the International University of Sarajevo Study Rules and Regulations. Excessive absences, whether excused or unexcused, may impact academic performance and eligibility for assessment. Mandatory sessions (e.g., labs, workshops) require attendance unless formally exempted. For detailed policies on absences, documentation, and penalties, please refer to the official university regulations.

Technology & AI Policy

Laptops/tablets may be used for note-taking only during lectures. Phones should be silenced and put away during all class sessions. Audio/video recording requires prior permission from the instructor.

Artificial Intelligence (AI) Usage: The use of AI tools (e.g., ChatGPT, Copilot, Gemini) varies by assessment component. Please refer to the AI usage indicator next to each assessment item in the Assessment Methods and Criteria section above. Submitting AI-generated content as your own work, where AI is not explicitly allowed, constitutes an academic integrity violation.

Communication Policy

All course-related communication should occur through official university channels (institutional email or SIS). Emails should include [CS313] in the subject line.

Academic Quality Assurance Policy

Course Academic Quality Assurance is achieved through Semester Student Survey. At the end of each academic year, the institution of higher education is obliged to evaluate work of the academic staff, or the success of realization of the curricula.

More info

Article 112: Evaluation of Work of the Academic Staff

  1. At the end of each academic year, the institution of higher education is obliged to evaluate work of the academic staff, or the success of realization of the curricula.
  2. Evaluation of work of each academic staff member is to be carried out in accordance with the Statute of the institution of higher education by the institution as well as by students.
  3. The institutions of higher education are obliged to carry out a students’ evaluation survey on the academic staff performance after the end of each semester, or after the completed teaching cycle for the subject taught.
  4. Evaluation must evaluate: lecture quality, student-academic staff interaction, correctness of communication, teacher’s attitudes towards students attending the teaching activities and at assessments, availability of suggested reading material, attendance and punctuality of the teacher, along with other criteria which are defined in the Statute.
  5. The institution of higher education by a specific act determines the procedure for evaluation of the academic staff performance, the content of survey forms, the manner of conducting the evaluation, grading criteria for the evaluation, as well as adequate measures for the academic staff who received negative evaluation for two consecutive years.
  6. The evaluation of the academic staff performance is an integral process of establishment the quality assurance system, or self-control and internal quality assurance.
  7. Results of the evaluation of the academic staff performance are to be adequately analyzed by the institution of higher education, and the decision of the head of the organizational unit about the employee’s work performance is an integral part of the personal file of each member of academic staff.

Learning Tips

Engage Actively

Be prepared to contribute thoughtfully during class discussions, labs, or collaborative work. Active participation deepens understanding and encourages critical thinking.

Read and Review Purposefully

Complete assigned readings or prep materials before class. Take notes, highlight key ideas, and jot down questions. Aim to grasp core concepts and their applications—not just facts.

Think Critically in Assignments

Use course frameworks or methodologies to analyze problems, case studies, or projects. Begin early to allow time for reflection and refinement. Seek feedback to improve your work.

Ask Questions Early

Don’t hesitate to reach out when something is unclear. Use office hours, discussion boards, or peer networks to clarify concepts and stay on track.

Course Academic Quality Assurance: Semester Student Survey

Syllabus Last Updated on Apr 04, 2026 | International University of Sarajevo

Print Syllabus  

 

 

Referencing Curricula Print this page

Course Code Course Title Weekly Hours* ECTS Weekly Class Schedule
T P
CS313 Theory of Computation 3 2 6 Thu 9:00-11:50 AM
Prerequisite CS105, MATH204 It is a prerequisite to -
Lecturer Babatunde Kazeem Oladejo Office Hours / Room / Phone
Wednesday:
12:00-14:00
Thursday:
14:00-16:00
Friday:
9:00-10:00
A F2.32
E-mail koladejo@ius.edu.ba
Assistant Harun Hadzo Assistant E-mail hhadzo@ius.edu.ba
Course Objectives The aims of this course are to understand basic theory of computation concepts that lies at the backbone of all state-of-the-art applications and program design. Students should understand the capabilities and limits of computation, particular applications and capabilities of deterministic and non-deterministic finite automata, context-free grammars, and finally Turing machines, as well as NP-completeness and complexity classes.
Textbook Introduction to Theory of Computation, 3rd edition, Anil Maheshwari and Michiel Smid, Carleton University, 2024
Additional Literature
  • Introduction to the Theory of Computation, 3rd edition, Michael Sipser, Cengage Learning, 2012.
  • Automata, Computability and Complexity: Theory and Applications, 1/E., Elaine A. Rich, 2008.
  • Harry R. Lewis, and Christos H. Papadimitriou Prentice Hall, 2nd Edition, 1998
Learning Outcomes After successful  completion of the course, the student will be able to:
  1. Design deterministic and non-deterministic finite state machines and understant their capabilities and limits
  2. Design deterministic and non-deterministic context-free grammars and pushdown automata
  3. Design and analyze Turing machines, their capabilities and limitations
  4. Demonstrate the understanding of complexity classes and current unsolved problems in theoretical computer science
  5. Apply the theoretical concepts to the practice of program design with regular expresisons, parsing, and complexity analysis
Teaching Methods Lectures. Class discussions. Practical examples. Homework exercises.
Teaching Method Delivery Face-to-face Teaching Method Delivery Notes
WEEK TOPIC REFERENCE
Week 1 Course introduction / Fundamentals
Week 2 Fundamentals / Proof techniques Chapter 1 (Maheshwari & Smid)
Week 3 Finite state machines (DFA) Chapter 2 (Maheshwari & Smid)
Week 4 Non-deterministic finite state machines (NFA); Quiz 1 Chapter 2 (Maheshwari & Smid)
Week 5 Regular Languages Chapter 2 (Maheshwari & Smid)
Week 6 Nonregular languages; Quiz 2 Chapter 3 (Maheshwari & Smid)
Week 7 Mid-Term Prep
Week 8 MID-TERM EXAM (No Tutorial due to Mid-term)
Week 9 Context-free grammars Chapter 3 (Maheshwari & Smid)
Week 10 Pushdown automata; Chapter 3 (Maheshwari & Smid)
Week 11 Non-context-free languages; Quiz 3 Chapter 4 (Maheshwari & Smid)
Week 12 Turing machines; Chapter 4 (Maheshwari & Smid)
Week 13 Church-Turing thesis; Quiz 4 Chapter 5 (Maheshwari & Smid)
Week 14 Decidability / Undecidability; Chapter 6 (Maheshwari & Smid)
Week 15 Final Exam Prep
Assessment Methods and Criteria Evaluation Tool Quantity Weight Alignment with LOs AI Usage
Final Exam 1 40 1,2,3,4,5 Not Allowed
Semester Evaluation Components
Mid-term Exam 1 25 1,2,5 Not Allowed
Quizzes 4 20 1,2,3,4,5 Not Allowed
Assignments 2 10 1,2,3,4,5 Not Allowed
Participation 1 5 1,2,3,4,5 Not Allowed
***     ECTS Credit Calculation     ***
 Activity Hours Weeks Student Workload Hours Activity Hours Weeks Student Workload Hours
Lecture Hours 3 15 45 Mid-term Exam study 20 1 20
Final exam study 25 1 25 Quizzes 10 4 40
Participation 2 10 20
        Total Workload Hours = 150
*T= Teaching, P= Practice ECTS Credit = 6
Course Academic Quality Assurance: Semester Student Survey Last Update Date: 19/04/2026

Print this page