[發(fā)明專利]一種基于可滿足性求解的同步語言程序自動驗證方法有效
| 申請?zhí)枺?/td> | 202011103235.5 | 申請日: | 2020-10-15 |
| 公開(公告)號: | CN112269734B | 公開(公告)日: | 2022-04-26 |
| 發(fā)明(設計)人: | 陳哲;孫毅;冉丹 | 申請(專利權)人: | 南京航空航天大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 南京經(jīng)緯專利商標代理有限公司 32200 | 代理人: | 施昊 |
| 地址: | 210016 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 滿足 求解 同步 語言 程序 自動 驗證 方法 | ||
1.一種基于可滿足性求解的同步語言程序自動驗證方法,其特征在于,包括如下步驟:
s1:將同步語言程序中的枚舉值、用戶自定義類型和常量內(nèi)聯(lián)到同步語言程序的節(jié)點里;
s2:在所述同步語言程序的主節(jié)點中遞歸地內(nèi)聯(lián)所有被調用的節(jié)點,得到一個包含單一節(jié)點N的同步語言程序;
s3:通過引入新的局部數(shù)據(jù)流將程序的內(nèi)存深度降為1,方法具體如下:
首先,假設所述單一節(jié)點N中的數(shù)據(jù)流集合V={x1,x2,...,xp,y1,y2,...,yq},其中x1~xp為輸入數(shù)據(jù)流,y1~yq為局部數(shù)據(jù)流或輸出數(shù)據(jù)流,所述單一節(jié)點N中的數(shù)據(jù)流y1~yq在第n個時鐘上的值y1(n)~yq(n)構成的等式集合Δ(n)表示為:
其中,yi(n)表示數(shù)據(jù)流yi在第n個時鐘上的值,V(n)表示V中的數(shù)據(jù)流在第n個時鐘上的值,t1~tq表示對應的等式右邊的表達式,d是N中pre操作符的最大內(nèi)存深度,假設數(shù)據(jù)流yi和數(shù)據(jù)流xj之間存在一個包含d個pre操作符的等式y(tǒng)i=pre(pre(…(pre(xj)))),則引入d-1個新的局部數(shù)據(jù)流yixj1,…,yixj(d-1),將原等式替換為yi=pre(yixj1),并增加等式y(tǒng)ixj1=pre(yixj2),…,yixj(d-1)=pre(xj),使得等式中pre操作符的最大內(nèi)存深度由d降低為1,此時,所述單一節(jié)點N的等式集合變?yōu)槿缦滦问剑?/p>
其中yq+1~ym是新增的局部數(shù)據(jù)流,tq+1~tm表示對應的等式右邊的表達式,將所述單一節(jié)點N中的數(shù)據(jù)流在第n個時鐘上的值V(n)稱為瞬時結構,Δ′(n)中的yi(n)的值就是第n和n-1個時鐘上的瞬時結構構成的函數(shù),因此所述單一節(jié)點N即為基于瞬時結構的約束型系統(tǒng);
s4:將所述包含單一節(jié)點N的同步語言程序表示為在第n個時鐘上的命題邏輯公式N(n),將其安全屬性P表示為命題邏輯公式P(n),具體方法如下:
將包含所述單一節(jié)點N的同步語言程序及其安全屬性P分別表示為在第n個時鐘上的命題邏輯公式N(n)和P(n),其中所述命題邏輯公式N(n)即為將所述Δ(n)中的等式用合取運算符相連得到的公式,所述命題邏輯公式P(n)為將所述安全屬性P中的變量標識符用該變量在第n個時鐘上的值替換后得到的表達式;
s5:基于所述命題邏輯公式N(n)和P(n)構造驗證公式,并利用可滿足性模理論驗證所述驗證公式是否成立。
2.根據(jù)權利要求1所述的一種基于可滿足性求解的同步語言程序自動驗證方法,其特征在于,
所述步驟s1中的內(nèi)聯(lián)操作使用映射數(shù)據(jù)結構來實現(xiàn),且通過遍歷同步語言程序,將所述同步語言程序中所有映射數(shù)據(jù)結構中的鍵替換為其在映射中對應的值。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京航空航天大學,未經(jīng)南京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011103235.5/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。
- 上一篇:一種鋰電池保護板
- 下一篇:一種建筑外墻保溫裝飾板制作加工系統(tǒng)





