The Datalog language is used in many potential applications including database queries, program analysis, bidirectional transformations, and so forth. In practice, such a Datalog program is expected to be well-written to meet requirements such as the round-tripping properties in bidirectional programming. Although verifying and debugging Datalog programs play an essential role to guarantee the expected properties of these programs, very few approaches have been proposed. The existing approaches require much users’ effort in finding out unintended behaviors or unexpected computations of the Datalog program that neither counterexamples nor bug explanations are provided. In this paper, we propose an efficient approach to interactively debugging Datalog programs so that the user’s burden is reduced. Specifically, we provide a syntax for users to specify properties of non-recursive Datalog programs, present a counterexample generator that verifies specified properties and generates counterexamples to show unexpected behaviors of user-written programs, and design a debugging engine combined with a dialog-based user interface to assist users in locating bugs in the programs with the generated counterexamples. We have implemented a prototype of our approach and demonstrated its feasibility and efficiency.
Mon 30 NovDisplayed time zone: Osaka, Sapporo, Tokyo change
15:30 - 17:00 | Debugging, Profiling and Constraint SolvingResearch Papers at online Chair(s): Tachio Terauchi Waseda University | ||
15:30 30mTalk | A Counterexample-Guided Debugger for Non-Recursive Datalog Research Papers Van-Dang Tran National Institute of Informatics, Japan, Hiroyuki Kato National Institute of Informatics, Japan, Zhenjiang Hu Peking University | ||
16:00 30mTalk | A Symbolic Algorithm for the Case-Split Rule in String Constraint Solving Research Papers Yu-Fang Chen Academia Sinica, Taiwan, Vojtěch Havlena Brno University of Technology, Ondřej Lengál Brno University of Technology, Andrea Turrini State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences | ||
16:30 30mTalk | P3: A Profiler Suite for Parallel Applications on the Java Virtual Machine (Tool Paper) Research Papers |