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

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

then stack at time 10 = [ ]


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

then Python Object Store at time 10 = [ ]


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

then Control Map at time 10 = [ ]


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

then Variables Map at time 10 = [ ]


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

then Class Map at time 10 = [ ]


Get New State 10
if expression state at time 10 = "return", then expression state at time 11 = "iterate_args"

Get Return Value 10
if the following are true:
  • expression state at time 10 = "return"
  • Value Stack at time 10 = [ [ 2, [ 1, [ ] ] ], [ ] ]
  • Return Value at time 10 = 3

then Value Stack at time 11 = [ [ 3, [ 2, [ 1, [ ] ] ] ], [ ] ]


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

then Variables Map at time 11 = [ ]


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

then the line at time 11 = 1


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

then the tab at time 11 = 0


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

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


Do Parent Stack At Unchanged 10
if the following are true:
  • expression state at time 10 = "return"
  • parent stack at time 10 = [ [1, 2, 3], [ ] ]

then parent stack at time 11 = [ [1, 2, 3], [ ] ]


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

then stack at time 11 = [ ]


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

then Class Map at time 11 = [ ]


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

then Python Object Store at time 11 = [ ]


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

then Control Map at time 11 = [ ]


Get Iterate End State 11
if the following are true:
  • expression state at time 11 = "iterate_args"
  • arguments stack at time 11 = [ [ ], [ ] ]
  • parent stack at time 11 = [ [1, 2, 3], [ ] ]

then expression state at time 12 = "call_function_begin"


Get Iterate End Expr 11
if the following are true:
  • expression state at time 11 = "iterate_args"
  • arguments stack at time 11 = [ [ ], [ ] ]
  • parent stack at time 11 = [ [1, 2, 3], [ ] ]

then the expression at time 12 = [1, 2, 3]


Get Iterate End Parent 11
if the following are true:
  • expression state at time 11 = "iterate_args"
  • arguments stack at time 11 = [ [ ], [ ] ]
  • parent stack at time 11 = [ [1, 2, 3], [ ] ]

then parent stack at time 12 = [ ]


Get Iterate End Params 11
if the following are true:
  • expression state at time 11 = "iterate_args"
  • arguments stack at time 11 = [ [ ], [ ] ]
  • parent stack at time 11 = [ [1, 2, 3], [ ] ]

then arguments stack at time 12 = [ ]


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

then Value Stack at time 12 = [ [ 3, [ 2, [ 1, [ ] ] ] ], [ ] ]


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

then the line at time 12 = 1


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

then the tab at time 12 = 0


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

then stack at time 12 = [ ]


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

then Python Object Store at time 12 = [ ]


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

then Control Map at time 12 = [ ]


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

then Variables Map at time 12 = [ ]


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

then Class Map at time 12 = [ ]


Do Len At 12
length of stack [ ] = 0

Do Reverse 12 0
reverse of [ ] = [ ]

Do Reverse 12 1
reverse of [ [1, 2, 3], [ ] ] = [ [1, 2, 3], [ ] ]

Do Reverse 12 2
reverse of [ 3, [ 2, [ 1, [ ] ] ] ] = [ 1, [ 2, [ 3, [ ] ] ] ]

Do Append 12
result of appending [1, 2, 3] to [ ] = [ [1, 2, 3], [ ] ]

Write Call Function Begin Py List Append 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • Value Stack at time 12 = [ [ 3, [ 2, [ 1, [ ] ] ] ], [ ] ]
  • the expression at time 12 = [1, 2, 3]
  • Python Object Store at time 12 = [ ]

then Python Object Store at time 13 = [ [1, 2, 3], [ ] ]


Write Call Function Begin Py List Return Val 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • Value Stack at time 12 = [ [ 3, [ 2, [ 1, [ ] ] ] ], [ ] ]
  • the expression at time 12 = [1, 2, 3]
  • Python Object Store at time 12 = [ ]

then Return Value at time 13 = Python reference 0


Write Call Function Begin Next State 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • parent stack at time 12 = [ ]
  • the expression at time 12 = [1, 2, 3]

then expression state at time 13 = "end_expr"


Write Call Function Begin Value Stack 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • Value Stack at time 12 = [ [ 3, [ 2, [ 1, [ ] ] ] ], [ ] ]
  • the expression at time 12 = [1, 2, 3]

then Value Stack at time 13 = [ ]


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

then arguments stack at time 13 = [ ]


Do Parent Stack At Unchanged 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • parent stack at time 12 = [ ]

then parent stack at time 13 = [ ]


Do Control Map At Unchanged 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • Control Map at time 12 = [ ]

then Control Map at time 13 = [ ]


Do Variables At Unchanged 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • Variables Map at time 12 = [ ]

then Variables Map at time 13 = [ ]


Do Line At Unchanged 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • the line at time 12 = 1

then the line at time 13 = 1


Do Tab At Unchanged 12
if the following are true:
  • expression state at time 12 = "call_function_begin"
  • the tab at time 12 = 0

then the tab at time 13 = 0


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

then stack at time 13 = [ ]


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

then Class Map at time 13 = [ ]


Do Set Key Value 13 0
result of storing (Python reference 0) at key: numbers in map: [ ] = [ entry numbers: (Python reference 0), [ ] ]

Write Assign End Vars 13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • expression state at time 13 = "end_expr"
  • Variables Map at time 13 = [ ]
  • Return Value at time 13 = Python reference 0

then Variables Map at time 14 = [ entry numbers: (Python reference 0), [ ] ]


Write Increment T And Val Line At 13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • expression state at time 13 = "end_expr"

then the line at time 14 = 2


Write Stmt Tab At Unchanged Expr13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • expression state at time 13 = "end_expr"

then the tab at time 14 = 0


Write Stmt Object Store At Unchanged Expr13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • expression state at time 13 = "end_expr"
  • Python Object Store at time 13 = [ [1, 2, 3], [ ] ]

then Python Object Store at time 14 = [ [1, 2, 3], [ ] ]


Write Assign End Stack 13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • stack at time 13 = [ ]
  • expression state at time 13 = "end_expr"

then stack at time 14 = [ ]


Write End to Not Expr 13
if expression state at time 13 = "end_expr", then expression state at time 14 = "not_expr"

Write Stmt Control Map At Unchanged 13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • Control Map at time 13 = [ ]

then Control Map at time 14 = [ ]


Write Stmt Class Defs At Unchanged 13
if the following are true:
  • the line at time 13 = 1
  • the tab at time 13 = 0
  • statement at line 1, tab 0 = numbers = [1, 2, 3]
  • Class Map at time 13 = [ ]

then Class Map at time 14 = [ ]


Do Has Key 14 0
map [ ] contains key 0 = False

Get Substitute Map 14
if Control Map at time 14 = [ ], then map (Control Map at time 14) contains key 0 = False

Get Not Has For At 14
if map (Control Map at time 14) contains key 0 = False, then map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

Begin For Loop Iterable Property Example
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then the expression at time 15 = numbers


Begin For Loop Iterable State Property Example
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then expression state at time 15 = "begin_expr"


Write Set Name Line At on State 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then the line at time 15 = 2


Write Set Name Tab At on State 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then the tab at time 15 = 0


Write Set Name Value Stack At on State 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then Value Stack at time 15 = [ ]


Write Set Name Parent Stack At on State 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then parent stack at time 15 = [ ]


Write Set Name Arg Stack At on State 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then arguments stack at time 15 = [ ]


Write Stmt Object Store At Unchanged Expr14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • Python Object Store at time 14 = [ [1, 2, 3], [ ] ]
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then Python Object Store at time 15 = [ [1, 2, 3], [ ] ]


Write Stmt Control Map At Unchanged Expr14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • Control Map at time 14 = [ ]
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then Control Map at time 15 = [ ]


Write Stmt Variables At Unchanged Expr14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 14 = "not_expr"
  • Variables Map at time 14 = [ entry numbers: (Python reference 0), [ ] ]
  • map (Control Map at time 14) does not contain a for loop entry at line: 2 and tab: 0

then Variables Map at time 15 = [ entry numbers: (Python reference 0), [ ] ]


Write Stmt Stack At Unchanged 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • stack at time 14 = [ ]
  • numbers is a variable

then stack at time 15 = [ ]


Write Stmt Class Defs At Unchanged 14
if the following are true:
  • the line at time 14 = 2
  • the tab at time 14 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • Class Map at time 14 = [ ]
  • numbers is a variable

then Class Map at time 15 = [ ]


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

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

then Variables Map at time 16 = [ entry numbers: (Python reference 0), [ ] ]


Get Begin Expr State Name 15
if the following are true:
  • the expression at time 15 = numbers
  • expression state at time 15 = "begin_expr"
  • numbers is a variable
  • parent stack at time 15 = [ ]

then expression state at time 16 = "end_expr"


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

then Value Stack at time 16 = [ ]


Get Begin Expr Params Unchanged Name15
if the following are true:
  • the expression at time 15 = numbers
  • expression state at time 15 = "begin_expr"
  • numbers is a variable
  • arguments stack at time 15 = [ ]

then arguments stack at time 16 = [ ]


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

then Return Value at time 16 = Python reference 0


Get Begin Expr Parent Name 15
if the following are true:
  • expression state at time 15 = "begin_expr"
  • the expression at time 15 = numbers
  • numbers is a variable
  • parent stack at time 15 = [ ]

then parent stack at time 16 = [ ]


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

then the line at time 16 = 2


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

then the tab at time 16 = 0


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

then stack at time 16 = [ ]


Do Object Store At Unchanged 15
if the following are true:
  • expression state at time 15 = "begin_expr"
  • Python Object Store at time 15 = [ [1, 2, 3], [ ] ]

then Python Object Store at time 16 = [ [1, 2, 3], [ ] ]


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

then Control Map at time 16 = [ ]


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

then Class Map at time 16 = [ ]


Write End to Not Expr 16
if expression state at time 16 = "end_expr", then expression state at time 17 = "not_expr"

Write Set Name Line At on State 16
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"

then the line at time 17 = 2


Write Set Name Tab At on State 16
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"

then the tab at time 17 = 0


Write Stmt Variables At Unchanged Expr16
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"
  • Variables Map at time 16 = [ entry numbers: (Python reference 0), [ ] ]

then Variables Map at time 17 = [ entry numbers: (Python reference 0), [ ] ]


Write Stmt Stack At Unchanged Expr16
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"
  • stack at time 16 = [ ]

then stack at time 17 = [ ]


Write Stmt Object Store At Unchanged Expr16
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"
  • Python Object Store at time 16 = [ [1, 2, 3], [ ] ]

then Python Object Store at time 17 = [ [1, 2, 3], [ ] ]


Write Stmt Class Defs At Unchanged Expr16
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"
  • Class Map at time 16 = [ ]

then Class Map at time 17 = [ ]


Do Element At 16 0
the element at index 0 of stack [ [1, 2, 3], [ ] ] = [1, 2, 3]

Write Element At Object Store 16
if Python Object Store at time 16 = [ [1, 2, 3], [ ] ], then the element at index 0 of stack (Python Object Store at time 16) = [1, 2, 3]

Do Set Key Value 16 0
result of storing (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])) at key: 0 in map: [ ] = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ]

Set For Loop Iterable Property Example
if the following are true:
  • the line at time 16 = 2
  • the tab at time 16 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • expression state at time 16 = "end_expr"
  • Return Value at time 16 = Python reference 0
  • Control Map at time 16 = [ ]
  • the element at index 0 of stack (Python Object Store at time 16) = [1, 2, 3]

then Control Map at time 17 = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ]


Do Set Key Value 17 0
result of storing 1 at key: value in map: [ entry numbers: (Python reference 0), [ ] ] = [ entry numbers: (Python reference 0), [ entry value: 1, [ ] ] ]

Do Get Key Value 17 0
value at 0 in map [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ] = trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])

Get Key Value Control Map At 17
if Control Map at time 17 = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ], then value at 0 in map (Control Map at time 17) = trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])

Begin For Loop Line Property Example
if the following are true:
  • the line at time 17 = 2
  • the tab at time 17 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • Control Map at time 17 = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ]

then the line at time 18 = 3


Begin For Loop Tab Property Example
if the following are true:
  • the line at time 17 = 2
  • the tab at time 17 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • Control Map at time 17 = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ]

then the tab at time 18 = 1


Write For Iterate Expr State At 17
if the following are true:
  • the line at time 17 = 2
  • the tab at time 17 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • Control Map at time 17 = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ]

then expression state at time 18 = "not_expr"


Set For Loop Target Property Example
if the following are true:
  • the line at time 17 = 2
  • the tab at time 17 = 0
  • statement at line 2, tab 0 = for value in numbers:
  • Control Map at time 17 = [ entry 0: (trio ("for", 2, [ 1, [ 2, [ 3, [ ] ] ] ])), [ ] ]
  • Variables Map at time 17 = [ entry numbers: (Python reference 0), [ ] ]

then Variables Map at time 18 = [ entry numbers: (Python reference 0), [ entry value: 1, [ ] ] ]



Pages: 154 155 156 ... 193