发明名称 一种基于动态系统实现复合断言计算的方法
摘要 本发明是一种基于动态系统实现复合断言计算的方法。本发明所述的方法将有效地支持将任意复合断言转换为动态系统,并进一步实现其计算求值。这些断言包括单个简单断言、多个简单断言的顺序多个复合断言的顺序组合、多个简单断言的并行组合、多个复合断言的并行组合、以及上述多个断言的顺序和并行混合组合。本发明与现有的复合断言实现方法相比,具有表达方式更通用、高效率并行化求值、以及使用更简单更简洁的特点。
申请公布号 CN102902519A 申请公布日期 2013.01.30
申请号 CN201210297875.3 申请日期 2008.09.10
申请人 夏寿民 发明人 夏寿民
分类号 G06F9/44(2006.01)I;G06Q10/06(2012.01)I 主分类号 G06F9/44(2006.01)I
代理机构 北京清亦华知识产权代理事务所(普通合伙) 11201 代理人 黄德海
主权项 一种将软件中做决策时来检验一个条件集是否为真的断言转换为动态系统并计算的方法,包括步骤如下:第1、将所述断言转化为对应的动态系统;第2、将步骤1中所述断言作为一个当前断言;第3、若所述当前断言为简单断言,直接计算所述简单断言以得到所述当前断言的结果,所述当前断言的计算即结束;第4、所述当前断言为复合断言,其所对应的所述动态系统中包括第一多个并行序列,而每个序列包括对应的顺序子断言,则遍历所述第一多个并行序列并将所述第一多个并行序列中的每个序列分别作为当前序列以执行如下子步骤:第4.1、在步骤4中的遍历操作中,若存在下一个序列,则执行第4.2步骤;若不存在下一个序列,则所述当前断言的结果为假值,所述当前断言的计算即结束;第4.2、将步骤4.1中的所述下一个序列作为当前序列;第4.3、将当前序列中第一个子断言作为当前子断言,并执行如下子步骤:第4.3.1、以当前子断言作为一个当前断言,递归执行步骤3以获得所述当前子断言的结果;第4.3.2、获取当前子断言的第一个迁移,作为当前迁移;第4.3.3、计算所述当前迁移的迁移条件值;第4.3.4、若所述迁移条件值为假,则执行步骤4.3.7;否则执行接下来步骤;第4.3.5、将当前迁移的目标所指的子断言设定为当前子断言,判断所述当前子断言是否为终点;第4.3.6、若所述当前子断言是终点,则终点值就是所述当前序列的结果,执行步骤5;否则执行4.3.1步骤;第4.3.7、获取所述当前子断言的下一个迁移,若存在下一个迁移,则将下一个迁移作为当前迁移,并执行步骤4.3.3;否则执行接下来步骤;第4.3.8、所述当前序列的结果为假值,执行下面步骤5;第5、检查步骤4中所述复合断言的每个结束条件,若有结束条件为真,则所对应的结束点的结束值就是所述当前断言的结果,所述当前断言的计算即结束;否则执行步骤4.1。
地址 美国加利福尼亚州