Skip to content

Incomplete information in execution graph with RefinementSolver #800

@natgavrilenko

Description

@natgavrilenko

Despite RefinementSolver output a correct PASS/FAIL result, some edges of a candidate execution are missing in the summary and in the execution graph, which might be confusing for the end user.

Example

AssumeSolver

java -jar dartagnan/target/dartagnan.jar dartagnan/src/test/resources/spirv/patterns/MP-rel2rx.spv.dis cat/spirv.cat --method=eager`

======= CAT specification violation found =======
Flag racy
E29 / E16       @unknown / @unknown
E16 / E29       @unknown / @unknown
=================================================
FAIL

RefinementSolver

java -jar dartagnan/target/dartagnan.jar dartagnan/src/test/resources/spirv/patterns/MP-rel2rx.spv.dis cat/spirv.cat --mehtod=lazy

======= CAT specification violation found =======
Flag racy
E29 / E16       @unknown / @unknown
=================================================
FAIL

Also, edges of other relations are missing in the execution graph (see attachments).

MP-rel2rx-eager.spv.txt

MP-rel2rx-lazy.spv.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions