The Limit View of Infinite Computations
Total Page:16
File Type:pdf, Size:1020Kb
BRICS BRICS RS-94-14 N. Klarlund: The Limit View of Infinite Computations Basic Research in Computer Science The Limit View of Infinite Computations Nils Klarlund BRICS Report Series RS-94-14 ISSN 0909-0878 May 1994 Copyright c 1994, BRICS, Department of Computer Science University of Aarhus. All rights reserved. Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent publications in the BRICS Report Series. Copies may be obtained by contacting: BRICS Department of Computer Science University of Aarhus Ny Munkegade, building 540 DK - 8000 Aarhus C Denmark Telephone:+45 8942 3360 Telefax: +45 8942 3255 Internet: [email protected] The Limit View of Innite Computations Nils Klarlund y BRICS Department of Computer Science University of Aarhus Ny Munkegade DK Arhus Denmark klarlunddaimiaaudk Abstract We showhow to view computations involving very general liveness prop erties as limits of nite approximation s This computational mo del do es not require intro duction of innite nondeterminism as with most traditional approaches Our results allow us directly to relate nite computations in order to infer prop erties ab out innite computations Thus we are able to provide a mathematical understanding of what sim ulations and bisimulation s are when liveness is involved In addition we establish links b etween verication theory and classical results in descriptive set theory Our result on simulations is the essential contents of the KleeneSuslin Theorem and our result on bisimulati on expresses Martins Theorem ab out the determinacy of Borel games Intro duction It is generally b elieved that to mo del general liveness prop erties of concurrent systems such as those expressed by innitary temp oral logics wemust use ma chines with innite countable nondeterminism Such mo dels arise for example in program verication involving fairness where transformations of programs induce nondeterminism But it is disturbing that countable nondeterminism for whichnophysical im plementation seems to exist is intro duced in our mo del of computation In con e can observe trast any conventional Turing machine can b e implemented and w its nite runs although not all of them of course due to physical constraints But howwould a physical device carry out a nondeterministic choice among un countably many p ossibilities at each computation step Instead it seems more reasonable to let the machine compute nite information ab out progress that somehowgives rise to an acceptance condition on innite computations This article is a revised and extended version of an earlier technical rep ort Convergence Measures TR Cornell University whichwas extracted from the authors PhD thesis Due to space limitations all pro ofs have b een omitted in this article Partially supp orted by an Alice Richard Netter Scholarship of the Thanks to Scandinavia Foundation Inc and NSF grant CCR y Basic Research in Computer Science Centre of the Danish National Research Foundation Another foundational problem wewould like to address is the lack of general notions of simulation and bisimulation for programs that incorp orate liveness conditions Since simulations are lo cal equivalences we also here need a b etter understanding of progress of nite computations towards dening innite ones In this pap er weintro duce a limit concept that allows deterministic ma chines to calculate progress approximations so that analytic or coanalytic sets of computations are dened Thus nondeterminism is not inherent to mo dels of computations involving even very general liveness conditions even those that are expressed by innitary temp oral logics Our concept is a natural generalization of Buc hi or Rabin conditions which dene only sets very low in the Borel hierarchy of prop erties Our progress approximations generalize Buc hi automata where states are designated as ac cepting or nonaccepting and the limit condition is that innitely many accepting states are encountered Our main goal is to show that reasoning ab out the innite b ehavior of our machines can b e carried out directly in terms of progress approximations without transformations Sp ecicallywe turn our attention to two fundamental problems for programs with liveness conditions nding a progress concept for showing that one program implements another program so that eachstepcontributing to a live computation of the rst program is mapp ed to a corresp onding step of the second program and nding a progress concept for showing that two programs can simulate each alent other so that each step of one corresp onds to a step of the other equiv with resp ect to making or not making progress towards a live computation Our results for these two problems are essentially the contents of the two p er haps most celebrated results of descriptive set theory the KleeneSuslin Theorem and Martins Theorem ab out the determinacy of Borel games resp ectively Previous Work For certain kinds of sp ecications such as those involving b ounded nonde terminism or fairness dozens of verication metho ds have b een suggested The notion of analytic set can b e dened in manyways For example M is analytic if there is a nondeterministi c automaton with a countable state space suchthatM is the set of innite sequences allowing an innite run see The class of analytic sets is denoted The dual of an analytic set is said to b e coanalytic or The Borel hierarchy is the least class of sets containing the class of op en sets and closed under countable intersection and union For example the Borel hierarchy of sets that are countable intersections of op en sets Every contains the class prop ertydenedbyaBuchi automaton including usual fairness conditions is a nite Bo olean combination of sets and so is at the third level of the Borel hierarchy see Every Borel set is analytic and coanalytic Vice versa the KleeneSuslin Theorem states that any set that is b oth analytic and coanalytic is also Borel see Yet the general problem has to the au thors knowledge b een addressed only in relatively few articles The earlier prop osals solve the verication problem by transformations that intro duce innite nondeterminism The most general such approachisthatofVardi Vardi uses a computa tional mo del corresp onding to nondeterministic automata with innite conjunc tive branching for dening sp ecications The apparentphysical unrealizability of this concept motivated the limit view given in the present pap er Vardis metho d can easily b e reformulated as progress measures ie as mappings from the states of the implementation These progress measures howeverdonot imply the ones presented here since we use a dierent computational mo del To gether with the Boundedness Theorem for sets Vardis results amounttothe KleeneSuslin Theorem although this was not noted in A few metho ds have app eared that more directly quantify progress but these metho ds only apply to sets at lowlevels of the Borel hierarchy namely nite Bo olean combinations of sets In a simple progress measure based on a condition called the Liminf condition was prop osed This condition however can b e used only to reason ab out sp ecications that are ie at the third level of the Borel hierarchy Other approaches to viewing computations as limits are based on metrics of mathematical analysis These approaches also deal with sets at the third level Recursiontheoretic asp ects of relating automata with dierent kinds of ac e b een studied in ceptance conditions hav In this pap er we rep ort on the most general measure prop osed in In addition weintro duce here the new concept of progress bisimulation Overview Our results are based on an abstract graphtheoretic formulation of the verica tion problem We represent the transitions of a program as a directed countable graph G V E where vertices V and edges E corresp ond to program states and transitions Then the innite paths in G corresp ond to all p ossible innite computations To dene live computations weintro duce progress approximations on V that assign a nite amount of information to eachvertex In turns out that if welet this information b e a lab eled tree then very general prop erties can b e expressed Thus a progress approximation asso ciates a nite tree v toeachvertex v A computation v v denes an innite sequence v v of progress approximations and a limit tree lim v that consists of the no des that from a i p oint on o ccur in every progress approximation The computation is live if the limit tree has only nite paths ie if it is wel lfounded it may still b e innite We call this condition the wel lfoundedness condition of and abbreviate it WF The WF condition is extraordinarily p owerful Weprove that the sets sp ec ied by WF conditions constitute the class of coanalytic sets This class includes all Borel sets as we show using progress approximations In fact we show that automata combined with temp oral logics with innite conjunctions and disjunctions express the class of Borel sets and can b e co ded as WF condi tions The dual of the WF condition is the condition that requires the limit tree to contain some innite path This condition is called the nonwel lfoundedness condition and denoted WF The sets sp ecied by WF conditions constitute the class of analytic sets In order to relate two programs with liveness conditions we rst study a simpler problem Wemayview WF as a specication that every computation