The automatic algorithm programming model can increase the dependability and efficiency of algorithm program development,including specification generation,program refinement,and formal verification.However,the existi...The automatic algorithm programming model can increase the dependability and efficiency of algorithm program development,including specification generation,program refinement,and formal verification.However,the existing model has two flaws:incompleteness of program refinement and inadequate automation of formal verification.This paper proposes an automatic algorithm programming model based on the improved Morgan’s refinement calculus.It extends the Morgan’s refinement calculus rules and designs the C++generation system for realizing the complete process of refinement.Meanwhile,the automation tools VCG(Verification Condition Generator)and Isabelle are used to improve the automation of formal verification.An example of a stock’s maximum income demonstrates the effectiveness of the proposed model.Furthermore,the proposed model has some relevance for automatic software generation.展开更多
The advantage of COOZ (Complete Object-Oriented Z) is to specify large scale software, but it does not support refinement calculus. Thus its application is confined for software development. Including refinement calc...The advantage of COOZ (Complete Object-Oriented Z) is to specify large scale software, but it does not support refinement calculus. Thus its application is confined for software development. Including refinement calculus into COOZ overcomes its disadvantage during design and implementation. The separation between the design and implementation for structure and notation is removed as well. Then the software can be developed smoothly in the same frame. The combina- tion of COOZ and refinement calculus call build object-oriented frame, in which the specification in COOZ is refined stepwise to code by calculus. In this paper, the development model is established, which is based on COOZ and refinement calculus. Data refinement is harder to deal with in a refinement tool than ordinary algorithmic refinement, since data refinement usually has to be done on a large program component at once. As to the implemelltation technology of refinement calculus, the data refinement calculator is constructed and an approach for data refinement which is based on data refinement calculus and program window inference is offered.展开更多
The program construction process is based on rigorous mathematical reasoning,which leads to a fully correct algorithmic program via step-by-step refinement of the program specifications.The existing program constructi...The program construction process is based on rigorous mathematical reasoning,which leads to a fully correct algorithmic program via step-by-step refinement of the program specifications.The existing program construction methods'refinement process is partly based on individual subjective speculation and analysis,which lacks a precise guidance method.Meanwhile,efficiency factors have usually been ignored in the construction process,and most of the constructed abstract programs cannot be run directly by machines.In order to solve these problems,a novel program construction method for the sequence statistical class algorithms based on bidirectional scan induction is proposed in this paper.The method takes into account the efficiency factor and thus improves the Morgan's refinement calculus.Furthermore,this paper validates the method's feasibility using an efficiency-sensitive sequential statistics class algorithm as a program construction example.The method proposed in this paper realizes the correctness construction process from program specifications to efficient executable programs.展开更多
基金Supported by the National Natural Science Foundation of China(61862033,61902162)Key Project of Science and Technology Research of Department of Education of Jiangxi Province(GJJ210307)Postgraduate Innovation Fund Project of Education Department of Jiangxi Province(YC2021-S306)。
文摘The automatic algorithm programming model can increase the dependability and efficiency of algorithm program development,including specification generation,program refinement,and formal verification.However,the existing model has two flaws:incompleteness of program refinement and inadequate automation of formal verification.This paper proposes an automatic algorithm programming model based on the improved Morgan’s refinement calculus.It extends the Morgan’s refinement calculus rules and designs the C++generation system for realizing the complete process of refinement.Meanwhile,the automation tools VCG(Verification Condition Generator)and Isabelle are used to improve the automation of formal verification.An example of a stock’s maximum income demonstrates the effectiveness of the proposed model.Furthermore,the proposed model has some relevance for automatic software generation.
基金the National Natural Science Foundation of China (No.69673006) and theNational Ninth Five-Year Project (98-780-01-07-06) of Ch
文摘The advantage of COOZ (Complete Object-Oriented Z) is to specify large scale software, but it does not support refinement calculus. Thus its application is confined for software development. Including refinement calculus into COOZ overcomes its disadvantage during design and implementation. The separation between the design and implementation for structure and notation is removed as well. Then the software can be developed smoothly in the same frame. The combina- tion of COOZ and refinement calculus call build object-oriented frame, in which the specification in COOZ is refined stepwise to code by calculus. In this paper, the development model is established, which is based on COOZ and refinement calculus. Data refinement is harder to deal with in a refinement tool than ordinary algorithmic refinement, since data refinement usually has to be done on a large program component at once. As to the implemelltation technology of refinement calculus, the data refinement calculator is constructed and an approach for data refinement which is based on data refinement calculus and program window inference is offered.
基金Supported by the National Natural Science Foundation of China(62262031)the Jiangxi Provincial Natural Science Foundation(20232BAB202010)+1 种基金the Science and Technology Project of Education Department of Jiangxi Province(GJJ210307,GJJ2200302)the Cultivation Project for Academic and Technical Leader in Major Disciplines in Jiangxi Province(20232BCJ22013)。
文摘The program construction process is based on rigorous mathematical reasoning,which leads to a fully correct algorithmic program via step-by-step refinement of the program specifications.The existing program construction methods'refinement process is partly based on individual subjective speculation and analysis,which lacks a precise guidance method.Meanwhile,efficiency factors have usually been ignored in the construction process,and most of the constructed abstract programs cannot be run directly by machines.In order to solve these problems,a novel program construction method for the sequence statistical class algorithms based on bidirectional scan induction is proposed in this paper.The method takes into account the efficiency factor and thus improves the Morgan's refinement calculus.Furthermore,this paper validates the method's feasibility using an efficiency-sensitive sequential statistics class algorithm as a program construction example.The method proposed in this paper realizes the correctness construction process from program specifications to efficient executable programs.