#!/usr/bin/perl -w

for($i = 1; $i < 21; ++$i){
  $number = $i;
  if($i < 10){
    $number = "0" . $number;
   }
  $init = "\t(:init\n";
  $goal = "\t(:goal\n\t\t(and\n";
  open OUT, "> pfile$number.pddl";

  print OUT "(define (problem CafeProblem1)\n\t(:domain CafeDomain)\n\t(:objects \n\t\t";

  for($t = 1; $t <= $i; ++$t){
    print OUT "table$t ";
    $init .= "\t\t(d_w_available table$t)\n";
  }
  print OUT " - table\n\t\t";

  for($t = 1; $t <= $i; ++$t){
    print OUT "tea$t ";
    $goal .= "\t\t(delivered tea$t table$t)\n";
  }
  print OUT " - tea\n\t\t";

  for($t = 1; $t <= $i; ++$t){
    print OUT "toast$t ";
    $goal .= "\t\t(delivered toast$t table$t)\n";
  }
  print OUT " - toast\n\t\t";

  print OUT "socket1 - socket\n\t\tchef1 - chef\n\t)\n";
  $init .= "\t\t(chef_free chef1)\n\t\t(socket_free socket1)\n\t)\n";
  $goal .= "\t\t)\n\t)\n";
  print OUT $init;
  print OUT $goal;
  print OUT "(:metric minimize (total_delivery_window))\n)\n";

}
