Study Guide for Second Midterm

CS 270/680 Mathematical Foundations of Computer Science
Instructor: Jeremy Johnson 
Exam date: (In class on Tue. Nov. 23)


Students are responsible for material in the lecture notes (lectures 5 - 7) and chapter 10 and 11 of the text book.  Students are also responsible for some of the material in chapter 5 (binary trees and structural induction).  The midterm will cover grammars, finite state automata and regular expressions.  Students should be able to use grammars and regular expressions to describe a set of strings, derive strings using a grammar or regular expression, determine the language generated by a grammar or regular expression or accepted by a finite state automata, and  prove properties of languages generated by grammars using induction.  They should be able to construct a finite state automata to accept a given language, construct a parse tree for a given grammar and input string,  construct a recursive descent parser to recognize strings in the language generated by a parser, and trace through the execution of a recursive descent parser.

There will be four problems (problems may have multiple parts)

  1. Construct a grammar and use the grammar to derive strings.
  2. Prove some property, using induction, of the language generated by a grammar.
  3. Provide a regular expression to describe a language and construct a finite state automata that accepts a given language.
  4. Trace through the execution of a recursive descent parser and construct the corresponding parse tree or write a simple recursive descent parser.

Exam Rules

  1. The exam will be designed to take one hour; however, if necessary I will allow 90 minutes.
  2. Students may use a calculator if they want, however, the exam will be designed so that it can be done without a calculator.
  3. Students may not use the text or lecture notes during the exam; however, they may bring one page of notes to the exam.

Practice Problems and Review Session


There will be a review session, where I will go over additional problems as requested, during office hours (4-7:00) on Monday Nov. 22. There are no extra review problems since there is an assignment covering material needed for the midterm.  The solution to assignment 5 will be posted at 10 on Monday Nov. 22 and I will go over the solution during the review session.