50 likes | 179 Views
HW #5 Due Nov 14 23:59. 1. Write down a C program and a Promela model to solve the Tower of Hanoi game (3 poles and 4 disks) by using CBMC and Spin Hint : you may non-deterministically select the disk to move
E N D
HW #5 Due Nov 14 23:59 1. Write down a C program and a Promela model to solve the Tower of Hanoi game (3 poles and 4 disks) by using CBMC and Spin • Hint: you may non-deterministically select the disk to move • Find and describe the shortest solution by analyzing counter examples. Also explain why your solution is the shortest one. • Use non-determinism and __CPROVER_assume() properly for the moving choice • Use assert statement to detect when all the disks are moved to the destination • Report the complexity of the problem • i.e., # of clauses and variables, # of states, memory usage, verification time, etc.
Q2:Royal Garden’s Puzzle as a Model Checking Problem Pictures from UbiSoft
R1 R2 R3 R4 Source H1 H2 R5 R6 R7 Type A H3 H4 R8 R9 R10 R11 Type B Type C Sink
2. Write down a Promela model program to model the game and get a solution by using Spin • Use assert statement to detect when the route is established - Find and explain the shortest solution by and analyzing counter examples. Also show that why your solution is the shortest one for the route (Hint: there exists a solution less than 10 steps) • Report the complexity of the problem • i.e., # of clauses and variables, # of states, memory usage, verification time, etc.