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 Object Store At Unchanged 44
if the following are true:
  • expression state at time 44 = "iterate_args"
  • Python Object Store at time 44 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 45 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


Do Control Map At Unchanged 44
if the following are true:
  • expression state at time 44 = "iterate_args"
  • Control Map at time 44 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 45 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


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

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


Do Class Defs At Unchanged 44
if the following are true:
  • expression state at time 44 = "iterate_args"
  • Class Map at time 44 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 45 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


Get Begin Expr Value 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • the expression at time 45 = __add__(self.x, 5)
  • Value Stack at time 45 = [ [ ], [ ] ]

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


Get Begin Expr Parent 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • the expression at time 45 = __add__(self.x, 5)
  • parent stack at time 45 = [ self."x" = __add__(self.x, 5), [ ] ]

then parent stack at time 46 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]


Get Begin Expr Params 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • the expression at time 45 = __add__(self.x, 5)
  • arguments stack at time 45 = [ [ ], [ ] ]

then arguments stack at time 46 = [ [ self.x, [ 5, [ ] ] ], [ [ ], [ ] ] ]


Get Begin Expr Call State 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • the expression at time 45 = __add__(self.x, 5)

then expression state at time 46 = "iterate_args"


Do Expr At Unchanged 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • the expression at time 45 = __add__(self.x, 5)

then the expression at time 46 = __add__(self.x, 5)


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

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


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

then the line at time 46 = 6


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

then the tab at time 46 = 2


Do Stack At Unchanged 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • stack at time 45 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 46 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Object Store At Unchanged 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • Python Object Store at time 45 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 46 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


Do Control Map At Unchanged 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • Control Map at time 45 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 46 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


Do Class Defs At Unchanged 45
if the following are true:
  • expression state at time 45 = "begin_expr"
  • Class Map at time 45 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 46 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


Get Iterate Expr 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • arguments stack at time 46 = [ [ self.x, [ 5, [ ] ] ], [ [ ], [ ] ] ]

then the expression at time 47 = self.x


Get Iterate Params 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • arguments stack at time 46 = [ [ self.x, [ 5, [ ] ] ], [ [ ], [ ] ] ]

then arguments stack at time 47 = [ [ 5, [ ] ], [ [ ], [ ] ] ]


Get Iterate State 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • arguments stack at time 46 = [ [ self.x, [ 5, [ ] ] ], [ [ ], [ ] ] ]

then expression state at time 47 = "begin_expr"


Get Iterate Parent 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • arguments stack at time 46 = [ [ self.x, [ 5, [ ] ] ], [ [ ], [ ] ] ]
  • parent stack at time 46 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]

then parent stack at time 47 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]


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

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


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

then the line at time 47 = 6


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

then the tab at time 47 = 2


Do Stack At Unchanged 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • stack at time 46 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 47 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Object Store At Unchanged 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • Python Object Store at time 46 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 47 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


Do Control Map At Unchanged 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • Control Map at time 46 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 47 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


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

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


Do Class Defs At Unchanged 46
if the following are true:
  • expression state at time 46 = "iterate_args"
  • Class Map at time 46 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 47 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


Get Begin Expr Value 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = self.x
  • 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 = self.x
  • parent stack at time 47 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]

then parent stack at time 48 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]


Get Begin Expr Params 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = self.x
  • arguments stack at time 47 = [ [ 5, [ ] ], [ [ ], [ ] ] ]

then arguments stack at time 48 = [ [ self, [ ] ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]


Get Begin Expr Call State 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • the expression at time 47 = self.x

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 = self.x

then the expression at time 48 = self.x


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

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


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

then the line at time 48 = 6


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

then the tab at time 48 = 2


Do Stack At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • stack at time 47 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 48 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Object Store At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • Python Object Store at time 47 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 48 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


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: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 48 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


Do Class Defs At Unchanged 47
if the following are true:
  • expression state at time 47 = "begin_expr"
  • Class Map at time 47 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 48 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


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

then the expression at time 49 = self


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

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


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

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 = [ [ self, [ ] ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]
  • parent stack at time 48 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then parent stack at time 49 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]


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 = 6

then the line at time 49 = 6


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

then the tab at time 49 = 2


Do Stack At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • stack at time 48 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 49 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Object Store At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Python Object Store at time 48 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 49 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


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: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 49 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


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

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


Do Class Defs At Unchanged 48
if the following are true:
  • expression state at time 48 = "iterate_args"
  • Class Map at time 48 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 49 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


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

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

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


Get Begin Expr State Name 49
if the following are true:
  • the expression at time 49 = self
  • expression state at time 49 = "begin_expr"
  • self is a variable
  • parent stack at time 49 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then expression state at time 50 = "return"


Get Begin Expr Value Unchaged Name 49
if the following are true:
  • the expression at time 49 = self
  • expression state at time 49 = "begin_expr"
  • self 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 = self
  • expression state at time 49 = "begin_expr"
  • self is a variable
  • arguments stack at time 49 = [ [ ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]

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


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

then Return Value at time 50 = Python reference 0


Get Begin Expr Parent Name 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • the expression at time 49 = self
  • self is a variable
  • parent stack at time 49 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then parent stack at time 50 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]


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

then the line at time 50 = 6


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

then the tab at time 50 = 2


Do Stack At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • stack at time 49 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 50 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Object Store At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • Python Object Store at time 49 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 50 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


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: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 50 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


Do Class Defs At Unchanged 49
if the following are true:
  • expression state at time 49 = "begin_expr"
  • Class Map at time 49 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 50 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


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 = Python reference 0

then Value Stack at time 51 = [ [ Python reference 0, [ ] ], [ [ ], [ [ ], [ ] ] ] ]


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

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


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

then the line at time 51 = 6


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

then the tab at time 51 = 2


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

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


Do Parent Stack At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • parent stack at time 50 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then parent stack at time 51 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]


Do Stack At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • stack at time 50 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 51 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Class Defs At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Class Map at time 50 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 51 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


Do Object Store At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Python Object Store at time 50 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 51 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


Do Control Map At Unchanged 50
if the following are true:
  • expression state at time 50 = "return"
  • Control Map at time 50 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 51 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


Get Iterate End State 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]
  • parent stack at time 51 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then expression state at time 52 = "call_function_begin"


Get Iterate End Expr 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]
  • parent stack at time 51 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then the expression at time 52 = self.x


Get Iterate End Parent 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]
  • parent stack at time 51 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

then parent stack at time 52 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]


Get Iterate End Params 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • arguments stack at time 51 = [ [ ], [ [ 5, [ ] ], [ [ ], [ ] ] ] ]
  • parent stack at time 51 = [ self.x, [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ] ]

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


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

then Value Stack at time 52 = [ [ Python reference 0, [ ] ], [ [ ], [ [ ], [ ] ] ] ]


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

then the line at time 52 = 6


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

then the tab at time 52 = 2


Do Stack At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • stack at time 51 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]

then stack at time 52 = [ program context with variables: [ entry joe: (Python reference 0), [ ] ] and expression state: (expression state with parent stack: [ ] arguments: [ ] values: [ ] line: 11 tab: 0) and control map: [ entry 0: (pair ("class", "Dog")), [ ] ], [ ] ]


Do Object Store At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Python Object Store at time 51 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 52 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


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: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 52 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


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

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


Do Class Defs At Unchanged 51
if the following are true:
  • expression state at time 51 = "iterate_args"
  • Class Map at time 51 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]

then Class Map at time 52 = [ 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 "jump": [ entry "params": [ self, [ ] ], [ entry "line": 8, [ ] ] ], [ ] ], [ entry "line": 7, [ ] ] ] ], [ ] ] ]


Do Get Key Value 52 0
value at "x" in map [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ] = 0

Do Element At 52 0
the element at index 0 of stack [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ] = Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ]

Write Element At Object Store 52
if Python Object Store at time 52 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ], then the element at index 0 of stack (Python Object Store at time 52) = Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ]

Write Call Function Begin Get Attribute Return 52
if the following are true:
  • expression state at time 52 = "call_function_begin"
  • the expression at time 52 = self.x
  • Value Stack at time 52 = [ [ Python reference 0, [ ] ], [ [ ], [ [ ], [ ] ] ] ]
  • the element at index 0 of stack (Python Object Store at time 52) = Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ]

then Return Value at time 53 = 0


Write Call Function Begin Next State 52
if the following are true:
  • expression state at time 52 = "call_function_begin"
  • parent stack at time 52 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]
  • the expression at time 52 = self.x

then expression state at time 53 = "return"


Do Object Store At Unchanged 52
if the following are true:
  • expression state at time 52 = "call_function_begin"
  • the expression at time 52 = self.x
  • Python Object Store at time 52 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]

then Python Object Store at time 53 = [ Python object: [ entry "__class_name__": "Dog", [ entry "x": 0, [ entry "y": 0, [ ] ] ] ], [ ] ]


Write Call Function Begin Value Stack 52
if the following are true:
  • expression state at time 52 = "call_function_begin"
  • Value Stack at time 52 = [ [ Python reference 0, [ ] ], [ [ ], [ [ ], [ ] ] ] ]
  • the expression at time 52 = self.x

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


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

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


Do Parent Stack At Unchanged 52
if the following are true:
  • expression state at time 52 = "call_function_begin"
  • parent stack at time 52 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]

then parent stack at time 53 = [ __add__(self.x, 5), [ self."x" = __add__(self.x, 5), [ ] ] ]


Do Control Map At Unchanged 52
if the following are true:
  • expression state at time 52 = "call_function_begin"
  • Control Map at time 52 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]

then Control Map at time 53 = [ entry 0: (pair ("class", "Dog")), [ entry 1: (pair ("method", "move")), [ ] ] ]


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

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


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

then the line at time 53 = 6



Pages: 184 185 186 ... 193