Plan for this class Welcome to 4003-380 Logistics Introduction to CS Theory Syllabus & Ground Rules Student Info Forms / Attendance Joe Geigel What is this Course About ------ break --------- Discrete Math Review Logistics Logistics First things first. mycourses Class Web site dropboxes http://www.cs.rit.edu/~jmg/cs380 RIT e-mail address forwarding Grade book Syllabus (e-version of handout) Schedule Homework Assignments Diary (including these slides) Logistics Logistics Required Textbook Optional Textbook An Introduction to JFLAP: An Interactive Formal Language and Formal Languages Automata, 4th Edition and Automata by Peter Linz. Package by Susan Rodger 2006 Printing Software on mycourses or obtain from www.jflap.org 1
Logistics Logistics Prerequisite: About Me 1016-265: Discrete Math Joe Geigel 1016-705: Discrete Math II Office: 70-3527 Office Hours: MW 2-4 (and by appt) These are important as the material in http://www.cs.rit.edu/~jmg this class is mathematical in nature. Logistics Logistics Grading: Homework Homework will be assigned weekly. Three basic course activities: Will have 1 week to complete each assn. Homework 45% Due dates are definite! Exams (2) 30% no late homeworks! Final Exam 25% Listed in HOMEWORK section of Web site Group submission (max 2 people) ok Each assignment carries equal weight Lowest homework grade is dropped. Some homework will require JFLAP Logistics Logistics Discrete Math Quiz Homework Quick quiz on basic discrete math concepts Homework problem session Proofs 2 nd half of class on days when homework is not assigned. Sets Questions about current homework Relations assignment. Will be given next class Similar problems done on the board. Counts as an extra homework 2
Logistics Logistics Tutoring Center Exams Dedicated Theory Tutoring Dates CS theory tutoring center (70-3660). Thursday, October 2 (Chapters 2-4) Current schedule: Thursday, October 23 (Chapters 5-8) TBA One rule about tutors: You are not allowed to discuss open homework problems with them. Closed book…1 page study guide http://www.cs.rit.edu/~eh/tutoring.html No make up exams Logistics Logistics Final Exam Schedule Given during exam week Posted on SCHEDULE section of Web site Exact date and time TBD Subject to change, but indicates the best guess as Cumulative…sort of to what will be covered when Closed book…1 page study guide Includes links to these slides (in PDF) Slides should be available 1 day before the lecture. Review Session: last class No make up exams. Any questions so far? Logistics So what is this course all CS Dept Policy of Academic Dishonesty about? Included in hardcopy syllabus Please read and understand. Speaking of student info forms Any questions before I hand them out? 3
Think back to 1937… Meanwhile…in Princeton, NJ Researchers were contemplating the following The Golden Gate Bridge was question: completed “Can there exist, at least in principle, a definite method by which all mathematical problems can be decided” Jesse Owens was celebrating his In other words…a programmable computer. Olympic gold medal They did not have the technology…yet But they did have mathematics Swing was king! Mathematical models of computing machinery! There were NO programmable computers Things you will learn Languages Three basic concepts: Wikipedia says: Languages A language is a system of signals, such as voice sounds, gestures or written symbols Grammars that encode or decode information. Automata For our purposes A language is a set of strings. Grammars Grammars Wikipedia says: Think back to your days of learning English languages can be described as a system of Rules for constructing a simple sentence symbols and the grammars (rules) by Sentence = noun phrase + verb phrase which the symbols are manipulated Noun phrase = Name (Joe) Grammar is the study of rules governing Article + noun (the car) Verb Phrase = the use of language. Verb (runs) Verb + prepositional phrase Prepositional Phrase = Preposition + noun phrase (from the car) 4
Grammars Grammars Look at the sentence. Is this grammatically correct? Look at the sentence. Is this Joe runs from the car. grammatically correct? Joe runs from the car. Sentence = noun phrase + verb phrase = noun + verb phrase = Name + verb phrase Sentence = Joe + verb + from + article +noun = Joe + verb phrase = Joe + verb + prepositional phrase = Joe + verb + from + the + car = Joe + verb + preposition + noun phrase = Joe + ran + from + the + car = Joe + verb + from + noun phrase = Joe + verb + from + article +noun Valid sentence! Automata Example: Tic Tac Toe Wikipedia says: This is a mathematical An automaton (plural: automata) is a self- model for a operating machine. machine that For our purposes: x plays tic-tac- toe These machines are mathematically … defined. x … o o x x x o What you will learn Example: Tic Tac Toe a b c d e f Three basic concepts: g h i Languages A B C Grammars a b c d e f g h i D E F Automata x G H I e A B C D F G H I … eI x How does this help our friends from NJ? … o o x x eIbAh x o 5
Languages: String Recognition Languages problem Given a string and a definition of a Take home message: language (set of strings), is the string a Languages and problems are the same member of the language? thing Encode problems to create strings YES, string is in Language Add semantics to strings that represent Language problems. Input string recognition machine NO, string is Consider encoding with 0’s and 1’s…hmmm not in Different classes of machines Language can recognize different classes of languages Languages and grammars Languages Will actually be looking at classes of Furthermore… languages: We can define grammars that describe Each class will have its own class of given languages. grammars. Each class will have its own machine model for string recognition Languages and machines get more complex as we move forward in the course. Languages Computation: One step further Computation Practical Uses of String Recognition Basic questions in computer science Syntax of Computer languages are defined by Computability : What problems can and cannot be grammars computed? Parsing / Compilers / Interpreters Complexity : If a problem can be solved using a “computing machine”, how long will it take ? These mathematical models are used to parse Approach programs written in modern computer languages All this theory was developed before the advent of computers! Develop a mathematical model for a “computer” “Run” your problem using this model to test for Questions so far? computability and efficiency 6
So in short… But all this is to come…. We’ll start with the basics… Theory of Computation after the break Languages Computation Any questions? Parsers / compilers / grep / programming Computability Complexity languages, etc 7
Recommend
More recommend