CS 483: Theory of Computation

CS 483: Theory of Computation

CS 483: Theory of Computation 1. Course number and name: CS 483: Theory of Computation 2. Credits and contact hours: 3.000 Credit Hours, 3.000 Lecture hours 3. Instructor or course coordinator: Zdravko Markov 4. Text book, title, author, and year: Hein, J. L., Discrete Structures, Logic, and Computability, Third Edition. Boston: Jones and Bartlett, 2010. a. other supplemental materials o Course syllabus and lecture notes are available on line at: http://www.cs.ccsu.edu/~markov/ccsu_courses/483Syllabus.html o The course uses Blackboard/Vista for projects, quizzes, and grade book. 5. Specific course information a. brief description of the content of the course (Catalog Description): The concept of algorithm, correctness and efficiency of algorithm, decidable vs. undecidable problems, recursion, halting problem, formal languages, context free and context-sensitive grammars, and introduction to automata and parallel algorithms. b. prerequisites or co-requisites: MATH 218 and CS 463 c. indicate whether a required, elective, or selected elective course in the program: Elective 6. Specific goals for the course a. specific outcomes of instruction, ex. The student will be able to explain the significance of current research about a particular topic. The main outcome of the course is that students obtain the knowledge and skills in theoretical foundations of computing that are needed to study and practice computer science. In particular this includes: Ability to prove results using proof by induction, proof by contradiction, proof by construction, proof by case exhaustion. Understanding of the basic kinds of finite automata and their capabilities. Understanding of regular and context-free languages. Ability to describe and transform regular expressions and grammars. Understanding of the key results in algorithmic complexity, computability and solvability of problems. Using the Prolog language as an experimental tool for testing properties of basic computational structures. b. explicitly indicate which of the student outcomes listed in Criterion 3 or any other outcomes are addressed by the course. The course outcomes will allow students taking CS483 to make progress toward the following department outcomes: Outcome a: An ability to apply knowledge of computing and mathematics appropriate to the discipline. Outcome b: An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution. Outcome j: An ability to apply mathematical foundations, algorithmic principles, and computer science theory. 7. Brief list of topics covered Regular languages and regular expressions. Deterministic and non-deterministic automata. Context-free languages and pushdown automata. Turing machines, Church-Turing thesis, equivalent models of computation. Computability: undecidable problems, computable functions, complexity, tractable problems. NP-complete problems. 8. Expected Performance Criteria Students will demonstrate their mastering of the theory of computation by solving computational problems in three major projects and in a number of programming assignments involving experiments with computational structures using Prolog. .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    2 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us