CSC 2124 S : Automated Verification

Assignment 1

Due: Tues. February 11, classtime

You are to specify and verify the behavior of a simple elevator system. The system consists of one elevator that services 2 floors of a very short apartment building. Each floor has a request button that a user presses to get the elevator to come to that floor and open its doors. Inside the elevator, there is one request button for each of the two floors; passengers press these buttons to get the elevator to go to a particular floor and open its doors. If the elevator moves between floors, it should do so within 1 time unit (i.e., the elevator should not move for two consecutive states). If the elevator's doors open, they should stay open for 1 time unit (i.e., the doors should not stay open for two consecutive states).

You will specify the behavior of your elevator system in the SMV input language. The following properties need to be re-written as CTL formulae.

Using the SMV model checker, verify that your specification satisfies the above properties.

Better Elevator Try changing your specification so that the elevator has an OpenDoor button in addition to its other request buttons. If the OpenDoor button is pressed when the elevator doors are open, then the doors should stay open an extra time unit (i.e., for an extra state). However, a user should not be able to keep the doors open indefinitely if the elevator has other requests to service.

3-Floor Elevator Try to specify and verify an elevator for a three-story apartment building. However, only do so after you have successfully verified your 2-floor elevator.

Presentation You may work in groups of 1, 2, or 3. 2 is a preferred number. Warning: It will take you much longer to complete the assignment if you work on your own.

You must complete the project before class time on Feb. 11 because we will discuss the assignment in class. In one of your group's accounts, leave a working copy of the SMV specification including all of the CTL formulae you attempted to verify. Bring to class (to hand in) one hardcopy of your group's SMV specification. Please indicate on your assignment the members of your group, the account in which your group's assignment resides, and the name of the file containing your assignment.

It would be nice if we could hear presentations of specifications for 2-floor and 3-floor elevators on Feb. 11. If you are interested in presenting, let me know. I am looking for a 15-minute presentation of each specification.

People who are not taking the course for credit are also encouraged to participate in the assignment. The goal of this course is to gain practical experience with specification and verification tools, and you can achieve this goal only by doing the assignments.

PLEASE SEE ME if you want to attempt to specify an elevator for a taller building or if you want to attempt to specify a system that has more than one elevator.