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 Control Map At Unchanged 41
if the following are true:
  • expression state at time 41 = "begin_expr"
  • Control Map at time 41 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 42 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 42 = [ ]


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

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


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

then Class Map at time 43 = [ ]


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

then Python Object Store at time 43 = [ ]


Do Control Map At Unchanged 42
if the following are true:
  • expression state at time 42 = "return"
  • Control Map at time 42 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 43 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Python Object Store at time 44 = [ ]


Do Control Map At Unchanged 43
if the following are true:
  • expression state at time 43 = "iterate_args"
  • Control Map at time 43 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 44 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 44 = [ ]


Do Object Store At Unchanged 44
if the following are true:
  • expression state at time 44 = "call_function_begin"
  • the expression at time 44 = __add__(a, 1)
  • Python Object Store at time 44 = [ ]

then Python Object Store at time 45 = [ ]


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

then arguments stack at time 45 = [ ]


Do Control Map At Unchanged 44
if the following are true:
  • expression state at time 44 = "call_function_begin"
  • Control Map at time 44 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 45 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 45 = [ ]


Do Set Key Value 45 0
result of storing 2 at key: a in map: [ entry a: 1, [ ] ] = [ entry a: 2, [ ] ]

Write Assign End Vars 45
if the following are true:
  • the line at time 45 = 3
  • the tab at time 45 = 1
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • expression state at time 45 = "end_expr"
  • Variables Map at time 45 = [ entry a: 1, [ ] ]
  • Return Value at time 45 = 2

then Variables Map at time 46 = [ entry a: 2, [ ] ]


Write Increment T And Val Line At 45
if the following are true:
  • the line at time 45 = 3
  • the tab at time 45 = 1
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • expression state at time 45 = "end_expr"

then the line at time 46 = 4


Write Stmt Tab At Unchanged Expr45
if the following are true:
  • the line at time 45 = 3
  • the tab at time 45 = 1
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • expression state at time 45 = "end_expr"

then the tab at time 46 = 1


Write Stmt Object Store At Unchanged Expr45
if the following are true:
  • the line at time 45 = 3
  • the tab at time 45 = 1
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • expression state at time 45 = "end_expr"
  • Python Object Store at time 45 = [ ]

then Python Object Store at time 46 = [ ]


Write Stmt Control Map At Unchanged 45
if the following are true:
  • the line at time 45 = 3
  • the tab at time 45 = 1
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • Control Map at time 45 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 46 = [ entry 0: (pair ("while", 2)), [ ] ]


Write Stmt Class Defs At Unchanged 45
if the following are true:
  • the line at time 45 = 3
  • the tab at time 45 = 1
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • Class Map at time 45 = [ ]

then Class Map at time 46 = [ ]


Do Get Key Value 46 0
value at 0 in map [ entry 0: (pair ("while", 2)), [ ] ] = pair ("while", 2)

Get Decrement Key Value Control Map At 46
if Control Map at time 46 = [ entry 0: (pair ("while", 2)), [ ] ], then value at (1 - 1) in map (Control Map at time 46) = pair ("while", 2)

Write End While Control Map 46
if the following are true:
  • the line at time 46 = 4
  • the tab at time 46 = 1
  • number of lines = 3
  • Control Map at time 46 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 47 = [ entry 0: (pair ("while", 2)), [ ] ]


Write End While Unchanged Object Store At 46
if the following are true:
  • the line at time 46 = 4
  • the tab at time 46 = 1
  • number of lines = 3
  • Control Map at time 46 = [ entry 0: (pair ("while", 2)), [ ] ]
  • Python Object Store at time 46 = [ ]

then Python Object Store at time 47 = [ ]


Write End Unchanged Class Defs At 46
if the following are true:
  • the line at time 46 = 4
  • the tab at time 46 = 1
  • number of lines = 3
  • Control Map at time 46 = [ entry 0: (pair ("while", 2)), [ ] ]
  • Class Map at time 46 = [ ]

then Class Map at time 47 = [ ]


Write Set Name Expr At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then the expression at time 48 = __lt__(a, 2)


Write Set Name Expr State At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then expression state at time 48 = "begin_expr"


Write Set Name Line At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then the line at time 48 = 2


Write Set Name Tab At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then the tab at time 48 = 0


Write Set Name Value Stack At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then Value Stack at time 48 = [ ]


Write Set Name Parent Stack At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then parent stack at time 48 = [ ]


Write Set Name Arg Stack At on State 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"

then arguments stack at time 48 = [ ]


Write Stmt Object Store At Unchanged Expr47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"
  • Python Object Store at time 47 = [ ]

then Python Object Store at time 48 = [ ]


Write Stmt Control Map At Unchanged Expr47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 47 = "not_expr"
  • Control Map at time 47 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 48 = [ entry 0: (pair ("while", 2)), [ ] ]


Write Stmt Class Defs At Unchanged 47
if the following are true:
  • the line at time 47 = 2
  • the tab at time 47 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • Class Map at time 47 = [ ]

then Class Map at time 48 = [ ]


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

then Python Object Store at time 49 = [ ]


Do Control Map At Unchanged 48
if the following are true:
  • expression state at time 48 = "begin_expr"
  • Control Map at time 48 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 49 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 49 = [ ]


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

then Python Object Store at time 50 = [ ]


Do Control Map At Unchanged 49
if the following are true:
  • expression state at time 49 = "iterate_args"
  • Control Map at time 49 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 50 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 50 = [ ]


Do Get Key Value 50 0
value at a in map [ entry a: 2, [ ] ] = 2

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

then Python Object Store at time 51 = [ ]


Do Control Map At Unchanged 50
if the following are true:
  • expression state at time 50 = "begin_expr"
  • Control Map at time 50 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 51 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 51 = [ ]


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

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


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

then Class Map at time 52 = [ ]


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

then Python Object Store at time 52 = [ ]


Do Control Map At Unchanged 51
if the following are true:
  • expression state at time 51 = "return"
  • Control Map at time 51 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 52 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Python Object Store at time 53 = [ ]


Do Control Map At Unchanged 52
if the following are true:
  • expression state at time 52 = "iterate_args"
  • Control Map at time 52 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 53 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 53 = [ ]


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

then Python Object Store at time 54 = [ ]


Do Control Map At Unchanged 53
if the following are true:
  • expression state at time 53 = "begin_expr"
  • Control Map at time 53 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 54 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 54 = [ ]


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

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


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

then Class Map at time 55 = [ ]


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

then Python Object Store at time 55 = [ ]


Do Control Map At Unchanged 54
if the following are true:
  • expression state at time 54 = "return"
  • Control Map at time 54 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 55 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Python Object Store at time 56 = [ ]


Do Control Map At Unchanged 55
if the following are true:
  • expression state at time 55 = "iterate_args"
  • Control Map at time 55 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 56 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 56 = [ ]


Do Object Store At Unchanged 56
if the following are true:
  • expression state at time 56 = "call_function_begin"
  • the expression at time 56 = __lt__(a, 2)
  • Python Object Store at time 56 = [ ]

then Python Object Store at time 57 = [ ]


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

then arguments stack at time 57 = [ ]


Do Control Map At Unchanged 56
if the following are true:
  • expression state at time 56 = "call_function_begin"
  • Control Map at time 56 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 57 = [ entry 0: (pair ("while", 2)), [ ] ]


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

then Class Map at time 57 = [ ]


Write Stmt Class Defs At Unchanged 57
if the following are true:
  • the line at time 57 = 2
  • the tab at time 57 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • Class Map at time 57 = [ ]

then Class Map at time 58 = [ ]


Write Stmt Object Store At Unchanged Expr57
if the following are true:
  • the line at time 57 = 2
  • the tab at time 57 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 57 = "end_expr"
  • Python Object Store at time 57 = [ ]

then Python Object Store at time 58 = [ ]


Write Stmt Control Map At Unchanged Expr57
if the following are true:
  • the line at time 57 = 2
  • the tab at time 57 = 0
  • statement at line 2, tab 0 = while __lt__(a, 2):
  • expression state at time 57 = "end_expr"
  • Control Map at time 57 = [ entry 0: (pair ("while", 2)), [ ] ]
  • Return Value at time 57 = False

then Control Map at time 58 = [ entry 0: (pair ("while", 2)), [ ] ]


Write Skip Line Variables At 58
if the following are true:
  • the line at time 58 = 3
  • the tab at time 58 = 0
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • Variables Map at time 58 = [ entry a: 2, [ ] ]

then Variables Map at time 59 = [ entry a: 2, [ ] ]


Write Skip Line Stack At 58
if the following are true:
  • the line at time 58 = 3
  • the tab at time 58 = 0
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • stack at time 58 = [ ]

then stack at time 59 = [ ]


Write Skip Line Object Store At 58
if the following are true:
  • the line at time 58 = 3
  • the tab at time 58 = 0
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • Python Object Store at time 58 = [ ]

then Python Object Store at time 59 = [ ]


Write Skip Line Control Map At 58
if the following are true:
  • the line at time 58 = 3
  • the tab at time 58 = 0
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • Control Map at time 58 = [ entry 0: (pair ("while", 2)), [ ] ]

then Control Map at time 59 = [ entry 0: (pair ("while", 2)), [ ] ]


Write Skip Line Class Defs At 58
if the following are true:
  • the line at time 58 = 3
  • the tab at time 58 = 0
  • statement at line 3, tab 1 = a = __add__(a, 1)
  • Class Map at time 58 = [ ]

then Class Map at time 59 = [ ]


Element At Example
the element at index 0 of stack [ 10, [ 12, [ 14, [ ] ] ] ] = 10

List Get Item Example
the element at index 2 of stack [ 10, [ 12, [ 14, [ ] ] ] ] = 14

List Length Example
length of stack [ 10, [ 12, [ 14, [ ] ] ] ] = 3

Reverse List Example 4
reverse of [ 14, [ 10, [ ] ] ] = [ 10, [ 14, [ ] ] ]

Pop At Example
stack after popping a value from stack [ 10, [ 12, [ 14, [ ] ] ] ] at index 1 = [ 10, [ 14, [ ] ] ]

List Contains Element Example
stack [ 2, [ 4, [ 6, [ ] ] ] ] contains 4 = True

Map Has Key Example
map [ entry "OH": "Ohio", [ entry "AK": "Alaska", [ entry "IA": "Iowa", [ ] ] ] ] contains key "AK" = True

Map Does Not Have Key Example
map [ entry "OH": "Ohio", [ entry "AK": "Alaska", [ entry "IA": "Iowa", [ ] ] ] ] contains key "TX" = False

Pre Extend Example
reverse and insert [ 4, [ 0, [ ] ] ] to the beginning of [ 2, [ ] ] = [ 0, [ 4, [ 2, [ ] ] ] ]

Set List Element at Index Example
result of storing 4 at index 1 of stack [ 0, [ 1, [ 2, [ ] ] ] ] = [ 0, [ 4, [ 2, [ ] ] ] ]

Push Stack Example
result of dumping [ 4, [ 0, [ ] ] ] to [ 2, [ ] ] = [ 0, [ 4, [ 2, [ ] ] ] ]

Reverse Example
reverse of remaining stack [ [ 0, [ ] ], [ [ 1, [ ] ], [ ] ] ] and already reversed stack [ ] = [ [ 1, [ ] ], [ [ 0, [ ] ], [ ] ] ]

Reverse List Two General
reverse of remaining stack [ [ x, [ ] ], [ [ y, [ ] ], [ ] ] ] and already reversed stack [ ] = [ [ y, [ ] ], [ [ x, [ ] ], [ ] ] ]

Reverse Two
reverse of [ [ x, [ ] ], [ [ y, [ ] ], [ ] ] ] = [ [ y, [ ] ], [ [ x, [ ] ], [ ] ] ]

Reverse One
reverse of [ [ 0, [ ] ], [ ] ] = [ [ 0, [ ] ], [ ] ]

Reverse Example General
reverse of [ x, [ ] ] = [ x, [ ] ]

Set Key Value Example
result of storing 5 at key: a in map: [ ] = [ entry a: 5, [ ] ]

Compare Example
compare bit stack [ 0, [ ] ] and bit stack [ 1, [ ] ] = [ 0, [ 0, [ ] ] ]

Compare Example Eq
compare bit stack [ 1, [ ] ] and bit stack [ 1, [ ] ] = [ 1, [ 0, [ ] ] ]

Compare Example Gt
compare bit stack [ 1, [ ] ] and bit stack [ 0, [ ] ] = [ 0, [ 1, [ ] ] ]

Compare Example Two
compare bit stack [ 0, [ 1, [ ] ] ] and bit stack [ 1, [ 1, [ ] ] ] = [ 0, [ 0, [ ] ] ]

Compare Example Three
compare bit stack [ 1, [ 0, [ 1, [ ] ] ] ] and bit stack [ 0, [ 1, [ 1, [ ] ] ] ] = [ 0, [ 0, [ ] ] ]

Less Than Example
[ 0, [ ] ] is less than [ 1, [ ] ]

Greater Than Example
[ 1, [ ] ] is greater than [ 0, [ ] ]

Greater Than Example Two
[ 0, [ 1, [ ] ] ] is greater than [ 0, [ 0, [ ] ] ]

Greater Than Example Two 2
[ 1, [ 1, [ ] ] ] is greater than [ 0, [ 0, [ ] ] ]


Pages: 122 123 124 ... 127