Method for scalable liveness verification via abstraction refinement

US9483595B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9483595-B2
Application numberUS-201514729812-A
CountryUS
Kind codeB2
Filing dateJun 3, 2015
Priority dateJan 19, 2015
Publication dateNov 1, 2016
Grant dateNov 1, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Liveness verification of a logic design is performed using various shadow abstraction refinement techniques. An initial subset of state elements are included in the shadow abstraction, and verification is performed (liveness-to-safety conversion) using this initial subset. If a liveness counterexample is detected, the shadow abstraction is refined by designating a second subset of the state elements different from the initial subset for inclusion in a refined abstraction. The initial subset can be designated by choosing all registers in a combinational fan-in of a liveness property of the design. High-performance algorithms for abstract liveness-to-safety conversion can be based upon simulation and counterexample refinement, bounded model checking and counterexample refinement, bounded model checking and proof-based refinement, proofs obtained during bounded model checking of a precise liveness checking problem, a hybrid of counterexample-based refinement and proof analysis, and proofs obtained.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of verifying liveness of a logic design comprising: receiving a circuit description for the logic design which includes vertices representing gates and edges representing interconnections between the gates, wherein portions of the gates represent different state elements which are evaluated to determine a state of the logic design, by executing first instructions in a computer system; designating an initial subset of the state elements for inclusion in an abstraction of the logic design, by executing second instructions in the computer system; performing liveness verification on the abstraction based on the initial subset of the state elements, by executing third instructions in the computer system; detecting a liveness counterexample in response to said performing the liveness verification, by executing fourth instructions in the computer system; and refining the abstraction by designating a second subset of the state elements different from the initial subset for inclusion in a refined abstraction, by executing fifth instructions in the computer system. 2. The method of claim 1 wherein the circuit description includes at least one liveness property of the logic design, and the initial subset of the state elements is designated by choosing all registers in a combinational fan-in of the liveness property. 3. The method of claim 2 wherein the second subset of the state elements is designated by adding at least one selected register not in the combinational fan-in having a value which cannot be repeated in a state loop of the logic design between a start and an end of the loop. 4. The method of claim 3 wherein the second subset of the state elements includes all state elements in the initial subset. 5. The method of claim 1 further comprising subsequently performing a liveness verification on the refined abstraction, again detecting a liveness counterexample in response to the subsequent performing, and further refining the abstraction designating a subsequent subset of state elements different from previous subsets for inclusion in a further refined abstraction, wherein said subsequently performing, again detecting, and further refining are repeated iteratively. 6. The method of claim 1 wherein the liveness verification includes liveness-to-safety conversion on the initial subset of the state elements. 7. The method of claim 1 wherein the circuit description includes at least one fairness property of the logic design, and said refining includes applying the fairness property to the second subset of the state elements.

Assignees

Inventors

Classifications

  • Design verification, e.g. functional simulation or model checking · CPC title

  • Physics · mapped topic

  • Physics · mapped topic

  • using formal methods, e.g. equivalence checking or property checking · CPC title

  • using simulation · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9483595B2 cover?
Liveness verification of a logic design is performed using various shadow abstraction refinement techniques. An initial subset of state elements are included in the shadow abstraction, and verification is performed (liveness-to-safety conversion) using this initial subset. If a liveness counterexample is detected, the shadow abstraction is refined by designating a second subset of the state ele…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F17/5045. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 01 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).