Re: [DTB/Abridged syntax] ISSUE on -equals and -not-equals predicates?

Jos de Bruijn wrote:
> 
> Axel Polleres wrote:
>> Hi,
>>
>> I introduced, as for the other datatypes (along with an editors note),
>> -equals and -not-equals predicates for the rdf:XMLLiteral datatype.
>>
>> There is an obvious overlap between the -equals predicates and '=', i.e.
>> the '=' built-ins are superfluous, it seems, for dialects that support
>> equality.
>>
>> That is not the case for the not-equals predicates, though:
>>
>> All the -not-equals predicates, i.e.  pred:numeric-not-equal,
>> pred:string-not-equal, pred:dateTime-not-equal, pred:date-not-equal,
>> pred:time-not-equal, pred:duration-not-equal, pred:XMLLiteral-not-equal,
>> pred:text-not-equal
>>
>> are defined on the same domains as their positive counterpart with
>> reversed truth-values.
>>
>> That has the consequence though, that they are not possibly emulated by
>> negation as failure, i.e. it is in general not true to say that the
>>
>> -not-equals version is true, whenever the -equals version is NOT true.
>>
>>
>> An example:
>>
>>  _a:-  External (pred:numberic-equals("blabla", 1) )
>>  _b:-  External (pred:numberic-not-equals("blabla", 1) )
>>
>> entails neither _a nor _b, however
> 
> Both rules contain errors, and since errors mean arbitrary truth values,
> you don't know whether _a or _b are entailed, and in practice I suspect
> applications will terminate with some error message.

No, that is not what the semantics says... it says that the truth-value 
may vary from interpretation to interpretation and that means it is not 
true in all interprestations which means it is not entailed.
We do not have errors in RIF, that was decided long ago.

>>  _a:-  "blabla" = 1
>>  _b:-  naf ( "blabla" = 1 )
>>
>> would entail _b.
>>
>> So, 2 questions:
>>
>> 1) Do we want this behavior or do we want the negation as failure
>> behavior of inequality?
> 
> We want this behavior, since this is the only reasonable way
> to define these built-in predicates.
> 
>> 2) Do we want the redundancy of equals predicates?
> 
> Yes, for dialects that do not supported equality.

Same opinion here in both points...

> Best, Jos
> 
>> I think we need these things clarified, to be able to determine how
>> '=' and "!=" shortcuts in an abridged syntax should be defined.

... which means that '!=' in an abridged syntax would be defined as:

numeric-not-equal or string-not-equal or text-not-equal or 
date-time-not-equal or date-not-equal or time-not-equal or 
duration-not-equal or XMLLiteral-not-equal

and '=' would be defined as equality in dialects that support it and

numeric-equal or string-equal or text-equal or date-time-equal or 
date-equal or time-equal or duration-equal or XMLLiteral-equal

in others... Would that the agreed reading for = and != in an abridged 
syntax?

Axel

>> Axel
>>
>>
>>
> 


-- 
Dr. Axel Polleres
Digital Enterprise Research Institute, National University of Ireland, 
Galway
email: axel.polleres@deri.org  url: http://www.polleres.net/

Received on Thursday, 4 December 2008 17:26:11 UTC