You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jun 18, 2021. It is now read-only.
I once had the idea that a nice output could be obtained by combining the initial Logic formula and the Counterexample that the formula evaluated to, e.g. something like:
prettyPrintCounterexample::Logic->Counterexample->String
prettyPrintCounterexample l@(p :&& q) (Fst ce) =concat
[ "When checking that: "
, show l
, " is true, "
, "the first component is false, because: "
, prettyPrintCounterexample p ce
]
eval::Logic->EitherString()
eval l =case logic l ofVTrue->Right()VFalse ce ->Left (prettyPrintCounterexample l ce)
I think the tricky part is how to not be too verbose and yet precise. Perhaps underlining the component of the formula that was false? Perhaps one should check how deep the formula is and only show parts of the tree? What do other tools do?
tests print things like
which may not be very helpful, or just hard to understand for the user
Also drawing for
CrashAndLogic
is broken for some reason.The text was updated successfully, but these errors were encountered: