0% found this document useful (0 votes)
50 views1 page

UCS701 Theory of Computation Syllabus

This course introduces students to the basic theory of computation including computability theory and complexity theory. It covers topics such as regular languages and finite automata, context-free grammars and pushdown automata, Turing machines, and uncomputability. The course aims to help students understand regular expressions and their equivalence to finite automata, disambiguate context-free grammars, apply concepts of recursive and recursively enumerable languages, and solve analytical problems in theory of computation.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
50 views1 page

UCS701 Theory of Computation Syllabus

This course introduces students to the basic theory of computation including computability theory and complexity theory. It covers topics such as regular languages and finite automata, context-free grammars and pushdown automata, Turing machines, and uncomputability. The course aims to help students understand regular expressions and their equivalence to finite automata, disambiguate context-free grammars, apply concepts of recursive and recursively enumerable languages, and solve analytical problems in theory of computation.
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

UCS701 THEORY OF COMPUTATION

L T P Cr
3 1 2 3.5
Course Objectives: This course introduces basic theory of computer science and formal methods
of computation. The course exposes students to the computability theory, as well as to the
complexity theory.
Regular Languages: Alphabets, Language, Regular Expression, Definitions of Finite State
Machine, Transition Graphs, Deterministic & Non-deterministic Finite State Machines, Regular
Grammar, Thompson’s Construction to Convert Regular Expression to NDFA & Subset
Algorithm to convert NDFA to DFA, Various recent development in the Conversion of Regular
Expression to NFA, Minimization of DFA, Finite State Machine with output- Moore machine and
Melay Machine, Conversion of Moore machine to Melay Machine & Vice-Versa.
Properties of Regular languages: Conversion of DFA to Regular Expression, Pumping Lemma,
Properties and Limitations of Finite state machine, Decision properties of Regular Languages,
Application of Finite Automata.
Context Free Grammar and Push Down Automata: Context Free Grammar, Derivation tree
and Ambiguity, Application of Context free Grammars, Chomsky and Greibach Normal form,
Properties of context free grammar, CKY Algorithm, Decidable properties of Context free
Grammar, Pumping Lemma for Context free grammar, Push down Stack Machine, Design of
Deterministic and Non-deterministic Push-down stack.
Turing Machine: Turing machine definition and design of Turing Machine, Church-Turing
Thesis, Variations of Turing Machines, combining Turing machine, Universal Turing Machine,
Post Machine, Chomsky Hierarchy, Post correspondence problem.
Uncomputability: Halting Problem, Turing enumerability, Turing Acceptability and Turing
decidabilities, unsolvable problems about Turing machines, Rice’s theorem.
Course learning outcomes (CLOs):
After the completion of the course, the student will be able to:
1. Comprehend regular languages and finite automata and develop ability to provide the
equivalence between regular expressions, NFAs, and DFAs.
2. Disambiguate context-free grammars by understanding the concepts of context‐free languages
and push‐down automata.
3. Apply the concepts of recursive and recursively enumerable languages and design efficient
Turing Machines.
4. Solve analytical problems in related areas of theory in computer science

Text Books:
1. Hopcroft E. J., Ullman D. J. and Motwani R., Introduction to Automata Theory, Languages
and Computation, Pearson Education (2007) 3rd ed.
2. Martin C. J., Introduction to Languages and the Theory of Computation, McGraw-Hill Higher
Education (2011) 4th ed.
3. Lewis R. H., Papadimitriou H. C., Elements of the Theory of Computation, Prentice Hall
(1998) 2nd ed.
Reference Books:
1. Cohen A. I. D., Introduction to Computer Theory, Wiley (1997) 2nd ed.
2. Sipser M., Introduction to the Theory of Computation, Cengage Learning (2013) 3rd ed.

SIXTH SEMESTER
UCS794 CAPSTONE PROJECT

Common questions

Powered by AI

Moore and Mealy machines can be interconverted as follows: A Mealy machine, which produces outputs based on transitions, can be converted into a Moore machine by adjusting the state outputs so each state reflects the possible output in response to various inputs. Conversely, converting a Moore machine to a Mealy machine involves setting the outputs for every transition instead of the states. This conversion implies flexibility in finite state machine design; one could choose between Moore's simplicity of states with fixed outputs and Mealy's more compact representation typically leading to fewer states .

Rice’s theorem significantly impacts computability by demonstrating that any non-trivial property about the language recognized by a Turing machine is undecidable. This theorem establishes that no general algorithm can decide properties about the behavior or output of a program—assuming the program is described by a Turing machine. This revelation underscores the inherent limitations within computational theory regarding the solvability of decision problems, thereby demarcating the boundaries of algorithmic problem-solving and highlighting the existence of unsolvable problems .

Deterministic and non-deterministic push-down automata (DPDA and NPDA, respectively) both recognize context-free languages but differ significantly in power and type of languages they can accept. While every language recognized by a DPDA can also be recognized by an NPDA, the converse is not true; there are context-free languages that require nondeterminism for their acceptance. This disparity indicates inherent expressive differences, with NPDA being superior in recognizing a broader class of languages due to their flexibility in state transitions. This distinction underpins a deeper understanding of the limitations and use cases for automata when implementing parsing algorithms .

The Church-Turing Thesis is a foundational principle in computational theory that posits any function that can be effectively calculated by a human using a clearly defined algorithm can also be computed by a Turing machine. This thesis forms the basis for understanding what constitutes a computable function and delineates the limits of mechanical computation. It implies that any real-world computation can be simulated by a Turing machine, thereby framing the study of algorithms and the limits of what can be computed within a formal theoretical context .

The CKY (Cocke-Kasami-Younger) algorithm is a dynamic programming method used for parsing strings in context-free grammars, particularly those in Chomsky Normal Form. It systematically constructs a parse table to determine if a string belongs to the language defined by the grammar. While the algorithm is powerful for parsing any context-free language in a bottom-up fashion, it is limited to grammars in Chomsky Normal Form and can be inefficient for long strings due to its cubic time complexity. Despite these constraints, CKY remains a staple in parsing applications, especially in computational linguistics .

Thompson’s construction is a method to convert a regular expression into an equivalent nondeterministic finite automaton (NDFA). This construction systematically breaks down a regular expression into its constituent parts and then constructs a series of state transitions that represent the components. The significance of this conversion lies in its ability to bridge abstract regular expressions with concrete automata representations, thus enabling algorithmic implementation. This method is fundamental because it allows automated processes, such as lexical scanning, by harnessing the NDFA to evaluate strings against the original regular expression .

The Chomsky Hierarchy is a classification of formal languages based on their generative power of languages and the computational complexity of their associated automata. It delineates four levels: Type 0 (unrestricted grammars), Type 1 (context-sensitive grammars), Type 2 (context-free grammars), and Type 3 (regular grammars). Each level in this hierarchy corresponds to a class of automata capable of recognizing these languages, from unrestricted Turing machines at the highest level to finite automata at the lowest. Understanding this hierarchy aids in categorizing languages based on their complexity and computational requirements, thus providing a structured approach to dissecting automata capabilities and constraints .

The decision properties of regular languages include the ability to determine language emptiness, finiteness, equivalence, and membership efficiently using finite automata representations. These properties imply that questions about simpler patterns can be resolved algorithmically, thanks to decidability in regular languages. This computability forms the foundation for applications in pattern recognition, syntax analysis, and lexing in programming language compilers, reinforcing their significance in automating language processing tasks .

The Pumping Lemma for regular languages is primarily used to prove that certain languages are not regular by demonstrating that no finite state machine could possibly recognize them. This lemma provides necessary conditions that all regular languages must satisfy, and leveraging this, one can formulate arguments to show that certain languages do not meet these criteria, hence are not regular. By doing so, the limitations of finite state machines, particularly in terms of the languages they can recognize, are highlighted .

The Halting Problem is crucial as it provides the canonical example of an undecidable problem—demonstrating that no general algorithm can determine whether an arbitrary Turing machine will halt given an input. This uncomputability highlights fundamental limits in computational theory, emphasizing that certain questions about the behavior of algorithms cannot be answered algorithmically. The implications extend to practical computing, influencing our understanding of the feasibility and limits of automated reasoning and algorithm design .

You might also like