Inference and Test Generation Using Program Invariants in Chemical Reaction Networks

Inference and Test Generation Using Program Invariants in Chemical Reaction Networks
复制标题

在化学反应网络中使用程序不变量进行推理和测试生成

DOI:
10.1145/3510003.3510176
复制
发表时间:
2022
期刊:
44th International Conference on Software Engineering
影响因子:
--
通讯作者:
Klinge, Titus H.
Klinge, Titus H.
中科院分区:
--
文献类型:
--
作者:
Gerten, Michael C.:;Lathrop, James I.;Cohen, Myra B.;Miner, Andrew S.;Klinge, Titus H.

文献摘要

参考文献

被引文献

相似文献

化学反应网络(CRN)是一种新兴的分布式计算范例,其中程序被编码为一组抽象化学反应。 CRN 可以编译成 DNA 链,在体外执行计算,为智能纳米设备奠定了基础。最近的研究提出了一种模拟随机 CRN 程序的软件测试框架,但它依赖于现有的程序规范。在实践中,通常缺乏规范,即使存在规范,将其转换为测试用例也非常耗时并且容易出错。在这项工作中,我们提出了一种称为 ChemFlow 的推理技术,它从现有的 CRN 模型中提取 3 种类型的不变量。然后,提取的不变量可用于针对程序实现的测试生成或模型验证。我们将 ChemFlow 应用于 13 个 CRN 程序,从玩具示例到具有数百个反应的真实生物模型。我们发现不变量提供了强大的故障检测,并且通常比规范衍生的测试表现出更少的不稳定。在生物模型中,我们向开发人员展示了不变量,他们证实其中一些变量指向模型中生物学上不正确或不完整的部分,这表明我们可以使用 ChemFlow 来提高模型质量。
Chemical reaction networks (CRNs) are an emerging distributed computational paradigm where programs are encoded as a set of abstract chemical reactions. CRNs can be compiled into DNA strands which perform the computations in vitro, creating a foundation for intelligent nanodevices. Recent research proposed a software testing framework for stochastic CRN programs in simulation, however, it relies on existing program specifications. In practice, specifications are often lacking and when they do exist, transforming them into test cases is time-intensive and can be error prone. In this work, we propose an inference technique called ChemFlow which extracts 3 types of invariants from an existing CRN model. The extracted invariants can then be used for test generation or model validation against program implementations. We applied ChemFlow to 13 CRN programs ranging from toy examples to real biological models with hundreds of reactions. We find that the invariants provide strong fault detection and often exhibit less flakiness than specification derived tests. In the biological models we showed invariants to developers and they confirmed that some of these point to parts of the model that are biologically incorrect or incomplete suggesting we may be able to use ChemFlow to improve model quality.
ALCH:化学反应网络控制瓦片组装的命令式语言
DOI: 10.1007/s11047-021-09878-8
发表时间: 2022
期刊: Natural Computing
影响因子: 2.1
作者:
Klinge, Titus H.;Lathrop, James I.;Moreno, Sonia;Potter, Hugh D.;Raman, Narun K.;Riley, Matthew R.
通讯作者: Riley, Matthew R.
CRNRepair:化学反应网络的自动化程序修复
DOI: 10.1109/gi52543.2021.00014
发表时间: 2021
期刊: IEEE/ACM International Workshop on Genetic Improvement (GI
影响因子: --
作者:
Mesecan, Ibrahim;Gerten, Michael C.;Lathrop, James I.;Cohen, Myra B.;Caldas, Tomas Haddad
通讯作者: Caldas, Tomas Haddad
DOI: 10.1098/rsif.2008.0516.focus
发表时间: 2009-08-06
影响因子: 3.9
作者:
Pedersen, Michael;Phillips, Andrew
通讯作者: Phillips, Andrew
使用 Petri 网验证和分析代谢途径
DOI: 10.1007/978-981-16-1740-9_30
发表时间: 2021
期刊: Advances in Intelligent Systems and Computing
影响因子: --
作者:
Sakshi Gupta;Sunita Kumawat;G. Singh
通讯作者: G. Singh
DOI: 10.1007/s10664-021-09940-0
发表时间: 2021-03
影响因子: 4.1
作者:
Mikaela Cashman;Justin W. Firestone;Myra B. Cohen;Thammasak Thianniwet;W. Niu
通讯作者: Mikaela Cashman;Justin W. Firestone;Myra B. Cohen;Thammasak Thianniwet;W. Niu