Proof: Write Assign End Vars 35
Let's prove the following theorem:
if the following are true:
- the line at time 35 = 10
- the tab at time 35 = 0
- statement at line 10, tab 0 =
joe = Dog()
- expression state at time 35 = "end_expr"
- Variables Map at time 35 = [ ]
- Return Value at time 35 = Python reference 0
then Variables Map at time 36 = [ entry joe: (Python reference 0), [ ] ]
Proof:
Given
1 | the line at time 35 = 10 |
---|---|
2 | the tab at time 35 = 0 |
3 | statement at line 10, tab 0 = joe = Dog() |
4 | expression state at time 35 = "end_expr" |
5 | Variables Map at time 35 = [ ] |
6 | Return Value at time 35 = Python reference 0 |
# | Claim | Reason |
---|---|---|
1 | Variables Map at time (35 + 1) = result of storing (Return Value at time 35) at key: joe in map: (Variables Map at time 35) | if the line at time 35 = 10 and the tab at time 35 = 0 and statement at line 10, tab 0 = joe = Dog() and expression state at time 35 = "end_expr", then Variables Map at time (35 + 1) = result of storing (Return Value at time 35) at key: joe in map: (Variables Map at time 35) |
2 | result of storing (Return Value at time 35) at key: joe in map: (Variables Map at time 35) = result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) | if Return Value at time 35 = Python reference 0, then result of storing (Return Value at time 35) at key: joe in map: (Variables Map at time 35) = result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) |
3 | Variables Map at time (35 + 1) = result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) | if Variables Map at time (35 + 1) = result of storing (Return Value at time 35) at key: joe in map: (Variables Map at time 35) and result of storing (Return Value at time 35) at key: joe in map: (Variables Map at time 35) = result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35), then Variables Map at time (35 + 1) = result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) |
4 | result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) = result of storing (Python reference 0) at key: joe in map: [ ] | if Variables Map at time 35 = [ ], then result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) = result of storing (Python reference 0) at key: joe in map: [ ] |
5 | result of storing (Python reference 0) at key: joe in map: [ ] = [ entry joe: (Python reference 0), [ ] ] | result of storing (Python reference 0) at key: joe in map: [ ] = [ entry joe: (Python reference 0), [ ] ] |
6 | result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) = [ entry joe: (Python reference 0), [ ] ] | if result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) = result of storing (Python reference 0) at key: joe in map: [ ] and result of storing (Python reference 0) at key: joe in map: [ ] = [ entry joe: (Python reference 0), [ ] ], then result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) = [ entry joe: (Python reference 0), [ ] ] |
7 | Variables Map at time (35 + 1) = [ entry joe: (Python reference 0), [ ] ] | if Variables Map at time (35 + 1) = result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) and result of storing (Python reference 0) at key: joe in map: (Variables Map at time 35) = [ entry joe: (Python reference 0), [ ] ], then Variables Map at time (35 + 1) = [ entry joe: (Python reference 0), [ ] ] |
8 | 35 + 1 = 36 | 35 + 1 = 36 |
9 | Variables Map at time (35 + 1) = Variables Map at time 36 | if 35 + 1 = 36, then Variables Map at time (35 + 1) = Variables Map at time 36 |
10 | Variables Map at time 36 = [ entry joe: (Python reference 0), [ ] ] | if Variables Map at time (35 + 1) = Variables Map at time 36 and Variables Map at time (35 + 1) = [ entry joe: (Python reference 0), [ ] ], then Variables Map at time 36 = [ entry joe: (Python reference 0), [ ] ] |
Comments
Please log in to add comments