connected(From, CrateLocation, Direction),
        crate(_, CrateLocation, S),
        connected(CrateLocation, CrateTarget, Direction),
-       not(crate(_, CrateTarget, Direction)).
+       not(crate(_, CrateTarget, S)).
 
 % --- Successor state axioms ------------------------------------------
 agent(AgentPlek, result(A, S)) :-
 
 :- [domaintask1].
 
 % --- Definition of the initial state ---------------------------------
+% north and east
 connected(loc1-1, loc2-1, north).
 connected(loc1-1, loc1-2, east).
 connected(loc1-2, loc2-2, north).
 connected(loc3-1, loc3-2, north).
 connected(loc3-2, loc3-3, north).
 
-connected(X, Y, east) :- connected(Y, X, west).
-connected(X, Y, north) :- connected(Y, X, south).
+% The other way around, west and south
+connected(loc2-1, loc1-1, south).
+connected(loc1-2, loc1-1, west).
+connected(loc2-2, loc1-2, south).
+connected(loc1-3, loc1-2, west).
+connected(loc2-3, loc1-3, south).
+connected(loc1-4, loc1-3, west).
+connected(loc2-4, loc1-4, south).
+
+connected(loc3-1, loc2-1, south).
+connected(loc2-2, loc2-1, west).
+connected(loc3-2, loc2-2, south).
+connected(loc2-3, loc2-2, west).
+connected(loc3-3, loc2-3, south).
+connected(loc2-4, loc2-3, west).
+
+connected(loc3-2, loc3-1, south).
+connected(loc3-3, loc3-2, south).
+
+%connected(X, Y, east) :- connected(Y, X, west).
+%connected(X, Y, north) :- connected(Y, X, south).
 
 crate(crate-c, loc2-1, s0).
 crate(crate-b, loc2-2, s0).