Presentation is loading. Please wait.

Presentation is loading. Please wait.

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:

Similar presentations


Presentation on theme: "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:"— Presentation transcript:

1 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.

2 Q2:Royal Garden’s Puzzle as a Model Checking Problem
Pictures from UbiSoft

3

4 R1 R2 R3 R4 Source H1 H2 R5 R6 R7 Type A H3 H4 R8 R9 R10 R11 Type B Type C Sink Handle Areas rotated H1 R1,R2,R5,R6 H2 R2,R3,R4,R6,R7 H3 R5,R6,R8,R9,R10 H4 -R6,R7,-R10,R11

5 (Hint: there exists a solution less than 10 steps)
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.


Download ppt "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:"

Similar presentations


Ads by Google