论文标题

Valasp:答案集编程中数据验证的工具

ValAsp: a tool for data validation in Answer Set Programming

论文作者

Alviano, Mario, Dodaro, Carmine, Zamayla, Arnel

论文摘要

复杂软件的开发需要促进故障快速方法的工具,以便可以快速识别和固定错误和意外行为。数据验证的工具可以节省计算机程序员的一天。实际上,处理无效的数据充其量只是浪费资源,如果问题仍然没有注意到,则最坏的情况是戏剧性的,并且结果错误地用于业务。答案集编程(ASP)不是例外,但是对越来越好的性能的追求导致基本上无法验证数据的系统。即使在最终通过外部工具验证输入/输出数据的简单假设中,无效的数据也可能出现在程序的其他部分中,并且直到设计的软件的其他一些模块突然中断为止。本文正式对ASP程序的数据验证问题进行了形式,引入了一种指定数据验证的语言,并介绍了\ textsc {valasp},这是一种在普通程序中注入数据验证的工具。提出的方法在编码时间促进了失败的技术,而如果假装数据有效,则在部署系统上施加任何滞后。可以使用YAML,ASP和Python来指定验证。此外,提出的方法还可以使用ASP验证命令编程语言的数据。正在考虑在TPLP中接受。

The development of complex software requires tools promoting fail-fast approaches, so that bugs and unexpected behavior can be quickly identified and fixed. Tools for data validation may save the day of computer programmers. In fact, processing invalid data is a waste of resources at best, and a drama at worst if the problem remains unnoticed and wrong results are used for business. Answer Set Programming (ASP) is not an exception, but the quest for better and better performance resulted in systems that essentially do not validate data. Even under the simplistic assumption that input/output data are eventually validated by external tools, invalid data may appear in other portions of the program, and go undetected until some other module of the designed software suddenly breaks. This paper formalizes the problem of data validation for ASP programs, introduces a language to specify data validation, and presents \textsc{valasp}, a tool to inject data validation in ordinary programs. The proposed approach promotes fail-fast techniques at coding time without imposing any lag on the deployed system if data are pretended to be valid. Validation can be specified in terms of statements using YAML, ASP and Python. Additionally, the proposed approach opens the possibility to use ASP for validating data of imperative programming languages. Under consideration for acceptance in TPLP.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源