Skip to content

Message from verifier complains about "Quantifiying over variable that is a method parameter" #24

@rpgoldman

Description

@rpgoldman

Here is the command:

pandaPIparser -V domain.hddl p01.hddl shop-plans/p01.hddl

(I will make all the files available)

Here's the output:

 Matching Task 36 Curpos=0 #sources=1
 Task is: ship-an-order o5
 Attempting matching with source __t_id_8
  Setting ?o = o5
   Unassigned variable ?p
      Quantifiying over variable that is a method parameter: ?p

Task 36 is as follows:

36 (ship-an-order o5) -> ship-an-order-1 8

Here is the task definition:

 (:task ship-an-order :parameters (?o - order))

Here's the definition of ship-an-order-1:

  (:method ship-an-order-1
    :parameters (?order - order ?avail ?new - count)
    :task (ship-an-order ?order)
    :precondition
    (and (goal-shipped ?order)
         (not (shipped ?order))
         (forall (?p - product) (imply (includes ?order ?p) (made ?p)))
         (stacks-avail ?avail)
         (next-count ?avail ?new))
    :ordered-subtasks
    (ship-order ?order ?avail ?new))

This seems to be related to the verifier not liking the quantified precondition. In the source, obviously, there is no method here, but I believe there's something in the transformation performed by pandaPIparser and/or pandaPIgrounder that is expanding this precondition into a method?

Gist with all the input files

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