remaro-network / dlToPlanning

small tool to insert OWL axioms into PDDL files
Apache License 2.0
1 stars 0 forks source link

Class as predicate or type? #5

Closed Rezenders closed 4 months ago

Rezenders commented 4 months ago

Hi @tobiaswjohn,

Is there a specific reason why you transform OWL Classes into PDDL predicates? In my view, it would make more sense to have the OWL Classes converted to PDDL types, as they are not a relationship. Keeping only the data and object properties as predicates. What do you think?

tobiaswjohn commented 4 months ago

Yes, transforming OWL classes to predicates is done on purpose and we could not do this with types. The main reason: the class of an individual in the ontology can change over time (similar how the predicate can switch between being true or false over time) but the type of an object in PDDL remains always the same. I.e., the membership in an OWL class is not a type. Another reason that is more technical: although I am not too familiar with types in PDDL, I assume that things like types being sub-types of several types or objects having multiple types might be an issue, which is no problem for OWL classes.

Rezenders commented 4 months ago

Ok, understood. How would you define instances of a "class predicate" in the problem formulation? Something like the following?

(:objects
 f_generate_search_path - object
)
(: init
   (Function f_generate_search_path)
)
tobiaswjohn commented 4 months ago

yes, something like this.