4 research outputs found

    Reasoning About Systems with Transition Fairness

    Full text link
    Abstract. Formal verification methods model systems by Kripke structures. In order to model live behaviors of systems, Kripke structures are augmented with fairness conditions. Such conditions partition the computations of the systems into fair computations, with respect to which verification proceeds, and unfair computations, which are ignored. Reasoning about Kripke structures augmented with fairness is typically harder than reasoning about non-fair Kripke structures. We consider the transition fairness condition, where a computation π is fair iff each transition that is enabled in π infinitely often is also taken in π infinitely often. Transition fairness is a natural and useful fairness condition. We show that reasoning about Kripke structures augmented with transition fairness is not harder than reasoning about non-fair Kripke structures. We demonstrate it for fair CTL and LTL model checking, and the problem of calculating the dominators and postdominators.

    Automatic Verification of Parameterized Systems by Over-Approximation

    Full text link

    Automata and linear temporal logic : translations with transition-based acceptance

    Get PDF
    Automata theory provides powerful tools for designing and implementing decision procedures for temporal logics and their applications to the automatic verification of systems against their logical specifications. Implementing these decision procedures by making use of automata built from the systems and their specifications with translation procedures is challenging in practice due to the tendency of the automata to grow easily unmanageably large as the size of the systems or the logical specifications increases. This thesis develops the theory of translating propositional linear time temporal logic (LTL) into nondeterministic automata via self-loop alternating automata. Unlike nondeterministic automata, self-loop alternating automata are expressively equivalent to LTL and allow a conceptually simple translation of LTL specifications into automata using a set of rules for building automata incrementally from smaller components. The use of generalized transition-based acceptance for automata throughout all constructions gives rise to new optimized translation rules and facilitates designing heuristics for the minimization of automata by making use of language containment tests combined with structural analysis of automata. The generalized definition also supports the translation of self-loop alternating automata into nondeterministic automata by essentially applying the standard subset construction; this construction can be further simplified and optimized when working with automata built from LTL formulas. The translation rules can also be used to identify a syntactic subclass of LTL for which the exponential increase caused by the subset construction in the number of states of the automaton can always be avoided; consequently, the satisfiability problem for this subclass, which is shown to extend related subclasses known from the literature, is NP-complete. Additionally, the emptiness of generalized nondeterministic automata is shown to be testable without giving up generalized transition-based acceptance by using a new variant of the well-known nested depth-first search algorithm with improved worst-case resource requirements.Automaattiteorian avulla voidaan suunnitella ja toteuttaa temporaalilogiikkojen ratkaisumenetelmiä sekä näiden menetelmien sovellutuksia logiikoilla järjestelmistä esitettyjen oikeellisuusvaatimusten tietokoneavusteiseen verifiointiin. Käytännössä näiden ratkaisumenetelmien toteuttaminen kääntämällä järjestelmät ja niiden oikeellisuusvaatimukset automaateiksi on kuitenkin haasteellista, sillä näistä automaateista tulee järjestelmien tai loogisten vaatimusten koon kasvaessa helposti niin suuria, ettei niitä enää voida käsitellä. Tässä väitöskirjassa kehitetään lineaarisen ajan temporaalilogiikan (LTL) epädeterministisiksi automaateiksi kääntämisen teoriaa käyttämällä käännöksen apuna vain yhden tilan silmukoita sisältäviä alternoivia automaatteja, joilla – toisin kuin epädeterministisillä automaateilla – on sama ilmaisuvoima kuin lineaarisen ajan temporaalilogiikalla. Tätä logiikkaa voidaan kääntää näiksi automaateiksi soveltaen yksinkertaisia sääntöjä automaattien yhdistämiseksi vaiheittain keskenään yhä suuremmiksi automaateiksi. Käyttämällä yleistettyä siirtymäpohjaista hyväksyvyyden määritelmää automaateille kaikissa käännöksen vaiheissa voidaan näin muodostettuja automaatteja sieventää uusin tavoin käyttäen apuna automaattien hyväksymien kielten välisiä sisältyvyyssuhteita sekä automaattien rakenteellisia ominaisuuksia. Yleistetyn määritelmän ansiosta vain yhden tilan silmukoita sisältävät alternoivat automaatit voidaan myös kääntää edelleen epädeterministisiksi automaateiksi soveltamalla yleisesti tunnettua osajoukkokonstruktiota lähes sellaisenaan. Tämä konstruktio voidaan edelleen tehdä yksinkertaisemmin ja tehokkaammin LTL-kaavoista muodostetuille automaateille. Automaattikäännöksessä käytettävien sääntöjen avulla voidaan myös erottaa lineaarisen ajan temporaalilogiikan syntaktinen osajoukko, jonka kaavat onmahdollista kääntää epädeterministisiksi automaateiksi ilman, että automaattien tilojen määrä kasvaa osajoukkokonstruktion tavoin eksponentiaalisesti. Tästä tuloksesta seuraa, että kyseisen LTL:n osajoukon toteutuvuusongelma on NP-täydellinen. Osajoukko on samankaltaisia kirjallisuudessa aiemmin esiteltyjä osajoukkoja aidosti laajempi. Väitöskirjassa esitetään myös, kuinka epädeterministisen automaatin hyväksymän kielen tyhjyys voidaan tarkastaa luopumatta yleistetystä siirtymäpohjaisesta hyväksyvyyden määritelmästä käyttäen algoritmia, joka on uusi, huonoimman tapauksen vaatimuksiltaan tehokkaampi muunnos tunnetusta sisäkkäisestä syvyyshakualgoritmista.reviewe
    corecore