The Composability of Intermediate Values in Composable Inductive Programming

07/04/2021
by   Edward McDaid, et al.
0

It is believed that mechanisms including intermediate values enable composable inductive programming (CIP) to be used to produce software of any size. We present the results of a study that investigated the relationships between program size, the number of intermediate values and the number of test cases used to specify programs using CIP. In the study 96,000 programs of various sizes were randomly generated, decomposed into fragments and transformed into test cases. The test cases were then used to regenerate new versions of the original programs using Zoea. The results show linear relationships between the number of intermediate values and regenerated program size, and between the number of test cases and regenerated program size within the size range studied. In addition, as program size increases there is increasing scope for trading off the number of test cases against the number of intermediate values and vice versa.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
09/18/2020

A Visual Language for Composable Inductive Programming

We present Zoea Visual which is a visual programming language based on t...
research
07/26/2022

On the Interaction between Test-Suite Reduction and Regression-Test Selection Strategies

Unit testing is one of the most established quality-assurance techniques...
research
01/20/2023

MTGP: Combining Metamorphic Testing and Genetic Programming

Genetic programming is an evolutionary approach known for its performanc...
research
06/24/2021

An implementation of flow calculus for complexity analysis (tool paper)

Abstract. We present a tool to automatically perform the data-size analy...
research
12/22/2022

Architecture and Knowledge Representation for Composable Inductive Programming

We present an update on the current architecture of the Zoea knowledge-b...
research
12/08/2022

NP4G : Network Programming for Generalization

Automatic programming has been actively studied for a long time by vario...
research
04/23/2023

Finding Failure-Inducing Test Cases with ChatGPT

Automatically detecting software failures is an important task and a lon...

Please sign up or login with your details

Forgot password? Click here to reset