Well, OK, I'm not sure if that's a bug or not, and at any rate, there
should be some error message that would make this clear for the next
person.  Anatoly, Vitaly, opinions?  Can you fix this so that this kind of
user-error is easier to track down?

--linas

(I can't cc Anatoly, can't find his email.)

On Mon, Jan 20, 2020 at 4:18 PM Alexander Gabriel <goo...@4d6.de> wrote:

> Thanks!
>
> what I found out is: the function needs to be defined in the python file
> that is actually run, not any of those that are imported, even if all the
> rest of the interaction happens in imported modules and files.
>
>
> Am Montag, 20. Januar 2020 22:07:04 UTC schrieb linas:
>>
>> It goes here:
>>
>>
>> https://github.com/opencog/atomspace/blob/873431bdae3b3f44ed26c47993fee8b2979d7cf9/opencog/atoms/execution/ExecutionOutputLink.cc#L202-L211
>>
>> and then into here
>>
>>
>> https://github.com/opencog/atomspace/blob/873431bdae3b3f44ed26c47993fee8b2979d7cf9/opencog/cython/PythonEval.cc#L995
>>
>> and dives into cython code.   But really, all this should work quite
>> well, its tested in assorted unit tests ... so the root cause is ... well I
>> don't know where. Since you're having trouble with this, the fix might be
>> better error detection, better error logging .. finding the problem should
>> not require a dive into the bowels of teh code.   Triple-check your error
>> logs ...
>>
>> --linas
>>
>> On Mon, Jan 20, 2020 at 3:03 PM Alexander Gabriel <goo...@4d6.de> wrote:
>>
>>> Hiya,
>>>
>>> with your help I got most of my reasoning running in a test setting,
>>> running it under my ROS node though, fails due to the python function
>>> (which calculates truth values) not being called.
>>>
>>> Does anyone have a clue how the code searches for the function name when
>>> we call it like so:
>>>         deduction_rule = BindLink(
>>>             VariableList(
>>>                 TypedVariableLink(
>>>                     VariableNode('$A'),
>>>                     TypeNode('ConceptNode')),
>>>                 TypedVariableLink(
>>>                     VariableNode('$B'),
>>>                     TypeNode('ConceptNode')),
>>>                 TypedVariableLink(
>>>                     VariableNode('$C'),
>>>                     TypeNode('ConceptNode'))),
>>>             AndLink(
>>>                 ImplicationLink(
>>>                     VariableNode('$A'),
>>>                     VariableNode('$B')),
>>>                 ImplicationLink(
>>>                     VariableNode('$B'),
>>>                     VariableNode('$C')),
>>>                 NotLink(
>>>                     EqualLink(
>>>                         VariableNode('$A'),
>>>                         VariableNode('$C')))),
>>>             ExecutionOutputLink(
>>>                 GroundedSchemaNode('py: deduction_formula'),
>>>                 ListLink(
>>>                     ImplicationLink(
>>>                         VariableNode('$A'),
>>>                         VariableNode('$C')),
>>>                     ImplicationLink(
>>>                         VariableNode('$A'),
>>>                         VariableNode('$B')),
>>>                     ImplicationLink(
>>>                         VariableNode('$B'),
>>>                         VariableNode('$C')))))
>>>
>>> I tried to define the deduction formula as the member of the same class
>>> in which this happens, as a standalone function at the toplevel of the file
>>> as well as an import from another module, none of which was successful.
>>>
>>> Best,
>>> Alex
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "opencog" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to ope...@googlegroups.com.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/opencog/8078db0b-aee3-4d57-8319-50e76ad60003%40googlegroups.com
>>> <https://groups.google.com/d/msgid/opencog/8078db0b-aee3-4d57-8319-50e76ad60003%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>
>>
>> --
>> cassette tapes - analog TV - film cameras - you
>>
> --
> You received this message because you are subscribed to the Google Groups
> "opencog" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to opencog+unsubscr...@googlegroups.com.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/opencog/dd68bda3-746f-4206-a740-ba39f0f4058c%40googlegroups.com
> <https://groups.google.com/d/msgid/opencog/dd68bda3-746f-4206-a740-ba39f0f4058c%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
>


-- 
cassette tapes - analog TV - film cameras - you

-- 
You received this message because you are subscribed to the Google Groups 
"opencog" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to opencog+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/opencog/CAHrUA37cg0SfPxNw8ggxMAz18n1XwsaSsVX9D5901FHyANNC4w%40mail.gmail.com.

Reply via email to