block(b1).
block(b2).
block(b3).
block(b4).
block(b5).

on(b3,table,0).
on(b5,table,0).
on(b2,b5   ,0).
on(b4,b3   ,0).
on(b1,b4   ,0).

%              b5
%              b4
%  b1     -->  b3
%  b4 b2       b2
%  b3 b5       b1

:- not on(b1,table,#maxint).
:- not on(b2,b1   ,#maxint).
:- not on(b3,b2   ,#maxint).
:- not on(b4,b3   ,#maxint).
:- not on(b5,b4   ,#maxint).
