第一部分:动力学
在我们迄今为止的工作中,我们主要从图论性质的角度来研究自催化集。然而,这忽略了动力学,即自催化装置上的实际分子流。在这里,我们通过介绍RAF集动力学研究的初步结果来填补这一空白。特别是,我们提供了两个示例,一个是构造的示例,另一个是现实的示例,以显示可能发生的分子流的几个方面。在很大程度上,这些动力学结果证实了我们早期(结构)研究中已经分析、总结和推测的结果,但它们也为自催化集及其行为提供了一些新的线索。注意,最近报道了一项相关的动力学研究[24],尽管在这里我们更直接地关注RAF集合本身的实际分子流。
构建的示例
考虑简单化学反应系统(CRS)在二元聚合物模型中,其反应图如图所示1还有一套食物如果= {00,01,10,11}. 该CRS由四个反应组成,每一个反应都是双向连接/裂解反应,要么将两个食物分子结合成一个独特的长度为四的分子(在“正向”或连接反应中),要么将一个长度为四个的分子分裂成两个食物分子(在“反向”或裂解反应中)。顶部的两个反应由彼此的连接产物相互催化,形成一个2-反应自催化(RAF)集。这两个底部反应没有催化作用,因此不属于任何RAF集合的一部分。然而,这两组反应(顶部的RAF反应和底部的非RAF反应)相互竞争食物分子。
使用Gillespie算法[25,26],我们在这个构建的反应图上模拟分子的流动。假设食物分子总是可用的,并保持在每个分子五个的最低浓度(即,如果在一个连接反应后,食物分子的浓度下降到五个以下,则立即补充)。这样做的一个理由是,可以假设反应系统“包含”在某些隔间内,例如脂质层[27]或者只是土壤中自然出现的空洞[28,29]. 因此,即使食物分子在环境中“无限量”供应,它们仍然需要被吸收并带到隔间内用作反应物。
催化剂的存在增加了反应发生的概率,该概率与催化剂的当前浓度成正比。然而,对于这个构造的示例,我们特别感兴趣的是汽车催化,我们忽略了一个事实,即催化剂通常也会增加基本反应速率。因此,对于这个例子,催化反应和非催化反应的反应速率保持相等(k个=1,以任意单位表示)(我们在下一小节的更现实的例子中再次放宽了这个假设)。音量也设置为V(V)=1(任意单位)。
为了证实模拟产生了正确的结果,我们首先将这些反应仅视为单向连接反应。在这种情况下,我们预计底部两个(非RAF)反应的产物0011和0110的浓度随时间呈线性增长,而顶部两个反应的产物浓度呈指数增长,因为它们形成了一个自催化集。图2显示了结果,并且确实证实了这一预期(请注意,y轴是对数刻度的,因此指数增长显示为一条直线)。由于这是一个简单的模型设置,时间单位(x轴)是任意的。
接下来,我们考虑整个系统,包括“反向”(裂解)反应。在这种情况下,分子浓度不能无限增长,因为它们开始以与其浓度成比例的速率分解。所以,人们会期望它们达到某种平衡分布。图三显示了结果(模拟10000个反应事件)。正如预期的那样,分子浓度确实似乎达到了平衡分布(而不是像图中的单向反应那样无限增长2). 然而,与两个非RAF反应相比,形成RAF集的两个反应仍有很大的优势。分子0001和1011(红线和绿线)的浓度增长率远高于分子0011和0110(蓝线和紫线)的增长率(直到其趋于稳定)。此外,RAF组能够保持比非RAF组更高的结扎产物浓度。浅蓝色线表示一种食物分子随时间变化的浓度(供参考)。由于系统中的对称性,其他食物分子的浓度相似。
这个结果清楚地表明,RAF集合相对于非RAF集合的优势在于RAF集合具有特殊的催化闭合结构。即使非催化反应具有与催化反应相同的(基本)反应速率,如本模拟中所示,RAF集合仍然由于自我增强的自催化反馈而优于非RAF集合。然而,所达到的平衡分布在很大程度上取决于连接反应和切割反应之间的反应速率的比率。如果这个比率足够大,产品分子的浓度可以保持在较高的水平,如图三然而,降低该比率会导致平衡浓度水平下降,直到在某个时候,RAF集合与非RAF集合相比不再具有优势。图4显示了这种情况(再次模拟10000个反应事件,但设置V(V)=5,这有效地将上述反应速率比降低了5倍)。
一个现实的例子
接下来,我们考虑一个实际的自动催化(RAF)集合的示例,该集合是通过我们的RAF算法在带有n个= 5,t吨=2,和第页=0.0045(这些参数值的概率为P(P)
n个
=0.5表示模型实例包含RAF集合)。图5显示了这个RAF集合,它由八个双向(连接/裂解)反应组成。这套食物是如果= {0,1,00,01,10,11}.
这个最大的RAF集实际上由几个RAF子集组成(在[19]我们正式展示了如何将RAF集合分解为可能是指数级的RAF子集)。首先,黄色和紫色盒子中分别包含两个简单的(1-反应)不可约RAF集。考虑到它们的反应物和催化剂都是食物分子,这些子RAF将始终存在。然后是红色盒子里的3反应子RAF。这种亚RAF实际上包括紫色(1-反应)irrRAF,但一旦1010型分子出现,就只能“生长”为完全的3-反应红色亚RAF。这种分子类型催化食物分子10的两个实例中的自身连接,因此该反应必须首先自发发生(未催化),在红色子RAF能够完全自我维持存在之前(事实上,这个反应本身实际上是一个irrRAF,但为了这里的动力学分析,我们不单独考虑它,因为它一出现就立即产生完整的红色子RAFs)。接下来,蓝色盒子中包含了3-反应不可约RAF集。这种蓝色的亚RAF也需要通过三种非催化反应中的一种(或来自其他地方的所需分子之一)进行播种。最后,绿色盒子中包含的反应严格来说不是RAF本身,但一旦111型分子(由蓝色子RAF产生)可用,它就可以成为蓝色子RAF的“延伸”。然而,由于绿色反应是由其自身的产物催化的,它还需要至少自发发生一次,然后才能自动催化维持自身的存在。
再次使用Gillespie算法,我们现在研究图的最大RAF上的分子流5在这个模拟中,我们确实对催化反应和非催化反应的反应速率进行了比较,以显示一些需要通过自发反应播种的子RAF的效果。特别地,如果对于给定的反应,存在反应物但不存在催化剂,则反应仍然可以在未催化的情况下进行,但速率降低。为了进行模拟,我们使用了20的小折减系数(即。,k个=0.05,对于非催化反应和k个=1,如前所述,用于催化反应)。当然,一个更高、更现实的因素是可能的,但不会改变定性结果,这只是意味着我们需要更大的时间尺度来观察类似的行为。图6显示了组成最大RAF集的八个反应的(连接)产物随时间的浓度(这次模拟25000个反应事件)。
分子浓度的动力学直接反映了最大RAF集在其子RAF方面的特定结构。首先,两个1-反应irrRAF的产物浓度(如图所示5(分别带有黄色和紫色线条),立即开始以稳定的速度增长(虽然不是指数增长,因为它们是由浓度相对较低的食物分子催化的)。然而,其他子RAF都需要通过自发反应进行播种。第一个这样的事件发生在时间0.3左右,蓝色亚RAF中的一个反应发生时没有催化。但一旦发生这种情况,蓝色的subRAF作为一个整体就可以存在并集中精力。请注意,两种产物类型010(蓝色实线)和11100(蓝色虚线)的浓度立即迅速增长,但111(蓝色虚线)的生长受到抑制,因为它也被再次用作反应物。
下一次自发事件发生在时间0.5左右。回想一下,大约在时间0.3左右,111型分子出现了,但要使绿色反应成为蓝色亚RAF的延伸,它仍需要至少一次非催化反应(考虑到它是由自己的产物催化的)。然而,当这种情况发生时(大约时间0.5),由蓝色subRAF产品支持的产品类型01111(绿线)的浓度立即开始快速增长。最后,在时间0.55左右,当1010型分子产生时,发生最后一次所需的自发事件,然后产生完全存在的红色亚RAF(假设它包含的紫色irrRAF已经存在)。
可以对这些动力学进行一些额外的观察。首先,分子类型00100(红色虚线)是红色subRAF的产物,在完全红色subRA出现之前,由于自发(非催化)反应,实际上已经存在。然而,只有当1010型分子(其催化剂;固体红线)出现时,其浓度才真正开始增长。接下来,当红色subRAF存在时,紫色irrRAF(100,紫色线)产物的浓度开始再次降低,因为这种分子类型被用作红色subRA中的反应物。最后,请注意,这三种分子类型的浓度似乎无限增长(00100、11100和01111)是那些实际上有非食物分子作为其组成部分(反应物)的物质。食物分子仍然以相对较低的浓度存在(虽然当它们的浓度低于5时会被补充),但非食物分子达到较高的浓度,因此与它们的浓度成正比,增加了将它们用作反应物的反应速度。然而,在某些时候,这三种分子类型的增长也趋于平稳,因为反向(裂解)反应也越来越频繁地发生(类似于图三); 然而,为了图形的可读性,图中没有显示100个分子以上的浓度6。
我们之所以在这里使用随机动力学模拟(而不是求解一组ODE),是因为我们对瞬态系统的行为,即子RAF是如何存在和(有时)相互依赖的。查看相应ODE产生的平衡分布并不能提供此信息。此外,我们在图中只显示了仿真模型的一个特定实例(实现)6。其他实现总体上表现出非常相似的行为,除了不同子RAF出现的等待时间和顺序可能在模拟运行之间有所不同(由于其随机性)。然而,多次运行的平均浓度不会显示这些特定的行为,因此我们选择显示一个特定的实例作为整个模拟集的代表。
当然,这些初步结果只是对自催化集动力学进行更完整研究的第一步。然而,它们已经为人们在RAF集合中可以观察到的动态类型提供了一些非常有用和有趣的见解,并且也证实了最近关于次级RAF如何实现自身增长和相互存在的一些主张[19]. 此外,有许多方向可以扩展这种动力学分析。例如,可以考虑将自催化(子)集封闭在不同的隔间中,能够生长和繁殖(一旦达到某些分子类型的阈值浓度)。然后,只有将分子的一个子集(可能是随机的)从父代传递给子代,才能引入变异,即子代隔间可能有不同的现有子RAF组合,从而实现进化过程[23]. 另一个例子是,如果抑制剂存在于系统中,即实际上可以防止发生的反应。在下一节中,我们将描述用于处理这种情况的RAF算法的扩展。
第二部分:抑制
在给定化学反应系统的情况下,,带食物套装如果假设我们有收藏哪里X(X)
我
⊂X(X)、和.对这一对的解释是每个分子x个∈X(X)
我
禁止每个反应请注意,任何抑制模式都可以用这种方式表示,例如通过对反应进行编号,然后取和X(X)
我
成为抑制第页
我
(或者我们可以对分子进行编号,然后取X(X)
我
= {x个
我
}和被抑制的一系列反应x个
我
). 然而,我们希望考虑抑制“类型”反应的“类型”分子,以便k个可以选择不太大。
我们说一个子集形成一个不受限制的皇家空军,或者更简单地说u个-RAF,如果是英国皇家空军(通常意义上)不包含任何被参与的分子抑制的反应为了获得更正式的定义,让我们表示支持属于–这是一组作为反应物或反应产物的分子(这与如果它们是,以及中的反应产物集). 无抑制RAF现在的定义更为正式,如下所示。
定义
给定一个化学反应系统,,带食品套装如果,一个子集属于是一个u个-RAF,如果
(u-1)是皇家空军。
(u-2)
注意,如果一组反应满足(u-2),如果我们现在引用该集合的任何子集,那么该子集也满足(u-2);这意味着u个-RAF即RAF也是u个-英国皇家空军。□
确定CRS是否包含u个-RAF被证明是一个NP完全问题[15]. 然而,这里我们表明问题是固定参数可控制在参数中k个因此,前提是k个不是太大,我们仍然可以找到u个-CRS中的RAF有效(或确定u个-RAF不存在)。
我们首先需要一些额外的定义。让[k个]:={1,…,k个},对于任何子集J型第页,共页[k个],让
(1)
然后让
(2)
在下面的定理中,集合发挥着重要作用(其中J型是的子集k个); 这正是一系列反应第页在里面其中(i)第页不属于对于任何j个∈J型以及(ii)如果(对于一些j个′∉J型)那么没有任何分子支持第页躺在里面.从中撤回[19]对于任何子集中的反应,是包含在(根据我们的RAF算法计算)或空集,如果没有这样的子RAF存在。现在我们可以陈述我们的第一个定理。
定理1
给定一个化学反应系统,,带食品套装如果,以下断言成立:
对于任何子集J型第页,共页[k个],如果非空,则为u个-英国皇家空军。
如果是一个u个-RAF,那么哪里
(3)
最大值集u个-RAF正是所有非空子集的集合表单的作为J型子集上的范围[k个].
证明
对于第(i)部分,我们知道如果非空,则为RAF(来自[14]),因此只需验证定义中的属性(u-2)u个-集合的上述RAF,这意味着也将满足属性(u-2),因为它是。
相反,假设a定义中的属性(u-2)u个-RAF被违反,然后我们可以导出如下矛盾。对于一些人我∈[k个]我们必须:
(4)
特别是,存在一种反应,比如第页1,英寸此外,由于,方程的第二部分。(4) 意味着也存在一种反应,比如第页2,英寸为哪个供应(第页2)∩X(X)
我
≠∅。现在,自从和根据以下定义对
J型
,那个我不能在中J型.现在考虑第页2.此反应在对J型所以,因为我不躺着J型,我们必须吃晚饭(第页)∩X(X)
我
=∅。但这与选择第页2。这确立了第(i)部分。
对于第(ii)部分,假设是一个u个-英国皇家空军。这足以表明还有那个对于集合J型如等式。(3); 由此可见将包含在这两个集合的交集中。
请注意,对于集合J型如等式。(3),是中的一组反应不在其中对于任何j个对于其中现在,如果是一个u个-RAF然后根据其定义中的条件(u-2),任何反应必须属于同样,对于选择J型如上所述,是一组反应第页在里面为哪个供应(第页)∩X(X)
我
全部为空我对于其中所以任何反应也必须躺在这确定了所需的两个容器,以及第(ii)部分。
对于第(iii)部分,我们已经通过第(i)部分显示了形式的非空集是u个-皇家空军,所以我们需要检查所有最大u个-RAF是这种形式的。假设是最大值u个-英国皇家空军。然后通过第(ii)部分我们知道供选择J型由等式给出。(3). 现在,因此,根据第(ii)部分是一个u个-RAF包含、和,自假设最大,这两个u个-RAF必须一致。第(iii)部分如下。□
推论1
给定一个化学反应系统,,带食物套装如果和家人一起在抑制对中,有一种算法可以构造一个(或所有)最大值u个-RAF(或确定否u个-RAF存在)在时间2k个第页(n个)其中第页大小为多项式n个属于。
证明
只需应用RAF算法计算适用于所有2k个子集J型第页,共页[k个]. □
备注
与普通RAF相比,u个-RAF无需在工会下关闭,即,如果和是两个u个-那么RAF可能无法成为u个-英国皇家空军。因此,一般来说,CRS可能有几个最大值u个-RAF,但始终存在唯一的最大RAF。
因此,我们算法的这种扩展表明,尽管寻找受抑制的RAF集的一般问题是NP-完全的,但我们仍然可以以相对有效的方式处理特定的情况(例如当抑制剂的数量有限时)。在下一节中,我们将阐述我们的RAF算法的另一个扩展,或者说是一个概括,这表明它也可以应用于化学和生命起源以外的问题。
第三部分:概述
最初的RAF算法是在化学反应系统的背景下特别制定的。然而,也可以用更广义的形式来表述算法。这可能有助于(i)理解它与其他算法的关系,以及(ii)在化学反应系统的背景下以及其他应用(例如,在经济学中,已经在[19]).
假设我们有任意(有限或无限)集Y、 W公司哪里W公司具有偏序(例如≤W公司是由集合包含部分排序的某个集合的子集集;如后文所述,这适用于RAF设置)和功能
(此处为2Y(Y)指的是Y(Y)). 考虑功能:ψ:2Y(Y)→2Y(Y)这取决于(f)和克根据以下规则:
对于每个子集A类属于Y(Y)。请注意ψ(A类)⊆A类,对于所有人A类∈2Y(Y)。
定义
我们说一个子集A类属于Y(Y)是gf-兼容如果它是非空的并且满足以下属性克(年) ≤(f)(A类)为所有人年∈A类。
对于子集A类属于Y(Y)、和k个≥1,定义ψ(k个)(A类)是应用功能的结果ψ迭代地k个时间从开始A类因此,ψ(1)(A类) =ψ(A类)和用于k个≥ 1,ψ(k个+ 1)(A类) =ψ(ψ(k个)(A类)). 请注意(ψ(k个)(A类),k个≥1)是Y(Y),因此我们可以定义
它是(可能为空)的子集Y(Y)此外,如果Y(Y)是有限的,那么对一些人来说k个≤ |Y(Y)|.
为了说明本节的主要结果,我们回顾了另外两个标准定义。一套A类∈2Y(Y)是一个固定点属于ψ如果ψ(A类) =A类; 和(f)是单调的如果满足属性A类1 ⊆ A类2 ⇒ (f)(A类1)≤(f)(A类2).
定理2
给定集合Y和W,哪里W公司与函数一起部分排序(f):2Y(Y)→W公司和克以下为:Y(Y)→W公司,保持以下状态:
这个玻璃纤维−兼容的子集Y(Y)正是的非空子集Y(Y)是的固定点ψ;
是玻璃纤维−兼容,前提是它不是空的;此外,它包含了所有玻璃纤维−兼容的子集Y(Y)前提是(f)是单调的。特别是,当(f)是单调的,存在一个玻璃纤维−兼容子集Y(Y)当且仅当非空。
证明
如果一个子集A类属于Y(Y)非空且A类=ψ(A类)然后A类= {年∈A类以下为:克(x个) ≤(f)(A类)}等等A类是玻璃纤维−兼容。相反,如果A类≠ψ(A类)那么从那以后ψ(A类)⊂A类,存在年∈A类以便克(年)不是由(f)(A类)按部分顺序。因此A类不是玻璃纤维−兼容。这确立了第(i)部分。
对于第(ii)部分,让.然后,所以,是的固定点ψ因此,根据第(i)部分玻璃纤维提供−兼容B类非空。此外,如果(f)是单调的,并且A类1⊆A类2,然后ψ(A类1)等于
最后一组是ψ(A类2),所以ψ作为2的函数是单调的Y(Y)到集合2Y(Y)集合包含下的部分有序。因此,如果B类′是任何玻璃纤维−兼容集,则通过第(i)部分,B类′是的固定点ψ所以,因为B类′⊆Y(Y),我们有B类′=ψ(B类′)⊆ ψ(Y(Y))并且,通过迭代ψ,如所述。第(二)部分中的剩余权利要求现在直接如下。□
一种算法
当Y(Y)是有限的,并且(f)是单调的。在这种情况下,请考虑以下内容玻璃纤维−算法”。从开始Y(Y),计算序列ψ(k个)(Y(Y))直到它稳定下来。如果此集合为空,则报告否玻璃纤维−兼容子集Y(Y)存在,否则输出稳定集,这是唯一的最大值玻璃纤维−兼容子集Y(Y)假设每个子集A类属于Y(Y)、和元素年∈Y(Y),值(f)(A类)和克(年)可以在多项式时间内计算|Y(Y)|,此算法在多项式时间内运行|Y(Y)|. 注意,算法从集合开始Y(Y)并迭代删除元素子集,直到最终得到非空集不能再从中删除任何内容,或者直到Y(Y)被淘汰。
与原始RAF算法的关系
首先是一个简单的观察:如果有反应第页被催化k个≥1个分子,那么我们可以用k个这个反应的副本,每个都是由一个k个-分子。这样我们得到了一组反应,每个反应都是由一个分子催化的。因此,我们可以将这种催化剂视为一种附加反应物,因此,如果所有“反应物”都存在,反应就会精确地进行——从形式上来说,这比说“所有反应物和至少一种催化剂都存在”要干净。事实上,我们的RAF算法的实现实际上是基于这种思想的。我们称这种“清洁”版本为扩展CRS以及为任何给定反应选择的催化剂指定催化剂在这个扩展的CRS中,给定一个反应第页,让ρ(第页)表示反应物的集合加上该反应的指定催化剂。我们现在描述定理2和玻璃纤维−算法适用。
给定CRS和食物套装如果 ⊆ X(X),采取Y(Y)作为扩展CRS中所有反应的集合,并取M(M)=X(X)所有分子的集合W公司= 2M(M),在集合包含下部分排序。供我们选择功能(f)我们设置了(f)(A类)=氯
A类
(如果),其中cl
A类
(如果)食物盒关闭了吗如果在子集下A类膨胀CRS中的反应;这是所有分子的集合X(X)可以从中构造如果通过反复应用这些反应A类(并允许在A类即使没有指定的催化剂也要继续进行)。最后,我们设置克(第页) =ρ(第页)(在扩展模型中,因此ρ(第页)包括指定的催化剂)。然后玻璃纤维−兼容的子集Y(Y)与最近修改的RAF定义下的扩展CRS中的RAF完全对应[17]、和就是我们所说的秒(Y(Y))(扩建的最大RAFY(Y)属于). 定理2(ii)断言这个最大RAF可以通过玻璃纤维−算法,即修改后的RAF算法[17]应用于扩展的CRS中,并且该RAF是唯一的最大RAF,这是由于函数A类↦氯
A类
(如果)是单调的A类。
所描述的连接假定我们在扩展的CRS设置中工作。然而,我们可以很容易地将其与原始CRS设置联系起来,注意如果A类是一组反应,并且A类′是扩展版本(将每个反应替换为k个用一个独特的指定催化剂复制每个催化剂),然后cl
A类
(如果)(在原始设置中)与(在展开设置中)。此外,(i)对于任何RAFA类在原始设置中,在扩展A类有一个子集(为每个反应选择合适的指定催化剂)是扩展CRS中的RAF,并且(ii)对于任何RAFA类′在扩展的CRS中,用其全部催化剂替换每个反应的指定催化剂返回一个RAFA类在原始CRS中。
注意,除了函数的单调性之外(f)(A类)=氯
A类
(如果),有助于在RAF设置中保证多项式时间算法的一个主要因素是(f)(A类)可以有效计算。
新型和替代应用
我们现在介绍定理2在玩具经济环境中的简单应用。假设Y(Y)是指个人的集合,每个人生产或消费不同类型的“商品”,标记为1、2、,…k个对于个人年∈Y(Y),让克
我
(年)成为最高价格的个人年有能力付出代价我然后让是个人的最低价格年愿意生产优质产品我。如果是单独的,则允许更大的通用性年不需要好我我们可以设置克
我
(年)=0,如果是个人年不会产生好结果我我们可以设置。我们假设个人可以生产和销售他们想要的任意数量的商品(即,购买的个人不会从任何一个卖家那里争夺固定数量的商品)。
我们定义了一个子集A类属于Y(Y)作为可行的如果(i)它是非空的,以及(ii)A类能够从至少一个人那里购买他们需要的每一种商品A类。我们可以将其形式化为玻璃纤维−兼容性条件如下。
让(即。,k个-维欧几里德空间,每个坐标加上无穷大)按通常方式部分排序:(x个1,…,x个
k个
)≤(年1,…,年
k个
)当且仅当x个
我
≤年
我
为所有人我注意,在本例中W公司不是集合的子集集合(如RAF设置)。此外,让克(年):=(克1(年),…,克
k个
(年))∈W公司,对于一组A类个人(即。A类∈2Y(Y))出租
然后是子集A类属于Y(Y)是可行的,如果每个我和每个年∈A类,,相当于克(年) ≤(f)(A类)为所有人年 ∈ A类换句话说,A类是可行的当且仅当A类是玻璃纤维−兼容。此外,请注意(f)是单调的,所以定理2(ii)适用,所以如果有一个稳定集,那么就有一个唯一的最大集,它可以在多项式时间内通过使用玻璃纤维−算法。
这提供了一个简单的示例,说明玻璃纤维−算法可以应用于其他环境,如经济学。正如我们最近提出的那样,这是走向广义自催化集理论的第一个具体步骤[19].
作为另一个非常不同的应用程序,我们指出玻璃纤维−算法还提供了HORN-SAT的多项式时间解,这是命题逻辑中的一个基本问题,用于确定给定的HORN子句连词是否可满足[30]. 回想一下Horn条款是一个子句,最多包含一个正文字,以及任意数量的负文字(文字是布尔变量,可以是“true”或“false”)。HORN-SAT很有趣,因为它是“P-complete”(即它不仅在具有多项式时间解的问题的复杂性类别P中,而且每一个复杂性类别P中的问题可以简化为HORN-SAT)。
那么,假设我们有一个HORN-SAT的实例,它由集合的合取组成属于n个HORN子句。在不丧失一般性的情况下,我们将假定包含一个正文本,因为这相当于为每个文本赋值true满足中的每个子句的条件,并且这可以很容易地检查。我们表示这一限制是一个适当的现在我们定义了我们将在广义RAF设置中使用的集合和函数。我们接受在子集上使用通常的偏序。让Y(Y)表示中至少一个子句中出现的所有文字集(作为积极或消极的字面意思)。对于子集A类属于Y(Y)让(f)(A类)是中的子句集包含至少一个元素的A类作为否定文字。对于年∈Y(Y),让克(年)是中的子句集其中之一包含年作为正字面,否则不包含任何正字面。以下与的连接玻璃纤维−兼容性见附录。
引理1
对于适当的实例HORN-SAT的一个子集A类属于Y(Y)是玻璃纤维−相容,当且仅当以下真理赋值满足以下为:
根据引理1,事实是(f)是单调的,我们可以引用定理2(ii)并推断玻璃纤维−算法确定HORN-SAT的适当实例是否有令人满意的赋值,如果有,它将构造最小文字集设置为“true”的真值赋值。这似乎都是技术性的,与化学无关,但它实际上表明,一个由生命起源背景下的化学问题(在化学反应系统中寻找自催化集)启发并构建的非常具体的算法,最终能够(以其广义形式)解算任何问题类别P中的问题。从算法的角度来看,这是一个令人惊讶和有趣的结果,可能会导致另一个应用分子计算[31].