Skip to content

Is pandaPIparser case-sensitive? #11

@rpgoldman

Description

@rpgoldman

I notice with the following domain file that I get this message from the parser:

There is no declaration of the subtask drive-ta in the input
Method move-one-ta has the subtask (__t_id_3) drive-ta. The task is declared with 0 parameters, but 2 are given in the method.
There is no declaration of the subtask drive-ta in the input
Method move-more-ta has the subtask (__t_id_5) drive-ta. The task is declared with 0 parameters, but 2 are given in the method.

The action is declared using drive-TA with caps. PDDL is case-insensitive, so I think HDDL should be also, shouldn't it?

Indeed, down-casing the action definition makes this message go away.

Here's the domain:

(define (domain toll-domain)
    (:requirements :negative-preconditions :typing :hierarchy)
  (:types
   location - object
   )
  (:predicates
   (toll-area ?r - region)
   (road ?arg0 - location ?arg1 - location)
   (at ?arg1 - location)
   (pay-location ?l - location)
   )

  (:task move
   :parameters (?l1 - location ?l2 - location)
         )

  (:method move-one
      :parameters (?l1 - location ?l2 - location)
    :task (move ?l1 ?l2)
    :ordered-subtasks (and
                       (drive ?l1 ?l2)
                       )
    )
  (:method move-more
      :parameters (?l1 ?l2 ?l3 - location)
    :task (move ?l1 ?l3)
    :ordered-subtasks (and
                       (drive ?l1 ?l2)
                       (move ?l2 ?l3)
                       )
    )
  (:method move-none
      :parameters (?l1 - location)
    :task (move ?l1 ?l1)
    :ordered-subtasks ()
    )
  (:method move-one-ta
      :parameters (?l1 - location ?l2 - location)
    :task (move ?l1 ?l2)
    :ordered-subtasks (and
                       (drive-ta ?l1 ?l2)
                       (pay-toll ?l2)
                       )
    )
  (:method move-more-ta
      :parameters (?l1 ?l2 ?l3 - location)
    :task (move ?l1 ?l3)
    :ordered-subtasks (and
                       (drive-ta ?l1 ?l2)
                       (move ?l2 ?l3)
                       (pay-toll ?l3)
                       )
    )

  (:action drive
   :parameters (?l1 - location ?l2 - location)
   :precondition 
           (and
            (at ?l1)
            (pay-location ?l1)
            (road ?l1 ?l2)
            )
   :effect
           (and
            (not (at ?l1))
            (at ?l2)
            )
           )
  (:action drive-TA
   :parameters (?l1 - location ?l2 - location)
   :precondition 
           (and
            (at ?l1)
            (road ?l1 ?l2)
            )
   :effect
           (and
            (not (at ?l1))
            (at ?l2)
            )
           )

  (:action pay-toll
   :parameters (?l - location)
   :precondition 
           (and
            (at ?l)
            (pay-location ?l)
            )
   :effect ()
           )
  )

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions