Re: [BLD] My comments on version dated 5/10

Michael Kifer wrote:
> 
> These are equivalent rules. There are many tautologies and all are "normative".
> The implementations are supposed to treat them equivalently.

That is exactly my point: should RIF impose normal forms for all, some 
or none of such equivalent expressions?

The benefit would be that it may simplify implementation (since you have 
only one form to translate from); the drawback is that translating from 
your language into the normal form may be more complex that it would be 
to translate into another, equivalent form.

> Note that round-tripping is not always possible here because some languages
> may not support explicit existentials in the body. So, if they receive the
> form #2 then then will translate it into #1.

A RIF implementation for a language that does not support explicit 
existentials in the body would be able to produce form #2 if required; 
no more no less than it would be able to consume it. (But you have a 
good point wrt round-tripping).

> I do not see it as a problem for RIF. It may be perceived as a possible
> problem for some rule languages, but frankly I do not think it is.

Well, I did not think of the issue of a possible RIF normal form wrt to 
some specific rule languages, since we are talking about equivalent 
forms, but wrt implementation: would it make implementation easier or 
more difficult, in general?

> Given that equivalence is undecidable, the answer is "yes": RIF will allow
> equivalent forms.

Yes, not all equivalent forms can or need be removed; that should not 
stop us from considering the possible benefits of forcing a choice in 
some cases.

Am I the only one in the group to think that normal forms can make the 
life of implementors easier?

Christian

Received on Thursday, 11 October 2007 09:10:07 UTC