高级检索
    谢武平 薛锦云. Radl算法到Apla程序的生成系统[J]. 计算机研究与发展, 2014, 51(4): 856-864.
    引用本文: 谢武平 薛锦云. Radl算法到Apla程序的生成系统[J]. 计算机研究与发展, 2014, 51(4): 856-864.
    Xie Wuping and Xue Jinyun. Research on Generation System from Radl Algorithm to Apla Program[J]. Journal of Computer Research and Development, 2014, 51(4): 856-864.
    Citation: Xie Wuping and Xue Jinyun. Research on Generation System from Radl Algorithm to Apla Program[J]. Journal of Computer Research and Development, 2014, 51(4): 856-864.

    Radl算法到Apla程序的生成系统

    Research on Generation System from Radl Algorithm to Apla Program

    • 摘要: 算法设计是一项创造性工作,传统的设计与描述方法难以保证算法的正确性.在PAR方法中通过定义具有数学引用透明性的算法描述语言Radl,可实现对问题规约进行形式化推导得到用递推关系描述的算法.Radl算法的核心就是递推关系组,从而易于进行形式化推导和证明.通过深入剖析Radl算法特性,揭示Radl算法与抽象顺序程序Apla(abstract programming language)间本质关系,定义基于Radl语法产生式的Apla程序生成规则,实现了Apla程序自动生成系统,并对其可靠性进行系统研究,着重形式化验证了实现系统的核心算法.使用PAR方法开发的算法是正确的,采用形式化证明的生成系统具有可靠性保证,从而保证了算法从设计到实现的高可靠性,并通过实现自动化开发工具提高了程序的开发效率.

       

      Abstract: Designing algorithm is a creative activity. The traditional design and description methods are difficult to ensure the correctness of algorithm. By defining algorithm description language Radl with mathematical referential transparency in the PAR method, the algorithm described by recursive relation can be obtained from deriving problem specification formally. The core of the algorithm is the recursive relation group, and therefore, it is easy to deduce and prove Radl algorithm formally. By deeply analyzing Radl language and Radl algorithm characteristics, the essential relationship between the Radl algorithm and abstract sequential program Apla is revealed, and Apla program generation rules based on Radl grammar productions are defined. Then Apla program automatic generation system is achieved and the systems reliability is studied. Finally the core algorithm of the system is verified formally. The algorithm developed by PAR method is correct, and the generation system which is proved formally can be assured reliably. So the high reliability of algorithm is ensured, and the automation development tools improve the development efficiency of program.

       

    /

    返回文章
    返回