Learning to divide and conquer: Applying the L*algorithm to automate assume-guarantee reasoning

Corina S. Pǎsǎreanu, Dimitra Giannakopoulou, Mihaela Gheorghiu Bobaru, Jamieson M. Cobleigh, Howard Barringer

    Research output: Contribution to journalArticlepeer-review


    Assume-guarantee reasoning enables a "divide-and-conquer" approach to the verification of large systems that checks system components separately while using assumptions about each component's environment. Developing appropriate assumptions used to be a difficult and manual process. Over the past five years, we have developed a framework for performing assume-guarantee verification of systems in an incremental and fully automated fashion. The framework uses an off-the-shelf learning algorithm to compute the assumptions. The assumptions are initially approximate and become more precise by means of counterexamples obtained by model checking components separately. The framework supports different assume-guarantee rules, both symmetric and asymmetric. Moreover, we have recently introduced alphabet refinement, which extends the assumption learning process to also infer assumption alphabets. This refinement technique starts with assumption alphabets that are a subset of the minimal interface between a component and its environment, and adds actions to it as necessary until a given property is shown to hold or to be violated in the system. We have applied the learning framework to a number of case studies that show that compositional verification by learning assumptions can be significantly more scalable than non-compositional verification. © 2008 Springer Science+Business Media, LLC.
    Original languageEnglish
    Pages (from-to)175-205
    Number of pages30
    JournalFormal Methods in System Design
    Issue number3
    Publication statusPublished - Jun 2008


    • Assume-guarantee reasoning
    • Compositional verification
    • Labeled transition systems
    • Learning
    • Model checking
    • Proof rules
    • Safety properties


    Dive into the research topics of 'Learning to divide and conquer: Applying the L*algorithm to automate assume-guarantee reasoning'. Together they form a unique fingerprint.

    Cite this