Pointer Data Structure Synthesis from Answer Set Programming Specifications

by   Sarat Chandra Varanasi, et al.

We develop an inductive proof-technique to generate imperative programs for pointer data structures from behavioural specifications expressed in the Answer Set Programming (ASP) formalism. ASP is a non-monotonic logic based formalism that employs negation-as-failure which helps emulate the human thought process, allowing domain experts to model desired system behaviour succinctly. We argue in this paper that ASP's reliance on negation-as-failure makes it a better formalism than those based on first-order logic for writing formal specifications. We assume the a domain expert provides the representation of inductively defined data structures along with a specification of its operations. Our procedures combined with our novel proof-technique reason over the specifications and automatically generate an imperative program. Our proof-technique leverages the idea of partial deduction to simplify logical specifications. By algebraically simplifying logical specifications we arrive at a residual specification which can be interpreted as an appropriate imperative program. This work is in the realm of constructing programs that are correct according to a given specification.



There are no comments yet.


page 1

page 2

page 3

page 4


Imperative Program Synthesis from Answer Set Programs

Our research concerns generating imperative programs from Answer Set Pro...

A Machine Learning guided Rewriting Approach for ASP Logic Programs

Answer Set Programming (ASP) is a declarative logic formalism that allow...

Modular Answer Set Programming as a Formal Specification Language

In this paper, we study the problem of formal verification for Answer Se...

Information-gain computation

Despite large incentives, ecorrectness in software remains an elusive go...

Time Series Learning using Monotonic Logical Properties

We propose a new paradigm for time-series learning where users implicitl...

How to write a coequation

There is a large amount of literature on the topic of covarieties, coequ...

Provenance for Large-scale Datalog

Logic programming languages such as Datalog have become popular as Domai...
This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.