A problem about subsumption.
DerZc opened this issue · 0 comments
DerZc commented
Hi,
Consider the following program:
.decl a(A:number)
a(1).
a(2).
a(A1)<=a(A2):-A1<A2.
a(A1)<=a(A2):-A1>A2.
.output a
Souffle has empty result on this program.
The following program is equivalent to this program:
.decl a(A:number)
a(1).
a(A+1):-a(A), A<2.
a(A1)<=a(A2):-A1<A2.
a(A1)<=a(A2):-A1>A2.
.output a
Souffle has the following result:
---------------
a
A
===============
1
===============
Whether they should have equal results, Or maybe I'm wrong to write subsumption like this.
I have another small question, when dealing with subsumption, should it be treated as a separate rule?
The current version of Souffle I use is 3cd802d
.