TC - Theory of Computation

Similar documents
Language properties and Grammar of Parallel and Series Parallel Languages

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

A General Class of Noncontext Free Grammars Generating Context Free Languages

A R "! I,,, !~ii ii! A ow ' r.-ii ' i ' JA' V5, 9. MiN, ;

SAM - Sensors, Actuators and Microcontrollers in Mobile Robots

Self Study Report Computer Science

SSE - Supervision of Electrical Systems

TEACHING AND EXAMINATION REGULATIONS PART B: programme-specific section MASTER S PROGRAMME IN LOGIC

COMPUTATIONAL COMPLEXITY OF LEFT-ASSOCIATIVE GRAMMAR

Objectives. Chapter 2: The Representation of Knowledge. Expert Systems: Principles and Programming, Fourth Edition

AQUA: An Ontology-Driven Question Answering System

A Version Space Approach to Learning Context-free Grammars

We are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.

IT Students Workshop within Strategic Partnership of Leibniz University and Peter the Great St. Petersburg Polytechnic University

Evolution of Collective Commitment during Teamwork

The 9 th International Scientific Conference elearning and software for Education Bucharest, April 25-26, / X

Proof Theory for Syntacticians

Informatics 2A: Language Complexity and the. Inf2A: Chomsky Hierarchy

Computer Science 141: Computing Hardware Course Information Fall 2012

Syntax Parsing 1. Grammars and parsing 2. Top-down and bottom-up parsing 3. Chart parsers 4. Bottom-up chart parsing 5. The Earley Algorithm

RANKING AND UNRANKING LEFT SZILARD LANGUAGES. Erkki Mäkinen DEPARTMENT OF COMPUTER SCIENCE UNIVERSITY OF TAMPERE REPORT A ER E P S I M S

Constructing a support system for self-learning playing the piano at the beginning stage

THE WEB 2.0 AS A PLATFORM FOR THE ACQUISITION OF SKILLS, IMPROVE ACADEMIC PERFORMANCE AND DESIGNER CAREER PROMOTION IN THE UNIVERSITY

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

Note: Principal version Modification Amendment Modification Amendment Modification Complete version from 1 October 2014

Introduction to HPSG. Introduction. Historical Overview. The HPSG architecture. Signature. Linguistic Objects. Descriptions.

Parsing of part-of-speech tagged Assamese Texts

TEKS Correlations Proclamation 2017

Natural Language Processing. George Konidaris

Probability and Game Theory Course Syllabus

ENGBG1 ENGBL1 Campus Linguistics. Meeting 2. Chapter 7 (Morphology) and chapter 9 (Syntax) Pia Sundqvist

Standards-Based Bulletin Boards. Tuesday, January 17, 2012 Principals Meeting

Different Requirements Gathering Techniques and Issues. Javaria Mushtaq

COMPUTER-ASSISTED INDEPENDENT STUDY IN MULTIVARIATE CALCULUS

Linguistics. Undergraduate. Departmental Honors. Graduate. Faculty. Linguistics 1

Multimedia Application Effective Support of Education

Version Space. Term 2012/2013 LSI - FIB. Javier Béjar cbea (LSI - FIB) Version Space Term 2012/ / 18

Unit purpose and aim. Level: 3 Sub-level: Unit 315 Credit value: 6 Guided learning hours: 50

arxiv: v1 [math.at] 10 Jan 2016

Introduction to Financial Accounting

Action Models and their Induction

Pre-AP Geometry Course Syllabus Page 1

OFFICE SUPPORT SPECIALIST Technical Diploma

Undergraduate Program Guide. Bachelor of Science. Computer Science DEPARTMENT OF COMPUTER SCIENCE and ENGINEERING

Computer Science (CS)

Developing a TT-MCTAG for German with an RCG-based Parser

Writing Research Articles

Module 12. Machine Learning. Version 2 CSE IIT, Kharagpur

Compositional Semantics

PhD in Computer Science. Introduction. Dr. Roberto Rosas Romero Program Coordinator Phone: +52 (222) Ext:

ATENEA UPC AND THE NEW "Activity Stream" or "WALL" FEATURE Jesus Alcober 1, Oriol Sánchez 2, Javier Otero 3, Ramon Martí 4

Specification and Evaluation of Machine Translation Toy Systems - Criteria for laboratory assignments

B.S/M.A in Mathematics

Topic 3: Roman Religion

WHAT ARE VIRTUAL MANIPULATIVES?

An Introduction to the Minimalist Program

IT4BI, Semester 2, UFRT. Welcome address, February 1 st, 2013 Arnaud Giacometti / Patrick Marcel

Syllabus of the Course Skills for the Tourism Industry

Guide to Teaching Computer Science

E-Learning project in GIS education

B. How to write a research paper

The Strong Minimalist Thesis and Bounded Optimality

Journal of Technology and Science Education

Data Structures and Algorithms

CS 101 Computer Science I Fall Instructor Muller. Syllabus

Radius STEM Readiness TM

Some Principles of Automated Natural Language Information Extraction

Linking Task: Identifying authors and book titles in verbose queries

Course Content Concepts

Erkki Mäkinen State change languages as homomorphic images of Szilard languages

Grammars & Parsing, Part 1:

GACE Computer Science Assessment Test at a Glance

Evolutive Neural Net Fuzzy Filtering: Basic Description

Artificial Neural Networks written examination

COMMISSION OF THE EUROPEAN COMMUNITIES RECOMMENDATION OF THE EUROPEAN PARLIAMENT AND OF THE COUNCIL

(Sub)Gradient Descent

WSU Five-Year Program Review Self-Study Cover Page

"f TOPIC =T COMP COMP... OBJ

TRAINEESHIP TOOL MANUAL V2.1 VERSION April 1st 2017 * HOWEST.BE

A Metacognitive Approach to Support Heuristic Solution of Mathematical Problems

Enumeration of Context-Free Languages and Related Structures

CS4491/CS 7265 BIG DATA ANALYTICS INTRODUCTION TO THE COURSE. Mingon Kang, PhD Computer Science, Kennesaw State University

Computer Science 1015F ~ 2016 ~ Notes to Students

THE UNIVERSITY OF SYDNEY Semester 2, Information Sheet for MATH2068/2988 Number Theory and Cryptography

SYLLABUS. EC 322 Intermediate Macroeconomics Fall 2012

General Microbiology (BIOL ) Course Syllabus

The presence of interpretable but ungrammatical sentences corresponds to mismatches between interpretive and productive parsing.

Instructor: Matthew Wickes Kilgore Office: ES 310

CS177 Python Programming

Curriculum Vitae FARES FRAIJ, Ph.D. Lecturer

Teacher Action Research Multiple Intelligence Theory in the Foreign Language Classroom. By Melissa S. Ferro George Mason University

Abstractions and the Brain

OFFICIAL ANNOUNCEMENTS

Physics 270: Experimental Physics

Think A F R I C A when assessing speaking. C.E.F.R. Oral Assessment Criteria. Think A F R I C A - 1 -

Thesis Regulations for Dissertation Doctorates

The MEANING Multilingual Central Repository

GEB 6930 Doing Business in Asia Hough Graduate School Warrington College of Business Administration University of Florida

Software Development: Programming Paradigms (SCQF level 8)

Learning to Schedule Straight-Line Code

Transcription:

Coordinating unit: 270 - FIB - Barcelona School of Informatics Teaching unit: 723 - CS - Department of Computer Science Academic year: Degree: 2017 BACHELOR'S DEGREE IN INFORMATICS ENGINEERING (Syllabus 2010). (Teaching unit Optional) ECTS credits: 6 Teaching languages: Catalan, Spanish Teaching staff Coordinator: Others: - Enrique Romero Merino (eromero@cs.upc.edu) - Antoni Lozano Bojados (antoni@cs.upc.edu) - Jose Luis Balcázar Navarro (jose.luis.balcazar@upc.edu) - Maria Del Carme Alvarez Faura (alvarez@cs.upc.edu) Prior skills Ability to express problems framed in terms of logical formulae in everyday language. Ability to manipulate logical formulae. Fundamental algebraic concepts: monoids, groups, closures, morphisms. Basic principles of combinatorial algebra. Ability to fully exploit the properties of Boolean algebra. Understand basic data structures and the fundamental principles governing algorithms. Ability to evaluate the temporal complexity of algorithms. Requirements - Corequisite PROP - Prerequisite EDA Degree competences to which the subject contributes Specific: CCO1.1. To evaluate the computational complexity of a problem, know the algorithmic strategies which can solve it and recommend, develop and implement the solution which guarantees the best performance according to the established requirements. CCO1.2. To demonstrate knowledge about the theoretical fundamentals of programming languages and the associated lexical, syntactical and semantic processing techniques and be able to apply them to create, design and process languages. CCO1.3. To define, evaluate and select platforms to develop and produce hardware and software for developing computer applications and services of different complexities. CCO2.2. Capacity to acquire, obtain, formalize and represent human knowledge in a computable way to solve problems through a computer system in any applicable field, in particular in the fields related to computation, perception and operation in intelligent environments. CCO3.1. To implement critical code following criteria like execution time, efficiency and security. Generical: G7. Autonomous learning: capacity to plan and organize personal work. To apply the acquired knowledge when performing a task, in function of its suitability and importance, decide how to perform it and the needed time, and select the most adequate information sources. To identify the importance of establishing and maintaining contacts with students, teacher staff and professionals (networking). To identify information forums about ICT engineering, its advances and its impact in the society (IEEE, associations, etc.). 1 / 10

G9. Critical capacity, evaluation capacity. Teaching methodology The main aspect of this metodology is the use of teaching videos especifically designed for self-learning of the theory of the subject, which have been created before. This material allows to change the classroom model. With this approach the lecturer does not give new material on theory during the class. Moreover, the lecturer does not solve problems directly. Students learn theory through the videos, which are freely available on the web, as well as other material for selflearning. Class time is divided into problem solving classes, and laboratory classes. In problem solving classes, students explain their solutions to problems which have been assigned to them in advance. The teacher only takes part of the explanation in order to correct mistakes or improve explanations. Also, the teacher takes notes about students presentations in order to take them into account in the final evaluation of the subject. In laboratory classes, students try to solve problems in front of the computer that are evaluated automatically. The teacher is present to solve any question. The students can use these classes to solve the problems which have been assigned to them, and for which they will have to present a solution in the blackboard. Learning objectives of the subject 1.To learn how to classify problems in the Chomsky's hierarchy. In particular, to learn techniques to determine when a set is regular, contex-free, decidable (recursive) and semi-decidable (recursively enumerable). 2.Learning to describe languages using formal systems like context-free grammars and automata. To know the computational capabilities of these formalisms and their practical applications. 3.Solve theoretical and practical problems of this matter and make public presentations of the solutions. Study load Total learning time: 150h Theory classes: 0h 0.00% Practical classes: 30h 20.00% Laboratory classes: 33h 22.00% Guided activities: 3h 2.00% Self study: 84h 56.00% 2 / 10

Content Formal languages. Alphabets, words, languages, operations on languages (concatenation, reverse, star), morphisms, rewriting systems. Finite automata. Deterministic finite automata, non-deterministic finite automata, finite automata with lambda-transitions, equivalence between automata models, operations on automata, minimization of automata. Regular expressions. Regular expressions, equivalence with automata by Arden's Lemma, operations on regular expressions. Context-free grammars. Context-free grammars, generated language by a grammar, derivation tree, ambiguity, operations over grammars, grammar transformations. Pushdown automata. Non-deterministic pushdown automata and its equivalence to context-free languages, deterministic pushdown finite automata, pushdown automata with unique accepting execution and its equivalence with non-ambiguous context-free languages, closure operations, Chomsky hierarchy. Non-regularity and non-context freeness. 3 / 10

Proofs of non-regularity by state repetition and by regularity preserving transformations. Proofs of non-context freeness by variable repetition. Turing machines. Turing machines, extensions by allowing non-determinism or multi-tape, equivalence of Turing machines with high-level algorithms. Decidability (recursivity), semi-decidability (recursive enumerability), computability. Decidable (recursive) languages, semi-decidable (recursively enumerable) languages, computable functions, closure operations, complementation theorem, projection theorem, connexions between semi-decidability and computability. Non-decidability, non-semi-decidability, non-computability. The language K, K is semi-decidable but non-decidable, reductions for proving non-decidability and non-semidecidability, equivalence between non-semi-decidability and non-computability. Natural non-decidable problems. Reachability of words by word rewriting, PCP, intersection non-emptiness and ambiguity of context free grammars, universality of context free grammars and satisfiability of logic over words. 4 / 10

Planning of activities Learning the subject "language theory". Hours: 10h Practical classes: 4h Laboratory classes: 0h Students try to Watch and understand the videos of this topic (AA: 3h), try to solve the problems assigned to them on this subject (AA: 3h), attend the class on queries of this subject and ask questions to the teacher (Q: 2 hours) and attend the class of problems where all students present their problems publicly on this subject (P: 2h). 3 Learning the subject "Finite automata". Hours: 16h Practical classes: 4h Laboratory classes: 4h Self study: 8h Students try to watch and understand the videos of this topic (AA: 4h), try to solve the problems assigned to them on this topic (AA: 4h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 4 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 4h). 1, 2, 3 Hours: 10h Learning the subject "Regular expressions". Practical classes: 2h Laboratory classes: 2h Students try to watch and understand the videos of this topic (AA: 3h), try to solve the problems assigned to them on this topic (AA: 3h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 2 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 2h). 1, 2, 3 5 / 10

First exam Hours: 9h 30m Guided activities: 2h Self study: 7h 30m An exam with a duration of 2 hours, partially done in front of the computer and partially hand-written, where the hability to construct and reason about regular languages is avaluated. 1, 2 Learning the subject "Context-free grammars". Hours: 18h Practical classes: 4h Laboratory classes: 6h Self study: 8h Students try to watch and understand the videos of this topic (AA: 4h), try to solve the problems assigned to them on this topic (AA: 4h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 6 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 4h). 1, 2, 3 Hours: 10h Learning the subject "Pushdown automata". Practical classes: 2h Laboratory classes: 2h Students try to watch and understand the videos of this topic (AA: 3h), try to solve the problems assigned to them on this topic (AA: 3h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 2 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 2h). 1, 2, 3 6 / 10

Learning the subject "Non-regularity and non-context-freeness". Hours: 8h Practical classes: 2h Laboratory classes: 0h Students try to watch and understand the videos of this topic (AA: 3h), try to solve the problems assigned to them on this topic (AA: 3h) and attend the class of problems where all students present their problems publicly on this topic (P: 2h). 1, 3 Second exam. Hours: 9h 30m Guided activities: 2h Self study: 7h 30m An exam with a duration of 2 hours, partially done in front of the computer and partially hand-written, where the hability to describe context free languages by defining context free grammars and pushdown automata. 1, 2 Learning the subject "Turing machines". Hours: 8h Practical classes: 2h Laboratory classes: 0h Students try to watch and understand the videos of this topic (AA: 3h), try to solve the problems assigned to them on this topic (AA: 3h), and attend the class of problems where all students present their problems publicly on this topic (P: 2h). 1, 3 Learning the subject "Decidability (recursivity), semi-decidability (recursive enumerability), computability". Hours: 10h Practical classes: 2h Laboratory classes: 2h 7 / 10

Students try to watch and understand the videos of this topic (AA: 3h), try to solve the problems assigned to them on this topic (AA: 3h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 2 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 2h). 1, 3 Learning the subject "Non-decidability, nonsemi-decidability, non-computability". Students try to watch and understand the videos of this topic (AA: 4h), try to solve the problems assigned to them on this topic (AA: 4h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 4 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 4h). 1, 3 Hours: 16h Practical classes: 4h Laboratory classes: 4h Self study: 8h Learning the subject "Natural non-decidable problems". Students try to watch and understand the videos of this topic (AA: 4h), try to solve the problems assigned to them on this topic (AA: 4h), attend the laboratory class of this topic and try to solve the problems in front of the computer (L: 4 hours) and attend the class of problems where all students present their problems publicly on this topic (P: 4h). 1, 3 Hours: 16h Practical classes: 4h Laboratory classes: 4h Self study: 8h Third exam Hours: 7h Guided activities: 2h Self study: 5h An exam with a duration of 2 hours, partially done in front of the computer and partially hand-written, where the hability to construct reductions in order to prove non-decidability and non-semi-decidability. 8 / 10

1 Final exam. Hours: 13h Guided activities: 3h Self study: 10h 1, 2 Qualification system This subject can be passed during the class period, i.e. by continuous evaluation and without attending to the final exam, and the grade is obtained from the mark L corresponding to the 3 exams (the ones of the evaluation acts, with a value between 0 and 8 in total and all of them have the same weight), and the mark P corresponding to the presentations of the student in the blackboard (between 0 and 2 points). A student obtains the grade L+P if such an L+P is greater than or equal to 5, the student does not attend to the final exam, no 0 mark has been obtained in any of the laboratory exams, and according to the professor's opinion, he/she has defended correctly enough his/her public presentations. Those students who attend to the final exam resign to the course grade (in the case it was passed). In such a case, the grade is obtained from the marks L and P previously mentioned, and the mark F of the final exam (between 0 and 10) according to the following formula: max(f,0.5f+0.5(l+p)) The students who do not pass during the course and do not attend to the final exam obtain a final qualification of NP. The evaluation of competences G7.3, G9.1 and CCO1.1 is done by the professor according to the public presentations made during the continuous evaluation. Te evaluation of the competences is independent from the avaluation of the course. 9 / 10

Bibliography Basic: Cases, R.; Màrquez, L. Llenguatges, gramàtiques i autòmats: curs bàsic [on line]. 2a ed. Edicions UPC, 2003Available on: <http://bibliotecnica.upc.es/edupc/locate4.asp?codi=in010xxxn>. ISBN 8483017288. Cases, R.; Màrquez, L. Llenguatges, gramàtiques i autòmats: curs bàsic [on line]. 2a ed. Edicions UPC, 2003Available on: <http://hdl.handle.net/2099.3/36247>. ISBN 8483017288. Hopcroft, J.E.; Motwani, R.; Ullman, J.D. Introduction to automata theory, languages, and computation. 3rd ed. Pearson/Addison Wesley, 2007. ISBN 9780321462251. Serna, M [et al.]. Els Límits de la computació: indecidibilitat i NP-completesa. 2a. ed. Edicions UPC, 2004. ISBN 8483017849. Sipser, M. Introduction to the theory of computation. 3rd ed. Thomson Course Technology, 2012. ISBN 9781133187790. Godoy, G. Vídeos que expliquen els continguts de l'assignatura (linkats des del final de la web de l'assignatura). 2010. Complementary: Comon, H [et al]. Tree Automata Techniques and Applications [on line]. 2008Available on: <http://tata.gforge.inria.fr/>. Kelley, D. Automata and formal languages: an introduction. Prentice Hall, 1995. ISBN 0134977777. Garey, M.R.; Johnson, D.S. Computers and intractability: a guide to the theory of NP-Completeness. W. H. Freeman, 1979. ISBN 0-7167-1044-7. Others resources: Hyperlink http://www.cs.upc.edu/~alvarez/tc.html 10 / 10