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.
翻译:据认为,包括中间值在内的各种机制可以用来生成任何大小的软件。我们介绍了一项研究的结果,这项研究调查了程序大小、中间值的数量和用于使用 CIP 来指定程序所用的测试案例数量之间的关系。在研究中,随机生成了96,000个不同大小的程序,将其分解成碎片,并转化成测试案例。然后,测试案例被用来利用Zoea对原始程序的新版本进行再生。结果显示了中间值数量和再生程序规模之间,以及测试案例数量和在所研究的大小范围内再生程序规模之间的关系之间的线性关系。此外,随着程序规模的扩大,将测试案例数量与中间值数量进行交易的范围扩大,反之亦然。