[Core] new definition of safeness

It turns out that the earlier definition of safeness I contrived is not
very extensible.  And as you may have noticed, it's not all that easy to
understand.  Also, it precluded the use of "output" variables of
external predicates to be used as inputs for other externals.
So, I came up with a new definition that addresses these issues:
http://www.w3.org/2005/rules/wiki/Core#Safeness

Please have a look.  The new definition uses a kind of normalization to
deal with disjunction and defines the notion of equivalence classes for
variables to deal with equality.
So, I needed some additional preliminary definitions, but the definition
of safeness itself is more straightforward.

I will now work on the extension with strong safeness, which should not
be too hard.


Jos

Received on Thursday, 30 April 2009 16:27:31 UTC