Course Title Course Code Programme emester Course Type Regulation INTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, yderabad -500 043 Computer cience and Engineering COURE INFORMATION EET TEORY OF COMPUTATION AIT002 B.Tech IV Core IARE - R16 Course tructure Lectures Tutorials Practicals Credits Course Coordinator Course Faculty 4 - - 4 Dr. K Rajendra Prasad, Professor Ms. N Mamtha, Assistant Professor Ms. warajya Lakshmi, Assistant Professor Mr. D Abdulla, Assistant Professor I. COURE OVERVIEW: Introduction to the theory of computation, including models of computation such as Turing machines; theory of programming languages, including grammars, parsing, syntax and semantics. This course in reached to student by power point presentations, lecture notes, and assignment questions,previous model question papers, multiple choice questions and question bank of long and short answers. II. COURE PRE-REQUIITE: Level Course Code emester Prerequisites Credits UG AIT002 IV Digital Logic Design 4 III. MARK DITRIBUTION: ubject EE Examination CIA Examination Total Marks TEORY OF COMPUTATION 70 Marks 30 Marks 100 emester End Examination (EE): The EE is conducted for 70 marks of 3 hours duration. The syllabus for the theory courses is divided into FIVE units and each unit carries equal weight age in terms of marks distribution. The question paper pattern is as follows: two full questions with either or choice will be drawn from each unit. Each question carries 14 marks. Continuous Internal Assessment (CIA): CIA is conducted for a total of 30 marks, with 25 marks for Continuous Internal Examination (CIE) and 05 marks for Quiz / Alternative Assessment Tool (AAT). Continuous Internal Examination (CIE): The CIE exam is conducted for 25 marks of 2 hours duration consisting of two parts. Part A shall have five compulsory questions of one mark each. In part B, four out of five questions have to be answered where, each question carries 5 marks. Marks are awarded by taking average of marks scored in two CIE exams. Page 1
Quiz / Alternative Assessment Tool (AAT): Two Quiz exams shall be online examination consisting of 20 multiple choice questions and are be answered by choosing the correct answer from a given set of choices (commonly four). Marks shall be awarded considering the average of two quizzes for every course. The AAT may include seminars, assignments, term paper, open ended experiments, micro projects, five minutes video and MOOCs. IV. DELIVERY / INTRUCTIONAL METODOLOGIE: CALK & TALK QUIZ AIGNMENT X MOOCs LCD / PPT EMINAR X MINI PROJECT VIDEO X OPEN ENDED EXPERIMENT V. AEMENT METODOLOGIE DIRECT CIE EXAM EE EXAM AIGNEMNT EMINAR X TUDENT VIVA MINI PROJECT X CERTIFICATION TERM PAPER X LABORATORY EXPERIMENT VI. AEMENT METODOLOGIE INDIRECT X AEMENT OF COURE OUTCOME (BY FEEDBACK, ONCE) AEMENT OF MINI PROJECT BY EXPERT TUDENT FEEDBACK ON FACULTY (TWICE) VII. COURE OBJECTIVE: The course should enable the students to: I Comprehend abstract, mathematical models of computation and use them to solve computational problems. II Interpret the relationship between formal languages in Chomsky's hierarchy and different machines. III Analyze and explain the behavior of push-down automata. IV Understand the limits and capacities of Turing s machines to recognize languages. VIII. COURE LEARNING OUTCOME: tudents, who complete the course, will have demonstrated the ability to do the following: CAIT002.01 CAIT002.02 CAIT002.03 CAIT002.04 CAIT002.05 CAIT002.06 CAIT002.07 CAIT002.08 CAIT002.09 Use the definitions and notations for sets, relations and functions in defining and study Finite Automata Knowledge on formal languages and Kleene s Theorem to intend programming languages Construct deterministic and nondeterministic finite state automata (DFA and NFA) for solving simple decision problems. Perform conversions between nondeterministic finite automata and deterministic finite automata and regular expressions and finite state automata to gain knowledge about formal proofs in computer science Knowledge on recursive definitions of regular languages, regular expressions and the use of regular expressions to represent regular languages Detailed knowledge on the relationship between regular expressions and finite automata Identify that few languages are not regular by using Pumping lemma Knowledge on Left Linear grammar, Right Linear grammars and converting grammars into Finite Automata. Understand the fundamental role played by Context-Free Grammars (CFG) in designing formal computer languages with simple examples Page 2
CAIT002.10 CAIT002.11 CAIT002.12 CAIT002.13 CAIT002.14 CAIT002.15 CAIT002.16 CAIT002.17 CAIT002.18 CAIT002.19 CAIT002.20 Knowledge on Context Free Grammars so that able to prove properties of Context Free Grammars. Identify relationship between regular languages and context-free grammars Use the pumping lemma for Context Free Languages to show that a language is not context free Understand the equivalence between Context-Free Grammars and Non-deterministic Pushdown Automata Understand deterministic Pushdown Automata to parse formal language strings by using (i) top down or (ii) bottom up techniques Knowledge on converting Context-Free Grammars into pushdown automata to identify the acceptance of a string by the Context Free Language Understand the path processing computation using Turing Machines (Deterministic and Non Deterministic) and Church Turing Thesis in computers. Knowledge on non-halting Turing Machine accepted by Recursively Enumerable Languages Understand the power of the Turing Machine, as an abstract automaton, that describes computation, effectively and efficiently Theory of Computation is important in programming language design, parsers, web-scrappers, Natural Language Processing (NLP), and is at the heart of modern compiler architectures. Process the knowledge and skills for employability and to succeed in national and international level competitive exams. IX. OW PROGRAM OUTCOME ARE AEED: PO 1 PO 2 PO 3 PO 4 PO 5 PO 6 PO 7 PO 8 PO 9 PO 10 Page 3 Program Outcomes Engineering knowledge: Apply the knowledge of mathematics, science, engineering fundamentals, and an engineering specialization to the solution of complex engineering problems. Problem analysis: Identify, formulate, review research literature, and analyze complex engineering problems reaching substantiated conclusions using first principles of mathematics, natural sciences, and engineering sciences. Design/development of solutions: Design solutions for complex engineering problems and design system components or processes that meet the specified needs with appropriate consideration for the public health and safety, and the cultural, societal, and environmental considerations. Conduct investigations of complex problems: Use research-based knowledge and research methods including design of experiments, analysis and interpretation of data, and synthesis of the information to provide valid conclusions. Modern tool usage: Create, select, and apply appropriate techniques, resources, and modern engineering and IT tools including prediction and modeling to complex engineering activities with an understanding of the limitations. The engineer and society: Apply reasoning informed by the contextual knowledge to assess societal, health, safety, legal and cultural issues and the consequent responsibilities relevant to the professional engineering practice. Environment and sustainability: Understand the impact of the professional engineering solutions in societal and environmental contexts, and demonstrate the knowledge of, and need for sustainable development. Ethics: Apply ethical principles and commit to professional ethics and responsibilities and norms of the engineering practice. Individual and team work: Function effectively as an individual, and as a member or leader in diverse teams, and in multidisciplinary settings. Communication: Communicate effectively on complex engineering activities with the engineering community and with society at large, such Level Proficiency Assessed by Assignments Assignments -- Open ended experiments / Mini Project. eminars / Term Paper /
PO 11 PO 12 Program Outcomes Level as, being able to comprehend and write effective reports and design documentation, make effective presentations, and give and receive clear instructions. Project management and finance: Demonstrate knowledge and understanding of the engineering and management principles and apply these to one s own work, as a member and leader in a team, to manage projects and in multidisciplinary environments. Life-long learning: Recognize the need for, and have the preparation and ability to engage in independent and life-long learning in the broadest context of technological change. N= None = upportive = ighly Related Proficiency Assessed by 5 minutes video ---- X. OW PROGRAM PECIFIC OUTCOME ARE AEED: PO 1 PO 2 PO 3 Program pecific Outcomes Professional kills: The ability to research, understand and implement computer programs in the areas related to algorithms, system software, multimedia, web design, big data analytics, and networking for efficient analysis and design of computer-based systems of varying complexity. Problem-olving kills: The ability to apply standard practices and strategies in software project development using open-ended programming environments to deliver a quality product for business success. uccessful Career and Entrepreneurship: The ability to employ modern computer languages, environments, and platforms in creating innovative career paths, to be an entrepreneur, and a zest for higher studies. N - None - upportive - ighly Related Level Proficiency Assessed by Lectures, Assignments Projects Guest Lectures XI. YLLABU: UNIT I Fundamentals: Alphabet, strings, language, operations; Introduction to finite automata: The central concepts of automata theory, deterministic finite automata, nondeterministic finite automata, an application of finite automata, finite automata with epsilon transitions. UNIT II Regular sets, regular expressions, identity rules, constructing finite automata for a given regular expressions, conversion of finite automata to regular expressions, pumping lemma of regular sets, closure properties of regular sets (proofs not required), regular grammars-right linear and left linear grammars, equivalence between regular linear grammar and finite automata, inter conversion. UNIT III Context free grammars and languages: Context free grammar, derivation trees, sentential forms, right most and leftmost derivation of strings, applications. Ambiguity in context free grammars, minimization of context free grammars, Chomsky normal form, Greibach normal form, pumping lemma for context free languages, enumeration of properties of context free language (proofs omitted). UNIT IV Pushdown automata, definition, model, acceptance of context free language, acceptance by final state and acceptance by empty stack and its equivalence, equivalence of context free language and pushdown automata, inter conversion;(proofs not required);introduction to deterministic context free languages and deterministic pushdown automata UNIT V Turing machine: Turing machine, definition, model, design of Turing machine, computable functio ns, recursively enumerable languages, Church's hypothesis, counter machine, types of Turing machines (proofs not required), linear bounded automata and context sensitive language, Chomsky hierarchy of languages. Page 4
TEXT BOOK: 1 John E. opcroft, Rajeev Motwani, Jeffrey D.Ullman, Introduction to Automata, Theory, Languages and Computation, Pearson Education, 3 rd Edition, 2007. REFERENCE: 1. John C Martin, Introduction to Languages and Automata Theory, Tata McGraw-ill, 3 rd Edition, 2007. 2. Daniel I.A. Cohen, Introduction to Computer Theory, John Wiley & ons, 2 nd Edition, 2004. XII. COURE PLAN: The course plan is meant as a guideline. There may probably be changes. Lecture Topic Outcomes Topic/s to be covered Reference No 1 Define tring, Alphabet Alphabet, strings, language, operation T1: 1.5-1.6 2-4 Define Automata. Introduction to finite automata: The T1: 2.1-2.2 central concepts of automata theory 5-7 Construct DFA with example Deterministic finite automata T1: 2.2-2.3 8-12 Construct NFA with example Nondeterministic finite automata T1: 2.3-2.4 13-15 List the applications of finite automata An application of finite automata T1: 2.4-2.5 16-19 Define ɛ - closure Finite automata with epsilon transitions T1: 2.5-2.6 20-22 Define Regular Languages. Regular sets, regular expressions, identity T1: 3.1-3.2 rules 23 Construct the Regular Expression for Constructing finite automata for a given T1: 3.1-3.2 the set of binary strings regular expressions 24-26 Describe the Regular Expression to conversion of finite automata to regular T1: 3.1-3.2 generate atleast one b overσ ={a,b} expressions 27-32 Define Pumping Lemma for Regular pumping lemma of regular sets T1: 4.1-4.2 Languages. 33-35 Explain about the closure properties of closure properties of regular sets (proofs T1: 4.1-4.2 regular sets not required) 36-40 Construct Right linear, Left linear regular grammars-right linear and left T1: 4.4-4.5 Regular Grammars for 01*+1. linear grammars 41-46 Construct Regular grammar for the equivalence between regular linear T1: 4.4-4.5 given Finite Automata.(a+b)*ab*. grammar and finite automata, inter conversion. 47-49 Define CNF Context free gramma T1: 5.1-5.2 50-53 Define Rightmost derivation and leftmost derivation with example derivation trees, sentential forms, right T1: 5.1-5.2 most and leftmost derivation of strings 54 Define the ambiguity in CFG. Ambiguity in context free grammars T1: 5.4-5.5 55-56 Write the minimization of CFG - - > a1b 1->a1b/ɛ. minimization of context free grammars T1: 7.4-7.5 57-58 Convert the following CFG into GNF. Chomsky normal form, Greibach normal T1: 7.4-7.5 form 59 Discuss the Pumping lemma for Pumping lemma for context free T1: 7.2-7.3 Context Free Languages concept with languages example {anbncn where n>=0}. 60-61 Define PDA Pushdown automata, definition, model T1: 6.1-6.2 62-63 Explain acceptance of PDA by final state. 64-67 Construct a Transition diagram for Turing Machine to accept the language L= { w#w R w ϵ ( a + b ) *} Acceptance by final state and acceptance by empty stack and its equivalence Turing machine: Turing machine, definition, model, design of Turing machine, computable functions, recursively enumerable languages, Church's hypothesis, counter machine T1: 6.2-6.4 T1: 8.2-8.6 Page 5
XIII. GAP IN TE YLLABU - TO MEET INDUTRY / PROFEION REQUIREMENT: NO DECRIPTION PROPOED ACTION RELEVANCE WIT POs RELEVANCE WIT POs 1 Finite automata, eminars / Guest Lectures PO 1, PO 2, PO 3 PO 1, PO 2 Regular languages / NPTEL 2 Context Free eminars / Guest Lectures PO 2, PO 3 PO 1 Grammars / NPTEL 3 Pushdown automata, Turing machine Assignments / Laboratory Practices PO 1, PO 3, PO 4 PO 2 XIV. MAPPING COURE OBJECTIVE LEADING TO TE ACIEVEMENT OF PROGRAM OUTCOME AND PROGRAM PECIFIC OUTCOME: Course Objectives (COs) Program Outcomes (POs) Program pecific Outcomes (POs) PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PO1 PO2 PO3 I II III IV = upportive = ighly Related XV. MAPPING COURE OUTCOME LEADING TO TE ACIEVEMENT OF PROGRAM OUTCOME AND PROGRAM PECIFIC OUTCOME: Course Learning Outcomes (CLOs) Program Outcomes (COs) Program pecific Outcomes (POs) PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PO1 PO2 PO3 CAC004.01 CAC004.02 CAC004.03 CAC004.04 CAC004.05 CAC004.06 CAC004.07 CAC004.08 CAC004.09 CAC004.10 CAC004.11 CAC004.12 CAC004.13 Page 6
CAC004.14 CAC004.15 CAC004.16 CAC004.17 CAC004.18 CAC004.19 CAC004.20 = upportive = ighly Related XVI. DEIGN BAED PROBLEM (DP) / OPEN ENDED PROBLEM: 1. Construct turing machine for finding support value for a set of items in association manual. 2. Design a program for finate automata to check a valued path for a given set of cities in a rectangular. A B C D 3. Design a program for PDA to count the duplicate entries in the editor Prepared By: Ms. N Mamtha, Assistant Professor OD, CE Page 7