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

Chaining strategy numeric-subtract 1

From RIF
Jump to: navigation, search




Test TypePositiveEntailmentTest
ContributorAxel Polleres
StatusApproved
RecordF2F11
DialectBLD
PurposeThis test highlights the different behavior of forward-chaining vs. backward-chaining engines
DescriptionThe entailment holds, but some engines may have difficulty finding it and/or may behave badly with it. This particular test case may be hard to handle for forward-chaining engines, depending on their implementation of the func:numeric-subtract builtin. In a backward-chaining strategy, the entailment should be found. Note that a backward-chaining engine, however, might have run into non-termination problems when the same ruleset is used to test conc=ex:a(0), since there is no termination condition in the body.
SeeAlsoChaining_strategy_numeric-add_1

Chaining_strategy_numeric-add_2

Chaining_strategy_numeric-subtract_2
SpecRefhttp://www.w3.org/2005/rules/wiki/DTB#func:numeric-add_.28adapted_from_op:numeric-add.29
Premises
Presentation SyntaxDocument( Prefix(ex <http://example.org/example#>) Prefix(func <http://www.w3.org/2007/rif-builtin-function#>) Group ( Forall ?x ( ex:a(?x) :- ex:a(External(func:numeric-subtract(?x 1))) ) ex:a(1) ) )
XMLview RIF/XML
Conclusion
Presentation Syntaxex:a(3)
XMLview RIF/XML