Slicing of Constraint Logic Programs
Gyongyi Szilagyi, Tibor Gyimothy, Jan Maluszynski
Abstract
Slicing is a program analysis technique originally developed for imperative languages. It facilitates understanding of data flow and debugging. This paper discusses slicing of Constraint Logic Programs. Constraint Logic Programming (CLP) is an emerging software technology with a growing number of applications. Data flow in constraint programs is not explicit, and for this reason the concepts of slice and the slicing techniques of imperative languages are not directly applicable. This paper formulates declarative notions of slice suitable for CLP. They provide a basis for defining slicing techniques (both dynamic and static) based on variable sharing. The techniques are further extended by using groundness information. A prototype dynamic slicer of CLP programs implementing the presented ideas is briefly described together with the results of some slicing experiments.
Create a lesson
Related papers
MCP-Eco: A Linked Dataset of MCP Servers, Consumers, and Development Activity
Khalid Tounoussi, Mohammed Sayagh, Ali Ouni et al.
GH-AWTrace: A Large-Scale Dataset of GitHub Agentic Workflow Execution Logs
Jasem Khelifi, Hao Li, Ali Ouni et al.
Rethinking Access Control for AI Agents: Recent Advances and Open Challenges
Chijin Zhou, Quan Zhang
AgentTrustCI: Build-Time Policy, Grounding, and Trajectory Tests for Java LLM Agents
Sachin Gupta
PatchCon: Patch-aware Weighted Supervised Contrastive Learning for Vulnerability Detection
Chaomeng Lu, Pooya Rostami Mazrae, Bert Lagaisse
EPISTEME: Trustworthy Coding Agents Through Tool Call Intent
Sofia Bobadilla, Carmine Cesarano, Raphina Liu et al.