W3C home > Mailing lists > Public > www-rdf-interest@w3.org > February 2002

Re: new cwm release

From: Jos De_Roo <jos.deroo.jd@belgium.agfa.com>
Date: Fri, 22 Feb 2002 23:50:24 +0100
To: "Sandro Hawke <sandro" <sandro@w3.org>
Cc: ""Tim Berners-Lee" <timbl" <timbl@w3.org>, ""Norman Walsh" <ndw" <ndw@nwalsh.com>, "www-rdf-interest" <www-rdf-interest@w3.org>, ""Dan Connolly" <connolly" <connolly@w3.org>
Message-ID: <OF6062C84F.1C6566E2-ONC1256B68.007A4053@agfa.be>

>> (I need to clone it in C or machine code, but that's another matter)
>
>Cwm is somewhat similar to a prolog interpeter, and that's an area for
>optimization which has been heavily mined.  I wrote experimental
>(prolog) code to translate some cwm code into prolog [1], but it only
>worked with log:forAll, log:implies, and log:Truth; and only acted
>like cwm in "-think" mode.  It also did not attempt an
>optimal-performance mapping to prolog.  At the time, I had trouble
>finding rulesets on which people needed speed; it sounds like that
>situation has changed.
>
>It seems to my inexpert eye that cwm has these functional components:
>
>  1.  Parse RDF (REC-rdf-syntax-19990222), n3, ntriples
>  2.  Generate (pretty-print) RDF (REC-rdf-syntax-19990222), n3, ntriples
>  3.  Flatten (encode n3 formulas in an RDF graph; has been broken for
ages)
>  4.  Reify (broken)
>  5.  Apply/Rules/Think, do logical inference
>  6.  Filter/Purge, use the logic language as a kind of query language
>
>(There is some overlap in 3/4 and 5/6.)   5 and 6 are presumably the
>interesting/slow bits here.
>
>The logic language itself has been evolving as Tim experiments.  I'd
>love to know how different people (Tim, users) feel about the
>different parts -- it would allow other implementations of the
>language to track it better.
>
>Personally, I'd like to see separate programs for 1+3 (reader), 2
>(writer), 4 (reifier), 5 (thinker), and 6 (questioner).  (I imagine
>the programs piping N-Triples or maybe RDF/XML between them.)  That
>would make life easier for parallel development and for tracking the
>evolution of the different components.
>
>What do you think?

well Sandro, I can follow that
we don't have a lot of thoughts w.r.t. parsing
it's more in the area of mechanisms such as
  o unification (substitutions, unifiers)
  o resolution algorithm
  o backtracking
  o box trace model
  o Euler path detection
  o "existential introduction rule" generation (w.r.t. RDF bNodes)
  o unification of variable predicates

I really think that N3 can be used to formulate
theories and theorems (queries),
proof-arguments and proof-checks
(which could be even used as *executable*)
all via the Semantic Web Bus
(just think and write the code)

--
Jos De Roo
Received on Friday, 22 February 2002 17:51:09 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:44:34 UTC