Proof: Write Assign End Vars 10

Let's prove the following theorem:

if the following are true:
  • the line at time 10 = 1
  • the tab at time 10 = 0
  • statement at line 1, tab 0 = c = __add__(5, 9)
  • expression state at time 10 = "end_expr"
  • Variables Map at time 10 = [ ]
  • Return Value at time 10 = 14

then Variables Map at time 11 = [ entry c: 14, [ ] ]

Proof:

View as a tree | View dependent proofs | Try proving it

Given
1 the line at time 10 = 1
2 the tab at time 10 = 0
3 statement at line 1, tab 0 = c = __add__(5, 9)
4 expression state at time 10 = "end_expr"
5 Variables Map at time 10 = [ ]
6 Return Value at time 10 = 14
Proof Table
# Claim Reason
1 Variables Map at time (10 + 1) = result of storing (Return Value at time 10) at key: c in map: (Variables Map at time 10) if the line at time 10 = 1 and the tab at time 10 = 0 and statement at line 1, tab 0 = c = __add__(5, 9) and expression state at time 10 = "end_expr", then Variables Map at time (10 + 1) = result of storing (Return Value at time 10) at key: c in map: (Variables Map at time 10)
2 result of storing (Return Value at time 10) at key: c in map: (Variables Map at time 10) = result of storing 14 at key: c in map: (Variables Map at time 10) if Return Value at time 10 = 14, then result of storing (Return Value at time 10) at key: c in map: (Variables Map at time 10) = result of storing 14 at key: c in map: (Variables Map at time 10)
3 Variables Map at time (10 + 1) = result of storing 14 at key: c in map: (Variables Map at time 10) if Variables Map at time (10 + 1) = result of storing (Return Value at time 10) at key: c in map: (Variables Map at time 10) and result of storing (Return Value at time 10) at key: c in map: (Variables Map at time 10) = result of storing 14 at key: c in map: (Variables Map at time 10), then Variables Map at time (10 + 1) = result of storing 14 at key: c in map: (Variables Map at time 10)
4 result of storing 14 at key: c in map: (Variables Map at time 10) = result of storing 14 at key: c in map: [ ] if Variables Map at time 10 = [ ], then result of storing 14 at key: c in map: (Variables Map at time 10) = result of storing 14 at key: c in map: [ ]
5 result of storing 14 at key: c in map: [ ] = [ entry c: 14, [ ] ] result of storing 14 at key: c in map: [ ] = [ entry c: 14, [ ] ]
6 result of storing 14 at key: c in map: (Variables Map at time 10) = [ entry c: 14, [ ] ] if result of storing 14 at key: c in map: (Variables Map at time 10) = result of storing 14 at key: c in map: [ ] and result of storing 14 at key: c in map: [ ] = [ entry c: 14, [ ] ], then result of storing 14 at key: c in map: (Variables Map at time 10) = [ entry c: 14, [ ] ]
7 Variables Map at time (10 + 1) = [ entry c: 14, [ ] ] if Variables Map at time (10 + 1) = result of storing 14 at key: c in map: (Variables Map at time 10) and result of storing 14 at key: c in map: (Variables Map at time 10) = [ entry c: 14, [ ] ], then Variables Map at time (10 + 1) = [ entry c: 14, [ ] ]
8 10 + 1 = 11 10 + 1 = 11
9 Variables Map at time (10 + 1) = Variables Map at time 11 if 10 + 1 = 11, then Variables Map at time (10 + 1) = Variables Map at time 11
10 Variables Map at time 11 = [ entry c: 14, [ ] ] if Variables Map at time (10 + 1) = Variables Map at time 11 and Variables Map at time (10 + 1) = [ entry c: 14, [ ] ], then Variables Map at time 11 = [ entry c: 14, [ ] ]

Comments

Please log in to add comments