Topology / ALM-Compiler

A Java implementation of the ALM language that compiles to the SPARC variant of Answer Set Programming (ASP).
Apache License 2.0
0 stars 1 forks source link

Should we allow -(father(bob) = john) ? #2

Open zhangyuanlin opened 6 years ago

Topology commented 6 years ago

If we allow logical signing of term relations then we have to specify the semantic meaning of all the following cases:

  1. -(father(bob) = john)
  2. not (father(bob) = john)
  3. not -(father(bob) = john)
  4. -(father(bob) != john)
  5. not (father(bob) != john)
  6. not -(father(bob) != john)

If all of these collapse into variants of

  1. father(bob) = john
  2. father(bob) != john

Then I would argue against having multiple syntactic expressions for the same semantic entities. The last one seems to be a triple negative.

zhangyuanlin commented 6 years ago

We may put off this. quick comment: not is not allowed in ALM, we may take != as a shorthand of -(a = b) [ but people may still use form like 4 though].