1initiatedAt(rich(X)=true, T) :- 2 happensAt(win_lottery(X), T). 3 4terminatedAt(rich(X)=true, T) :- 5 happensAt(lose_wallet(X), T). 6 7initiatedAt(location(X)=Y, T) :- 8 happensAt(go_to(X,Y), T). 9 10holdsFor(happy(X)=true, I) :- 11 holdsFor(rich(X)=true, I1), 12 holdsFor(location(X)=pub, I2), 13 union_all([I1,I2], I)