Skip to content

&hexInspection does not evaluate to true for strong negated atoms #1

@tonico

Description

@tonico

The program a v -a has two answer sets {a} and {-a}. Now consider the following program (inspect.hex), which inspects the answer sets of the subprogram a v -a:

subprog("a v -a.").

answer_set(AnswerSet) :-
    subprog(P),
    &hexInspection[string, P, inp, program](AnswerSet, C).

atom(AnswerSet, Atom) :-
    subprog(P),
    answer_set(AnswerSet),
    &hexInspection[string, P, inp, answerset, AnswerSet](Atom, C).

term(AnswerSet, Atom, Index, Term) :-
    subprog(P),
    atom(AnswerSet, Atom),
    &hexInspection[string, P, inp, atom, Atom](Index, Term).

The answer set of this program does not contain a term atom corresponding to the -a atom in one of the two answer sets of the subprogram:

$ dlvhex2 inspect.hex -f term
{term(0,3,0,a)}

I would expect term(1,_,0,-a) to be in the answer set as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions