1 Introduction
In this paper the notion of discrete time event algo-rithms is introduced. The paper starts proposing a formalization, free of any interpretation, of discrete event time algorithms, and continues discussing computability issues. A Church type thesis, its proof, and the notion of stability for discrete event time algorithms are proposed.
The Church thesis for discrete algorithms motivates us to consider the Church thesis for the case when we are dealing with discrete event time algorithms. Gurevich [1] has shown that any algorithm that satisfies three postulates can be step-by-step emulated by an abstract state machine (ASM). Adding two more postulates, Dershowitz and Gurevich [2] proceeded to prove that all notions of algorithms for common discrete-time models of computation in computer science are covered by this formalization.
This includes Turing machines, Minsky counter machines, Post machines, random access memory (RAM) and so on. Bournez, Dershowitz and Neron [3] have formalized a generic notion of analog algorithm, their proposed framework is an extension of [1, 2]. They provide postulates defining analog algorithms in the spirit of those given for discrete algorithms, and continue proving some completeness results. Our presentation follows a similar construction to the one given for analog algorithms.
The notions of discrete event time algorithm and discrete event time dynamical system are postulated to be equivalent. The stability concept for discrete event time algorithms is defined. The stability analysis presentation starts concentrating in discrete event time algorithms i.e., discrete event time dynamical systems, whose Petri net model is described by difference equations, and continues considering Lyapunov energy functions in terms of the logical structures of the vocabulary.
A stability analysis based on the reachability tree of the Petri net model is also discussed. The paper is organized as follows. In section 2, axiomatization and computability issues related to discrete event time algorithms are presented. Section 3, discusses the stability problem for discrete event time algorithms in terms of its equivalent discrete event time dynamical system. Section 4 presents an application example. Section 5 discusses the states, (equivalently strucures), stability problem for discrete event time algorithms in terms of Lyapunov energy functions, and finally in section 6, a stability analysis based on the reachability tree is also discussed.
2 Discrete Event Time Algorithms, the Church Thesis
Gurevich [1] has shown that any algorithm that satisfies three postulates can be step-by-step emulated by an abstract state machine (ASM). Adding two more postulates, Dershowitz and Gurevich [2] proceeded to prove that all notions of algorithms for common discrete-time models of computation in computer science are covered by this formalization. Bournez, Dershowitz and Neron [3] have formalized a generic notion of analog algorithm, their proposed framework is an extension of [1, 2].
They provide postulates defining analog algo-rithms in the spirit of those given for discrete algorithms, and continue proving some completeness results. The next presentation follows a similar construction to the one given for analog algorithms, adapting it for discrete event time algorithms. In this section the formalization, free of any interpretation, of the notion of discrete event time algorithm as well as a Church type thesis based on the previous cited work are presented.
The reader looking for a more detailed discussion of the ideas behind the following presentation is encouraged to review [1, 2, 3] but in particular [1] is recommended.
Definition 1 A dynamical system is a four-tuple {T, X, A, φt}, where T is called the time set, X is a state space, A is the set of initial states A ⊂ X and φt: X → X is a family of evolution operators parameterized by t ∈ T satisfying the following properties: for x ∈ X, φ0(x) = x, and φt+s = φt◦φs.
Remark 2 Note that in our definition of dynamical system, it is allowed to have, in general, more than one evolution operator.
When T =
Remark 3 When dealing with discrete event time dynamical systems determined by difference equations on
Definition 4 A discrete event time dynamical system is said to be computable if and only if its family of evolution operators (also called its trajectories) is obtained as solutions of its mathematical model.
Postulate A. A discrete event time algorithm is a discrete event time dynamical system.
Definition 5 A vocabulary
Definition 6 A state transition system, consists of a set of states S, a subset I of initial states, transition functions on states, which determines the next-state relation, (states with no “next” state, will be terminal states).
Postulate B (Abstract state). States are first order structures with equality, sharing the same fixed, finite vocabulary. States and initial states are closed under isomorphism. Transitions preserve the domain, and transitions and isomorphisms commute.
Remark 7 In more simple words, states are structures which are invariant under isomorphism, and as a consequence they result to be very general and therefore any model of computation results to be a special case of this. The transitions are governed by a finite description.
Definition 8 An abstract transition system is a state transition system, whose function symbols f are interpreted as functions, and that satisfies postulate B, where the transition function on states is equal to φt.
Postulate C. A discrete event time algorithm is an abstract transition system.
Definition 9 If f is a j-ary function symbol in vocabulary
Definition 10 An infinitesimal generator is a function Δ that maps the state space X to a set Δ(X) of updates, and preserves isomorphisms i.e., if ζ is an isomorphism of states X, Y, then for all updates
Definition 11 A semantics ψ over a class C of sets S is a partial function mapping initial evolutions over some S ∈ C to an element of S.
Definition 12 The infinitesimal generator associated with a semantics
Remark 13 When T =
Remark 14 From now on, we fixed the semantics
Postulate D. For any discrete event time algorithm, there exists a finite set Terms of variable free terms over the vocabulary
An abstract state machine, or ASM, is a state-transition system in which algebraic states (no predicate symbols) store the values of functions of the current state. Transitions update a finite number current states and are programmed using a convenient language based on guarded commands for updating individual states. ASM captures the notion that each step of an algorithm performs a bounded amount of work, whatever domain it operates over, so are central to the development.
Definition 15 [1] An abstract state machine (ASM) is given by: a set S of algebraic states (no predicate symbols), closed under isomorphism, sharing a vocabulary
for terms t and u over the vocabulary, and q is a conjunction of equalities and inequalities between terms i.e., given a state α which belongs to S, program P defines and therefore computes the following sub-set of the set of updates
In addition to the rule of the ASM program (see definition 15), we introduce the following rules.
Definition 16 If each R1, R2, · · · , Rk are rules of the ASM i.e.:
then:
is a rule which executes them in parallel, with
Definition 17 A rule of the form Dynamic(f(t1, t2, · · · , tj), t0) where f is a symbol of arity- j and, t0, t1, t2, · · · , tj are variable free terms, then the rule is defined by
is also a rule, with
Definition 18 If φ is a Boolean term and R1 and R2 are rules then, if φ then R1 else R2 is a rule.
The following result plays a fundamental role in the proof of the Church thesis for discrete event time algorithms [3].
Theorem 19 For every algorithm of vocabulary
Example 20 [6] Let us consider the matrix difference equation describing the discrete event time dynamical behavior of a Petri net (PN) with m places and t transitions represented as [5]:
This evolution is described by its associated set of updates of the following program rule:
Notice that if M´can be reached from some other marking M = Mn for some n ∈
Equation (3) would result in an ASM program, where the program rule (2) appears d times.
Definition 21 A
Definition 22 A discrete event time algorithm is a
We are assuming for that for each discrete event time algorithm, the trajectories can be computed from the description of its discrete event time dynamical system. In other words not all discrete event time algorithms are contemplated just those of them which guarantee their existence.
Definition 23 A semantics
Theorem 24 Assuming
Remark 25 In simple words it emulates any algorithm that satisfy the postulates.
Theorem 26 (The Church thesis for discrete event time algorithms) The discrete event time algorithm is computable if and only if the
Proof. By hypothesis the discrete event time algorithm is computable which implies that its equivalent discrete event time dynamical system is computable (recall definition 4). Therefore, there exists a procedure (algorithm) which computes its trajectories from its mathematical model description and as a consequence, the
3 Stability of Discrete Event Time Algorithms
In this section, we will focus our attention to study the class of discrete event time dynamical systems whose Petri net model is described by difference equations, leaving the reachability tree analysis technique for section 6. We will begin by recalling some basic definitions in stability theory for this class [6, 8].
Definition 27 (Stability)
Let us consider a discrete event time dynamical system represented by the following difference equation:
We say that state x = 0 of system (4) is stable if and only if,
Now, let us divide the set of structures i.e., the set of states of the discrete event time dynamical system, in unstable and stable sets X = {Xun, Xs}.
Definition 28 A discrete event time algorithm is said to be stable if and only if the discrete event time dynamical system is stable. A discrete event time dynamical system is stable if and only if the unstable structures are empty or they are not attained as the program of the
Let us suppose that it is possible to pass from unstable structures to stable structures by properly defining the rules of the
Definition 29 A discrete event time algorithm is said to be stabilizable if and only if it is possible to avoid the unstable structures by properly defining the rules of the
Let us consider the matrix difference equation describing the discrete event time dynamical behavior of a Petri net with m places and t transitions represented as [5]:
Pick as our Lyapunov function candidate v(M) = MT Φ with Φ an m vector (to be chosen). Then we can state and prove the following result [6].
Proposition 30 Let PN be a Petri net. PN is stable if there exists a Φ strictly positive m vector such that:
Moreover:
Remark 31 Notice that since the state space of a timed Petri net (TPN) is contained in the state space of the same now not timed PN, stability of PN implies stability of the TPN.
Define as our vector Lyapunov function v(M) = [v1(M), v2(M), ..., vm(M)]T ; where vi(M) = M(pi), 1 ≤ i ≤ m then [6].
Proposition 32 Let PN be a Petri net. PN is stabilizable if there exists a firing transition sequence with transition count vector u such that the following equation holds:
4 Discrete Event Time Dynamical Systems: A Case Study [6, 7]
Consider a two server queuing system (Fig 1.) whose timed Petri net model is depicted in Fig 2. Where the events (transitions) that drive the system are: q: customers arrive to the queue, s1, s2: service starts, d1,d2: the customer departs. The places (that represent the states of the queue) are: A: customers arriving, P: the customers are waiting for service in the queue, B1, B2: the customer is being served, I1, I2: the servers are idle. The holding times associated to the places A and I1, I2 are Ca and Cd respectively, (with Ca > Cd).
The incidence matrix that represents the PN model is:
Therefore since there does not exists a Φ strictly positive m vector such that AΦ ≤ 0 the sufficient condition for stability is not satisfied.
Moreover, the PN (TPN) is unbounded since by the repeated firing of q, the marking in P grows indefinitely. However, by taking u = [k, k/2, k/2, k/2, k/2]; k > 0 we get that AT u ≤ 0. Therefore, the PN is stabilizable which implies that the TPN is stable i.e., the load has to be equally divided between the two servers. We have already discussed a
We conclude that by choosing properly the rules of the program
Remark 33 It has been shown by employing Max-Plus techniques, that we can set k = Ca [7].
5 Stability of Discrete Event Time Algorithms in Terms of Lyapunov Energy Functions for Discrete Event Time Algorithms
In this section, we consider the the states, (equivalently strucures), stability problem for discrete event time algorithms in terms of Lyapunov energy functions. The results presented in this section, become a generalization of what was discussed in section 3 and section 4, and includes them as particular cases. We will deal with discrete event time algorithms whose states are structures of vocabulary
Definition 34 Let us consider a discrete event time algorithm, we will say that the state X, with a ∈ S and time-indexed location
Definition 35 Let us consider a discrete event time algorithm, we will say that the state X, with a ∈ S and time-indexed location ft(a) is continuous at t ∈ T, if and only if ∀ε > 0 ∃ δ = δ(t) > 0 and a state Y such that if given t′ ∈ T, with
Definition 36 A continuous function α : [0, ∞) → [0, ∞) is said to belong to class
Postulate E. The Lyapunov energy function associated to the Petri net model of the discrete event time algorithm at some transition firing time point t0 ∈ T multiplied by some finite constant C ≥ 1 bounds the whole Lyapunov energy function, transferred or transformed of the whole discrete event time algorithm, as the Lyapunov energy function evolves in time.
Theorem 37 Let us consider a discrete event time algorithm having transition firing time points {t1, t2, · · · } ⊆ T . Assume there exists a Lyapunov function
for all a, a′ ∈ S, t, t0 ∈ T . Assume Postulate E and that
Proof. We want to show that there exists a δ = δ(t0, ε) > 0 such that given a′ with
6 Discrete Event Time Algorithm Reachability Tree Analysis
The lack of uniqueness of paths along the reachability tree of the Petri net which models a fixed discrete event time algorithm requires a little bit of extra analysis because, we need to take into account the possibility of multiple trajectories starting from each initial marking. This multiplicity leads us to consider the stability concept together with the adjectives total and partial. Roughly speaking, total is used when the stability property is satisfied for all trajectories starting from each initial marking. On the other hand, partial is used when the stability property is satisfied by at least one trajectory starting from each initial marking.
Definition 38 A discrete event time algorithm for multiple paths along the reachability tree is the cartesian product of discrete event time algorithms, one for each path.
Postulate F. A discrete event time algorithm for multiple paths along the reachability tree is a discrete event time dynamical system
Remark 39 From definition (38) by taking carte-sian products, it is immediate to generalize all the properties of discrete event time algorithms, (given in section 2), to discrete event time algorithms with multiple trajectories, where now we have an ASM program associated to each one of trajectories, and which defines the ASM program of the discrete event time algorithm for multiple paths along the reachability set.
Next, we show how all the ideas presented above are applied in the following simple example.
Example 40 Consider the discrete event time algorithm whose Petri net model is depicted in >Fig 3.
The reachability tree of the Petri net, starting from the initial marking (1, 0, 0) is shown in >Fig 4.
This Petri net model has three paths along its reachability tree, one stable and two unstable. Therefore the discrete event time algorithm results to be partially stable. The ASM program of the discrete event time algorithm that models it, turns out to be composed by the following three ASM programs:
—
—
—
The set of updates is given by
7 Conclusions
This paper introduces the axiomatization, computabilty and stability issues of discrete event time algorithms. Its main contribution consists in proposing a formalization free of any interpretation of discrete event time algorithms and continues discussing computability and stability issues. A Church type thesis, its proof and the notion of stabilty for discrete event time algorithms is proposed. The stability analysis presentation starts concentrating in discrete event time algorithms i.e., discrete event time dynamical systems, whose Petri net model is described by difference equations, and continues considering Lyapunov energy functions in terms of the logical structures of the vocabulary. A stability analysis based on the reachability tree of the Petri net model is also discussed.