Click to Print This Page
Code CS 503
Term 201802
Title Theory of Computation
Faculty Faculty of Engineering and Natural Sciences
Subject Computer Sci.& Eng.(CS)
SU Credit 3
ECTS Credit 10.00
Instructor(s) Kemal ?nan,
Language of Instruction English
Level of Course Doctoral
Type of Course Click here to view.
(only for SU students)
Mode of Delivery Formal lecture,Interactive lecture,Recitation
Planned Learning Activities Interactive,Learner centered,Communicative

Turing machines; recursive numbers and turing computability; solvability and unsolvable problems; concepts of and results on computational complexity; some NP complete problems


To introduce the foundations of computations in terms of the hierarchy of expressibility of languages culminating with the Turing Machine ; the equivalences between different computational mechanisms as a warm-up to the Church-Turing thesis ; the theoretical limits of computation in terms of decidability and semidecidability of problems starting with the halting problem of a TM and computability of functions ; the practical limits to computation in terms of the tractability of problems , that is, the growth of necessary time and space resources as a function of the size of the problem instances ; recursion theorem as the critical and possibly the only link between existing human-made technologies and self-reproducing biological mechanisms.

Learning Outcome

Upon completion of the course, student should be able to :

Construct deterministic and nondeterministic Turing Machines and their multitape and other variants by using compositional techniques for formulating and solving decision problems of practical or theoretical significance
Demonstrate the equivalence between different computational tools such as different variants of the Turing Machines using concepts of decidability and semidecidability
Use random access machines (RAMs) and generalized grammars (or rewriting systems) as yet other tools of computation that are equivalent to the TM.
Demonstrate the fact that all multivariable functions on integers (primitive recursive functions) can be derived from simple functions by repeated use of composition and recursion
Demonstrate that not all reasonably computable functions are recursive and extend this set to mu-recursive functions by introducing the minimalizable functions
Show that the computational power of generalized grammars, mu-recursive functions and Turing machines are identical
Understand and use the concept of a Universal Turing Machine (UTM) and compute a concrete version of it using either the classical 3-tape model or a RAM
Demonstrate the undecidability of the famous halting problem for TMs and using Turing-computable reductions generate a host of undecidable and un-semidecidable problems
Understand the significance of the busy-beaver problem as an example of the intuitively difficult concept of an uncomputable function
Show that a computer program can use its own definition within its program in a recursive manner by using the recursion theorem and apply this idea to a number of novel decidability problems
Formulate problems of computational complexity and use the associated tools to categorize a problem to be in the polynomial (P), nondeterministic polynomial (NP) , NP-complete or NP-hard class
Generate the starting branches of the tree of NP-complete problems by using polynomial reductions after establishing the SAT problem as the root of this tree using Cook's Theorem where the nodes involved in this tree are the well-known NP-complete problems like the Hamiltonian Cycle , Traveling Salesman and others
Extend the computational time complexity problem to space complexity and formulate some game-theoretic problems that are P-space complete

Programme Outcomes
Common Outcomes For All Programs
1 Develop and deepen the current and advanced knowledge in the field with original thought and/or research and come up with innovative definitions based on Master's degree qualifications 5
2 Conceive the interdisciplinary interaction which the field is related with ; come up with original solutions by using knowledge requiring proficiency on analysis, synthesis and assessment of new and complex ideas. 4
3 Evaluate and use new information within the field in a systematic approach. 2
4 Develop an innovative knowledge, method, design and/or practice or adapt an already known knowledge, method, design and/or practice to another field; research, conceive, design, adapt and implement an original subject. 4
5 Critical analysis, synthesis and evaluation of new and complex ideas. 4
6 Gain advanced level skills in the use of research methods in the field of study. 4
7 Contribute the progression in the field by producing an innovative idea, skill, design and/or practice or by adapting an already known idea, skill, design, and/or practice to a different field independently. 4
8 Broaden the borders of the knowledge in the field by producing or interpreting an original work or publishing at least one scientific paper in the field in national and/or international refereed journals. 2
9 Demonstrate leadership in contexts requiring innovative and interdisciplinary problem solving. 4
10 Develop new ideas and methods in the field by using high level mental processes such as creative and critical thinking, problem solving and decision making. 4
11 Investigate and improve social connections and their conducting norms and manage the actions to change them when necessary. 1
12 Defend original views when exchanging ideas in the field with professionals and communicate effectively by showing competence in the field. 2
13 Ability to communicate and discuss orally, in written and visually with peers by using a foreign language at least at a level of European Language Portfolio C1 General Level. 1
14 Contribute to the transition of the community to an information society and its sustainability process by introducing scientific, technological, social or cultural improvements. 4
15 Demonstrate functional interaction by using strategic decision making processes in solving problems encountered in the field. 3
16 Contribute to the solution finding process regarding social, scientific, cultural and ethical problems in the field and support the development of these values. 2
Common Outcomes For All Programs
1 Develop the ability to use critical, analytical, and reflective thinking and reasoning 4
2 Reflect on social and ethical responsibilities in his/her professional life. 1
3 Gain experience and confidence in the dissemination of project/research outputs 1
4 Work responsibly and creatively as an individual or as a member or leader of a team and in multidisciplinary environments. 2
5 Communicate effectively by oral, written, graphical and technological means and have competency in English. 3
6 Independently reach and acquire information, and develop appreciation of the need for continuously learning and updating. 3
Common Outcomes ForFaculty of Eng. & Natural Sci.
1 Design and model engineering systems and processes and solve engineering problems with an innovative approach. 3
2 Establish experimental setups, conduct experiments and/or simulations. 2
3 Analytically acquire and interpret data. 4
1 Develop, interpret and use statistical analyses in decision making.
Computer Science and Engineering (with thesis) Program Outcomes Core Electives
1 Apply knowledge of mathematics, science, and engineering in computer science and engineering related problems. 5
2 Display knowledge of contemporary issues in computer science and engineering and apply to a particular problem. 4
3 Demonstrate the use of results from interpreted data to improve the quality of research or a product in computer science and engineering. 3
Physics (non-thesis) Program Outcomes Core Electives
1 Employ mathematical methods to solve physical problems and understand relevant numerical techniques. 4
2 Conduct basic experiments or simulations. 2
3 Analytically acquire and interpret data. 3
4 Establish thorough understanding of the fundamental principles of physics. 2
Electronics Engineering (with thesis) Program Outcomes Core Electives
1 Use advanced Math (including probability and/or statistics), advanced sciences, advanced computer and programming, and advanced Electronics engineering knowledge to design and analyze complex electronics circuits, instruments, software and electronic systems with hardware/software. 4
2 Analyze and design advanced communication networks and systems, advanced signal processing algorithms or software using advanced knowledge on diff. equations, linear algebra, complex variables and discrete math. 3
Industrial Engineering (with thesis) Program Outcomes Area Electives
1 Establish a strong theoretical background in several of a broad range of subjects related to the discipline, such as manufacturing processes, service systems design and operation, production planning and control, modeling and optimization, stochastics, statistics. 2
2 Develop novel modeling and / or analytical solution strategies for problems in integrated production and service systems involving human capital, materials, information, equipment, and energy, also using an interdisciplinary approach whenever appropriate. 3
3 Implement solution strategies on a computer platform for decision-support purposes by employing effective computational and experimental tools. 2
4 Acquire skills to independently explore and tackle problems related to the discipline that were not encountered previously. Develop appropriate modeling, solution, implementation strategies, and assess the quality of the outcome. 3
Materials Science and Engineering (with thesis) Program Outcomes Area Electives
1 Apply a broad knowledge of structure & microstructure of all classes of materials, and the ability to use this knowledge to determine the material properties. 1
2 Apply a broad understanding of the relationships between material properties, performance and processing. 1
3 Apply a broad understanding of thermodynamics, kinetics, transport phenomena, phase transformations and materials aspects of advanced technology. 1
4 Demonstrate hands-on experience using a wide range of materials characterization techniques. 1
5 Demonstrate the use of results from interpreted data to improve the quality of research, a product, or a product in materials science and engineering. 1
Mechatronics Engineering (with thesis) Program Outcomes Area Electives
1 Apply software, modeling, instrumentation, and experimental techniques and their combinations in the design and integration of electrical, electronic, control and mechanical systems. 4
2 Interact with researchers from different disciplines to exchange ideas and identify areas of research collaboration to advance the frontiers of present knowledge and technology; determine relevant solution approaches and apply them by preparing a research strategy. 4
3 Take part in ambitious and highly challenging research to generate value for both the industry and society. 4
Energy Technologies and Management (with thesis) Program Outcomes Area Electives
1 Assess and identify developments, strategies, opportunities and problems in energy security and energy technologies. 1
2 Define and solve technical, economic and administrative problems in energy businesses. 1
3 Establish knowledge and understanding of energy security, energy technologies, energy markets and strategic planning in energy enterprises. 1
4 Demonstrate an awareness of environmental concerns and their importance in developing engineering solutions and new technologies. 1
5 Acquire a series of social and technical proficiencies for project management and leadership skills. 1
Molecular Biology, Genetics and Bioengineering (with thesis) Program Outcomes Area Electives
1 Apply knowledge of key concepts in biology, with an emphasis on molecular genetics, biochemistry and molecular and cell biology. 4
2 Display an awareness of the contemporary biological issues in relation with other scientific areas. 4
3 Demonstrate hands-on experience in a wide range of biological experimental techniques. 1
Assessment Methods and Criteria
  Percentage (%)
Final 30
Midterm 25
Exam 35
Homework 10
Recommended or Required Reading

MAIN TEXT: Elements of the Theory of Computation, Lewis & Papadimitrious, Prentice Hall 1998 (out of print and discontinued)


Introduction to the Theory of Computation, Sipser, 1997 PWS
Computers and Intractability, Garey& Johnson, Freeman 2000