Proof: Proof: A Program that Computes Fibonacci Numbers
In this example, we present a program that computes Fibonacci numbers.
The Fibonacci numbers are a sequence where every number is the sum of the two previous numbers. Here are the first 6:
0, 1, 1, 2, 3, 5
Then we show that
Let's prove the following theorem:
- the PC at time 0 = 0
- instruction #0 is
addi dst=1 src=0 imm=0 - instruction #1 is
addi dst=2 src=0 imm=1 - instruction #2 is
addi dst=4 src=0 imm=0 - instruction #3 is
addi dst=5 src=0 imm=4 - instruction #4 is
add dst=3 src1=1 src2=2 - instruction #5 is
addi dst=1 src=2 imm=0 - instruction #6 is
addi dst=2 src=3 imm=0 - instruction #7 is
addi dst=4 src=4 imm=1 - instruction #8 is
beq left=4 right=5 imm=1 - instruction #9 is
jump imm=4
then value of cell 3 at time 25 = 5
After the following program is executed, cell #3 will contain the 6th Fibonacci number (5).
We need at least 2 numbers before we can calculate sums, so we start with 0 and 1. But notice that 5 is the sum of the two previous numbers 2 and 3.
| Memory Cells |
|---|
| Program Counter | Time |
|---|---|
| 0 | 0 |
Memory cell #1 contains the nth Fibonacci number (initially the 1st Fibonacci number 0).
Cell #2 contains the n + 1th Fibonacci number (initially the 2nd Fibonacci number 1).
Memory cell #4 contains the current count or index.
Cell #5 contains 4. In each iteration, the computer will increment #4 and finish when it reaches the value in cell #5.
The computer computes the next Fibonacci number by adding values in cells #1 and #2 and storing it in cell #3. Then, to prepare for the next iteration, the values are "moved down" 1: cell #2 is copied to cell #1 and cell #3 is copied to cell #2.
Then the counter increments by 1, and the computer jumps back to instruction #4, and the next iteration begins.
At the end of the program, cell #3 contains the 6th Fibonacci number.
Proof:
| 1 | the PC at time 0 = 0 |
|---|---|
| 2 | instruction #0 is addi dst=1 src=0 imm=0 |
| 3 | instruction #1 is addi dst=2 src=0 imm=1 |
| 4 | instruction #2 is addi dst=4 src=0 imm=0 |
| 5 | instruction #3 is addi dst=5 src=0 imm=4 |
| 6 | instruction #4 is add dst=3 src1=1 src2=2 |
| 7 | instruction #5 is addi dst=1 src=2 imm=0 |
| 8 | instruction #6 is addi dst=2 src=3 imm=0 |
| 9 | instruction #7 is addi dst=4 src=4 imm=1 |
| 10 | instruction #8 is beq left=4 right=5 imm=1 |
| 11 | instruction #9 is jump imm=4 |
| # | Claim | Reason |
|---|---|---|
| 1 | value of cell 1 at time 1 = 0 | if instruction #0 is addi dst=1 src=0 imm=0 and the PC at time 0 = 0, then value of cell 1 at time 1 = 0 |
| 2 | the PC at time 1 = 1 | if instruction #0 is addi dst=1 src=0 imm=0 and the PC at time 0 = 0, then the PC at time 1 = 1 |
| 3 | value of cell 2 at time 2 = 1 | if instruction #1 is addi dst=2 src=0 imm=1 and the PC at time 1 = 1, then value of cell 2 at time 2 = 1 |
| 4 | the PC at time 2 = 2 | if instruction #1 is addi dst=2 src=0 imm=1 and the PC at time 1 = 1, then the PC at time 2 = 2 |
| 5 | value of cell 1 at time 2 = 0 | if instruction #1 is addi dst=2 src=0 imm=1 and the PC at time 1 = 1 and value of cell 1 at time 1 = 0, then value of cell 1 at time 2 = 0 |
| 6 | value of cell 4 at time 3 = 0 | if instruction #2 is addi dst=4 src=0 imm=0 and the PC at time 2 = 2, then value of cell 4 at time 3 = 0 |
| 7 | the PC at time 3 = 3 | if instruction #2 is addi dst=4 src=0 imm=0 and the PC at time 2 = 2, then the PC at time 3 = 3 |
| 8 | value of cell 1 at time 3 = 0 | if instruction #2 is addi dst=4 src=0 imm=0 and the PC at time 2 = 2 and value of cell 1 at time 2 = 0, then value of cell 1 at time 3 = 0 |
| 9 | value of cell 2 at time 3 = 1 | if instruction #2 is addi dst=4 src=0 imm=0 and the PC at time 2 = 2 and value of cell 2 at time 2 = 1, then value of cell 2 at time 3 = 1 |
| 10 | value of cell 5 at time 4 = 4 | if instruction #3 is addi dst=5 src=0 imm=4 and the PC at time 3 = 3, then value of cell 5 at time 4 = 4 |
| 11 | the PC at time 4 = 4 | if instruction #3 is addi dst=5 src=0 imm=4 and the PC at time 3 = 3, then the PC at time 4 = 4 |
| 12 | value of cell 1 at time 4 = 0 | if instruction #3 is addi dst=5 src=0 imm=4 and the PC at time 3 = 3 and value of cell 1 at time 3 = 0, then value of cell 1 at time 4 = 0 |
| 13 | value of cell 2 at time 4 = 1 | if instruction #3 is addi dst=5 src=0 imm=4 and the PC at time 3 = 3 and value of cell 2 at time 3 = 1, then value of cell 2 at time 4 = 1 |
| 14 | value of cell 4 at time 4 = 0 | if instruction #3 is addi dst=5 src=0 imm=4 and the PC at time 3 = 3 and value of cell 4 at time 3 = 0, then value of cell 4 at time 4 = 0 |
| 15 | value of cell 3 at time 5 = (value of cell 1 at time 4) + (value of cell 2 at time 4) | if the PC at time 4 = 4 and instruction #4 is add dst=3 src1=1 src2=2, then value of cell 3 at time 5 = (value of cell 1 at time 4) + (value of cell 2 at time 4) |
| 16 | value of cell 3 at time 5 = 1 | if value of cell 3 at time 5 = (value of cell 1 at time 4) + (value of cell 2 at time 4) and value of cell 1 at time 4 = 0 and value of cell 2 at time 4 = 1, then value of cell 3 at time 5 = 1 |
| 17 | the PC at time 5 = 5 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 4 = 4, then the PC at time 5 = 5 |
| 18 | value of cell 1 at time 5 = 0 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 4 = 4 and value of cell 1 at time 4 = 0, then value of cell 1 at time 5 = 0 |
| 19 | value of cell 2 at time 5 = 1 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 4 = 4 and value of cell 2 at time 4 = 1, then value of cell 2 at time 5 = 1 |
| 20 | value of cell 4 at time 5 = 0 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 4 = 4 and value of cell 4 at time 4 = 0, then value of cell 4 at time 5 = 0 |
| 21 | value of cell 5 at time 5 = 4 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 4 = 4 and value of cell 5 at time 4 = 4, then value of cell 5 at time 5 = 4 |
| 22 | value of cell 1 at time 6 = 1 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 5 = 5 and value of cell 2 at time 5 = 1, then value of cell 1 at time 6 = 1 |
| 23 | the PC at time 6 = 6 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 5 = 5, then the PC at time 6 = 6 |
| 24 | value of cell 2 at time 6 = 1 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 5 = 5 and value of cell 2 at time 5 = 1, then value of cell 2 at time 6 = 1 |
| 25 | value of cell 4 at time 6 = 0 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 5 = 5 and value of cell 4 at time 5 = 0, then value of cell 4 at time 6 = 0 |
| 26 | value of cell 5 at time 6 = 4 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 5 = 5 and value of cell 5 at time 5 = 4, then value of cell 5 at time 6 = 4 |
| 27 | value of cell 3 at time 6 = 1 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 5 = 5 and value of cell 3 at time 5 = 1, then value of cell 3 at time 6 = 1 |
| 28 | value of cell 2 at time 7 = 1 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 6 = 6 and value of cell 3 at time 6 = 1, then value of cell 2 at time 7 = 1 |
| 29 | the PC at time 7 = 7 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 6 = 6, then the PC at time 7 = 7 |
| 30 | value of cell 1 at time 7 = 1 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 6 = 6 and value of cell 1 at time 6 = 1, then value of cell 1 at time 7 = 1 |
| 31 | value of cell 4 at time 7 = 0 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 6 = 6 and value of cell 4 at time 6 = 0, then value of cell 4 at time 7 = 0 |
| 32 | value of cell 5 at time 7 = 4 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 6 = 6 and value of cell 5 at time 6 = 4, then value of cell 5 at time 7 = 4 |
| 33 | value of cell 3 at time 7 = 1 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 6 = 6 and value of cell 3 at time 6 = 1, then value of cell 3 at time 7 = 1 |
| 34 | value of cell 4 at time 8 = 1 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 7 = 7 and value of cell 4 at time 7 = 0, then value of cell 4 at time 8 = 1 |
| 35 | the PC at time 8 = 8 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 7 = 7, then the PC at time 8 = 8 |
| 36 | value of cell 1 at time 8 = 1 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 7 = 7 and value of cell 1 at time 7 = 1, then value of cell 1 at time 8 = 1 |
| 37 | value of cell 2 at time 8 = 1 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 7 = 7 and value of cell 2 at time 7 = 1, then value of cell 2 at time 8 = 1 |
| 38 | value of cell 5 at time 8 = 4 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 7 = 7 and value of cell 5 at time 7 = 4, then value of cell 5 at time 8 = 4 |
| 39 | value of cell 3 at time 8 = 1 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 7 = 7 and value of cell 3 at time 7 = 1, then value of cell 3 at time 8 = 1 |
| 40 | the PC at time 9 = 9 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 8 = 8 and value of cell 4 at time 8 = 1 and value of cell 5 at time 8 = 4, then the PC at time 9 = 9 |
| 41 | value of cell 1 at time 9 = 1 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 8 = 8 and value of cell 1 at time 8 = 1, then value of cell 1 at time 9 = 1 |
| 42 | value of cell 2 at time 9 = 1 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 8 = 8 and value of cell 2 at time 8 = 1, then value of cell 2 at time 9 = 1 |
| 43 | value of cell 4 at time 9 = 1 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 8 = 8 and value of cell 4 at time 8 = 1, then value of cell 4 at time 9 = 1 |
| 44 | value of cell 5 at time 9 = 4 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 8 = 8 and value of cell 5 at time 8 = 4, then value of cell 5 at time 9 = 4 |
| 45 | value of cell 3 at time 9 = 1 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 8 = 8 and value of cell 3 at time 8 = 1, then value of cell 3 at time 9 = 1 |
| 46 | the PC at time 10 = 4 | if instruction #9 is jump imm=4 and the PC at time 9 = 9, then the PC at time 10 = 4 |
| 47 | value of cell 1 at time 10 = 1 | if instruction #9 is jump imm=4 and the PC at time 9 = 9 and value of cell 1 at time 9 = 1, then value of cell 1 at time 10 = 1 |
| 48 | value of cell 2 at time 10 = 1 | if instruction #9 is jump imm=4 and the PC at time 9 = 9 and value of cell 2 at time 9 = 1, then value of cell 2 at time 10 = 1 |
| 49 | value of cell 4 at time 10 = 1 | if instruction #9 is jump imm=4 and the PC at time 9 = 9 and value of cell 4 at time 9 = 1, then value of cell 4 at time 10 = 1 |
| 50 | value of cell 5 at time 10 = 4 | if instruction #9 is jump imm=4 and the PC at time 9 = 9 and value of cell 5 at time 9 = 4, then value of cell 5 at time 10 = 4 |
| 51 | value of cell 3 at time 10 = 1 | if instruction #9 is jump imm=4 and the PC at time 9 = 9 and value of cell 3 at time 9 = 1, then value of cell 3 at time 10 = 1 |
| 52 | value of cell 3 at time 11 = (value of cell 1 at time 10) + (value of cell 2 at time 10) | if the PC at time 10 = 4 and instruction #4 is add dst=3 src1=1 src2=2, then value of cell 3 at time 11 = (value of cell 1 at time 10) + (value of cell 2 at time 10) |
| 53 | value of cell 3 at time 11 = 2 | if value of cell 3 at time 11 = (value of cell 1 at time 10) + (value of cell 2 at time 10) and value of cell 1 at time 10 = 1 and value of cell 2 at time 10 = 1, then value of cell 3 at time 11 = 2 |
| 54 | the PC at time 11 = 5 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 10 = 4, then the PC at time 11 = 5 |
| 55 | value of cell 1 at time 11 = 1 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 10 = 4 and value of cell 1 at time 10 = 1, then value of cell 1 at time 11 = 1 |
| 56 | value of cell 2 at time 11 = 1 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 10 = 4 and value of cell 2 at time 10 = 1, then value of cell 2 at time 11 = 1 |
| 57 | value of cell 4 at time 11 = 1 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 10 = 4 and value of cell 4 at time 10 = 1, then value of cell 4 at time 11 = 1 |
| 58 | value of cell 5 at time 11 = 4 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 10 = 4 and value of cell 5 at time 10 = 4, then value of cell 5 at time 11 = 4 |
| 59 | value of cell 1 at time 12 = 1 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 11 = 5 and value of cell 2 at time 11 = 1, then value of cell 1 at time 12 = 1 |
| 60 | the PC at time 12 = 6 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 11 = 5, then the PC at time 12 = 6 |
| 61 | value of cell 2 at time 12 = 1 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 11 = 5 and value of cell 2 at time 11 = 1, then value of cell 2 at time 12 = 1 |
| 62 | value of cell 4 at time 12 = 1 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 11 = 5 and value of cell 4 at time 11 = 1, then value of cell 4 at time 12 = 1 |
| 63 | value of cell 5 at time 12 = 4 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 11 = 5 and value of cell 5 at time 11 = 4, then value of cell 5 at time 12 = 4 |
| 64 | value of cell 3 at time 12 = 2 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 11 = 5 and value of cell 3 at time 11 = 2, then value of cell 3 at time 12 = 2 |
| 65 | value of cell 2 at time 13 = 2 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 12 = 6 and value of cell 3 at time 12 = 2, then value of cell 2 at time 13 = 2 |
| 66 | the PC at time 13 = 7 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 12 = 6, then the PC at time 13 = 7 |
| 67 | value of cell 1 at time 13 = 1 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 12 = 6 and value of cell 1 at time 12 = 1, then value of cell 1 at time 13 = 1 |
| 68 | value of cell 4 at time 13 = 1 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 12 = 6 and value of cell 4 at time 12 = 1, then value of cell 4 at time 13 = 1 |
| 69 | value of cell 5 at time 13 = 4 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 12 = 6 and value of cell 5 at time 12 = 4, then value of cell 5 at time 13 = 4 |
| 70 | value of cell 3 at time 13 = 2 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 12 = 6 and value of cell 3 at time 12 = 2, then value of cell 3 at time 13 = 2 |
| 71 | value of cell 4 at time 14 = 2 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 13 = 7 and value of cell 4 at time 13 = 1, then value of cell 4 at time 14 = 2 |
| 72 | the PC at time 14 = 8 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 13 = 7, then the PC at time 14 = 8 |
| 73 | value of cell 1 at time 14 = 1 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 13 = 7 and value of cell 1 at time 13 = 1, then value of cell 1 at time 14 = 1 |
| 74 | value of cell 2 at time 14 = 2 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 13 = 7 and value of cell 2 at time 13 = 2, then value of cell 2 at time 14 = 2 |
| 75 | value of cell 5 at time 14 = 4 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 13 = 7 and value of cell 5 at time 13 = 4, then value of cell 5 at time 14 = 4 |
| 76 | value of cell 3 at time 14 = 2 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 13 = 7 and value of cell 3 at time 13 = 2, then value of cell 3 at time 14 = 2 |
| 77 | the PC at time 15 = 9 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 14 = 8 and value of cell 4 at time 14 = 2 and value of cell 5 at time 14 = 4, then the PC at time 15 = 9 |
| 78 | value of cell 1 at time 15 = 1 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 14 = 8 and value of cell 1 at time 14 = 1, then value of cell 1 at time 15 = 1 |
| 79 | value of cell 2 at time 15 = 2 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 14 = 8 and value of cell 2 at time 14 = 2, then value of cell 2 at time 15 = 2 |
| 80 | value of cell 4 at time 15 = 2 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 14 = 8 and value of cell 4 at time 14 = 2, then value of cell 4 at time 15 = 2 |
| 81 | value of cell 5 at time 15 = 4 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 14 = 8 and value of cell 5 at time 14 = 4, then value of cell 5 at time 15 = 4 |
| 82 | value of cell 3 at time 15 = 2 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 14 = 8 and value of cell 3 at time 14 = 2, then value of cell 3 at time 15 = 2 |
| 83 | the PC at time 16 = 4 | if instruction #9 is jump imm=4 and the PC at time 15 = 9, then the PC at time 16 = 4 |
| 84 | value of cell 1 at time 16 = 1 | if instruction #9 is jump imm=4 and the PC at time 15 = 9 and value of cell 1 at time 15 = 1, then value of cell 1 at time 16 = 1 |
| 85 | value of cell 2 at time 16 = 2 | if instruction #9 is jump imm=4 and the PC at time 15 = 9 and value of cell 2 at time 15 = 2, then value of cell 2 at time 16 = 2 |
| 86 | value of cell 4 at time 16 = 2 | if instruction #9 is jump imm=4 and the PC at time 15 = 9 and value of cell 4 at time 15 = 2, then value of cell 4 at time 16 = 2 |
| 87 | value of cell 5 at time 16 = 4 | if instruction #9 is jump imm=4 and the PC at time 15 = 9 and value of cell 5 at time 15 = 4, then value of cell 5 at time 16 = 4 |
| 88 | value of cell 3 at time 16 = 2 | if instruction #9 is jump imm=4 and the PC at time 15 = 9 and value of cell 3 at time 15 = 2, then value of cell 3 at time 16 = 2 |
| 89 | value of cell 3 at time 17 = (value of cell 1 at time 16) + (value of cell 2 at time 16) | if the PC at time 16 = 4 and instruction #4 is add dst=3 src1=1 src2=2, then value of cell 3 at time 17 = (value of cell 1 at time 16) + (value of cell 2 at time 16) |
| 90 | value of cell 3 at time 17 = 3 | if value of cell 3 at time 17 = (value of cell 1 at time 16) + (value of cell 2 at time 16) and value of cell 1 at time 16 = 1 and value of cell 2 at time 16 = 2, then value of cell 3 at time 17 = 3 |
| 91 | the PC at time 17 = 5 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 16 = 4, then the PC at time 17 = 5 |
| 92 | value of cell 1 at time 17 = 1 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 16 = 4 and value of cell 1 at time 16 = 1, then value of cell 1 at time 17 = 1 |
| 93 | value of cell 2 at time 17 = 2 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 16 = 4 and value of cell 2 at time 16 = 2, then value of cell 2 at time 17 = 2 |
| 94 | value of cell 4 at time 17 = 2 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 16 = 4 and value of cell 4 at time 16 = 2, then value of cell 4 at time 17 = 2 |
| 95 | value of cell 5 at time 17 = 4 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 16 = 4 and value of cell 5 at time 16 = 4, then value of cell 5 at time 17 = 4 |
| 96 | value of cell 1 at time 18 = 2 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 17 = 5 and value of cell 2 at time 17 = 2, then value of cell 1 at time 18 = 2 |
| 97 | the PC at time 18 = 6 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 17 = 5, then the PC at time 18 = 6 |
| 98 | value of cell 2 at time 18 = 2 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 17 = 5 and value of cell 2 at time 17 = 2, then value of cell 2 at time 18 = 2 |
| 99 | value of cell 4 at time 18 = 2 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 17 = 5 and value of cell 4 at time 17 = 2, then value of cell 4 at time 18 = 2 |
| 100 | value of cell 5 at time 18 = 4 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 17 = 5 and value of cell 5 at time 17 = 4, then value of cell 5 at time 18 = 4 |
| 101 | value of cell 3 at time 18 = 3 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 17 = 5 and value of cell 3 at time 17 = 3, then value of cell 3 at time 18 = 3 |
| 102 | value of cell 2 at time 19 = 3 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 18 = 6 and value of cell 3 at time 18 = 3, then value of cell 2 at time 19 = 3 |
| 103 | the PC at time 19 = 7 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 18 = 6, then the PC at time 19 = 7 |
| 104 | value of cell 1 at time 19 = 2 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 18 = 6 and value of cell 1 at time 18 = 2, then value of cell 1 at time 19 = 2 |
| 105 | value of cell 4 at time 19 = 2 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 18 = 6 and value of cell 4 at time 18 = 2, then value of cell 4 at time 19 = 2 |
| 106 | value of cell 5 at time 19 = 4 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 18 = 6 and value of cell 5 at time 18 = 4, then value of cell 5 at time 19 = 4 |
| 107 | value of cell 3 at time 19 = 3 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 18 = 6 and value of cell 3 at time 18 = 3, then value of cell 3 at time 19 = 3 |
| 108 | value of cell 4 at time 20 = 3 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 19 = 7 and value of cell 4 at time 19 = 2, then value of cell 4 at time 20 = 3 |
| 109 | the PC at time 20 = 8 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 19 = 7, then the PC at time 20 = 8 |
| 110 | value of cell 1 at time 20 = 2 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 19 = 7 and value of cell 1 at time 19 = 2, then value of cell 1 at time 20 = 2 |
| 111 | value of cell 2 at time 20 = 3 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 19 = 7 and value of cell 2 at time 19 = 3, then value of cell 2 at time 20 = 3 |
| 112 | value of cell 5 at time 20 = 4 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 19 = 7 and value of cell 5 at time 19 = 4, then value of cell 5 at time 20 = 4 |
| 113 | value of cell 3 at time 20 = 3 | if instruction #7 is addi dst=4 src=4 imm=1 and the PC at time 19 = 7 and value of cell 3 at time 19 = 3, then value of cell 3 at time 20 = 3 |
| 114 | the PC at time 21 = 9 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 20 = 8 and value of cell 4 at time 20 = 3 and value of cell 5 at time 20 = 4, then the PC at time 21 = 9 |
| 115 | value of cell 1 at time 21 = 2 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 20 = 8 and value of cell 1 at time 20 = 2, then value of cell 1 at time 21 = 2 |
| 116 | value of cell 2 at time 21 = 3 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 20 = 8 and value of cell 2 at time 20 = 3, then value of cell 2 at time 21 = 3 |
| 117 | value of cell 4 at time 21 = 3 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 20 = 8 and value of cell 4 at time 20 = 3, then value of cell 4 at time 21 = 3 |
| 118 | value of cell 5 at time 21 = 4 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 20 = 8 and value of cell 5 at time 20 = 4, then value of cell 5 at time 21 = 4 |
| 119 | value of cell 3 at time 21 = 3 | if instruction #8 is beq left=4 right=5 imm=1 and the PC at time 20 = 8 and value of cell 3 at time 20 = 3, then value of cell 3 at time 21 = 3 |
| 120 | the PC at time 22 = 4 | if instruction #9 is jump imm=4 and the PC at time 21 = 9, then the PC at time 22 = 4 |
| 121 | value of cell 1 at time 22 = 2 | if instruction #9 is jump imm=4 and the PC at time 21 = 9 and value of cell 1 at time 21 = 2, then value of cell 1 at time 22 = 2 |
| 122 | value of cell 2 at time 22 = 3 | if instruction #9 is jump imm=4 and the PC at time 21 = 9 and value of cell 2 at time 21 = 3, then value of cell 2 at time 22 = 3 |
| 123 | value of cell 4 at time 22 = 3 | if instruction #9 is jump imm=4 and the PC at time 21 = 9 and value of cell 4 at time 21 = 3, then value of cell 4 at time 22 = 3 |
| 124 | value of cell 5 at time 22 = 4 | if instruction #9 is jump imm=4 and the PC at time 21 = 9 and value of cell 5 at time 21 = 4, then value of cell 5 at time 22 = 4 |
| 125 | value of cell 3 at time 22 = 3 | if instruction #9 is jump imm=4 and the PC at time 21 = 9 and value of cell 3 at time 21 = 3, then value of cell 3 at time 22 = 3 |
| 126 | value of cell 3 at time 23 = (value of cell 1 at time 22) + (value of cell 2 at time 22) | if the PC at time 22 = 4 and instruction #4 is add dst=3 src1=1 src2=2, then value of cell 3 at time 23 = (value of cell 1 at time 22) + (value of cell 2 at time 22) |
| 127 | value of cell 3 at time 23 = 5 | if value of cell 3 at time 23 = (value of cell 1 at time 22) + (value of cell 2 at time 22) and value of cell 1 at time 22 = 2 and value of cell 2 at time 22 = 3, then value of cell 3 at time 23 = 5 |
| 128 | the PC at time 23 = 5 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 22 = 4, then the PC at time 23 = 5 |
| 129 | value of cell 1 at time 23 = 2 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 22 = 4 and value of cell 1 at time 22 = 2, then value of cell 1 at time 23 = 2 |
| 130 | value of cell 2 at time 23 = 3 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 22 = 4 and value of cell 2 at time 22 = 3, then value of cell 2 at time 23 = 3 |
| 131 | value of cell 4 at time 23 = 3 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 22 = 4 and value of cell 4 at time 22 = 3, then value of cell 4 at time 23 = 3 |
| 132 | value of cell 5 at time 23 = 4 | if instruction #4 is add dst=3 src1=1 src2=2 and the PC at time 22 = 4 and value of cell 5 at time 22 = 4, then value of cell 5 at time 23 = 4 |
| 133 | value of cell 1 at time 24 = 3 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 23 = 5 and value of cell 2 at time 23 = 3, then value of cell 1 at time 24 = 3 |
| 134 | the PC at time 24 = 6 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 23 = 5, then the PC at time 24 = 6 |
| 135 | value of cell 2 at time 24 = 3 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 23 = 5 and value of cell 2 at time 23 = 3, then value of cell 2 at time 24 = 3 |
| 136 | value of cell 4 at time 24 = 3 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 23 = 5 and value of cell 4 at time 23 = 3, then value of cell 4 at time 24 = 3 |
| 137 | value of cell 5 at time 24 = 4 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 23 = 5 and value of cell 5 at time 23 = 4, then value of cell 5 at time 24 = 4 |
| 138 | value of cell 3 at time 24 = 5 | if instruction #5 is addi dst=1 src=2 imm=0 and the PC at time 23 = 5 and value of cell 3 at time 23 = 5, then value of cell 3 at time 24 = 5 |
| 139 | value of cell 2 at time 25 = 5 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 24 = 6 and value of cell 3 at time 24 = 5, then value of cell 2 at time 25 = 5 |
| 140 | the PC at time 25 = 7 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 24 = 6, then the PC at time 25 = 7 |
| 141 | value of cell 1 at time 25 = 3 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 24 = 6 and value of cell 1 at time 24 = 3, then value of cell 1 at time 25 = 3 |
| 142 | value of cell 4 at time 25 = 3 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 24 = 6 and value of cell 4 at time 24 = 3, then value of cell 4 at time 25 = 3 |
| 143 | value of cell 5 at time 25 = 4 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 24 = 6 and value of cell 5 at time 24 = 4, then value of cell 5 at time 25 = 4 |
| 144 | value of cell 3 at time 25 = 5 | if instruction #6 is addi dst=2 src=3 imm=0 and the PC at time 24 = 6 and value of cell 3 at time 24 = 5, then value of cell 3 at time 25 = 5 |
Comments
Please log in to add comments