Is there a 10 property limit (when comparing objects)?

48 views
Skip to first unread message

Dwane

unread,
Nov 10, 2022, 2:01:13 PM11/10/22
to open-nars
I was investigation the similar relationship. I have 3 objects A, B, C, each with 10 properties p0, p1 .. p9, with a Truth value (strength) of 0.7. All 3 objects have all the same properties.

I then state A is similar to B     <A <-> B>.
The system derives that C is similar to A     <C <-> A>.  (great)

However, if I change the number of properties from 10 to 11, this then fails.
Is this a limitation in ONA? Is it possible to configure around this?

Many thanks

Dwane


Sample nal script (Works)


*volume=0
<A --> [p0]>. %0.7%
<A --> [p1]>. %0.7%
<A --> [p2]>. %0.7%
<A --> [p3]>. %0.7%
<A --> [p4]>. %0.7%
<A --> [p5]>. %0.7%
<A --> [p6]>. %0.7%
<A --> [p7]>. %0.7%
<A --> [p8]>. %0.7%
<A --> [p9]>. %0.7%
<B --> [p0]>. %0.7%
<B --> [p1]>. %0.7%
<B --> [p2]>. %0.7%
<B --> [p3]>. %0.7%
<B --> [p4]>. %0.7%
<B --> [p5]>. %0.7%
<B --> [p6]>. %0.7%
<B --> [p7]>. %0.7%
<B --> [p8]>. %0.7%
<B --> [p9]>. %0.7%
<C --> [p0]>. %0.7%
<C --> [p1]>. %0.7%
<C --> [p2]>. %0.7%
<C --> [p3]>. %0.7%
<C --> [p4]>. %0.7%
<C --> [p5]>. %0.7%
<C --> [p6]>. %0.7%
<C --> [p7]>. %0.7%
<C --> [p8]>. %0.7%
<C --> [p9]>. %0.7%
# Now we declare the first two items are similar.
<A <-> B>.
# Repeat the question, what is similar to each item
# What is C most similar to? (No time information) Ideal answer any of A or B
<C <-> A>?
# Assert Last Output Was:["<C <-> A>", "<C <-> B>", "<C <-> (A & B)>"]
Actual output was (which was as expected):
{'input': [{'occurrenceTime': 'eternal', 'punctuation': '?', 'term': '<C <-> A>'}], 'derivations': [], 'answers': [{'occurrenceTime': 'eternal', 'punctuation': '0', 'term': '<C <-> A>', 'truth': {'frequency': '0.979548,', 'confidence': '0.449150'}}], 'executions': [], 'reason': None, 'raw': 'Input: <C <-> A>?\nAnswer: <C <-> A>. creationTime=23 Truth: frequency=0.979548, confidence=0.449150', 'requestOutputArgs': False}


Sample nal script that fails (one extra property) :
*volume=0
<A --> [p0]>. %0.7%
<A --> [p1]>. %0.7%
<A --> [p2]>. %0.7%
<A --> [p3]>. %0.7%
<A --> [p4]>. %0.7%
<A --> [p5]>. %0.7%
<A --> [p6]>. %0.7%
<A --> [p7]>. %0.7%
<A --> [p8]>. %0.7%
<A --> [p9]>. %0.7%
<A --> [p10]>. %0.7%
<B --> [p0]>. %0.7%
<B --> [p1]>. %0.7%
<B --> [p2]>. %0.7%
<B --> [p3]>. %0.7%
<B --> [p4]>. %0.7%
<B --> [p5]>. %0.7%
<B --> [p6]>. %0.7%
<B --> [p7]>. %0.7%
<B --> [p8]>. %0.7%
<B --> [p9]>. %0.7%
<B --> [p10]>. %0.7%
<C --> [p0]>. %0.7%
<C --> [p1]>. %0.7%
<C --> [p2]>. %0.7%
<C --> [p3]>. %0.7%
<C --> [p4]>. %0.7%
<C --> [p5]>. %0.7%
<C --> [p6]>. %0.7%
<C --> [p7]>. %0.7%
<C --> [p8]>. %0.7%
<C --> [p9]>. %0.7%
<C --> [p10]>. %0.7%
# Now we declare the first two items are similar.
<A <-> B>.
# Repeat the question, what is similar to each item
# What is C most similar to? (No time information) Ideal answer any of A or B
<C <-> A>?
# Assert Last Output Was:["<C <-> A>""]
Actual output was:
{'input': [{'occurrenceTime': 'eternal', 'punctuation': '?', 'term': '<C <-> A>'}], 'derivations': [], 'answers': [{'occurrenceTime': 'eternal', 'punctuation': '.', 'term': 'None'}], 'executions': [], 'reason': None, 'raw': 'Input: <C <-> A>?\nAnswer: None.', 'requestOutputArgs': False}


Dwane

unread,
Nov 20, 2022, 4:22:05 PM11/20/22
to open-nars
This limit does not appear to apply if instances are used rather than concepts, i.e. <{A} --> [p0]>. supports more than 10 properties,  where as <A --> [p0]>. can not.
Also, I could not find any obvious constant in the code that allowed the limit of 10 to be increased.

Patrick Hammer

unread,
Nov 20, 2022, 4:35:42 PM11/20/22
to open...@googlegroups.com
Dear Dwane!

Sorry for my late reply, somehow I missed this thread.
If you are using Nalifier.py, it currently only supports the <{A} --> [P]>. case indeed.
Other statements are directly passed on (to ONA), which will often struggle if you have more than 10 properties per instance.
This is part of the reason why Nalifier.py was developed, as it acts as a more effective control mechanism for perceptual reasoning which can be useful in sensory channels.
Also, if you need the <A --> [P]> representation instead of the instance-related one, Nalifier can be extended to support it, but it might take me a few days.
I hope this is helpful to you!

Best regards,
Patrick


--
You received this message because you are subscribed to the Google Groups "open-nars" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-nars+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/open-nars/2ac476cd-1aa5-40b0-be85-380cc24f293fn%40googlegroups.com.

Dwane

unread,
Nov 21, 2022, 2:43:49 PM11/21/22
to open-nars

Patrick Hammer

unread,
Dec 4, 2022, 2:48:07 AM12/4/22
to open-nars
Reply all
Reply to author
Forward
0 new messages