Proofs

A proof is a series of claims that lead to a conclusion. Some proofs are conditional, which means that the claims can only be made under certain conditions. Click on a statement to see the proof

Write Set Name Expr State At on State 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"

then expression state at time 47 = "begin_expr"


Write Set Name Line At on State 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"

then the line at time 47 = 5


Write Set Name Tab At on State 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"

then the tab at time 47 = 1


Write Set Name Value Stack At on State 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"

then Value Stack at time 47 = [ ]


Write Set Name Parent Stack At on State 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"

then parent stack at time 47 = [ ]


Write Set Name Arg Stack At on State 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"

then arguments stack at time 47 = [ ]


Write Stmt Variables At Unchanged Expr46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"
  • Variables Map at time 46 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 47 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Write Stmt Stack At Unchanged Expr46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"
  • stack at time 46 = [ ]

then stack at time 47 = [ ]


Write Stmt Object Store At Unchanged Expr46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • expression state at time 46 = "not_expr"
  • Python Object Store at time 46 = [ [4, 7], [ ] ]

then Python Object Store at time 47 = [ [4, 7], [ ] ]


Write Stmt Control Map At Unchanged 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • Control Map at time 46 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 47 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Write Stmt Class Defs At Unchanged 46
if the following are true:
  • the line at time 46 = 5
  • the tab at time 46 = 1
  • statement at line 5, tab 1 = x = __mul__(value, 4)
  • Class Map at time 46 = [ ]

then Class Map at time 47 = [ ]


Get Begin Expr Value 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = __mul__(value, 4)
  • Value Stack at time 47 = [ ]

then Value Stack at time 48 = [ [ ], [ ] ]


Get Begin Expr Parent 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = __mul__(value, 4)
  • parent stack at time 47 = [ ]

then parent stack at time 48 = [ __mul__(value, 4), [ ] ]


Get Begin Expr Params 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = __mul__(value, 4)
  • arguments stack at time 47 = [ ]

then arguments stack at time 48 = [ [ value, [ 4, [ ] ] ], [ ] ]


Get Begin Expr Call State 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = __mul__(value, 4)

then expression state at time 48 = "iterate_args"


Do Expr At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = __mul__(value, 4)

then the expression at time 48 = __mul__(value, 4)


Do Variables At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • Variables Map at time 47 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 48 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Do Line At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the line at time 47 = 5

then the line at time 48 = 5


Do Tab At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the tab at time 47 = 1

then the tab at time 48 = 1


Do Stack At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • stack at time 47 = [ ]

then stack at time 48 = [ ]


Do Object Store At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • Python Object Store at time 47 = [ [4, 7], [ ] ]

then Python Object Store at time 48 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • Control Map at time 47 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 48 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Do Class Defs At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • Class Map at time 47 = [ ]

then Class Map at time 48 = [ ]


Get Iterate Expr 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • arguments stack at time 48 = [ [ value, [ 4, [ ] ] ], [ ] ]

then the expression at time 49 = value


Get Iterate Params 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • arguments stack at time 48 = [ [ value, [ 4, [ ] ] ], [ ] ]

then arguments stack at time 49 = [ [ 4, [ ] ], [ ] ]


Get Iterate State 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • arguments stack at time 48 = [ [ value, [ 4, [ ] ] ], [ ] ]

then expression state at time 49 = "begin_expr"


Get Iterate Parent 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • arguments stack at time 48 = [ [ value, [ 4, [ ] ] ], [ ] ]
  • parent stack at time 48 = [ __mul__(value, 4), [ ] ]

then parent stack at time 49 = [ __mul__(value, 4), [ ] ]


Do Value Stack At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Value Stack at time 48 = [ [ ], [ ] ]

then Value Stack at time 49 = [ [ ], [ ] ]


Do Line At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • the line at time 48 = 5

then the line at time 49 = 5


Do Tab At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • the tab at time 48 = 1

then the tab at time 49 = 1


Do Stack At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • stack at time 48 = [ ]

then stack at time 49 = [ ]


Do Object Store At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Python Object Store at time 48 = [ [4, 7], [ ] ]

then Python Object Store at time 49 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Control Map at time 48 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 49 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Do Variables At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Variables Map at time 48 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 49 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Do Class Defs At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Class Map at time 48 = [ ]

then Class Map at time 49 = [ ]


Do Get Key Value 49 0
value at value in map [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ] = 4

Do Variables At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • Variables Map at time 49 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 50 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Get Begin Expr State Name 49
if the following are true:
  • the expression at time 49 = value
  • expression state at time 49 = "begin_expr"
  • value is a variable
  • parent stack at time 49 = [ __mul__(value, 4), [ ] ]

then expression state at time 50 = "return"


Get Begin Expr Value Unchaged Name 49
if the following are true:
  • the expression at time 49 = value
  • expression state at time 49 = "begin_expr"
  • value is a variable
  • Value Stack at time 49 = [ [ ], [ ] ]

then Value Stack at time 50 = [ [ ], [ ] ]


Get Begin Expr Params Unchanged Name49
if the following are true:
  • the expression at time 49 = value
  • expression state at time 49 = "begin_expr"
  • value is a variable
  • arguments stack at time 49 = [ [ 4, [ ] ], [ ] ]

then arguments stack at time 50 = [ [ 4, [ ] ], [ ] ]


Get Begin Expr Return Name 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • the expression at time 49 = value
  • value is a variable
  • Variables Map at time 49 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Return Value at time 50 = 4


Get Begin Expr Parent Name 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • the expression at time 49 = value
  • value is a variable
  • parent stack at time 49 = [ __mul__(value, 4), [ ] ]

then parent stack at time 50 = [ __mul__(value, 4), [ ] ]


Do Line At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • the line at time 49 = 5

then the line at time 50 = 5


Do Tab At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • the tab at time 49 = 1

then the tab at time 50 = 1


Do Stack At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • stack at time 49 = [ ]

then stack at time 50 = [ ]


Do Object Store At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • Python Object Store at time 49 = [ [4, 7], [ ] ]

then Python Object Store at time 50 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • Control Map at time 49 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 50 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Do Class Defs At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • Class Map at time 49 = [ ]

then Class Map at time 50 = [ ]


Get New State 50
if expression state at time 50 = "return", then expression state at time 51 = "iterate_args"

Get Return Value 50
if the following are true:
  • expression state at time 50 = "return"
  • Value Stack at time 50 = [ [ ], [ ] ]
  • Return Value at time 50 = 4

then Value Stack at time 51 = [ [ 4, [ ] ], [ ] ]


Do Variables At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Variables Map at time 50 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 51 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Do Line At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • the line at time 50 = 5

then the line at time 51 = 5


Do Tab At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • the tab at time 50 = 1

then the tab at time 51 = 1


Do Arg Stack At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • arguments stack at time 50 = [ [ 4, [ ] ], [ ] ]

then arguments stack at time 51 = [ [ 4, [ ] ], [ ] ]


Do Parent Stack At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • parent stack at time 50 = [ __mul__(value, 4), [ ] ]

then parent stack at time 51 = [ __mul__(value, 4), [ ] ]


Do Stack At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • stack at time 50 = [ ]

then stack at time 51 = [ ]


Do Class Defs At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Class Map at time 50 = [ ]

then Class Map at time 51 = [ ]


Do Object Store At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Python Object Store at time 50 = [ [4, 7], [ ] ]

then Python Object Store at time 51 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Control Map at time 50 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 51 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Get Iterate Expr 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ 4, [ ] ], [ ] ]

then the expression at time 52 = 4


Get Iterate Params 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ 4, [ ] ], [ ] ]

then arguments stack at time 52 = [ [ ], [ ] ]


Get Iterate State 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ 4, [ ] ], [ ] ]

then expression state at time 52 = "begin_expr"


Get Iterate Parent 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ 4, [ ] ], [ ] ]
  • parent stack at time 51 = [ __mul__(value, 4), [ ] ]

then parent stack at time 52 = [ __mul__(value, 4), [ ] ]


Do Value Stack At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Value Stack at time 51 = [ [ 4, [ ] ], [ ] ]

then Value Stack at time 52 = [ [ 4, [ ] ], [ ] ]


Do Line At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • the line at time 51 = 5

then the line at time 52 = 5


Do Tab At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • the tab at time 51 = 1

then the tab at time 52 = 1


Do Stack At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • stack at time 51 = [ ]

then stack at time 52 = [ ]


Do Object Store At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Python Object Store at time 51 = [ [4, 7], [ ] ]

then Python Object Store at time 52 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Control Map at time 51 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 52 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Do Variables At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Variables Map at time 51 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 52 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Do Class Defs At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Class Map at time 51 = [ ]

then Class Map at time 52 = [ ]


Get Begin Expr State 52
if the following are true:
  • the expression at time 52 = 4
  • expression state at time 52 = "begin_expr"
  • 4 is constant
  • parent stack at time 52 = [ __mul__(value, 4), [ ] ]

then expression state at time 53 = "return"


Get Begin Expr Value Unchaged 52
if the following are true:
  • the expression at time 52 = 4
  • expression state at time 52 = "begin_expr"
  • 4 is constant
  • Value Stack at time 52 = [ [ 4, [ ] ], [ ] ]

then Value Stack at time 53 = [ [ 4, [ ] ], [ ] ]


Get Begin Expr Params Unchanged52
if the following are true:
  • the expression at time 52 = 4
  • expression state at time 52 = "begin_expr"
  • 4 is constant
  • arguments stack at time 52 = [ [ ], [ ] ]

then arguments stack at time 53 = [ [ ], [ ] ]


Get Begin Expr Return 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • the expression at time 52 = 4
  • 4 is constant

then Return Value at time 53 = 4


Get Begin Expr Const Parent 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • the expression at time 52 = 4
  • 4 is constant
  • parent stack at time 52 = [ __mul__(value, 4), [ ] ]

then parent stack at time 53 = [ __mul__(value, 4), [ ] ]


Do Line At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • the line at time 52 = 5

then the line at time 53 = 5


Do Tab At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • the tab at time 52 = 1

then the tab at time 53 = 1


Do Stack At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • stack at time 52 = [ ]

then stack at time 53 = [ ]


Do Object Store At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • Python Object Store at time 52 = [ [4, 7], [ ] ]

then Python Object Store at time 53 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • Control Map at time 52 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 53 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Do Variables At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • Variables Map at time 52 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 53 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Do Class Defs At Unchanged 52
if the following are true:
  • expression state at time 52 = "begin_expr"
  • Class Map at time 52 = [ ]

then Class Map at time 53 = [ ]


Get New State 53
if expression state at time 53 = "return", then expression state at time 54 = "iterate_args"

Get Return Value 53
if the following are true:
  • expression state at time 53 = "return"
  • Value Stack at time 53 = [ [ 4, [ ] ], [ ] ]
  • Return Value at time 53 = 4

then Value Stack at time 54 = [ [ 4, [ 4, [ ] ] ], [ ] ]


Do Variables At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • Variables Map at time 53 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]

then Variables Map at time 54 = [ entry numbers: (Python reference 0), [ entry value: 4, [ entry x: 28, [ ] ] ] ]


Do Line At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • the line at time 53 = 5

then the line at time 54 = 5


Do Tab At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • the tab at time 53 = 1

then the tab at time 54 = 1


Do Arg Stack At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • arguments stack at time 53 = [ [ ], [ ] ]

then arguments stack at time 54 = [ [ ], [ ] ]


Do Parent Stack At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • parent stack at time 53 = [ __mul__(value, 4), [ ] ]

then parent stack at time 54 = [ __mul__(value, 4), [ ] ]


Do Stack At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • stack at time 53 = [ ]

then stack at time 54 = [ ]


Do Class Defs At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • Class Map at time 53 = [ ]

then Class Map at time 54 = [ ]


Do Object Store At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • Python Object Store at time 53 = [ [4, 7], [ ] ]

then Python Object Store at time 54 = [ [4, 7], [ ] ]


Do Control Map At Unchanged 53
if the following are true:
  • expression state at time 53 = "return"
  • Control Map at time 53 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]

then Control Map at time 54 = [ entry 0: (trio ("for", 4, [ 7, [ ] ])), [ ] ]


Get Iterate End State 54
if the following are true:
  • expression state at time 54 = "iterate_args"
  • arguments stack at time 54 = [ [ ], [ ] ]
  • parent stack at time 54 = [ __mul__(value, 4), [ ] ]

then expression state at time 55 = "call_function_begin"


Get Iterate End Expr 54
if the following are true:
  • expression state at time 54 = "iterate_args"
  • arguments stack at time 54 = [ [ ], [ ] ]
  • parent stack at time 54 = [ __mul__(value, 4), [ ] ]

then the expression at time 55 = __mul__(value, 4)


Get Iterate End Parent 54
if the following are true:
  • expression state at time 54 = "iterate_args"
  • arguments stack at time 54 = [ [ ], [ ] ]
  • parent stack at time 54 = [ __mul__(value, 4), [ ] ]

then parent stack at time 55 = [ ]


Get Iterate End Params 54
if the following are true:
  • expression state at time 54 = "iterate_args"
  • arguments stack at time 54 = [ [ ], [ ] ]
  • parent stack at time 54 = [ __mul__(value, 4), [ ] ]

then arguments stack at time 55 = [ ]


Do Value Stack At Unchanged 54
if the following are true:
  • expression state at time 54 = "iterate_args"
  • Value Stack at time 54 = [ [ 4, [ 4, [ ] ] ], [ ] ]

then Value Stack at time 55 = [ [ 4, [ 4, [ ] ] ], [ ] ]


Do Line At Unchanged 54
if the following are true:
  • expression state at time 54 = "iterate_args"
  • the line at time 54 = 5

then the line at time 55 = 5



Pages: 165 166 167 ... 193