#base.

% Domain: driverlog, Problem: DLOG-3-2-5
% 
% 
% OBJECTS  >>>>>
typedobject( location( p12 ) ).
typedobject( location( s0 ) ).
typedobject( truck( truck1 ) ).
typedobject( truck( truck2 ) ).
typedobject( driver( driver1 ) ).
typedobject( location( s2 ) ).
typedobject( driver( driver3 ) ).
typedobject( driver( driver2 ) ).
typedobject( location( p02 ) ).
typedobject( location( p01 ) ).
typedobject( obj( package1 ) ).
typedobject( obj( package2 ) ).
typedobject( obj( package3 ) ).
typedobject( obj( package4 ) ).
typedobject( obj( package5 ) ).
typedobject( location( s1 ) ).
% <<<<<  OBJECTS
% 

% 
% 
% DOMAIN PREDICATES  >>>>>
holds( link( s1,s2 ) ).
holds( path( s2,p12 ) ).
holds( path( p12,s1 ) ).
holds( link( s0,s2 ) ).
holds( path( p02,s0 ) ).
holds( path( p02,s2 ) ).
holds( link( s2,s0 ) ).
holds( path( p01,s0 ) ).
holds( path( s0,p01 ) ).
holds( path( s1,p01 ) ).
holds( path( p12,s2 ) ).
holds( link( s2,s1 ) ).
holds( link( s0,s1 ) ).
holds( path( s0,p02 ) ).
holds( path( s1,p12 ) ).
holds( path( p01,s1 ) ).
holds( link( s1,s0 ) ).
holds( path( s2,p02 ) ).
% <<<<<  DOMAIN PREDICATES
% 

% 
% 
% INIT  >>>>>
init( at( package1,s0 ) ).
init( at( driver3,s0 ) ).
init( at( driver2,s0 ) ).
init( empty( truck2 ) ).
init( at( truck1,s1 ) ).
init( at( truck2,s1 ) ).
init( at( driver1,s1 ) ).
init( empty( truck1 ) ).
init( at( package2,s0 ) ).
init( at( package5,s1 ) ).
init( at( package4,s2 ) ).
init( at( package3,s2 ) ).
% <<<<<  INIT
% 

% 
% 
% GOAL  >>>>>
goal( at( driver2,s2 ),true ).
goal( at( truck1,s2 ),true ).
goal( at( truck2,s2 ),true ).
goal( at( package1,s1 ),true ).
goal( at( package2,s1 ),true ).
goal( at( package3,s1 ),true ).
goal( at( package4,s0 ),true ).
goal( at( package5,s1 ),true ).
% <<<<<  GOAL
% 

