Warning:
This wiki has been archived and is now read-only.

Response to JdR1

From RIF
Jump to: navigation, search

Jos,

Nice to hear from you. Very cool.

May we list your implementation on the implementation page [1]?

-The RIF WG

jos.deroo@agfa.com wrote:
> A few days ago I started making an initial rif-dtb plugin
> for Eye http://eulersharp.sourceforge.net/README#eye
> plus some initial test cases at
> http://eulersharp.sourceforge.net/2007/07test/rifP.n3 
> and the actual N3 formulation of RIF builtins is following 
> 
> (args) func:xxx value. 
> (args) pred:xxx true.
> 
> The test result of 
> 
> eye --nope --plugin 
> http://eulersharp.sourceforge.net/2006/02swap/rif-plugin.yap 
> http://eulersharp.sourceforge.net/2007/07test/rifP.n3 --query 
> http://eulersharp.sourceforge.net/2007/07test/rifQ.n3 
> 
> is looking like 
> 
> #Processed by $Id: Response_to_JdR1.html,v 1.1 2024/02/02 09:55:46 jean-gui Exp $ 
> 
> @prefix func: <http://www.w3.org/2007/rif-builtin-function#>. 
> @prefix pred: <http://www.w3.org/2007/rif-builtin-predicate#>. 
> @prefix e: <http://eulersharp.sourceforge.net/2003/03swap/log-rules#>. 
> @prefix : <http://eulersharp.sourceforge.net/2007/07test#>. 
> @prefix var: <http://localhost/var#>. 
> @prefix r: <http://www.w3.org/2000/10/swap/reason#>. 
> @prefix n3: <http://www.w3.org/2004/06/rei#>. 
> 
> {((0 1 2) 3) func:append (0 1 2 3)} a :PASS. 
> {((0 1 2) 3 4) func:append (0 1 2 3 4)} a :PASS. 
> {((1 1) (1) (1) ((1))) func:append (1 1 (1) (1) ((1)))} a :PASS. 
> {(() 1) func:append (1)} a :PASS. 
> {(1 1) func:numeric-add 2} a :PASS. 
> {(5 2) func:numeric-divide 2.5} a :PASS. 
> {(5 2) func:numeric-integer-divide 2} a :PASS. 
> {(10 3) func:numeric-mod 1} a :PASS. 
> {(6 -2) func:numeric-mod 0} a :PASS. 
> {(4.5 1.2) func:numeric-mod 0.9} a :PASS. 
> {(123.0 6.0) func:numeric-mod 3.0} a :PASS. 
> {(5 2) func:numeric-multiply 10} a :PASS. 
> {(5 2) func:numeric-subtract 3} a :PASS. 
> {(1 1.0) pred:numeric-equal true} a :PASS. 
> {(1.0 0) pred:numeric-greater-than true} a :PASS. 
> {(1.0 1) pred:numeric-greater-than-or-equal true} a :PASS. 
> {(2.0 3) pred:numeric-less-than true} a :PASS. 
> {(3 5.0) pred:numeric-less-than-or-equal true} a :PASS. 
> {(1 1.01) pred:numeric-not-equal true} a :PASS. 
> {("""abracadabra""" """bra""") pred:matches true} a :PASS. 
> {("""abracadabra""" """^a.*a$""") pred:matches true} a :PASS. 
> 
> 
> #ENDS 8 msec 
> 
> 
> and we are really looking forward to Chimezie's Fuxi's RIF/XML->N3
> to test RIF-BLD and later RIF-FOL (Eye uses First-order coherent logic
> and every FOL theory has a conservative extension that is equivalent to a
> Coherent Logic theory, a result that goes back to Skolem).
> 
> Harold provided us a test where the extrapolated case of 30 million rules
> would take Eye (using Yap) 7 minutes, EyeS (using SWI-prolog) 11 years
> and EyeJ (using JLog) 77 years.
> The demand driven indexing of Yap is the best I have seen in years!