
planner_task(1,
[se(block,block6,[clear(block6),on_block(block6,block4)])],

[ss(gripper,tom,[free(tom)]),
ss(block,block1,[on_table(block1),clear(block1)]),
ss(block,block2,[on_table(block2),clear(block2)]),
ss(block,block3,[on_table(block3)]),
ss(block,block4,[on_table(block4)]),
ss(block,block5,[on_block(block5,block4),clear(block5)]),
ss(block,block6,[on_table(block6),clear(block6)]),
ss(block,block7,[on_block(block7,block3),clear(block7)])]
).

planner_task(2,
[se(block,block2,[on_block(block2,block5)]),
se(block,block1,[clear(block1),on_block(block1,block2)]),
se(gripper,tom,[busy(tom)])],

[ss(gripper,tom,[free(tom)]),
ss(block,block1,[on_block(block1,block3),clear(block1)]),
ss(block,block2,[on_table(block2)]),
ss(block,block3,[on_table(block3)]),
ss(block,block4,[on_table(block4)]),
ss(block,block5,[on_table(block5),clear(block5)]),
ss(block,block6,[on_block(block6,block4),clear(block6)]),
ss(block,block7,[on_block(block7,block2),clear(block7)])]
).

planner_task(3,
[se(gripper,tom,[free(tom)]),
se(block,block1,[on_block(block1,block2)])],

[ss(gripper,tom,[free(tom)]),
ss(block,block1,[on_table(block1)]),
ss(block,block2,[on_table(block2),clear(block2)]),
ss(block,block3,[on_block(block3,block1),clear(block3)]),
ss(block,block4,[on_table(block4),clear(block4)]),
ss(block,block5,[on_table(block5),clear(block5)]),
ss(block,block6,[on_table(block6),clear(block6)]),
ss(block,block7,[on_table(block7),clear(block7)])]
).

planner_task(4,
[se(block,block6,[on_block(block6,block4)]),
se(block,block2,[clear(block2)]),
se(gripper,tom,[free(tom)])],

[ss(gripper,tom,[busy(tom)]),
ss(block,block1,[on_block(block1,block4),clear(block1)]),
ss(block,block2,[on_table(block2)]),
ss(block,block3,[gripped(block3,tom)]),
ss(block,block4,[on_table(block4)]),
ss(block,block5,[on_block(block5,block7),clear(block5)]),
ss(block,block6,[on_block(block6,block2),clear(block6)]),
ss(block,block7,[on_table(block7)])]
).

planner_task(5,
[se(block,block7,[gripped(block7,tom)]),
se(block,block6,[on_table(block6)]),
se(gripper,tom,[busy(tom)])],

[ss(gripper,tom,[busy(tom)]),
ss(block,block1,[on_table(block1),clear(block1)]),
ss(block,block2,[on_block(block2,block5),clear(block2)]),
ss(block,block3,[on_table(block3)]),
ss(block,block4,[gripped(block4,tom)]),
ss(block,block5,[on_block(block5,block6)]),
ss(block,block6,[on_table(block6)]),
ss(block,block7,[on_block(block7,block3),clear(block7)])]
).
