The Composability of Intermediate Values in Composable Inductive Programming
This work addresses scalability issues in inductive programming for software development, but it appears incremental as it builds on existing methods without introducing new paradigms.
The study investigated how program size relates to intermediate values and test cases in composable inductive programming, finding linear relationships between these factors and demonstrating trade-offs as program size increases.
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.