Skip to content

Computing path lengths #1

@remysucre

Description

@remysucre

Hi, I'm attempting to run the following program:

path(Start,End,W) :- edge(Start,End,W).
path(Start,End,U+V) :- path(Start,Mid,U), edge(Mid,End,V).

edge(1, 2, 3).
edge(2, 3, 1).
edge(1, 3, 2).

After loading the program in the dyna repl and querying for path(X,Y,W), I see the correct results printed but also the following error:

(dyna) ~/datalog-sys/dyna-R dyna
$> load demo.dyna
$> path(X, Y, W)
user query: path(X, Y, W)
result: {'X': 1, 'Y': 2, 'W': 3, 'Result': True} @ ('Terminal', 1)
result: {'X': 1, 'Y': 3, 'W': 2, 'Result': True} @ ('Terminal', 1)
result: {'X': 1, 'Y': 3, 'W': 4, 'Result': True} @ ('Terminal', 1)
result: {'X': 2, 'Y': 3, 'W': 1, 'Result': True} @ ('Terminal', 1)
Traceback (most recent call last):
  File "/home/remywang/datalog-sys/dyna-R/dyna/repl.py", line 528, in cmdloop
    user_query(text)
  File "/home/remywang/datalog-sys/dyna-R/dyna/syntax/normalizer.py", line 261, in user_query
    loop(rr,
  File "/home/remywang/datalog-sys/dyna-R/dyna/interpreter.py", line 645, in loop
    loop_partition(R, frame, cb, partition)
  File "/home/remywang/datalog-sys/dyna-R/dyna/interpreter.py", line 585, in loop_partition
    for bd in partition.run(frame):
  File "/home/remywang/datalog-sys/dyna-R/dyna/interpreter.py", line 421, in run
    if self.iterators[j].bind_iterator(frame, self.variable, vv):
  File "/home/remywang/datalog-sys/dyna-R/dyna/interpreter.py", line 408, in bind_iterator
    return any(v.bind_iterator(self.variable, value) for v in self.iterators)
  File "/home/remywang/datalog-sys/dyna-R/dyna/interpreter.py", line 408, in <genexpr>
    return any(v.bind_iterator(self.variable, value) for v in self.iterators)
TypeError: bind_iterator() missing 1 required positional argument: 'value'

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions