#base.

% Domain: Rover, Problem: roverprob5142
% 
% 
% OBJECTS  >>>>>
typedobject( objective( objective1 ) ).
typedobject( camera( camera3 ) ).
typedobject( waypoint( waypoint8 ) ).
typedobject( waypoint( waypoint9 ) ).
typedobject( waypoint( waypoint6 ) ).
typedobject( store( rover3store ) ).
typedobject( mode( low_res ) ).
typedobject( waypoint( waypoint5 ) ).
typedobject( store( rover0store ) ).
typedobject( waypoint( waypoint2 ) ).
typedobject( waypoint( waypoint0 ) ).
typedobject( lander( general ) ).
typedobject( camera( camera2 ) ).
typedobject( rover( rover2 ) ).
typedobject( rover( rover3 ) ).
typedobject( rover( rover0 ) ).
typedobject( rover( rover1 ) ).
typedobject( objective( objective0 ) ).
typedobject( waypoint( waypoint3 ) ).
typedobject( objective( objective3 ) ).
typedobject( waypoint( waypoint1 ) ).
typedobject( mode( high_res ) ).
typedobject( waypoint( waypoint10 ) ).
typedobject( waypoint( waypoint11 ) ).
typedobject( mode( colour ) ).
typedobject( camera( camera1 ) ).
typedobject( objective( objective2 ) ).
typedobject( objective( objective4 ) ).
typedobject( camera( camera0 ) ).
typedobject( store( rover2store ) ).
typedobject( waypoint( waypoint7 ) ).
typedobject( store( rover1store ) ).
typedobject( waypoint( waypoint4 ) ).
% <<<<<  OBJECTS
% 

% 
% 
% DOMAIN PREDICATES  >>>>>
holds( visible_from( objective1,waypoint3 ) ).
holds( store_of( rover0store,rover0 ) ).
holds( can_traverse( rover3,waypoint9,waypoint4 ) ).
holds( can_traverse( rover2,waypoint2,waypoint6 ) ).
holds( can_traverse( rover1,waypoint3,waypoint2 ) ).
holds( visible_from( objective1,waypoint4 ) ).
holds( store_of( rover1store,rover1 ) ).
holds( can_traverse( rover1,waypoint10,waypoint2 ) ).
holds( equipped_for_rock_analysis( rover1 ) ).
holds( can_traverse( rover2,waypoint8,waypoint0 ) ).
holds( can_traverse( rover3,waypoint4,waypoint9 ) ).
holds( visible( waypoint7,waypoint6 ) ).
holds( can_traverse( rover3,waypoint1,waypoint0 ) ).
holds( can_traverse( rover2,waypoint6,waypoint2 ) ).
holds( can_traverse( rover1,waypoint5,waypoint2 ) ).
holds( can_traverse( rover0,waypoint7,waypoint10 ) ).
holds( visible( waypoint1,waypoint10 ) ).
holds( can_traverse( rover1,waypoint2,waypoint4 ) ).
holds( visible( waypoint3,waypoint5 ) ).
holds( visible_from( objective1,waypoint5 ) ).
holds( visible( waypoint4,waypoint2 ) ).
holds( can_traverse( rover1,waypoint3,waypoint8 ) ).
holds( visible( waypoint9,waypoint2 ) ).
holds( can_traverse( rover1,waypoint3,waypoint1 ) ).
holds( visible( waypoint3,waypoint9 ) ).
holds( can_traverse( rover1,waypoint6,waypoint2 ) ).
holds( can_traverse( rover0,waypoint7,waypoint8 ) ).
holds( equipped_for_soil_analysis( rover0 ) ).
holds( visible( waypoint7,waypoint0 ) ).
holds( can_traverse( rover2,waypoint0,waypoint7 ) ).
holds( can_traverse( rover0,waypoint1,waypoint0 ) ).
holds( visible_from( objective1,waypoint0 ) ).
holds( can_traverse( rover2,waypoint9,waypoint2 ) ).
holds( can_traverse( rover2,waypoint0,waypoint10 ) ).
holds( can_traverse( rover0,waypoint7,waypoint4 ) ).
holds( visible( waypoint5,waypoint4 ) ).
holds( can_traverse( rover0,waypoint0,waypoint1 ) ).
holds( can_traverse( rover0,waypoint6,waypoint1 ) ).
holds( visible( waypoint1,waypoint3 ) ).
holds( visible( waypoint3,waypoint1 ) ).
holds( visible_from( objective2,waypoint1 ) ).
holds( visible( waypoint7,waypoint4 ) ).
holds( visible_from( objective0,waypoint3 ) ).
holds( visible_from( objective4,waypoint1 ) ).
holds( visible( waypoint10,waypoint5 ) ).
holds( can_traverse( rover3,waypoint10,waypoint2 ) ).
holds( can_traverse( rover1,waypoint9,waypoint2 ) ).
holds( visible( waypoint9,waypoint11 ) ).
holds( can_traverse( rover0,waypoint7,waypoint11 ) ).
holds( can_traverse( rover3,waypoint0,waypoint8 ) ).
holds( visible( waypoint0,waypoint11 ) ).
holds( visible_from( objective2,waypoint9 ) ).
holds( on_board( camera2,rover0 ) ).
holds( visible( waypoint11,waypoint10 ) ).
holds( visible( waypoint2,waypoint4 ) ).
holds( can_traverse( rover3,waypoint0,waypoint1 ) ).
holds( can_traverse( rover0,waypoint8,waypoint7 ) ).
holds( calibration_target( camera1,objective4 ) ).
holds( can_traverse( rover1,waypoint2,waypoint6 ) ).
holds( can_traverse( rover2,waypoint4,waypoint9 ) ).
holds( visible( waypoint5,waypoint10 ) ).
holds( visible( waypoint10,waypoint7 ) ).
holds( visible_from( objective4,waypoint0 ) ).
holds( can_traverse( rover0,waypoint10,waypoint7 ) ).
holds( visible_from( objective2,waypoint8 ) ).
holds( can_traverse( rover1,waypoint9,waypoint11 ) ).
holds( visible_from( objective0,waypoint0 ) ).
holds( can_traverse( rover1,waypoint4,waypoint2 ) ).
holds( can_traverse( rover1,waypoint11,waypoint9 ) ).
holds( equipped_for_soil_analysis( rover1 ) ).
holds( visible( waypoint7,waypoint5 ) ).
holds( store_of( rover3store,rover3 ) ).
holds( can_traverse( rover1,waypoint2,waypoint5 ) ).
holds( visible_from( objective2,waypoint6 ) ).
holds( visible_from( objective0,waypoint4 ) ).
holds( visible( waypoint3,waypoint4 ) ).
holds( visible( waypoint10,waypoint3 ) ).
holds( equipped_for_rock_analysis( rover3 ) ).
holds( can_traverse( rover1,waypoint1,waypoint0 ) ).
holds( can_traverse( rover0,waypoint9,waypoint1 ) ).
holds( visible_from( objective0,waypoint2 ) ).
holds( equipped_for_rock_analysis( rover0 ) ).
holds( visible_from( objective4,waypoint4 ) ).
holds( can_traverse( rover3,waypoint3,waypoint1 ) ).
holds( can_traverse( rover1,waypoint8,waypoint3 ) ).
holds( visible( waypoint4,waypoint3 ) ).
holds( supports( camera3,colour ) ).
holds( visible( waypoint0,waypoint1 ) ).
holds( visible( waypoint8,waypoint11 ) ).
holds( visible( waypoint8,waypoint5 ) ).
holds( visible_from( objective2,waypoint4 ) ).
holds( visible( waypoint4,waypoint9 ) ).
holds( visible( waypoint5,waypoint8 ) ).
holds( can_traverse( rover2,waypoint9,waypoint1 ) ).
holds( can_traverse( rover0,waypoint3,waypoint1 ) ).
holds( can_traverse( rover1,waypoint1,waypoint3 ) ).
holds( can_traverse( rover2,waypoint0,waypoint8 ) ).
holds( visible( waypoint10,waypoint11 ) ).
holds( visible( waypoint0,waypoint10 ) ).
holds( visible( waypoint1,waypoint0 ) ).
holds( visible( waypoint10,waypoint0 ) ).
holds( calibration_target( camera3,objective3 ) ).
holds( visible( waypoint10,waypoint2 ) ).
holds( can_traverse( rover1,waypoint2,waypoint9 ) ).
holds( visible( waypoint5,waypoint2 ) ).
holds( can_traverse( rover2,waypoint9,waypoint4 ) ).
holds( visible_from( objective2,waypoint7 ) ).
holds( visible( waypoint2,waypoint6 ) ).
holds( visible( waypoint9,waypoint3 ) ).
holds( can_traverse( rover3,waypoint10,waypoint0 ) ).
holds( equipped_for_imaging( rover0 ) ).
holds( visible( waypoint0,waypoint9 ) ).
holds( visible( waypoint11,waypoint4 ) ).
holds( visible( waypoint9,waypoint4 ) ).
holds( can_traverse( rover2,waypoint7,waypoint0 ) ).
holds( visible( waypoint6,waypoint1 ) ).
holds( can_traverse( rover2,waypoint3,waypoint9 ) ).
holds( can_traverse( rover3,waypoint0,waypoint10 ) ).
holds( visible( waypoint3,waypoint8 ) ).
holds( visible( waypoint8,waypoint0 ) ).
holds( can_traverse( rover3,waypoint9,waypoint0 ) ).
holds( supports( camera1,colour ) ).
holds( visible_from( objective4,waypoint7 ) ).
holds( visible_from( objective1,waypoint1 ) ).
holds( visible( waypoint6,waypoint2 ) ).
holds( visible_from( objective1,waypoint6 ) ).
holds( visible( waypoint1,waypoint6 ) ).
holds( equipped_for_rock_analysis( rover2 ) ).
holds( can_traverse( rover2,waypoint2,waypoint9 ) ).
holds( can_traverse( rover0,waypoint6,waypoint2 ) ).
holds( can_traverse( rover0,waypoint2,waypoint6 ) ).
holds( can_traverse( rover3,waypoint7,waypoint10 ) ).
holds( can_traverse( rover1,waypoint0,waypoint1 ) ).
holds( can_traverse( rover0,waypoint2,waypoint5 ) ).
holds( visible( waypoint8,waypoint10 ) ).
holds( visible( waypoint3,waypoint2 ) ).
holds( can_traverse( rover3,waypoint0,waypoint11 ) ).
holds( visible_from( objective4,waypoint8 ) ).
holds( visible( waypoint9,waypoint1 ) ).
holds( can_traverse( rover2,waypoint10,waypoint0 ) ).
holds( visible_from( objective1,waypoint2 ) ).
holds( can_traverse( rover1,waypoint2,waypoint3 ) ).
holds( can_traverse( rover3,waypoint1,waypoint3 ) ).
holds( can_traverse( rover0,waypoint4,waypoint7 ) ).
holds( visible( waypoint4,waypoint7 ) ).
holds( visible_from( objective2,waypoint0 ) ).
holds( visible( waypoint0,waypoint7 ) ).
holds( visible_from( objective0,waypoint1 ) ).
holds( visible( waypoint10,waypoint9 ) ).
holds( can_traverse( rover0,waypoint6,waypoint7 ) ).
holds( can_traverse( rover0,waypoint1,waypoint9 ) ).
holds( on_board( camera1,rover2 ) ).
holds( visible( waypoint6,waypoint8 ) ).
holds( visible_from( objective2,waypoint3 ) ).
holds( calibration_target( camera0,objective3 ) ).
holds( visible( waypoint9,waypoint0 ) ).
holds( can_traverse( rover2,waypoint9,waypoint3 ) ).
holds( can_traverse( rover3,waypoint0,waypoint9 ) ).
holds( visible_from( objective4,waypoint6 ) ).
holds( supports( camera2,high_res ) ).
holds( visible( waypoint11,waypoint7 ) ).
holds( visible_from( objective0,waypoint5 ) ).
holds( store_of( rover2store,rover2 ) ).
holds( visible( waypoint10,waypoint1 ) ).
holds( visible_from( objective2,waypoint2 ) ).
holds( visible_from( objective4,waypoint5 ) ).
holds( on_board( camera3,rover2 ) ).
holds( visible( waypoint3,waypoint10 ) ).
holds( visible_from( objective4,waypoint10 ) ).
holds( can_traverse( rover3,waypoint1,waypoint6 ) ).
holds( supports( camera3,low_res ) ).
holds( visible_from( objective0,waypoint7 ) ).
holds( can_traverse( rover2,waypoint2,waypoint5 ) ).
holds( can_traverse( rover1,waypoint4,waypoint7 ) ).
holds( visible( waypoint8,waypoint3 ) ).
holds( visible_from( objective4,waypoint2 ) ).
holds( can_traverse( rover2,waypoint9,waypoint0 ) ).
holds( on_board( camera0,rover2 ) ).
holds( visible( waypoint11,waypoint9 ) ).
holds( visible( waypoint11,waypoint0 ) ).
holds( visible( waypoint10,waypoint8 ) ).
holds( can_traverse( rover3,waypoint2,waypoint10 ) ).
holds( visible( waypoint8,waypoint6 ) ).
holds( can_traverse( rover3,waypoint6,waypoint1 ) ).
holds( can_traverse( rover1,waypoint2,waypoint10 ) ).
holds( visible( waypoint2,waypoint3 ) ).
holds( visible_from( objective0,waypoint6 ) ).
holds( equipped_for_imaging( rover2 ) ).
holds( visible( waypoint1,waypoint9 ) ).
holds( visible_from( objective0,waypoint8 ) ).
holds( can_traverse( rover0,waypoint5,waypoint2 ) ).
holds( visible( waypoint4,waypoint11 ) ).
holds( can_traverse( rover3,waypoint5,waypoint10 ) ).
holds( visible( waypoint4,waypoint5 ) ).
holds( can_traverse( rover2,waypoint5,waypoint2 ) ).
holds( can_traverse( rover0,waypoint7,waypoint6 ) ).
holds( visible_from( objective3,waypoint1 ) ).
holds( can_traverse( rover1,waypoint7,waypoint4 ) ).
holds( visible_from( objective2,waypoint5 ) ).
holds( visible( waypoint7,waypoint8 ) ).
holds( visible_from( objective4,waypoint3 ) ).
holds( visible( waypoint6,waypoint7 ) ).
holds( can_traverse( rover2,waypoint0,waypoint9 ) ).
holds( visible( waypoint2,waypoint10 ) ).
holds( can_traverse( rover0,waypoint1,waypoint3 ) ).
holds( calibration_target( camera2,objective2 ) ).
holds( visible( waypoint7,waypoint10 ) ).
holds( visible( waypoint2,waypoint5 ) ).
holds( visible( waypoint5,waypoint3 ) ).
holds( can_traverse( rover0,waypoint1,waypoint6 ) ).
holds( can_traverse( rover3,waypoint10,waypoint7 ) ).
holds( visible( waypoint8,waypoint7 ) ).
holds( can_traverse( rover0,waypoint11,waypoint7 ) ).
holds( can_traverse( rover3,waypoint11,waypoint0 ) ).
holds( can_traverse( rover2,waypoint1,waypoint9 ) ).
holds( visible( waypoint5,waypoint7 ) ).
holds( visible( waypoint0,waypoint8 ) ).
holds( can_traverse( rover3,waypoint8,waypoint0 ) ).
holds( supports( camera0,low_res ) ).
holds( visible( waypoint7,waypoint11 ) ).
holds( visible_from( objective4,waypoint9 ) ).
holds( can_traverse( rover2,waypoint11,waypoint0 ) ).
holds( visible( waypoint2,waypoint9 ) ).
holds( visible( waypoint9,waypoint10 ) ).
holds( can_traverse( rover3,waypoint10,waypoint5 ) ).
holds( visible_from( objective3,waypoint0 ) ).
holds( at_lander( general,waypoint6 ) ).
holds( visible( waypoint11,waypoint8 ) ).
holds( supports( camera3,high_res ) ).
holds( can_traverse( rover2,waypoint0,waypoint11 ) ).
% <<<<<  DOMAIN PREDICATES
% 

% 
% 
% INIT  >>>>>
init( at_soil_sample( waypoint11 ) ).
init( at_soil_sample( waypoint9 ) ).
init( channel_free( general ) ).
init( empty( rover3store ) ).
init( at_rock_sample( waypoint10 ) ).
init( available( rover1 ) ).
init( at_soil_sample( waypoint5 ) ).
init( at_rock_sample( waypoint5 ) ).
init( at_soil_sample( waypoint4 ) ).
init( available( rover0 ) ).
init( at_rock_sample( waypoint3 ) ).
init( at_rock_sample( waypoint8 ) ).
init( at_rock_sample( waypoint1 ) ).
init( empty( rover1store ) ).
init( at_soil_sample( waypoint0 ) ).
init( at_soil_sample( waypoint8 ) ).
init( at_rock_sample( waypoint11 ) ).
init( empty( rover2store ) ).
init( available( rover2 ) ).
init( empty( rover0store ) ).
init( at_rock_sample( waypoint2 ) ).
init( at( rover1,waypoint2 ) ).
init( at_soil_sample( waypoint7 ) ).
init( at( rover0,waypoint6 ) ).
init( available( rover3 ) ).
init( at_rock_sample( waypoint9 ) ).
init( at_soil_sample( waypoint1 ) ).
init( at( rover2,waypoint9 ) ).
init( at( rover3,waypoint0 ) ).
% <<<<<  INIT
% 

% 
% 
% GOAL  >>>>>
goal( communicated_soil_data( waypoint4 ),true ).
goal( communicated_soil_data( waypoint9 ),true ).
goal( communicated_soil_data( waypoint1 ),true ).
goal( communicated_soil_data( waypoint7 ),true ).
goal( communicated_rock_data( waypoint3 ),true ).
goal( communicated_rock_data( waypoint10 ),true ).
goal( communicated_rock_data( waypoint5 ),true ).
goal( communicated_rock_data( waypoint1 ),true ).
goal( communicated_image_data( objective0,high_res ),true ).
goal( communicated_image_data( objective4,high_res ),true ).
goal( communicated_image_data( objective2,high_res ),true ).
% <<<<<  GOAL
% 

