ccT on Stage: Generalised Uniform Equivalence Testing for Verifying Student Assignment Solutions

The tool ccT is an implementation for testing various parameterised notions of program correspondence between logic programs under the answer-set semantics, based on reductions to quantified propositional logic. One such notion is relativised uniform equivalence with projection , which extends standard uniform equivalence via two additional parameters: one for specifying the input alphabet and one for specifying the output alphabet. In particular, the latter parameter is used for projecting answer sets to the set of designated output atoms, i.e. ignoring auxiliary atoms during answer-set comparison. In this paper, we discuss an application of ccT for verifying the correctness of students' solutions drawn from a laboratory course on logic programming, employing relativised uniform equivalence with projection as the underlying program correspondence notion. We complement our investigation by discussing a performance evaluation of ccT, showing that discriminating among different back-end solvers for quantified propositional logic is a crucial issue towards optimal performance.

[1]  Wolfgang Faber,et al.  Testing Strong Equivalence of Datalog Programs - Implementation and Examples , 2005, LPNMR.

[2]  Thomas Eiter,et al.  Uniform Equivalence of Logic Programs under the Stable Model Semantics , 2003, ICLP.

[3]  Stefan Woltran,et al.  Facts Do Not Cease to Exist Because They Are Ignored: Relativised Uniform Equivalence with Answer-Set Projection , 2007, AAAI.

[4]  David Pearce,et al.  Strongly equivalent logic programs , 2001, ACM Trans. Comput. Log..

[5]  M. Seidl,et al.  cc{\rm T}: A Tool for Checking Advanced Correspondence Problems in Answer-Set Programming , 2006, 2006 15th International Conference on Computing.

[6]  Reinhold Letz,et al.  Lemma and Model Caching in Decision Procedures for Quantified Boolean Formulas , 2002, TABLEAUX.

[7]  Stefan Woltran,et al.  On Solution Correspondences in Answer-Set Programming , 2005, IJCAI.

[8]  Frank Wolter,et al.  Semi-qualitative Reasoning about Distances: A Preliminary Report , 2000, JELIA.

[9]  Roy Dyckhoff Automated Reasoning with Analytic Tableaux and Related Methods , 2000, Lecture Notes in Computer Science.

[10]  Tomi Janhunen,et al.  Verifying the Equivalence of Logic Programs in the Disjunctive Case , 2004, LPNMR.

[11]  Torsten Schaub,et al.  Inconsistency Tolerance , 2005, Lecture Notes in Computer Science.

[12]  Stefan Woltran,et al.  A solver for QBFs in negation normal form , 2009, Constraints.

[13]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[14]  Stefan Woltran,et al.  A Tool for Advanced Correspondence Checking in Answer-Set Programming: Preliminary Experimental Results , 2006, WLP.

[15]  Stefan Woltran,et al.  Towards Implementations for Advanced Equivalence Checking in Answer-Set Programming , 2005, Answer Set Programming.

[16]  Raymond Reiter,et al.  A Theory of Diagnosis from First Principles , 1986, Artif. Intell..

[17]  Stefan Woltran,et al.  Representing Paraconsistent Reasoning via Quantified Propositional Logic , 2005, Inconsistency Tolerance.

[18]  Stefan Woltran,et al.  Characterizations for Relativized Notions of Equivalence in Answer Set Programming , 2004, JELIA.

[19]  Armin Biere,et al.  Resolve and Expand , 2004, SAT.

[20]  Armando Tacchella,et al.  Backjumping for Quantified Boolean Logic satisfiability , 2001, Artif. Intell..

[21]  Michael Gelfond,et al.  Classical negation in logic programs and disjunctive databases , 1991, New Generation Computing.

[22]  Fangzhen Lin,et al.  SELP - A System for Studying Strong Equivalence between Logic Programs , 2005, Answer Set Programming.

[23]  Wolfgang Faber,et al.  The Diagnosis Frontend of the dlv System , 1999, AI Commun..