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 Return Call Expr State At 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"

then expression state at time 75 = "call_returned"


Write Return Call Parent Stack At 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"

then parent stack at time 75 = [ ]


Write Return Call Arg Stack At 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"

then arguments stack at time 75 = [ ]


Write Return Call Value Stack At 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"

then Value Stack at time 75 = [ ]


Write Return Call Stack At 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"

then stack at time 75 = [ ]


Write Return Call Control Map At 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"

then Control Map at time 75 = [ entry 0: (pair ("class", "Person")), [ ] ]


Write Return Call Value 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • stack at time 74 = [ program context with variables: [ entry p: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 9 tab: 0) and control map: [ entry 0: (pair ("class", "Person")), [ ] ], [ ] ]
  • expression state at time 74 = "end_expr"
  • Return Value at time 74 = 300

then Return Value at time 75 = 300


Write Stmt Class Defs At Unchanged 74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • Class Map at time 74 = [ entry "Person": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ first_name, [ last_name, [ age, [ ] ] ] ] ], [ entry "line": 2, [ ] ] ], [ entry "age_in_months": [ entry "params": [ self, [ ] ], [ entry "line": 6, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 75 = [ entry "Person": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ first_name, [ last_name, [ age, [ ] ] ] ] ], [ entry "line": 2, [ ] ] ], [ entry "age_in_months": [ entry "params": [ self, [ ] ], [ entry "line": 6, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Write Stmt Object Store At Unchanged Expr74
if the following are true:
  • the line at time 74 = 7
  • the tab at time 74 = 2
  • statement at line 7, tab 2 = return __mul__(self.age, 12)
  • expression state at time 74 = "end_expr"
  • Python Object Store at time 74 = [ Python object: [ entry "__class_name__": "Person", [ entry "first_name": "John", [ entry "last_name": "Smith", [ entry "age": 25, [ ] ] ] ] ], [ ] ]

then Python Object Store at time 75 = [ Python object: [ entry "__class_name__": "Person", [ entry "first_name": "John", [ entry "last_name": "Smith", [ entry "age": 25, [ ] ] ] ] ], [ ] ]


Write Call Returned State 75
if the following are true:
  • expression state at time 75 = "call_returned"
  • parent stack at time 75 = [ ]

then expression state at time 76 = "end_expr"


Do Line At Unchanged 75
if the following are true:
  • expression state at time 75 = "call_returned"
  • the line at time 75 = 9

then the line at time 76 = 9


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

then the tab at time 76 = 0


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

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


Do Return Value At Unchanged 75
if the following are true:
  • expression state at time 75 = "call_returned"
  • Return Value at time 75 = 300

then Return Value at time 76 = 300


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

then stack at time 76 = [ ]


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

then parent stack at time 76 = [ ]


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

then arguments stack at time 76 = [ ]


Do Object Store At Unchanged 75
if the following are true:
  • expression state at time 75 = "call_returned"
  • Python Object Store at time 75 = [ Python object: [ entry "__class_name__": "Person", [ entry "first_name": "John", [ entry "last_name": "Smith", [ entry "age": 25, [ ] ] ] ] ], [ ] ]

then Python Object Store at time 76 = [ Python object: [ entry "__class_name__": "Person", [ entry "first_name": "John", [ entry "last_name": "Smith", [ entry "age": 25, [ ] ] ] ] ], [ ] ]


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

then Value Stack at time 76 = [ ]


Do Control Map At Unchanged 75
if the following are true:
  • expression state at time 75 = "call_returned"
  • Control Map at time 75 = [ entry 0: (pair ("class", "Person")), [ ] ]

then Control Map at time 76 = [ entry 0: (pair ("class", "Person")), [ ] ]


Do Class Defs At Unchanged 75
if the following are true:
  • expression state at time 75 = "call_returned"
  • Class Map at time 75 = [ entry "Person": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ first_name, [ last_name, [ age, [ ] ] ] ] ], [ entry "line": 2, [ ] ] ], [ entry "age_in_months": [ entry "params": [ self, [ ] ], [ entry "line": 6, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 76 = [ entry "Person": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ first_name, [ last_name, [ age, [ ] ] ] ] ], [ entry "line": 2, [ ] ] ], [ entry "age_in_months": [ entry "params": [ self, [ ] ], [ entry "line": 6, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Do Set Key Value 76 0
result of storing 300 at key: age in map: [ entry p: (Python reference 0), [ ] ] = [ entry p: (Python reference 0), [ entry age: 300, [ ] ] ]

Write Assign End Vars 76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • expression state at time 76 = "end_expr"
  • Variables Map at time 76 = [ entry p: (Python reference 0), [ ] ]
  • Return Value at time 76 = 300

then Variables Map at time 77 = [ entry p: (Python reference 0), [ entry age: 300, [ ] ] ]


Write Increment T And Val Line At 76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • expression state at time 76 = "end_expr"

then the line at time 77 = 10


Write Stmt Tab At Unchanged Expr76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • expression state at time 76 = "end_expr"

then the tab at time 77 = 0


Write Stmt Object Store At Unchanged Expr76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • expression state at time 76 = "end_expr"
  • Python Object Store at time 76 = [ Python object: [ entry "__class_name__": "Person", [ entry "first_name": "John", [ entry "last_name": "Smith", [ entry "age": 25, [ ] ] ] ] ], [ ] ]

then Python Object Store at time 77 = [ Python object: [ entry "__class_name__": "Person", [ entry "first_name": "John", [ entry "last_name": "Smith", [ entry "age": 25, [ ] ] ] ] ], [ ] ]


Write Assign End Stack 76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • stack at time 76 = [ ]
  • expression state at time 76 = "end_expr"

then stack at time 77 = [ ]


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

Write Stmt Control Map At Unchanged 76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • Control Map at time 76 = [ entry 0: (pair ("class", "Person")), [ ] ]

then Control Map at time 77 = [ entry 0: (pair ("class", "Person")), [ ] ]


Write Stmt Class Defs At Unchanged 76
if the following are true:
  • the line at time 76 = 9
  • the tab at time 76 = 0
  • statement at line 9, tab 0 = age = p.age_in_months()
  • Class Map at time 76 = [ entry "Person": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ first_name, [ last_name, [ age, [ ] ] ] ] ], [ entry "line": 2, [ ] ] ], [ entry "age_in_months": [ entry "params": [ self, [ ] ], [ entry "line": 6, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 77 = [ entry "Person": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ first_name, [ last_name, [ age, [ ] ] ] ] ], [ entry "line": 2, [ ] ] ], [ entry "age_in_months": [ entry "params": [ self, [ ] ], [ entry "line": 6, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Do Set Key Value 0 0
result of storing [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ] at key: "Animal" in map: [ ] = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ], [ ] ]

Write Class Def 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:
  • Class Map at time 0 = [ ]

then Class Map at time 1 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Do Set Key Value 0 1
result of storing (pair ("class", "Animal")) at key: 0 in map: [ ] = [ entry 0: (pair ("class", "Animal")), [ ] ]

Write Class Def Control Map 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:
  • Control Map at time 0 = [ ]

then Control Map at time 1 = [ entry 0: (pair ("class", "Animal")), [ ] ]


Write Increment T And Val Line At 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:

then the line at time 1 = 2


Write Stmt Variables At Unchanged 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:
  • Variables Map at time 0 = [ ]

then Variables Map at time 1 = [ ]


Write Stmt Stack At Unchanged 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:
  • stack at time 0 = [ ]

then stack at time 1 = [ ]


Write Increment T And Val Tab At 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:

then the tab at time 1 = 1


Write Stmt Object Store At Unchanged 0
if the following are true:
  • the line at time 0 = 1
  • the tab at time 0 = 0
  • statement at line 1, tab 0 = class Animal:
  • Python Object Store at time 0 = [ ]

then Python Object Store at time 1 = [ ]


Do Get Key Value 1 0
value at "Animal" in map [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ], [ ] ] = [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ]

Get Key Value Class Defs At 1
if Class Map at time 1 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ], [ ] ], then value at "Animal" in map (Class Map at time 1) = [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ]

Do Get Key Value 1 1
value at "methods" in map [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ] = [ ]

Do Set Key Value 1 0
result of storing [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ] at key: "__init__" in map: [ ] = [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ]

Do Set Key Value 1 1
result of storing [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ] at key: "methods" in map: [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ] = [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ]

Do Set Key Value 1 2
result of storing [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ] at key: "Animal" in map: [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ], [ ] ] = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

Write Method Def 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):
  • value at "Animal" in map (Class Map at time 1) = [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ]
  • value at "methods" in map [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ] = [ ]
  • Class Map at time 1 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 2 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Write Increment T And Val Line At 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):

then the line at time 2 = 3


Write Stmt Variables At Unchanged 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):
  • Variables Map at time 1 = [ ]

then Variables Map at time 2 = [ ]


Write Stmt Stack At Unchanged 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):
  • stack at time 1 = [ ]

then stack at time 2 = [ ]


Write Set Name Tab At Unchanged 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):

then the tab at time 2 = 1


Write Stmt Object Store At Unchanged 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):
  • Python Object Store at time 1 = [ ]

then Python Object Store at time 2 = [ ]


Write Stmt Control Map At Unchanged 1
if the following are true:
  • the line at time 1 = 2
  • the tab at time 1 = 1
  • statement at line 2, tab 1 = def __init__(self):
  • Control Map at time 1 = [ entry 0: (pair ("class", "Animal")), [ ] ]

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


Write Skip Line Line 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0

then the line at time 3 = 4


Write Skip Line Tab 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0

then the tab at time 3 = 1


Write Skip Line Variables At 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0
  • Variables Map at time 2 = [ ]

then Variables Map at time 3 = [ ]


Write Skip Line Stack At 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0
  • stack at time 2 = [ ]

then stack at time 3 = [ ]


Write Skip Line Object Store At 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0
  • Python Object Store at time 2 = [ ]

then Python Object Store at time 3 = [ ]


Write Skip Line Control Map At 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0
  • Control Map at time 2 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then Control Map at time 3 = [ entry 0: (pair ("class", "Animal")), [ ] ]


Write Skip Line Class Defs At 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0
  • Class Map at time 2 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 3 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Write Skip Line State 2
if the following are true:
  • the line at time 2 = 3
  • the tab at time 2 = 1
  • statement at line 3, tab 2 = self.x = 0

then expression state at time 3 = "not_expr"


Write Skip Line Line 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0

then the line at time 4 = 5


Write Skip Line Tab 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0

then the tab at time 4 = 1


Write Skip Line Variables At 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0
  • Variables Map at time 3 = [ ]

then Variables Map at time 4 = [ ]


Write Skip Line Stack At 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0
  • stack at time 3 = [ ]

then stack at time 4 = [ ]


Write Skip Line Object Store At 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0
  • Python Object Store at time 3 = [ ]

then Python Object Store at time 4 = [ ]


Write Skip Line Control Map At 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0
  • Control Map at time 3 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then Control Map at time 4 = [ entry 0: (pair ("class", "Animal")), [ ] ]


Write Skip Line Class Defs At 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0
  • Class Map at time 3 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 4 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Write Skip Line State 3
if the following are true:
  • the line at time 3 = 4
  • the tab at time 3 = 1
  • statement at line 4, tab 2 = self.y = 0

then expression state at time 4 = "not_expr"


Do Get Key Value 4 0
value at "Animal" in map [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ] = [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ]

Get Key Value Class Defs At 4
if Class Map at time 4 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ], then value at "Animal" in map (Class Map at time 4) = [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ]

Do Get Key Value 4 1
value at "methods" in map [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ] = [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ]

Do Set Key Value 4 0
result of storing [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ] at key: "move" in map: [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ] = [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ]

Do Set Key Value 4 1
result of storing [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ] at key: "methods" in map: [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ] = [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ]

Do Set Key Value 4 2
result of storing [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ] at key: "Animal" in map: [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ] = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

Write Method Def 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):
  • value at "Animal" in map (Class Map at time 4) = [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ]
  • value at "methods" in map [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ] = [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ]
  • Class Map at time 4 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 5 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Write Increment T And Val Line At 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):

then the line at time 5 = 6


Write Stmt Variables At Unchanged 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):
  • Variables Map at time 4 = [ ]

then Variables Map at time 5 = [ ]


Write Stmt Stack At Unchanged 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):
  • stack at time 4 = [ ]

then stack at time 5 = [ ]


Write Set Name Tab At Unchanged 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):

then the tab at time 5 = 1


Write Stmt Object Store At Unchanged 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):
  • Python Object Store at time 4 = [ ]

then Python Object Store at time 5 = [ ]


Write Stmt Control Map At Unchanged 4
if the following are true:
  • the line at time 4 = 5
  • the tab at time 4 = 1
  • statement at line 5, tab 1 = def move(self):
  • Control Map at time 4 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then Control Map at time 5 = [ entry 0: (pair ("class", "Animal")), [ ] ]


Write Skip Line Line 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5

then the line at time 6 = 7


Write Skip Line Tab 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5

then the tab at time 6 = 1


Write Skip Line Variables At 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5
  • Variables Map at time 5 = [ ]

then Variables Map at time 6 = [ ]


Write Skip Line Stack At 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5
  • stack at time 5 = [ ]

then stack at time 6 = [ ]


Write Skip Line Object Store At 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5
  • Python Object Store at time 5 = [ ]

then Python Object Store at time 6 = [ ]


Write Skip Line Control Map At 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5
  • Control Map at time 5 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]


Write Skip Line Class Defs At 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5
  • Class Map at time 5 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 6 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Write Skip Line State 5
if the following are true:
  • the line at time 5 = 6
  • the tab at time 5 = 1
  • statement at line 6, tab 2 = self.x = self.x + 5

then expression state at time 6 = "not_expr"


Do Get Key Value 6 0
value at 0 in map [ entry 0: (pair ("class", "Animal")), [ ] ] = pair ("class", "Animal")

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

Write Class Def End Tab 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then the tab at time 7 = 0


Write Class Def End Control Map At 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then Control Map at time 7 = [ entry 0: (pair ("class", "Animal")), [ ] ]


Write Decrement Tab Expr State 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):

then expression state at time 7 = "not_expr"


Write Block End Unchanged Line At 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]

then the line at time 7 = 7


Write Block End Unchanged Variables At 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]
  • Variables Map at time 6 = [ ]

then Variables Map at time 7 = [ ]


Write Block End Unchanged Stack At 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]
  • stack at time 6 = [ ]

then stack at time 7 = [ ]


Write Block End Unchanged Object Store At 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]
  • Python Object Store at time 6 = [ ]

then Python Object Store at time 7 = [ ]


Write Block End Unchanged Class Defs At 6
if the following are true:
  • the line at time 6 = 7
  • the tab at time 6 = 1
  • statement at line 7, tab 0 = class Dog(Animal):
  • Control Map at time 6 = [ entry 0: (pair ("class", "Animal")), [ ] ]
  • Class Map at time 6 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]

then Class Map at time 7 = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ]


Do Set Key Value 7 0
result of storing [ entry "bases": [ "Animal", [ ] ], [ entry "methods": [ ], [ entry "line": 7, [ ] ] ] ] at key: "Dog" in map: [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ ] ] = [ entry "Animal": [ entry "bases": [ ], [ entry "methods": [ entry "__init__": [ entry "params": [ self, [ ] ], [ entry "line": 2, [ ] ] ], [ entry "move": [ entry "params": [ self, [ ] ], [ entry "line": 5, [ ] ] ], [ ] ] ], [ entry "line": 1, [ ] ] ] ], [ entry "Dog": [ entry "bases": [ "Animal", [ ] ], [ entry "methods": [ ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


Pages: 178 179 180 ... 193