o_1 = iota(Object, lambda o: color(o, "orange") and shape(o, "circle"))
o_2 = iota(Object, lambda o: shape(o, "rectangle"))
o_3 = iota(Object, lambda o: id(o, "letter-H"))
m_1 = iota(Motion, lambda m: type(m, "translate") and post(m, s_top(o_1, o_2)) and agent(m, o_1))
m_2 = iota(Motion, lambda m: type(m, "rotate") and direction(m, "clockwise") and magnitude(m, 90.0) and agent(m, o_3))
t_while(m_1, m_2)
o_1 = iota(Object, lambda o: color(o, "orange") and shape(o, "circle")): True
color: True
shape: True
o_2 = iota(Object, lambda o: shape(o, "rectangle")): True
shape: True
o_3 = iota(Object, lambda o: id(o, "letter-H")): True
id: True
m_1 = iota(Motion, lambda m: type(m, "translate") and post(m, s_top(o_1, o_2)) and agent(m, o_1)): False
type: True
post: False
s_top: False
agent: True
m_2 = iota(Motion, lambda m: type(m, "rotate") and direction(m, "clockwise") and magnitude(m, 90.0) and agent(m, o_3)): True
type: True
direction: True
magnitude: True
agent: True
t_while(m_1, m_2): False
t_while: False
In this initial animation, the report indicates that the translation of the orange circle m_1 is false because the circle never reaches above the rectangle and therefore both post() and s_top() are false. The rotation of the letter H m_2 is true because it rotates 90 degrees clockwise. t_while() is false because m_1 is false.
o_1 = iota(Object, lambda o: color(o, "orange") and shape(o, "circle")): True
color: True
shape: True
o_2 = iota(Object, lambda o: shape(o, "rectangle")): True
shape: True
o_3 = iota(Object, lambda o: id(o, "letter-H")): True
id: True
m_1 = iota(Motion, lambda m: type(m, "translate") and post(m, s_top(o_1, o_2)) and agent(m, o_1)): True
type: True
post: True
s_top: True
agent: True
m_2 = iota(Motion, lambda m: type(m, "rotate") and direction(m, "clockwise") and magnitude(m, 90.0) and agent(m, o_3)): True
type: True
direction: True
magnitude: True
agent: True
t_while(m_1, m_2): True
t_while: True
In this iteration, the translation of the orange circle m_1 has been corrected to reach above the rectangle shape and therefore m_1 is now true. t_while() is true because both m_1 and m_2 are true and they overlap in time.