JP5269511B2 - 合成検証のための自動仮定を生成する方法、システム、及びコンピュータプログラム製品 - Google Patents
合成検証のための自動仮定を生成する方法、システム、及びコンピュータプログラム製品 Download PDFInfo
- Publication number
- JP5269511B2 JP5269511B2 JP2008196981A JP2008196981A JP5269511B2 JP 5269511 B2 JP5269511 B2 JP 5269511B2 JP 2008196981 A JP2008196981 A JP 2008196981A JP 2008196981 A JP2008196981 A JP 2008196981A JP 5269511 B2 JP5269511 B2 JP 5269511B2
- Authority
- JP
- Japan
- Prior art keywords
- idfa
- minimum
- automaton
- counterexample
- dfa
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3323—Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Machine Translation (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Description
この節で開示するのは、本発明の一部の実施形態でソフトウエア及びハードウエアシステムの正しさを形式的に立証するのに使用される数学的モデルである。
合成検証は、ソフトウエア及びハードウエアシステムの検証タスクをシステムの個々の構成要素のより単純な検証問題に分解する。2つの構成要素M1及びM2を含むシステムM、及びMに対して検証する必要がある特性Pを最初に考察する。合成検証の仮定−保証様式では、以下の推論規則を用いる。
(1)
(2)
定義1:決定論的有限オートマトン(DFA)Mは、5つ組(S、Σ、s0、δ、F)であり、ここで、(1)Sは、状態の有限集合、(2)Σは、有限アルファベット、(3)δ:SxΣ→Sは、遷移関数、(4)
は、初期状態、(5)
は、受諾状態の集合又は最終状態の集合である。尚、Fは、空の集合とすることができる。
定義2:不完全決定論的有限オートマトン(IDFA)Mは、6つ組(S、Σ、δ、s0、F、R)であり、ここで、(1)Sは、状態の有限集合、(2)Σは、有限アルファベット、(3)
は、部分遷移関数、(4)
は、初期状態、(5)
は、受諾状態の集合、(6)
は、拒否状態の集合である。
及び
である場合、
の時に
であり、それ以外は、
である。
の場合、DFAにより受け入れられ、そうでなければ、sは、Mにより拒否される。文字列sは、
の場合、IDFAにより受け入れられる。文字列sは、
の場合、IDFAのMにより拒否される。
2つの言語
を考慮すると、DFA又はIDFAは、L1における全ての文字列を受け入れ、L2における全ての文字列を拒否した時にL1及びL2を分離する。L1及びL2の最小分離オートマトン(MSA)は、L1及びL2を分離する最小数の状態に関するオートマトンである。
比較のために、学習分離オートマトンのL*ベースの近似法に対して最初に説明する。L*手法では、学習者は、先生に質問を行うことにより未知の正規言語Lに対して最小DFAAを推定する。メンバーシップ質問においては、学習者は、文字列πを示して、先生は、
の場合はイエス、それ以外はノーと答える。同等性質問においては、学習者は、オートマトンAを提案し、先生は、L(A)=Lの場合はイエスと答え、そうでなければ反証例を示す。反証例は、正(すなわち、L\L(A))である場合があり、又は負(すなわち、L(A)\L内の文字列)の場合がある。Aのサイズにおいて多項式であるいくつかの質問においてAを見出すことを保証する学習者の方法は、当業者には公知である。
の場合にイエスと答え、
の場合にノーと答える。πがL1内でもL2内でもない場合、その選択は、任意である。先生は、最小分離オートマトンを知らないので、正しい答えを示すことはできず、従って、単純にノーと答える。従って、実際には、先生は、学習者にL1を学習するように求めるが、L1及びL2を分離するあらゆる推測を受け入れる意志がある。学習者のためのAngluinの方法を用いると、学習した分離オートマトンAは、L1の最小オートマトンと同様に、状態を有していないことが分る。しかし、これは、最小分離オートマトンよりも任意に大きなものとすることができる。
2つの言語L1及びL2に対して厳密なMSAを見つけるために、一部の実施形態では、IDFAを最小にするPena及びOliveiraの一般的な手法に従うことになる。これは、同等性質問のみを用いる学習手法である。それは、2つの有限集合のストリームを分離する最小DFAを計算することができるサブルーチンに依存するものである。Pena及びOliveiraの手法は、有限状態機械に限定されるが、その技術は、L1及びL2自体が正規言語でなくても、正則分離子を有するあらゆる言語L1及びL2に適用することができる。
及び
を維持する。主ループは、S1及びS2を分離する最小DFAを計算することにより始まる(以下で説明する手順を用いて)。次に、学習者は、Aに対して同等性質問を行う。AがL1及びL2を分離する場合、この手順は終了する。そうでなければ、先生からの反証例ストリームπを取得する。
であり、従って、
がS1に追加される場合、πをS2に追加する。この手順は、同等性質問が成功するまで繰り返される。以下の手法では、負の反証例を最初に試験し、次に、正の反証例を試験する。それにも関わらず、この順番は、任意であり、実際には、この順番は、1つの言語に向けて結果をバイアスさせる回避するために質問毎に無作為に選択することができる。
及び
は、モデル検査の問題である。このアプリケーションにおいては、L1及びL2は、記号で表されたNFAの言語であり、記号モデル検査方法を用いて検査が行われる。尚、L(A)内の閉じ込めを試験するには、Aを補完することが必要であるが、これは、Aが決定論的であることから簡単である。
とする。L1及びL2が正則分離子を有する場合、処理1は、終了し、L1及びL2の最小分離オートマトンを出力する。
証明:k個の状態で、A’をL1及びL2の最小状態分離オートマトンとする。
及び
であるので、A’は、S1及びS2の分離オートマトンということになる。従って、Aは、k個の状態のみを有する(S1及びS2の分離オートマトンであることから)。従って、この手順が終了した場合、Aは、L1及びL2の最小分離オートマトンである。更に、有限のk個の状態で、有限Σを凌いで有限に多くのDFAがある。毎回の反復時に、1つのこのようなオートマトンが、S1及びS2の分離子として除外される。従って、処理は終了すべきである。
定義3:IDFAのM=(S、Σ、s0、δ、F、R)は、関係
がs0にルートを有する方向付けられたツリーである時にツリー状である。
あらゆる2つの互いに素の有限集合の文字列S1及びS2を考慮すると、S1を受け入れてS2を拒否するツリー状IDFAが構成されることになり、TREESEP(S1、S2)と呼ばれる。
定義4:
を互いに素の有限言語とする。S1及びS2のツリー状分離子TREESEP(S1、S2)は、ツリー状DFA(S、Σ、s0、δ、F、R)であり、Sは、
の接頭辞の集合であり、s0は、空文字列であり、F=S1及びR=S2であり、
である場合に
それ以外は⊥である。
定義5:M=(S、Σ、s0、δ、F、R)及びM’=(S’、Σ’、s0’、δ’、F’、R’)をアルファベットΣ上の2つのIDFAとする。マップφ:S→S’は、以下の時に、M’上へのMの折り畳みである。
a.
b.全ての
に対して、
であれば、
c.全ての
かつ
d.全ての
定理2(OLIVEIRA及びSILVA):受諾集合S1及び拒否集合S2で、T=(S、Σ、s0、δ、F、R)をツリー状IDFAとする。Σ上のIDFAAは、TからAまでの折り畳みΣが存在する場合、かつTからAまでの折り畳みΣが存在する場合にのみ、S1及びS2の分離オートマトンである。
定義6:M=(S、Σ、s0、δ、F、R)をΣ上のIDFAとする。Mの一致パーティションは、
a.全ての
に対して、
であり、
かつ
かつ[s]Γ =[t]Γであれば、
かつ
b.全ての状態
及び
に対して、
であるようなSのパーティションГである。
定義7:M=(S、Σ、s0、δ、F、R)をIDFAとし、ГをSの一致パーティションとする。M/Гの商は、
a.
b.
c.
かつ
d.
であるようなIDFA(Г’、Σ’、s0’、δ’、A’、R’)である。
は、⊥,T,及びSの要素を収容する格子内の最小上界を表している。一致性は、最小上界が決してTではないことを保証する。
定理3:受諾集合S1及び拒否集合S2で、Tがツリー状IDFAとする。Tが濃度kの一致パーティションГを有する時にS1及びS2を厳密に分離するk個の状態のIDFAが存在する。更に、T/Гは、S1及びS2を分離する。
証明:Гは、S(T)の一致パーティションであると仮定する。sを[s]Гにマップする関数φは、T/Г上へのTの折り畳みであるということになる。従って、定理2により、T/Гは、をS1及びS2分離し、k個の状態を有する。逆に、Aは、S1及びS2を分離するk個の状態のIDFAであると仮定する。定理2により、TからAへの折り畳みφが存在する。折り畳みの定義により、φにより導出されたパーティションは、一致パーティションであり、かつ(高々)k個の状態を有する。
一部の実施形態では、SAT解法を使用すると、k個の状態の一致パーティションの存在の問題の以下の符号化を用いて最小パーティションを見つけることができる。n=[log2k]とする。これは、パーティションを列挙するために必要とされるビット数である。各状態
に対しては、ブール変数
のベクトルを導入する。これは、sが割り当てられるパーティションの番号及び商の対応する状態を表している。次に、パーティションが一致していることを保証するブール制約の集合を構成する。最初に、各sに対しては、
(
のビット数の上に表される)が存在すべきである。次に、記号aに対して外向き遷移を有する状態s及びtの全ての対に対しては、制約
が存在する。すなわち、パーティションは、遷移関係を尊重すべきである。最後に、状態
及び
の全ての対に対して、次に、制約
を取得することができる。すなわち、拒否及び受諾状態は、同じパーティション内に置くことはできない。この集合の制約は、SatEnc(T)と呼ばれる。真理値割り当てψは、パーティションГ={Г0、...、Гk-1}がTの一致パーティションである時に厳密にSatEnc(T)を満足し、ここで、
である。従って、満足する割り当てから、一致パーティションを抽出することができる。
1.T=TREESEP(S1、 S2)とする;
2.k=1とする;
3.(1)の間に以下を行う
4.SATENC(T)が満足されれば、
5.ψをSatEnc(T)の満足できる割り当てとする;
6.
とする;
7.A=T/Γとする;
8.δ(A)を何らかの方法で全体関数に拡張する;
9.DFAのAに戻る
10.k=k+1にする;
仮定−保証推論の中間アサーションを見つけるために、処理1を用いてL(M1)及びL(M2’)のMSAのみを計算すべきである。
処理1:全体的な手順
a.AsGr(L1、L2)
1.S1={};S2={};
2.(1)である間に以下を行う
3.AをS1及びS2に対するMSAとする;
4.
であれば、次に
5.L(A)∩L2=φであれば、次に
6.真を戻す(Aは、L1及びL2を分離する、特性が保持される)
7.それ以外であれば、
8.
及び
とする;(負の反証例)
9.
であれば、次に
10.偽を戻す;(L1及びL2は互いに素ではない、特性は、保持されない)
11.それ以外であれば、
12.
13.それ以外であれば、
14.
及び
とする;(正の反証例)
15.
であれば、次に
16.偽を戻す;(L1及びL2は互いに素ではない、特性は、保持されない)
17.それ以外であれば、
18.
上述のように、ハードウエア検証においては、アルファベット_のサイズは、M1とM2の間を通るブール信号の数において幾何級数的である。これは、実際には、L(M1)及びL(M2’)から取得したサンプルが含むアルファベット記号は取るに足らない部分に過ぎない可能性があることを意味する。従って、IDFAAも、Σの小さな部分に対する遷移を含むことになる。従って、適切な方法で完全なアルファベットにわたってこのIDFAからDFAに一般化する何らかの方法を見つける必要性が存在すると考えられる。これは、とても良定義問題とは言えない。ある意味では、IDFAの部分遷移関数と一致した「最も単純な」全体関数を推論してOccamの剃刀の適用を実行することができる。これを行う方法は数多くあるであろう。例えば、記号aの所定の状態からの遷移がIDFAで定められていない場合、何らかの距離尺度に従って最も近い定義済み記号の次の状態にマップすることができる。
電子回路の合成検証のための自動仮定を生成するための本発明の一部の実施形態で実施されるような方法及びシステムの全体的な流れのブロック図を示す図1Bを参照する。102で、本方法は、本発明の一部の実施形態において、最初にサンプルの2つの集合S1及びS2を特定する。しかも、本発明の一部の実施形態では、検証すべき特性を更に特定する。本方法及びシステムは、次に、104で、最小分離不完全決定論的有限オートマトン(IDFA)を反復的に計算する。112で、本方法及びシステムは、以前に計算したIDFAを一般化し、完全なDFAを出力して108に進む。一実施形態では、本方法及びシステムは、続いて108で、不完全決定論的有限オートマトンAがL1及びL2を分離するか否かを判断する。
が存在することを示している。すなわち、パーティションは、遷移関係を尊重すべきである。更に、506は、状態
の全ての対に対して、制約
が存在することを示している。換言すると、制約506は、拒否状態及び受諾状態を同じパーティション内に置くことはできないことを要求する。
を解く。パーティションГ={Г0、...、Гk-1}が、Tの一致パーティションである時に、厳密にこれらの制約を満足する真理割り当てψは、Tの一致パーティションであり、ここで、
である。従って、満足する割り当てから、一致パーティションを抽出することができる。
か否かを判断する。708で
と判断された場合、本方法及びシステムは、更に、
か否かを判断する。718で
と判断された場合、本方法及びシステムは、真を戻す。すなわち、最小分離オートマトンAは、L1及びL2を分離し、特性pが保持される。
と判断された場合、本方法及びシステムは、710で反証例πを特定し、ここで、
である。本方法及びシステムは、712で反証例
か否かを判断する。反証例
である場合、本方法及びシステムは、714で偽を戻す。すなわち、L1及びL2は互いに素ではなく、pは、保持されない。
と判断された場合、本方法及びシステムは、716で反証例πをS1に追加する。
が偽であると判断された場合、本方法及びシステムは、720で
及び
の両方を満足する反証例πを特定する。本方法及びシステムは、722で
か否かを判断する。
と判断された場合、本方法及びシステムは、次に、726で偽を戻す。すなわち、L1及びL2は互いに素ではなく、pは、保持されない。それに反して、
と判断された場合、本方法及びシステムは、724でπをS2に追加する。アクション714、716、718、724、及び726の後に、本方法及びシステムは、728で同等性質問が成功するか否かを判断し、同等性質問が成功した場合、730でこの反復的手順を終了する。代替的に、732で、本方法及びシステムは、702に戻り、そこで、728で同等性質問が失敗すると判断される。
か否かを判断する。別の実施形態では、
の判断は、モデル検査呼び出しを構成する。
の判断が失敗したと判断された810で、本方法及びシステムは、更に、
か否かを判断する。別の実施形態では、
の判断は、限定モデル検査呼び出しを構成する。
の判断により偽が戻された場合、812でバグが報告される。代替的に、
の判断により真が戻された場合、本方法及びシステムは、次に、820で最初に特定されたサンプルの集合に戻って、正のサンプルをそれに追加する。
か否かを判断する。別の実施形態では、
の判断は、モデル検査呼び出しを構成する。814で、
の判断により真が戻された場合、820で特性pが保持される。814で、
の判断により偽が戻された場合、本方法及びシステムは、更に、816でサンプル
か否かを判断する。別の実施形態では、
か否かの判断は、限定モデル検査呼び出しを構成する。816で
と判断された場合、本方法及びシステムは、バグを報告し、又は特性pは、保持されない(818)。816で
が失敗すると判断された場合、本方法及びシステムは、820で最初に特定された集合のサンプルに戻って、負のサンプルをそれに追加する。
本発明の一部の実施形態は、Cadence製SMV(記号モデル検証器)又は他の「記号モデル検証器」上で実施することができる。本発明の一実施形態では、ユーザは、2つの成分へのソフトウエア及びハードウエアのシステムの分解を指定する。Cadence製SMVをBDDベースのモデル検査システムとして使用して仮定を検証し、更に、増分BMCエンジンとして反証例を検査することができる。SAT解法も上述の実施例において使用される。ID3法も、決定木を生成するように開発することができる。Cobleighにより提案されているL*ベースの方法も、R.L.Rivest及びR.E.Schapire著「ホーミングシーケンスを用いた有限オートマトンの推論」、STOC’89:計算の理論に関する21回年次ACMシンポジューム講演論文集、411ページから420ページに提案されている最適化バージョンを用いて実施することができる。
図9は、本発明の実施形態を実行するのに適する例示的なコンピュータシステム1400のブロック図である。コンピュータシステム1400は、プロセッサ1404、システメモリ1406(例えば、RAM)、静的記憶装置1408(例えば、ROM)、ディスクドライブ1410(例えば、磁気又は光)、通信インタフェース1412(例えば、モデム又はイーサネットカード)、ディスプレイ1414(例えば、CRT又はLCD)、入力デバイス1416(例えば、キーボード)、及びカーソル制御装置1418(例えば、マウス又はトラックボール)のようなサブシステム及びデバイスを相互接続する情報を伝達するためのバス1402又は他の通信機構を含む。
コンピュータシステム1400は、通信リンク1420及び通信インタフェース1412を通じてプログラム、すなわち、アプリケーションコードを含むメッセージ、データ、及び命令を送受信することができる。受信プログラムコードは、受信時にプロセッサ1404により実行され、及び/又はその後の実行に向けてディスクドライブ1410又は不揮発性記憶装置に記憶することができる。
DFA 決定論的有限オートマトン
IDFA 不完全決定論的有限オートマトン
Claims (18)
- 電子回路設計の合成検証のための自動仮定を生成する、コンピュータによって実行される方法であって、プロセッサを用いて、
電子回路設計の挙動の第1の集合及び第2の集合を特定する段階と、
前記第1及び第2の集合の挙動に基づいて、前記挙動の第1の集合と第2の集合を分離する最小不完全決定論的有限オートマトン(IDFA)を反復的に計算する段階と、
前記最小IDFAからの一般化によって決定論的有限オートマトン(DFA)を判断する段階と、ここで、前記DFAは前記IDFAから情報を収集するための学習処理を実行することにより判断され、
前記DFAアクションを判断する段階の結果を有形コンピュータ可読媒体上に記憶する段階と、
を含むことを特徴とする方法。 - 前記最小IDFAがL1及びL2を分離するか否かを判断する段階、
を更に含むことを特徴とする請求項2に記載の方法。 - 前記最小IDFAがL1及びL2を分離するか否かを判断するアクションは、
前記最小IDFAがL1及びL2を分離しないと判断される反証例を取得する段階と、
前記反証例がL1に属するか否かを判断する段階と、
を含む、
ことを特徴とする請求項3に記載の方法。 - 前記反証例がL1に属すると判断される場合に該反証例を前記第1の集合に追加し、又は該反証例がL1に属さないと判断される場合に該反証例を前記第2の集合に追加する段階を更に含むことを特徴とする請求項4に記載の方法。
- 前記反証例は、モデル検査から得られることを特徴とする請求項4に記載の方法。
- 前記挙動の第1の集合又は前記第2の集合は、最初は空であることを特徴とする請求項1に記載の方法。
- 前記最小IDFAに対する問い合わせを更に含むか又はそれを実行する段階を含むことを特徴とする請求項1に記載の方法。
- 前記最小IDFAを反復的に計算するアクションは、
前記第1の集合及び前記第2の集合にわたってツリー状IDFAの折り畳みを構成する段階と、
前記ツリー状IDFAの一致パーティションを判断する段階と、
前記第1及び第2の集合を厳密に分離するオートマトンを判断する段階と、
を含む、
ことを特徴とする請求項1に記載の方法。 - 前記一致パーティションは、前記ツリー状IDFAの状態数である濃度kのものであり、前記第1の集合及び前記第2の集合を分離する各IDFAは、該第1の集合及び該第2の集合にわたって該ツリー状IDFAに対して準同形であり、又は
前記折り畳みを構成するアクションは、前記第1の集合及び前記第2の集合にわたる前記ツリー状IDFAの複数の状態から該第1の集合及び該第2の集合を分離する前記最小IDFAの別の複数の状態へのマップを推定することによって実行される、
ことを特徴とする請求項9に記載の方法。 - 前記第1の集合及び前記第2の集合は、共に有限であることを特徴とする請求項1に記載の方法。
- 前記第1の集合又は前記第2の集合におけるサンプルが、前記電子回路設計における回路構成要素の挙動を構成することを特徴とする請求項1に記載の方法。
- 前記最小IDFAから一般化することによってDFAを判断するアクションは、
前記最小IDFAの部分遷移関数に一致する全体遷移関数を表す最も単純な決定木を判断する段階、
を含む、
ことを特徴とする請求項1に記載の方法。 - 前記全体遷移関数は、アルファベット記号を該アルファベット記号がどの状態に遷移するかに従って分類し、該全体遷移関数は、分類のサンプルを該サンプルに一致する前記最も単純な決定木を判断するために提供し、該最も単純な決定木を判断するアクションは、ID3法を用いて実行され、該最も単純な決定木を判断するアクションは、決定木学習法を用いて実行され、該最も単純な決定木は、前記DFAのアルファベットを定めるブール変数上で分岐し、又は
前記最も単純な決定木の葉は、前記DFAの次の状態を示す、
ことを特徴とする請求項15に記載の方法。 - 少なくとも1つのプロセッサによって実行されたときに、当該少なくとも1つのプロセッサに、請求項1から請求項16のいずれかに記載の方法を実行させる実行可能コードを有する、コンピュータ使用可能記憶媒体に記録されたコンピュータプログラム。
- 請求項1から請求項16のいずれかに記載の方法を実行するための手段を含む、電子機器の合成検証のための自動仮定を生成するためのシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/772,792 | 2007-07-02 | ||
US11/772,792 US7685547B1 (en) | 2007-07-02 | 2007-07-02 | Method, system, and computer program product for generating automated assumption for compositional verification |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009054147A JP2009054147A (ja) | 2009-03-12 |
JP5269511B2 true JP5269511B2 (ja) | 2013-08-21 |
Family
ID=39811514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008196981A Expired - Fee Related JP5269511B2 (ja) | 2007-07-02 | 2008-07-02 | 合成検証のための自動仮定を生成する方法、システム、及びコンピュータプログラム製品 |
Country Status (5)
Country | Link |
---|---|
US (1) | US7685547B1 (ja) |
EP (1) | EP2012245A1 (ja) |
JP (1) | JP5269511B2 (ja) |
CN (1) | CN101404045B (ja) |
TW (1) | TWI448914B (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8813007B2 (en) * | 2009-04-17 | 2014-08-19 | Synopsys, Inc. | Automatic approximation of assumptions for formal property verification |
US8645310B2 (en) * | 2011-03-22 | 2014-02-04 | GM Global Technology Operations LLC | Efficient source of infeasibility identification in timed automata traces |
US9372949B1 (en) * | 2011-05-25 | 2016-06-21 | Cadence Design Systems, Inc. | Guided exploration of circuit design states |
US8863292B2 (en) * | 2011-12-07 | 2014-10-14 | International Business Machines Corporation | Interactive analysis of a security specification |
CN103036739B (zh) * | 2012-12-11 | 2015-06-17 | 首都师范大学 | 一种用于高可靠通信系统验证与性能分析的形式化方法 |
US8881075B2 (en) | 2013-03-04 | 2014-11-04 | Atrenta, Inc. | Method for measuring assertion density in a system of verifying integrated circuit design |
CN103778051A (zh) * | 2014-01-09 | 2014-05-07 | 安徽理工大学 | 基于l*算法的业务流程增量挖掘方法 |
US20150371140A1 (en) * | 2014-06-24 | 2015-12-24 | Microsoft Technology Licensing, Llc | Minimizing Symbolic Finite Automata |
US10169217B2 (en) | 2016-04-06 | 2019-01-01 | General Electric Company | System and method for test generation from software specification models that contain nonlinear arithmetic constraints over real number ranges |
CN109791575B (zh) * | 2016-05-24 | 2024-05-14 | 科特罗尔有限责任公司 | 一种应用于机电系统的自动化设计系统及方法 |
US10929764B2 (en) * | 2016-10-20 | 2021-02-23 | Micron Technology, Inc. | Boolean satisfiability |
US10970449B2 (en) * | 2017-09-20 | 2021-04-06 | International Business Machines Corporation | Learning framework for software-hardware model generation and verification |
CN113049948B (zh) * | 2019-07-01 | 2022-09-02 | 成都奥卡思微电科技有限公司 | 基于外部引入逻辑电路的形式验证断言空泛性的纠正方法、存储介质和终端 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04158480A (ja) * | 1990-10-23 | 1992-06-01 | Nec Corp | 不完全指定順序回路最小化方法 |
JP3302218B2 (ja) * | 1995-05-19 | 2002-07-15 | 富士通株式会社 | プライム・コンパチブルによる有限状態機械の状態数最小化装置および方法 |
JP3600420B2 (ja) * | 1997-02-28 | 2004-12-15 | 富士通株式会社 | 論理検証装置 |
US6141630A (en) * | 1997-08-07 | 2000-10-31 | Verisity Design, Inc. | System and method for automated design verification |
US6446243B1 (en) * | 1999-04-23 | 2002-09-03 | Novas Software, Inc. | Method for functional verification of VLSI circuit designs utilizing reusable functional blocks or intellectual property cores |
JP4078435B2 (ja) * | 2001-06-06 | 2008-04-23 | 株式会社ルネサステクノロジ | 論理集積回路及び論理集積回路設計方法及び論理集積回路のハードウェア動作記述を生成するハードウェア記述生成方法 |
US7711525B2 (en) * | 2002-05-30 | 2010-05-04 | Nec Corporation | Efficient approaches for bounded model checking |
US7216364B2 (en) * | 2004-06-14 | 2007-05-08 | Lionic Corporation | System security approaches using state tables |
US7685637B2 (en) * | 2004-06-14 | 2010-03-23 | Lionic Corporation | System security approaches using sub-expression automata |
US8392590B2 (en) * | 2004-09-10 | 2013-03-05 | Cavium, Inc. | Deterministic finite automata (DFA) processing |
US8301788B2 (en) * | 2004-09-10 | 2012-10-30 | Cavium, Inc. | Deterministic finite automata (DFA) instruction |
JP2007034833A (ja) * | 2005-07-28 | 2007-02-08 | Fujitsu Ltd | 機能検証記述生成装置,機能検証記述生成方法,及び機能検証記述生成プログラム |
-
2007
- 2007-07-02 US US11/772,792 patent/US7685547B1/en active Active
-
2008
- 2008-07-02 TW TW097124864A patent/TWI448914B/zh not_active IP Right Cessation
- 2008-07-02 EP EP08159557A patent/EP2012245A1/en not_active Ceased
- 2008-07-02 CN CN200810215404.7A patent/CN101404045B/zh not_active Expired - Fee Related
- 2008-07-02 JP JP2008196981A patent/JP5269511B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009054147A (ja) | 2009-03-12 |
TW200907735A (en) | 2009-02-16 |
EP2012245A1 (en) | 2009-01-07 |
CN101404045B (zh) | 2014-06-18 |
CN101404045A (zh) | 2009-04-08 |
TWI448914B (zh) | 2014-08-11 |
US7685547B1 (en) | 2010-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5269511B2 (ja) | 合成検証のための自動仮定を生成する方法、システム、及びコンピュータプログラム製品 | |
Gupta et al. | Automated assumption generation for compositional verification | |
US20070005633A1 (en) | Predicate abstraction via symbolic decision procedures | |
Thomas | A short introduction to infinite automata | |
US20080228679A1 (en) | Symbolic depth-first searches using control flow information for improved reachability analysis | |
US10970449B2 (en) | Learning framework for software-hardware model generation and verification | |
Neider et al. | Regular model checking using solver technologies and automata learning | |
Esparza et al. | A perfect model for bounded verification | |
Farzan et al. | Automated program verification | |
Gupta et al. | Automated assumption generation for compositional verification | |
Schreiner | Concrete Abstractions: Formalizing and Analyzing Discrete Theories and Algorithms with the RISCAL Model Checker | |
US20050192789A1 (en) | Methods for formal verification on a symbolic lattice domain | |
Boiret et al. | Learning rational functions | |
Raun et al. | C-3PA: Streaming Conformance, Confidence and Completeness in Prefix-Alignments | |
Karlaš et al. | Data Debugging with Shapley Importance over Machine Learning Pipelines | |
Hague et al. | Decidable models of integer-manipulating programs with recursive parallelism | |
Navet et al. | Modeling and verification of real-time Systems: formalisms and software tools | |
Singh | Domain modeling mistake detection system | |
Sakamoto et al. | Learning elementary formal systems with queries | |
de la Higuera et al. | Inference of ω-languages from prefixes | |
Yousofvand et al. | Automatic program bug fixing by focusing on finding the shortest sequence of changes | |
Smetsers | Advances in Model Learning for Software Systems | |
Rozier | Explicit or symbolic translation of linear temporal logic to automata | |
Alatawi | Dynamic Symbolic Execution with Descriptive and Prescriptive Relations. | |
Lu | Formally verified code obfuscation in the Coq proof assistant |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110624 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120724 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120820 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121120 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130408 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130508 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |