999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

循環結構的形式化推導*

2014-07-25 07:43:22李賢貞吳茂念
網絡安全與數據管理 2014年5期
關鍵詞:程序方法

李賢貞 ,吳茂念 ,楊 靜

(1.貴州大學 計算機科學與信息學院,貴州 貴陽 550025;2.中國科學院國家天文臺,北京 100012)

算法是計算機科學的核心,而算法的正確性是近幾年討論的熱點問題,但是效果并不明顯。一般情況下,程序的正確性都是針對已經編好的程序,通過測試用例,盡可能地找出程序的漏洞,但這種方法并不能從根本上保證程序的正確性。采用形式化的方法[1]來進行設計程序,是先將需要解決的問題精確描述出來,再根據某種形式化規則進行推理,最終得到正確且結構化的程序。目前存在很多種形式化方法,Dijkstra的最弱前置條件程序推導;英國愛丁堡大學的Burstall和Darlington所研制的ZAP系統;基于公理語義的Z;基于指稱語義的VDM;基于抽象機的B方法;江西師范大學提出的PAR(Partition And Recur)方法[2-5]等。

如果能找出一套形式化方法,實現程序的自動化開發和證明,將使得開發周期大大縮短,降低程序開發的成本,也將不再有后期維護的后顧之憂。Dijkstra主張程序開發和程序證明同時進行,屬于半自動化的形式化方法[6]。需要人為地找出確定描述程序功能的斷言、循環不變式以及t函數。若能提出某種方法實現此過程的自動化,將有望找出自動化的形式化推導。

1 形式化推導的基本思想

1.1 {Q}S{R}系統

設S是一個程序語句,S的前斷言為Q,后斷言為R,記法{Q}S{R}表示如果在 S執行之前謂詞Q為真,那么在S執行之后謂詞R也真[7]。

1.2 最弱前置條件 wp(S,R)

對于給定的程序S,wp(S,R)是一個狀態集合,以該集合中任一狀態作為初始狀態執行程序S都能保證程序終止且滿足后置條件R;反之,能使程序終止,且終止狀態滿足后置條件 R的初始狀態必屬于 wp(S,R)所定義的狀態集合。即對程序S來說,wp(S,R)是屬于后置條件R的最弱前置條件。

1.3 空語句

“skip”表示空語句,即什么都不執行。

即對于任意的后置條件R,其空語句下的最弱前置條件也為R。

1.4 賦值語句

賦值語句的語句形式x:=E,指變量x被表達式E所替換。

即對于任意的后置條件R,其賦值語句下的最弱前置條件是將R中所有出現的x都用E來代替。

1.5 分號語句

分號語句的語句形式 S1;S2,指先激活 S1,執行結束后再激活 S2,如式(3):

即對于任意的后置條件R,其分號語句下的最弱前置條件為R在S2下的最弱前置條件作為S1的后置條件,再在S1下的最弱前置條件。

1.6 選擇語句

“IF”表示選擇語句。語句形式如下:

其中 B1,B2,…,Bn都是警衛,選擇所有警衛為真的其中一個 Bi,執行 SLi語句體,然后 IF終止。

1.7 循環語句

“DO”表示循環語句。語句形式如下:

其中 B1,B2,…,Bn都是警衛,如果 Bi為真,則執行SLi語句體,循環執行,直至所有的警衛為假,則循環終止。

1.8 循環結構的基本原理

其中P為循環不變式[8],即循環執行之前 P為真,且每次循環重復執行之后還為真。

1.9 t函數

t函數是一個整型函數,且需滿足以下條件:

即如果BB滿足t>0,且衛式命令的每次執行都會使得t至少減1,則程序是可終止的。

2 循環結構形式化推導的一般步驟

(1)對于給定的實際問題,經過分析用形式化的方法寫出后置條件R,找出循環不變式P,以及保證程序終止的函數t。

(2)由于終止條件時必須滿足后置條件R,即從而找出警衛BB,即循環結構的條件。

(3)根據循環不變式P和后置條件R尋找可行的初始化條件。

(4)根據循環結構的基本原理,由

得出循環體和Bj。

3 用形式化推導過程求任意正整數的階乘

(1)用變量W來存最后求得的值。則后置條件

因為程序必須滿足所有的正整數,如果不采用循環語句就很難看出R是如何得到的。所以需尋求一個循環不變式,最好能比較容易建立,而最終又要有(P and non BB)=>R。選擇一個稍弱于 R的式子,也就是得到終態的一個泛化。而泛化一個式子的典型做法就是用一個變量來代替一個常量,所以用變量j來代替常量n,并加入變量范圍,則循環不變式

而t函數每次都需單調遞減,可設t函數:

(2)由循環不變式P和后置條件R可得出:

(3)為了驗證這個P是否有效,首先必須有一個比較易行的方式來開始。由

則初始化為

(4)由于式(14)、式(15),則

結合式(16),可知t函數滿足了式(9)。

為了保證t至少減 1,可以讓j加 1,那么W就要乘以(j+1),則

所以

則滿足循環結構基本原理的前提條件式(6),再由

從而得出了BB

(5)程序段為:

嚴格按照形式化推導的方式開發得出循環結構,保證了此程序的完全正確性。

本文簡要介紹了Dijkstra的最弱前置條件程序推導方法,并通過開發并證明任意正整數的階乘來說明此方法的步驟及其要點。此例子中,需要人為地尋找出后置條件R、循環不變式P、以及t函數。自動化的方式推導出R,P或t函數可以作為下一步的研究課題。而自動化生成正確的程序是一個長期性的國際難題,是一項富有創造性和挑戰性的活動,值得進一步研究更多的算法,尋找形式化推導的一般規律,盡可能將創造性勞動變為非創造性勞動,使形式化方法走出實驗室,給工程程序的開發帶來幫助。

[1]唐稚松,林惠民.功能描述導引的程序綜合[M].北京:中國學術期刊電子出版社,1983.

[2]石海鶴,薛錦云.基于 PAR的算法形式化開發[J].計算機學報,2009,32(5):982-991.

[3]王昕,袁超偉.一種安全協議的形式化分析方法[J].計算機工程,2010,36(7):82-84.

[4]楊晨,薛錦云,蘇昭.三個經典數學問題的形式化開發[J].計算機與現代化,2010,180(8):1-4.

[5]王昌晶,薛錦云.算法及其時間復雜度可同步形式化推導的方法[J].計算機應用研究,2008,25(3):681-683.

[6]WYBE D E.A Discipline of programming[M].America,1976.

[7]楊帆,翟巖慧,曲開社,等.基于形式概念分析的詞義解釋研究[J].計算機科學,2011,38(10):189-191.

[8]雷富興,張來順,石榮剛,等.循環條件的形式化推導在程序驗證中的應用 [J].計算機工程與設計,2010,31(14):3193-1397.

猜你喜歡
程序方法
學習方法
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 欧美日韩在线观看一区二区三区| 国产成人精品在线1区| 99久久精品免费观看国产| 亚洲最大福利视频网| 国产美女无遮挡免费视频| 91成人在线免费视频| 伊人久久大香线蕉aⅴ色| 久久精品免费看一| 欧美在线综合视频| 国产福利一区在线| 亚洲aⅴ天堂| 日本午夜三级| 免费人成网站在线观看欧美| 国产麻豆91网在线看| 毛片一级在线| 国产成人超碰无码| 97国产精品视频人人做人人爱| 日韩欧美中文| 91精品国产一区| 丝袜久久剧情精品国产| 国内自拍久第一页| 精品在线免费播放| 91视频免费观看网站| 青草精品视频| 国产欧美精品一区aⅴ影院| 亚洲自偷自拍另类小说| 欧美在线视频a| 婷婷色一二三区波多野衣| 国产精品美女在线| 国产主播一区二区三区| 亚洲天堂在线免费| 成人小视频在线观看免费| 少妇高潮惨叫久久久久久| 亚洲第一色网站| 无码一区二区三区视频在线播放| 91精品小视频| 欧美性爱精品一区二区三区| 华人在线亚洲欧美精品| 精品丝袜美腿国产一区| 丰满少妇αⅴ无码区| av手机版在线播放| 国产呦精品一区二区三区下载 | 91国内在线视频| 九九热精品视频在线| 国产视频入口| 亚洲区视频在线观看| 3D动漫精品啪啪一区二区下载| 99久久人妻精品免费二区| 国产成人1024精品下载| 日韩小视频在线播放| 成年人午夜免费视频| 四虎影视库国产精品一区| 欧美日本在线一区二区三区| 国产欧美日韩专区发布| 无码精品国产dvd在线观看9久| 在线亚洲天堂| 91亚洲视频下载| 波多野结衣无码中文字幕在线观看一区二区 | 激情亚洲天堂| 视频二区中文无码| 九色综合伊人久久富二代| 国产玖玖玖精品视频| 国产日韩精品欧美一区喷| 亚洲福利视频网址| 毛片网站观看| 久草网视频在线| 91在线播放免费不卡无毒| 精品乱码久久久久久久| 香蕉国产精品视频| 国产午夜福利亚洲第一| 欧美在线精品一区二区三区| 久久久久久国产精品mv| a级毛片毛片免费观看久潮| 国产在线精品香蕉麻豆| 狠狠色噜噜狠狠狠狠色综合久| 欧美激情首页| 找国产毛片看| 九色在线观看视频| 精品久久久久久久久久久| 久久精品人人做人人综合试看| 国产成人AV综合久久| 国产毛片网站|