Abstract. In this paper, we describeafi rst-order linear time temporal logic (LTL) model checkerb ased on multiway decision graphs (MDG). We developed afi rst-order temporal language, L MDG * ,w hiche xpresses asubset of many-sorted first-order LTLand extends an earlier language, L MDG ,d efined for an MDG based abstractC TL model checking. We derived as et of rules, enabling the transformation of L MDG * formulas into generalized Büchi automata( GBA). The product of this GBA and the abstracts tate machine (ASM) model is checkedf or language emptiness. We have lifted two instances of the generalized Strongly Connected Component(SCC)-hull (GSH)c hecking algorithm [17] to support abstractd ata and uninterpreted functions based on operators available in the MDG package. Experimental results have shown the superiority of our tool compared to the same instances of GSH implemented with BDDs in VIS.
1I ntroductionFormalv erificationh as receivedc onsiderable attention fromt he electricale ngineering,c omputers cience and the industryc ommunities, where many BDD based formal verification tools being developed overt he years. These, however, suffer fromt he well-known state space explosion problem. Multiway Decision Graphs (MDGs) [5] have been introduced as one way to reduce this problem. MDGsa re basedo namany-sorted first-order logic with ad istinction between concrete and abstract sorts. Abstract variablesa re usedt or epresentd ata signals,whileuninterpreted functionsymbols are used to representdata operations, providing amorecompact description of circuits with complex data path. Many MDG basedverificationapplicationshave been developed duringthe last decade, including invariant checking, sequential equivalence checking, and abstract CTL model checking [21]o fa bstract state machines( ASM) [ 5]. TheM DG tools are available at [22].In this paper we introduce an ew MDG verification application by implementing automata based model checking of as ubseto ffi rst-order lineart ime temporal logic (LTL). Generally,L TL model checking verifiesaKripkestructure with respect to ap ropositional linear time temporal logic (PLTL) formula. A PLTL formula φ is valid if it is satisfied by all paths of theK ripkes tructure M .T he validation of φ can be done by converting itsn egation into aG eneralizedBu chiA utomaton( GBA) [ 19] B ¬ φ ,c omposing the automaton with the