Author rpgoldman
Recipients malte, rpgoldman, ukuter
Date 2012-02-16.16:56:17
The translator seems to fail on this precondition subexpression:
(exists (?E - (either c_human c_exploit))
                    (controls_proc ?E ?P))
The same either expression works elsewhere, but fails in; can't 
compute a hash function for (either c_human c_exploit).

I will attach domain and problem file.

Note that it's not impossible to rewrite the either to two separate 
existentials, so a bug, but not critical.

Traceback (most recent call last):
  File "/Users/rpg/src/fast-downward/src//translate/", line 570, in 
    task =
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 47, 
in open
    return tasks.Task.parse(domain_pddl, task_pddl)
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 40, in 
    = parse_domain(domain_pddl)
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 160, in 
    action = actions.Action.parse(entry)
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 38, in 
    precondition = conditions.parse_condition(
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 5, 
in parse_condition
    condition = parse_condition_aux(alist, False)
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 37, 
in parse_condition_aux
    parts = [parse_condition_aux(part, negated) for part in args]
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 46, 
in parse_condition_aux
    return ExistentialCondition(parameters, parts)
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 
209, in __init__
    self.hash = hash((self.__class__, self.parameters,
  File "/Users/rpg/src/fast-downward/src/translate/pddl/", line 38, 
in __hash__
    hashval = hash((, self.type))
TypeError: unhashable type: 'list'
Date User Action Args
2012-02-16 16:56:18rpgoldmansetmessageid: <>
2012-02-16 16:56:18rpgoldmansetrecipients: + rpgoldman, malte, ukuter
2012-02-16 16:56:18rpgoldmanlinkissue323 messages
2012-02-16 16:56:17rpgoldmancreate