Function value at key in map vars

search vars for the entry with the key key and output the value

Format:

value at key in map vars

Input:

list vars -
variable key -

Output:

number - None

Properties that reference this function:

value at key in map [ pair (key, value), remaining ] = value (Get Key Value Match)
value at key in map [ pair (bad_key, value), remaining ] = value at key in map remaining (Get Key Value No Match)
value at key in map [ entry key: value, remaining ] = value (Get Entry Key Match)
value at key in map [ entry bad_key: value, remaining ] = value at key in map remaining (Get Entry Key No Match)

Conditional properties that reference this function:

  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj.append(x), ys ], rest ] ]
    • Value Stack at time t = [ [ value, [ ] ], [ next_level, other_levels ] ]
    • value at obj in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Python Object Store at time (t + 1) = result of storing (Python list (result of appending value to entries)) at index idx of stack (Python Object Store at time t)

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj.append(x), ys ], rest ] ]
    • Value Stack at time t = [ [ value, [ ] ], [ next_level, other_levels ] ]
    • value at obj in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Value Stack at time (t + 1) = [ [ None, next_level ], other_levels ]

    (link)
  • if the following are true:
    • Value Stack at time t = [ [ a, [ ] ], [ next_level, other_levels ] ]
    • Expression Stack at time t = [ [ ], [ [ name."pop"(args), ys ], rest ] ]
    • value at name in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Python Object Store at time (t + 1) = result of storing (Python list (stack after popping a value from stack entries at index a)) at index idx of stack (Python Object Store at time t)

    (link)
  • if the following are true:
    • Value Stack at time t = [ [ a, [ ] ], [ next_level, other_levels ] ]
    • Expression Stack at time t = [ [ ], [ [ name."pop"(args), ys ], rest ] ]
    • value at name in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Value Stack at time (t + 1) = [ [ the element at index a of stack entries, next_level ], other_levels ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ function call with name: "__getitem__" and arguments: args, ys ], rest ] ]
    • Value Stack at time t = [ [ a, [ Python reference idx, [ ] ] ], [ next_level, other_levels ] ]
    • the element at index idx of stack (Python Object Store at time t) = Python dictionary entries

    then Value Stack at time (t + 1) = [ [ value at a in map entries, next_level ], other_levels ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then the line at time (t + 1) = the line at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Expression Stack at time t = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Expression Stack at time (t + 1) = Expression Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = a method named method_name with parameters params
    • value at class_name in map (Class Map at time t) = class_map
    • value at "methods" in map class_map = methods_map

    then Class Map at time (t + 1) = result of storing (result of storing (result of storing [ entry "params": params, [ entry "line": i, [ ] ] ] at key: method_name in map: methods_map) at key: "methods" in map: class_map) at key: class_name in map: (Class Map at time t)

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Parameters List at time (t + 1) = params

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Value Stack at time (t + 1) = v_stack

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Function Variables Map at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Argument Values at time (t + 1) = [ Python reference index, reverse of values ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Expression Stack at time (t + 1) = Expression Stack at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then the line at time (t + 1) = the line at time t

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params
    • Parameters List at time t = None
    • Value Stack at time t = [ values, v_stack ]

    then the tab at time (t + 1) = the tab at time t

    (link)
  • if the following are true:
    • Parameters List at time t = [ ]
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • line number of method method_name of class class_name in (Class Map at time t) = line

    then the line at time (t + 1) = line + 1

    (link)
  • if the following are true:
    • Parameters List at time t = [ ]
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • line number of method method_name of class class_name in (Class Map at time t) = line

    then the tab at time (t + 1) = 2

    (link)
  • if the following are true:
    • Parameters List at time t = [ ]
    • Expression Stack at time t = [ [ ], [ [ obj_name.method_name(args), ys ], rest ] ]
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • line number of method method_name of class class_name in (Class Map at time t) = line

    then Control Map at time (t + 1) = [ entry 0: (pair ("class", class_name)), [ entry 1: (pair ("method", method_name)), [ ] ] ]

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ ], [ [ obj.attr, ys ], rest ] ]
    • Value Stack at time t = [ [ Python reference index, [ ] ], [ next_level, other_levels ] ]
    • the element at index index of stack (Python Object Store at time t) = Python object: attributes

    then Value Stack at time (t + 1) = [ [ value at attr in map attributes, next_level ], other_levels ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Variables Map at time (t + 1) = varis

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then the line at time (t + 1) = line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then the tab at time (t + 1) = tab

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Expression Stack at time (t + 1) = expr_stack

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Context Stack at time (t + 1) = rest

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Value Stack at time (t + 1) = value_stack

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • Context Stack at time t = [ program context with variables: varis and expression state: (expression state with expression stack: expr_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Control Map at time (t + 1) = control_map

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", "__init__")

    then Return Value at time (t + 1) = [ value at self in map (Variables Map at time t), [ ] ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)
    • not (method_name = "__init__")

    then Return Value at time (t + 1) = [ None, [ ] ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Variables Map at time (t + 1) = result of storing elem at key: target in map: (Variables Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then the tab at time (t + 1) = j + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Control Map at time (t + 1) = result of storing (trio ("for", i, rest)) at key: j in map: (Control Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Expression Stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Control Map at time (t + 1) = result of deleting the entry with key j from map (Control Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Expression Stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the line at time (t + 1) = for_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Expression Stack at time (t + 1) = Expression Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the line at time (t + 1) = for_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Expression Stack at time (t + 1) = Expression Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • value at class_name in map class_defs = class_def
    • value at "methods" in map class_def = methods
    • value at method_name in map methods = method_map

    then definition of method method_name of class class_name in class_defs = method_map

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the line at time (t + 1) = while_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then expression state at time (t + 1) = expression state at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the line at time (t + 1) = while_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then expression state at time (t + 1) = expression state at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then expression state at time (t + 1) = "not_expr"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then "break" state at (t + 1) = "not_breaking"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then "break" state at (t + 1) = "breaking"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then the line at time (t + 1) = while_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then "continue" state at (t + 1) = "not_continuing"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then "continue" state at (t + 1) = "continuing"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = x = c
    • c is a variable

    then Variables Map at time (t + 1) = result of storing (value at c in map (Variables Map at time t)) at key: x in map: (Variables Map at time t)

    (link)
  • if the following are true:
    • expression state at time t = "begin_expr"
    • the expression at time t = v
    • v is a variable

    then Return Value at time (t + 1) = value at x in map (Variables Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then the expression at time (t + 1) = test

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then expression state at time (t + 1) = "begin_expr"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then Value Stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then parent stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • expression state at time t = "not_expr"

    then arguments stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • expression state at time t = "not_expr"

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • expression state at time t = "not_expr"

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", False)

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", False)

    then the tab at time (t + 1) = j + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", True)

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", True)

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • Value Stack at time t = [ [ value, [ ] ], stack ]
    • the expression at time t = obj.append(x)
    • value at obj in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Python Object Store at time (t + 1) = result of storing (Python list (result of appending value to entries)) at index idx of stack (Python Object Store at time t)

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • map (Class Map at time t) contains key class_name = True

    then expression state at time (t + 1) = "call_build_args"

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params

    then Parameters List at time (t + 1) = params

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • method parameters where the Class Map is (Class Map at time t), class name is class_name, and method name is method_name = params

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • Value Stack at time t = [ values, v_stack ]
    • definition of method method_name of class class_name in (Class Map at time t) = method_map

    then Argument Values at time (t + 1) = [ Python reference index, reverse of values ]

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • Value Stack at time t = [ values, v_stack ]
    • definition of method method_name of class class_name in (Class Map at time t) = method_map

    then Value Stack at time (t + 1) = v_stack

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • Value Stack at time t = [ [ a, [ ] ], stack ]
    • the expression at time t = name."pop"(args)
    • value at obj in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Python Object Store at time (t + 1) = result of storing (Python list (stack after popping a value from stack entries at index a)) at index idx of stack (Python Object Store at time t)

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • Value Stack at time t = [ [ a, [ ] ], stack ]
    • the expression at time t = name."pop"(args)
    • value at obj in map (Variables Map at time t) = Python reference idx
    • the element at index idx of stack (Python Object Store at time t) = Python list entries

    then Return Value at time (t + 1) = the element at index a of stack entries

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • Value Stack at time t = [ [ a, [ Python reference idx, [ ] ] ], stack ]
    • the expression at time t = function call with name: "__getitem__" and arguments: args
    • the element at index idx of stack (Python Object Store at time t) = Python dictionary entries

    then Return Value at time (t + 1) = value at a in map entries

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then the line at time (t + 1) = the line at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then expression state at time t = "not_expr"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then expression state at time (t + 1) = expression state at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("class", class_name)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = a method named method_name with parameters params
    • value at class_name in map (Class Map at time t) = class_map
    • value at "methods" in map class_map = methods_map

    then Class Map at time (t + 1) = result of storing (result of storing (result of storing [ entry "params": params, [ entry "line": i, [ ] ] ] at key: method_name in map: methods_map) at key: "methods" in map: class_map) at key: class_name in map: (Class Map at time t)

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • Parameters List at time t = [ ]
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • line number of method method_name of class class_name in (Class Map at time t) = line

    then the line at time (t + 1) = line + 1

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • Parameters List at time t = [ ]
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • line number of method method_name of class class_name in (Class Map at time t) = line

    then the tab at time (t + 1) = 2

    (link)
  • if the following are true:
    • expression state at time t = "call_build_args"
    • Parameters List at time t = [ ]
    • the expression at time t = obj_name.method_name(args)
    • value at obj_name in map (Variables Map at time t) = Python reference index
    • the element at index index of stack (Python Object Store at time t) = Python object: [ entry "__class_name__": class_name, e_rest ]
    • line number of method method_name of class class_name in (Class Map at time t) = line

    then Control Map at time (t + 1) = [ entry 0: (pair ("class", class_name)), [ entry 1: (pair ("method", method_name)), [ ] ] ]

    (link)
  • if the following are true:
    • expression state at time t = "call_function_begin"
    • the expression at time t = obj.attr
    • Value Stack at time t = [ [ Python reference index, [ ] ], v_stack ]
    • the element at index index of stack (Python Object Store at time t) = Python object: attributes

    then Return Value at time (t + 1) = value at attr in map attributes

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Variables Map at time (t + 1) = varis

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then the line at time (t + 1) = line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then the tab at time (t + 1) = tab

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then expression state at time (t + 1) = "call_returned"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then parent stack at time (t + 1) = parent_stack

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then stack at time (t + 1) = rest

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Value Stack at time (t + 1) = value_stack

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then arguments stack at time (t + 1) = arg_stack

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", mname)
    • stack at time t = [ program context with variables: varis and expression state: (expression state with parent stack: parent_stack arguments: arg_stack values: value_stack line: line tab: tab) and control map: control_map, rest ]

    then Control Map at time (t + 1) = control_map

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", "__init__")

    then Return Value at time (t + 1) = value at self in map (Variables Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("method", method_name)
    • not (method_name = "__init__")

    then Return Value at time (t + 1) = None

    (link)
  • if the following are true:
    • value at j in map map_a = block
    • not (the first token in block = "for")

    then map map_a does not contain a for loop entry at line: i and tab: j

    (link)
  • if the following are true:
    • value at j in map map_a = trio ("for", line, ex)
    • not (line = i)

    then map map_a does not contain a for loop entry at line: i and tab: j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Variables Map at time (t + 1) = result of storing elem at key: target in map: (Variables Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then the tab at time (t + 1) = j + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Control Map at time (t + 1) = result of storing (trio ("for", i, rest)) at key: j in map: (Control Map at time t)

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then expression state at time (t + 1) = "not_expr"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ elem, rest ])

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then expression state at time (t + 1) = "not_expr"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = for target in iterable_ex:
    • value at j in map (Control Map at time t) = trio ("for", i, [ ])

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the line at time (t + 1) = for_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then expression state at time (t + 1) = expression state at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the line at time (t + 1) = for_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then stack at time (t + 1) = stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then "if" map at time (t + 1) = "if" map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then expression state at time (t + 1) = expression state at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then 'while stack' at time (t + 1) = 'while stack' at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = trio ("for", for_line, iterable)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if value at method_name in map (value at "methods" in map (value at class_name in map class_defs)) = method_map, then definition of method method_name of class class_name in class_defs = method_map (link)
  • if the following are true:
    • value at class_name in map class_defs = class_def
    • value at "methods" in map class_def = methods_map
    • map methods_map contains key method_name = False

    then definition of method method_name of class class_name in class_defs = definition of method method_name of base classes (value at "bases" in map class_def) in class_defs

    (link)
  • if the following are true:
    • value at first_base in map class_defs = class_def
    • value at "methods" in map class_def = methods_map
    • map methods_map contains key method_name = False

    then definition of method method_name of base classes [ first_base, rest ] in class_defs = definition of method method_name of base classes rest in class_defs

    (link)
  • if the following are true:
    • definition of method method_name of class class_name in class_defs = method_map
    • value at "params" in map method_map = params

    then method parameters where the Class Map is class_defs, class name is class_name, and method name is method_name = params

    (link)
  • if the following are true:
    • definition of method method_name of class class_name in class_defs = method_map
    • value at "line" in map method_map = line

    then line number of method method_name of class class_name in class_defs = line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the line at time (t + 1) = while_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Expression Stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the line at time (t + 1) = while_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Expression Stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("while", while_line)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Expression Stack at time (t + 1) = [ ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • number of lines = i - 1
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then "break" state at (t + 1) = "not_breaking"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "break" state at t = "breaking"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then "break" state at (t + 1) = "breaking"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then the line at time (t + 1) = while_line

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = True

    then "continue" state at (t + 1) = "not_continuing"

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • "continue" state at t = "continuing"
    • value at (j - 1) in map (Control Map at time t) = control_value
    • control_value describes a loop = False

    then "continue" state at (t + 1) = "continuing"

    (link)
  • if the following are true:
    • Expression Stack at time t = [ [ x, ys ], rest ]
    • Value Stack at time t = [ values, v_rest ]
    • x is a variable

    then Value Stack at time (t + 1) = [ [ value at x in map (Variables Map at time t), values ], v_rest ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then Expression Stack at time (t + 1) = [ [ expr, [ ] ], [ ] ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then Value Stack at time (t + 1) = [ [ ], [ ] ]

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", False)
    • Expression Stack at time t = [ ]

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • Expression Stack at time t = [ ]

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • Expression Stack at time t = [ ]

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • Expression Stack at time t = [ ]

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • Expression Stack at time t = [ ]

    then Control Map at time (t + 1) = Control Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • Expression Stack at time t = [ ]

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = elif test:
    • value at j in map (Control Map at time t) = pair ("if", True)
    • Expression Stack at time t = [ ]

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", False)

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", False)

    then the tab at time (t + 1) = j + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", True)

    then the line at time (t + 1) = i + 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab j = else:
    • value at j in map (Control Map at time t) = pair ("if", True)

    then the tab at time (t + 1) = j

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the line at time (t + 1) = i

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then the tab at time (t + 1) = j - 1

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Variables Map at time (t + 1) = Variables Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Context Stack at time (t + 1) = Context Stack at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Python Object Store at time (t + 1) = Python Object Store at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Class Map at time (t + 1) = Class Map at time t

    (link)
  • if the following are true:
    • the line at time t = i
    • the tab at time t = j
    • statement at line i, tab k = s
    • k < j
    • value at (j - 1) in map (Control Map at time t) = pair ("if", if_value)

    then Control Map at time (t + 1) = Control Map at time t

    (link)


Comments

Please log in to add comments