The Complexity of Decision Problems for Linear

0 downloads 0 Views 316KB Size Report
Mar 1, 2010 - now” and “always in the future including now” of Pnueli [33], strict “Until” .... a while (not forever) but there be no last moment when it is on and ...
The Complexity of Decision Problems for Linear Temporal Logics Mark Reynolds The University of Western Australia [email protected] March 1, 2010 Abstract There are a variety of temporal logics appropriate for a variety of reasoning tasks. The underlying model of time appropriate to the application can range from discrete natural numbers and integers to dense linear real numbers or to algebras of intervals and trees. The temporal language can be built from a few simple temporal connectives, if they are adequately expressive or we can have many more connectives, or add metric information or fix points if we can afford to risk sacrificing the speed of reasoning to gain increased expressiveness. The author has recently shown the surprising result that as far as computational complexity of reasoning is concerned, it is just as easy to reason with an adequately expressive language over real numbers time, as it is to reason with traditional simple operators on the discrete natural numbers flow of time. In this paper we build on that new result to give an account of the computational complexity of all the decision problems for any temporal logic using standard style temporal connectives over any of the common classes of linear flows of time. In particular we show that all the standard logics have decision problems in PSPACE.

1

Introduction

There are many and varied (propositional) linear temporal logics. They vary according to the flows of time allowed (some class of linear flows of time), and the set temporal connectives used in the syntax. In this paper we only consider temporal connectives defined in a certain first-order style, which we will explain shortly. There are other ways of making a linear temporal logic, such as using metric parameters or fixpoint operators, but the first-order definable connectives include all the “standard” ones. In section 3 below we make a more careful definition of a class of connectives and

1

their languages which we call “Gabbayan” and which is intended to contain all the standard connectives, languages and logics. Many, even most, interesting connectives are first-order definable. They include the traditional (strict) “some-time in the future” operator of Prior [35], his “always in the future”, the non-strict version “some-time in the future or now” and “always in the future including now” of Pnueli [33], strict “Until” from Kamp [25], and the non-strict version, the “tomorrow”, or “next-time” operator, and the weak version “will be true tomorrow if there is a tomorrow” (useful in finite flows of time), past versions of all of these such as “some-time strictly in the past”, and “since”, the strong “yesterday” as well as the weak one, Stavi’s “until a gap in time”, and “since a gap in time” (useful in the rationals), the “arbitrarily soon”, and “arbitrarily recently” operators of Gabbay [17] and their “for some while from now on” and “for some while until now” operators. In this paper we are interested in the computational complexity of one of the main reasoning tasks engaged in with a temporal language. This is the task of deciding validity, or equivalently satisfiability, of formulas. Existing complexity results include a PSPACE-complete result for the standard PLTL (with tomorrow and non-strict Until over natural numbers time) [44], that Prior’s F and P is NP-complete to decide validity over the class of all linear orders [30], and very recently that deciding validity in the logic RTL with U and S over the real-numbers time is also PSPACE-complete [39]. Many of the most useful temporal logics are here but there is no uniform result. Missing are rationals and integers. Missing are many particular combinations of operators. Missing is any general argument to say that it is not possible to find some really good new connectives which will be very fast to reason with over the natural numbers, the reals or some other particular flow. This paper provides answers to the particular questions about upper bounds on the complexity of certain operators over any useful linear flow. It also provides a general reasoning approach. If a reasoner for RTL is implemented then we may have a way of easily implementing a theorem-prover for any language with any set of connectives over any of the usual linear flows of time or sets of flows.

2

Background

PLTL [33], the propositional temporal logic of discrete linear time is the most popular temporal logic, with the most developed reasoning techniques and tools (eg see [23]). The behaviour of systems, especially hardware systems, is adequately captured using step-by-step, discrete progression from one state to the next. Thus the underlying model of time is the natural numbers with a beginning and discrete steps going on indefinitely. However, alongside the large amount of work built on PLTL, there have been suggestions that temporal logics based on other models of time may be appropriate for a range of other applications. Reynolds [38], for example, looks at a simple temporal logic over integer

2

time, i.e. when the past is infinite as well as the future. It is suggested that this may be appropriate for reasoning about the way valid-time data is recorded in a temporal databases: i.e. when there is no natural starting point for the times as which recorded events may have begun. On the other hand, occasionally work has been done on temporal logics over finite time, i.e. when there is both a beginning and an end to an interval of discrete time steps. In [13] finite time is motivated by considering incomplete verification methods such as simulation or bounded model checking and also the possibility of hardware resets. Today, for applications involving real-time and hybrid systems, and with a system-wide view of overall required behaviour, it is more likely that an underlying dense, or specifically real-numbers, model of time should be used and a formal logical language is employed with the ability to express metric, or quantitative timing, requirements as well as the relative order and overlap of propositional states and events. Early suggestions in this direction include [7], [27] and [26]. There are many other applications involving dense time from multimedia [43], databases [46], artificial planning [1], and natural language processing [28] but motivational force for this move comes from the need to consider composition, refinement, and accurate durations in the specification, design and verification of complex systems. PLTL has been extended to support the specification of metric, or quantitative duration, constraints [27, 3, 31]. For example, we might want to say that every user request will be serviced within 5 seconds. One particular expressive extension is Metric Temporal Logic (MTL) [27]. In MTL, our servicing requirement is rendered as G(p → F