EMF: Assignment

JFLAP is a visual tool for experimenting with all CS334 concepts, developed by Professor Susan Rodger. You can download JFLAP 7.1 here. The DFAs you saw in the readings and quizzes were created in JFLAP.

JFLAP has a tutorial and a book. For our purposes, you only need to read at most one of the following (the UI is straightforward enough that you might be able to just play with it without reading tutorials):

  • Chapter Finite Automata -> Construct and Run and Manipulating Transitions in the tutorial
  • Chapter 1.1 and 1.2 in the book

After installing it (and potentially reading the tutorial/book), it is recommended that you try to recreate the two DFAs we saw in the material (the one that recognizes even binary numbers, and the one in the quiz). In fact, building the latter in JFLAP will probably help you with answering that quiz question.


After familiarizing yourself with JFLAP and DFAs enough, here is the only assignment question:

Build a DFA (in JFLAP) that accepts the language of at least two 2‘s followed by at least three 3‘s followed by zero or more 0‘s. Here are some strings that should be accepted by your DFA:

  • 22333
  • 223330
  • 222233330000
  • 223333333333333333333300

Save your DFA as a single JFLAP file and submit that file only to Gradescope.


Note: we have to make this assignment a programming assignment in Gradescope for it to accept your JFLAP file. Therefore, it has an “autograded part” by default, despite the fact that it is not autograded. Feel free to ignore anything about autograders in Gradescope for this assignment.

Note that all EM assignments are due LDoC on paper, but there will not be any penalty until 5/1 11:59pm.

Any submissions by LDoC midnight will get at least one round of feedback, although we will try our best to give everyone feedback.

Leave a Reply

Your email address will not be published. Required fields are marked *