code complete with respect to the NAL 1 to 6 specification?

16 views
Skip to first unread message

Jean-Marc Vanel

unread,
Mar 30, 2013, 6:59:20 AM3/30/13
to open...@googlegroups.com
Hi

Is the current 1.5.1 (1.5.2) implementation code complete with respect to the NAL 1 to 6 specification? Or are there some know unimplemeted things with respect to NAL specification?
Can last public document "Non-Axiomatic Logic (NAL) Specification" of September 15, 2010 be considered THE NAL specification? Or does latest 2003 book brings novel things for levels 1 to 6 ?

There does not seem to be a complete and systematic coverage of unit tests or input files in line with the NAL specification (the Examples directory has been used as non-regression test, but it is not a test suite corresponding one to one to NAL Specification) .
I think that, in order to make NARS more reliable and robust ( and as a side effect fix Matt pattern matching case 2 ) it would be nice to write such a complete set of unit tests in line with the NAL 6 specification ( and levels 1 to 5 also later, but I'm more confident there ).
Or do think of a more useful task I could achieve with my current level of knowledge? Maybe selected code reading ?

Admitting that the coverage is complete with respect to the specification, are there theoretical or pragmatic arguments about the system reaching an answer to a query that is known to be a suite of legimitate steps ? And if yes, are there some rigourous or heuristic upper bound of the number of steps necessary ?

--
Jean-Marc Vanel
Déductions SARL - Consulting, services, training,
Rule-based programming, Semantic Web
http://deductions-software.com/
+33 (0)6 89 16 29 52
Twitter: @jmvanel ; chat: irc://irc.freenode.net#eulergui

Pei Wang

unread,
Mar 30, 2013, 7:44:55 AM3/30/13
to open-nars
On Sat, Mar 30, 2013 at 6:59 AM, Jean-Marc Vanel <jeanmar...@gmail.com> wrote:
Hi

Is the current 1.5.1 (1.5.2) implementation code complete with respect to the NAL 1 to 6 specification? Or are there some know unimplemeted things with respect to NAL specification?

Yes, as far as I can tell.
 
Can last public document "Non-Axiomatic Logic (NAL) Specification" of September 15, 2010 be considered THE NAL specification? Or does latest 2003 book brings novel things for levels 1 to 6 ?

There is no THE NAL spec, since the model is under revision from time to time. NAL-1 to NAL-6 is reasonably stable, but still can be changed, if there is enough reason.

The 2013 book mostly changed the design of NAL-7 to NAL-9. The 2010 document needs a major revision, though I won't have the time for it in the near future.
 

There does not seem to be a complete and systematic coverage of unit tests or input files in line with the NAL specification (the Examples directory has been used as non-regression test, but it is not a test suite corresponding one to one to NAL Specification) .

That is correct. The NAL specification is for the formal model, not for the computer implementation. There is no document that specify the software, except the Javadoc produced files. I know it is bad from a software engineering point of view, but NARS is not a software coded according to a spec from the beginning, and I never have the time to write such a document after coding a new version.
 
I think that, in order to make NARS more reliable and robust ( and as a side effect fix Matt pattern matching case 2 ) it would be nice to write such a complete set of unit tests in line with the NAL 6 specification ( and levels 1 to 5 also later, but I'm more confident there ).

Agree. If you can do it, it will be wonderful.
 
Or do think of a more useful task I could achieve with my current level of knowledge? Maybe selected code reading ?

The backup model we discussed before. If you have the time, I hope you to read the conceptual writings, especially about the memory and control part. To read the code usually get people confused, because the software is not built in the conventional way.
 

Admitting that the coverage is complete with respect to the specification, are there theoretical or pragmatic arguments about the system reaching an answer to a query that is known to be a suite of legimitate steps ? And if yes, are there some rigourous or heuristic upper bound of the number of steps necessary ?

NO. NARS cannot be analyzed according to the theory of computability and computational complexity, and its problem-solving process does not follow an algorithm. Accurately speaking, you cannot even ask "How many cycles are needed for NARS to solve a given problem". This is explained in the papers, especially the ones under "Resource Management" in http://www.cis.temple.edu/~pwang/papers.html

Pei

 

--
Jean-Marc Vanel
Déductions SARL - Consulting, services, training,
Rule-based programming, Semantic Web
http://deductions-software.com/
+33 (0)6 89 16 29 52
Twitter: @jmvanel ; chat: irc://irc.freenode.net#eulergui

--
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 post to this group, send email to open...@googlegroups.com.
Visit this group at http://groups.google.com/group/open-nars?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Jean-Marc Vanel

unread,
Mar 30, 2013, 8:21:35 AM3/30/13
to open...@googlegroups.com



2013/3/30 Pei Wang <mail.p...@gmail.com>
... 
I think that, in order to make NARS more reliable and robust ( and as a side effect fix Matt pattern matching case 2 ) it would be nice to write such a complete set of unit tests in line with the NAL 6 specification ( and levels 1 to 5 also later, but I'm more confident there ).

Agree. If you can do it, it will be wonderful.

OK. I'll work on that  this week-end.
Also I feel NAL-5 is most in need of testing .

 
Or do think of a more useful task I could achieve with my current level of knowledge? Maybe selected code reading ?

The backup model we discussed before.

I'll do it after the core is more tested .
It makes sense to first have an inference engine more reliable.
 
If you have the time, I hope you to read the conceptual writings, especially about the memory and control part. To read the code usually get people confused, because the software is not built in the conventional way.

OK.
I generally do it as soon as questions arise.

 
Admitting that the coverage is complete with respect to the specification, are there theoretical or pragmatic arguments about the system reaching an answer to a query that is known to be a suite of legimitate steps ? And if yes, are there some rigourous or heuristic upper bound of the number of steps necessary ?

NO. NARS cannot be analyzed according to the theory of computability and computational complexity, and its problem-solving process does not follow an algorithm. Accurately speaking, you cannot even ask "How many cycles are needed for NARS to solve a given problem". This is explained in the papers, especially the ones under "Resource Management" in http://www.cis.temple.edu/~pwang/papers.html
 
I'm not a newbie anymore, and I was expected this answer :) .
However, even a crude upper bound, but reasonably certain, would help in practice.

Pei Wang

unread,
Mar 30, 2013, 8:38:05 AM3/30/13
to open-nars
On Sat, Mar 30, 2013 at 8:21 AM, Jean-Marc Vanel <jeanmar...@gmail.com> wrote:
 
I'm not a newbie anymore, and I was expected this answer :) .
However, even a crude upper bound, but reasonably certain, would help in practice.

Even that is impossible, since NARS can completely ignore a given problem when it has no important problems to work on.

Of course, it is not the case for the testing examples, and the system could solve them fast by exhaustive search, but any conclusions obtained that way makes little sense, because that is not the normal working environment for which NARS is designed.

BTW, that is a common problem in traditional AI systems --- works perfectly on toy problems, but cannot scale up. NARS doesn't cheat in that way even when the problem happens to be a toy problem.

Pei

Pei Wang

unread,
Mar 30, 2013, 8:42:43 AM3/30/13
to open-nars
On Sat, Mar 30, 2013 at 8:38 AM, Pei Wang <mail.p...@gmail.com> wrote:
Even that is impossible, since NARS can completely ignore a given problem when it has no important problems to work on.

Sorry, it should be "... when it has more important problems ..." ;-)

Pei
Reply all
Reply to author
Forward
0 new messages