Wreath/cascade products and related decomposition results for the concurrent setting of Mazurkiewicz traces (extended version)
WWreath/cascade products and relateddecomposition results for the concurrent settingof Mazurkiewicz traces (extended version)
Bharat Adsul
IIT Bombay, [email protected]
Paul Gastin
LSV, ENS Paris-Saclay, CNRS, Université Paris-Saclay,[email protected]
Saptarshi Sarkar
IIT Bombay, [email protected]
Pascal Weil
Univ. Bordeaux, LaBRI, CNRS UMR 5800, F-33400 Talence, FranceCNRS, ReLaX, IRL 2000, Siruseri, [email protected]
Abstract
We develop a new algebraic framework to reason about languages of Mazurkiewicz traces. Thisframework supports true concurrency and provides a non-trivial generalization of the wreath productoperation to the trace setting. A novel local wreath product principle has been established. Thenew framework is crucially used to propose a decomposition result for recognizable trace languages,which is an analogue of the Krohn-Rhodes theorem. We prove this decomposition result in thespecial case of acyclic architectures and apply it to extend Kamp’s theorem to this setting. We alsointroduce and analyze distributed automata-theoretic operations called local and global cascadeproducts. Finally, we show that aperiodic trace languages can be characterized using global cascadeproducts of localized and distributed two-state reset automata.
Theory of computation → Distributed computing models; Theoryof computation → Algebraic language theory
Keywords and phrases
Mazurkiewicz traces, asynchronous automata, wreath product, cascadeproduct, Krohn Rhodes decomposition theorem, local temporal logic over traces
Funding
Paul Gastin : Supported by IRL ReLaX
Pascal Weil : Partially supported by the DeLTA project (ANR-16-CE40- 0007)
Transformation monoids provide an abstraction of transition systems. One of the key toolsin their analysis is the notion of wreath product [6, 19, 17] which, when translated to thelanguage of finite state automata, corresponds to the cascade product. In the cascade productof automata A and B , with A ‘followed by’ B , the automaton A runs on the input sequence,while the automaton B runs on the input sequence as well as the state sequence produced bythe automaton A . The wreath product principle (see [19, 17, 16]) is a key result which relatesa language accepted by a cascade/wreath product to languages accepted by the individualautomata.In this work, we are interested in generalizing the wreath product operation from thesequential setting to the concurrent setting involving multiple processes. Towards this, wework with Mazurkiewicz traces (or simply traces) [11, 5] which are well established as models a r X i v : . [ c s . F L ] A ug Wreath products in the concurrent setting (extended version) of true concurrency, and asynchronous automata [20] which are natural distributed finite statedevices working on traces. A trace represents a concurrent behaviour as a labelled partialorder which faithfully captures the distribution of events across processes, and causalityand concurrency between them. An asynchronous automaton runs on the input trace in adistributed fashion and respects the underlying causality and concurrency between events.During the run, when working on an event, only the local states of the processes participatingin that event are updated; the rest of the processes remain oblivious to the occurrence of theevent at this point.A natural generalization of the above mentioned sequential cascade product to asynchron-ous automata A and B is as follows: the asynchronous automaton A runs on the input trace,thus assigning, for each event, a local state for every process participating in that event. Nowthe asynchronous automaton B runs on the input trace with the same set of events whichare additionally labelled by the previous local states of the participating processes in A . It iseasy to capture this operational semantics by another asynchronous automaton which wecall the local cascade product of A and B . Such a construction is used in [1] to provide anasynchronous automata-theoretic characterization of aperiodic trace languages.Here we propose a new algebraic framework to deal with the issues posed by the con-current setting. More precisely, we introduce a new class of transformation monoids called asynchronous transformation monoids (in short, atm ). These monoids make a clear dis-tinction between local and global ‘states’ and allow us to reason about whether a globaltransformation is essentially induced by a particular subset of processes. Recall that, from apurely algebraic viewpoint, the set of all traces forms a free partially commutative monoidin which independent actions commute [5]. In order to recognize a trace language via anatm, we introduce the notion of an asynchronous morphism which exploits the locality ofthe underlying atm. It is rather easy to see that asynchronous morphisms are the algebraiccounterparts of asynchronous automata.One of the central results of this work is a wreath product principle in the new algebraicframework. It turns out that the standard wreath product operation yields an operation onasynchronous transformation monoids. Let T and T be atm’s and T o T be the wreathproduct atm. Our local wreath product principle describes a trace language recognizedby T o T in terms of a local asynchronous transducer which is a natural causality andconcurrency preserving map from traces to traces (over an appropriately extended alphabet),and trace languages recognized by T and T . It is a novel generalization of the standardwreath product principle. The work [7] presents a wreath product principle for traces inthe setting of transformation monoids but it seems less significant since it uses non-trace structures.The importance of the standard wreath product operation is clearly highlighted bythe fundamental Krohn-Rhodes decomposition theorem [10] which, broadly speaking, saysthat any finite transformation monoid can be simulated by wreath products of ‘simple’transformation monoids. The wreath product principle along with the Krohn-Rhodestheorem can be used to provide alternate and conceptually simpler proofs (see [13, 2]) ofseveral interesting classical results about formal languages of words such as Schützenberger’stheorem [18], McNaughton-Papert’s theorem [12] and Kamp’s theorem [8] which togethershow the equivalence between star-free, aperiodic, first-order-definable and linear-temporal-logic definable word languages. Motivated by these applications, we investigate an analogueof the fundamental Krohn-Rhodes decomposition theorem over traces. We use the newalgebraic framework to propose a simultaneous generalization of the Krohn-Rhodes theorem(for word languages) and the Zielonka theorem (for trace languages). The proof of this . Adsul, P. Gastin, S. Sarkar and P. Weil 3 generalization for the special case of acyclic architectures is another significant result. As anapplication, we extend Kamp’s theorem: we formulate a natural local temporal logic andshow that it is expressively complete.It turns out that asynchronous morphisms into wreath products correspond to theaforementioned distributed automata-theoretic local cascade products. We also introducethe global cascade product operation and show that it can be realized as the local cascadeproduct with the help of the ubiquitous gossip automaton from [15].Our final major contribution concerns aperiodic trace languages and is in the spirit of theKrohn-Rhodes theorem for the aperiodic case. We establish that aperiodic trace languagescan be characterized using global cascade products of localized and distributed two-statereset automata. The proof of this characterization crucially uses an expressively completeprocess-based local temporal logic over traces from [3].The rest of the paper is organized as follows. After setting up the preliminaries inSection 2, we develop the new algebraic framework in Section 3. In Section 3.4, we establishthe local wreath product principle. In Section 4, we postulate a new decomposition result,and we establish it for acyclic architectures. We introduce and analyze local and globalcascade products in Section 5. The global cascade product based characterization of aperiodictrace languages appears in Section 6. Finally, we conclude in Section 7. Let P be a finite set of agents/processes. A distributed alphabet over P is a family e Σ = { Σ i } i ∈P .Let Σ = S i ∈P Σ i . For a ∈ Σ, we set loc( a ) = { i ∈ P | a ∈ Σ i } . By (Σ , I ) we denote thecorresponding trace alphabet, i.e., I is the independence relation { ( a, b ) ∈ Σ | loc( a ) ∩ loc( b ) = ∅} induced by e Σ. The corresponding dependence relation Σ \ I is denoted by D .A Σ-labelled poset is a structure t = ( E, ≤ , λ ) where E is a set, ≤ is a partial orderon E and λ : E → Σ is a labelling function. For e, e ∈ E , define e (cid:108) e if and only if e < e and for each e with e ≤ e ≤ e either e = e or e = e . For X ⊆ E , let ↓ X = { y ∈ E | y ≤ x for some x ∈ X } . For e ∈ E , we abbreviate ↓{ e } by simply ↓ e .A trace over e Σ is a finite Σ-labelled poset t = ( E, ≤ , λ ) such thatIf e, e ∈ E with e (cid:108) e then ( λ ( e ) , λ ( e )) ∈ D If e, e ∈ E with ( λ ( e ) , λ ( e )) ∈ D , then e ≤ e or e ≤ e Let
T R ( e Σ) denote the set of all traces over e Σ. Henceforth a trace means a trace over e Σunless specified otherwise. Let t = ( E, ≤ , λ ) ∈ T R ( e Σ). The elements of E are referred toas events in t and for an event e in t , loc( e ) abbreviates loc( λ ( e )). Further, let i ∈ P . Theset of i -events in t is E i = { e ∈ E | i ∈ loc( e ) } . This is the set of events in which process i participates. It is clear that E i is totally ordered by ≤ .A subset c ⊆ E is a configuration of t if and only if ↓ c = c . We let C t denote the setof all configurations of t . Notice that ∅ , the empty set, and E are configurations. Moreimportantly, ↓ e is a configuration for every e ∈ E . There are two natural transition relationsthat one may associate with the configurations of t . The event based transition relation ⇒ t ⊆ C t × E × C t is defined by c e ⇒ t c if and only if e / ∈ c and c ∪ { e } = c . The action basedtransition relation → t ⊆ C t × Σ × C t is defined by c a −→ t c if and only if there exists e ∈ E such that λ ( e ) = a and c e ⇒ t c .Now we turn our attention to the important operation of concatenation of traces. Let t = ( E, ≤ , λ ) ∈ T R ( e Σ) and t = ( E , ≤ , λ ) ∈ T R ( e Σ). Without loss of generality, we canassume E and E to be disjoint. We define tt ∈ T R ( e Σ) to be the trace ( E , ≤ , λ ) where Wreath products in the concurrent setting (extended version) E = E ∪ E , ≤ is the transitive closure of ≤ ∪ ≤ ∪ { ( e, e ) ∈ E × E | ( λ ( e ) , λ ( e )) ∈ D } , λ : E → Σ where λ ( e ) = λ ( e ) if e ∈ E ; otherwise, λ ( e ) = λ ( e ).This operation, henceforth referred to as trace concatenation , gives T R ( e Σ) a monoid structure.Observe that, with a (resp. b ) denoting the singleton trace with the only event labelled a (resp. b ), if ( a, b ) ∈ I then ab = ba in T R ( e Σ).A basic result in trace theory gives a presentation of the trace monoid as a quotient ofthe free word monoid Σ ∗ . See [5] for more details. Let ∼ I ⊆ Σ ∗ × Σ ∗ be the congruencegenerated by ab ∼ I ba for ( a, b ) ∈ I . (cid:73) Proposition 1.
The canonical morphism from Σ ∗ → T R ( e Σ) , sending a letter a ∈ Σ tothe trace a , factors through the quotient monoid Σ ∗ / ∼ I and induces an isomorphism from Σ ∗ / ∼ I to the trace monoid T R ( e Σ) . A map from a set X to itself is called a transformation of X . Under function composition,the set of all such transformations forms a monoid; let us denote this monoid by F ( X ). Thefunction composition f f (sometimes also denoted f ◦ f ) applies from left-to-right, that is,( f f )( · ) = f ( f ( · )).A transformation monoid (or simply tm ) is a pair T = ( X, M ) where M is a submonoidof F ( X ). The tm ( X, M ) is called finite if X is finite. (cid:73) Example 2.
Consider X = { , } with the monoid M = { id X , r , r } where id X is theidentity transformation and r i maps every element in X to element i . Note that r r = r and r r = r . Then ( X, M ) is a tm. We will refer to it as U .Let T = ( X, M ) be a tm. By a morphism ϕ from T R ( e Σ) to T , we mean a (monoid)morphism ϕ : T R ( e Σ) → M . We abuse the notation and also write this as ϕ : T R ( e Σ) → T .Observe that, if ( a, b ) ∈ I , then as ab = ba in T R ( e Σ), ϕ ( a ) and ϕ ( b ) must commute in M .In fact, in view of Proposition 1, any function ϕ : Σ → M which has the property that ϕ ( a )and ϕ ( b ) commute for every ( a, b ) ∈ I , can be uniquely extended to a morphism from T R ( e Σ)to M .Transformation monoids can be naturally used to recognize trace languages. Let L ⊆ T R ( e Σ) be a trace language. We say that L is recognized by a tm T = ( X, M ) if there existsa morphism ϕ : T R ( e Σ) → T , an initial element x in ∈ X and a final subset X fin ⊆ X suchthat L = { t ∈ T R ( e Σ) | ϕ ( t )( x in ) ∈ X fin } . A trace language is said to be recognizable if it isrecognized by a finite tm. Recall that we have a fixed finite set P of processes. If P is clear from the context, we usethe simpler notation { X i } to denote the P -indexed family { X i } i ∈P . The elements of the setsin a P -indexed family will be typically called states .We begin with some notation involving local and global states. Suppose that each process i ∈ P is equipped with a finite non-empty set of local i -states , denoted S i . We set S = S i ∈P S i and call S the set of local states . We let P range over non-empty subsets of P and let i, j range over P . A P -state is a map s : P → S such that s ( j ) ∈ S j for every j ∈ P . We let S P denote the set of all P -states. We call S P the set of all global states . . Adsul, P. Gastin, S. Sarkar and P. Weil 5 If P ⊆ P and s ∈ S P then s P is s restricted to P . We use the shorthand − P to indicatethe complement of P in P . We sometimes split a global state s ∈ S P as ( s P , s − P ) ∈ S P × S − P .We let S a denote the set of all loc( a )-states which we also call a -states for simplicity. Thus ifloc( a ) ⊆ P and s is a P -state we shall write s a to mean s loc( a ) .Now we are ready to introduce a new class of transformation monoids. (cid:73) Definition 3. An asynchronous transformation monoid (in short, atm) T (over P ) is apair ( { S i } , M ) where S i is a finite non-empty set for each process i ∈ P . M is a submonoid of F ( S P ) , the monoid of all transformations from S P to itself. Note that this definition is dependent on P and an atm T = ( { S i } , M ) naturally inducesthe tm ( S P , M ). We abuse the notation and write T also for this tm.A crucial feature of the definition of an atm is that it makes a clear distinction betweenlocal and global states. Observe that the underlying transformations operate on globalstates. It will be useful to know whether a global transformation is essentially induced by aparticular subset of processes. We develop some notions to make this precise.Fix an atm ( { S i } , M ) and P ⊆ P . Let f : S P → S P be a map. We define g : S P → S P as: for s ∈ S P , g ( s ) = s iff f ( s P ) = s P and s − P = s P We refer to g as the extension of f . More generally, h : S P → S P is said to be a P -map if itis the extension of some f : S P → S P . Note that, in this case, for all s = ( s P , s − P ) ∈ S P , h (( s P , s − P )) = ( f ( s P ) , s − P ) and f is uniquely determined by h . It is worth pointing out thata map h : S P → S P with the property that for every s ∈ S P there exists s P ∈ S P such that h (( s P , s − P )) = ( s P , s − P ) is not necessarily a P -map. This condition merely says that the( − P )-component of a global state is not updated by h . The update of the P -component maystill depend on the ( − P )-component.The following lemma provides a characterization of P -maps. We skip the easy proof. (cid:73) Lemma 4.
Let h : S P → S P . Then h is a P -map if and only if for every s in S P , [ h ( s )] − P = s − P and for every s, s in S P , s P = s P implies that [ h ( s )] P = [ h ( s )] P . A simple but crucial observation regarding P -maps is recorded in the following lemma. (cid:73) Lemma 5.
Let f, g : S P → S P be such that f is a P -map and g is a P -map. If P ∩ P = ∅ ,then f g = gf . Proof.
Let f (resp. g ) be the extension of some f : S P → S P (resp. g : S P → S P ). With Q = P− ( P ∪ P ), we can split a global state s ∈ S P as s = ( s P , s P , s Q ). In the split notation,we have f g (( s P , s P , s Q )) = g (( f ( s P ) , s P , s Q )) = ( f ( s P ) , g ( s P ) , s Q ) gf (( s P , s P , s Q )) = f (( s P , g ( s P ) , s Q )) = ( f ( s P ) , g ( s P ) , s Q )This shows that f and g commute. (cid:74)(cid:73) Example 6.
Fix a process ‘ ∈ P . We define the atm U [ ‘ ] = ( { S i } , M ) where, S ‘ = { , } and for each i = ‘ , S i has exactly one element. Observe that S P has only two global stateswhich are completely determined by their ‘ -components. We will identify a global state withits ‘ -component. The monoid M is { id S P , r , r } where id S P is the identity transformationand r i maps every global state to the global state i . Note that r and r are { ‘ } -maps. Wreath products in the concurrent setting (extended version)
Now we fix a distributed alphabet e Σ = { Σ i } i ∈P over P and introduce special morphismsfrom the trace monoid T R ( e Σ) to atm’s. (cid:73)
Definition 7.
Let T = ( { S i } , M ) be an atm. An asynchronous morphism from T R ( e Σ) to T is a (monoid) morphism ϕ : T R ( e Σ) → M such that for a ∈ Σ , ϕ ( a ) is an a -map. It is important to observe that, contrary to the sequential case, a morphism from
T R ( e Σ)to M is not necessarily an asynchronous morphism from T R ( e Σ) to the atm T = ( { S i } , M ).In a morphism ψ : T R ( e Σ) → M , for ( a, b ) ∈ I , ψ ( a ) and ψ ( b ) must commute; however ψ ( a )(resp. ψ ( b )) may not be an a -map (resp. b -map).A fundamental result about asynchronous morphisms is stated in the following lemma. (cid:73) Lemma 8.
Let T = ( { S i } , M ) be an atm. Further, let ϕ : Σ → M be such that, for a ∈ Σ , ϕ ( a ) is an a -map. Then ϕ can be uniquely extended to an asynchronous morphism from T R ( e Σ) to T . Proof.
As the word monoid Σ ∗ is the free monoid generated by Σ, the map ϕ uniquely extendsto a morphism from Σ ∗ to M . Recall that, by Proposition 1, T R ( e Σ) is the quotient of Σ ∗ bythe relations of the form ab = ba where ( a, b ) ∈ I . Therefore, in order to complete the proof,we simply need to show that ϕ ( a ) and ϕ ( b ) commute. If ( a, b ) ∈ I , then loc( a ) ∩ loc( b ) = ∅ .As ϕ ( a ) is an a -map and ϕ ( b ) is a b -map, by Lemma 5, ϕ ( a ) and ϕ ( b ) commute. (cid:74)(cid:73) Example 9.
Consider e Σ = { Σ p = { a, b } , Σ p = { b, c } , Σ p = { c }} . A function ϕ ( a ) = r , ϕ ( b ) = r and ϕ ( c ) = id extends to an asynchronous morphism from T R ( e Σ) to U [ p ].Now we extend the notion of trace-language recognition from tm’s to atm’s via asyn-chronous morphisms. Let L ⊆ T R ( e Σ) be a trace language. We say that L is recognized byan atm T = ( { S i } , M ) if there exists an asynchronous morphism ϕ : T R ( e Σ) → T , an initial element s in ∈ S P and a final subset S fin ⊆ S P such that L = { t ∈ T R ( e Σ) | ϕ ( t )( s in ) ∈ S fin } In the rest of this subsection, we bring out the intimate relationship between asynchronousmorphisms and asynchronous automata. We begin with the description of an asynchronousautomaton – a model introduced by Zielonka for concurrent computation on traces.An asynchronous automaton A over e Σ is a structure ( { S i } i ∈P , { δ a } a ∈ Σ , s in ) where S i is a finite non-empty set of local i -states for each process i For a ∈ Σ, δ a : S a → S a is a transition function on a -states s in ∈ S P is an initial global stateObserve that an a -transition of A reads and updates only the local states of the agents whichparticipate in a . As a result, actions which involve disjoint sets of agents are processedconcurrently by A . For a ∈ Σ, let ∆ a : S P → S P be the extension of δ a : S a → S a . Clearly,if ( a, b ) ∈ I then ∆ a and ∆ b commute. Similar to P -indexed families, we will follow theconvention of writing { Y a } to denote the Σ-indexed family { Y a } a ∈ Σ .Now we describe the notion of a run of A on an input trace. A trace run is easiest todefine using configurations. Towards this, fix a trace t = ( E, ≤ , λ ) ∈ T R ( e Σ). Recall that(Section 2.1) C t is the set of all configurations of t and → t ⊆ C t × Σ × C t is the naturalaction based transition relation on configurations. A trace run of A over t ∈ T R ( e Σ) is a map ρ : C t → S P such that ρ ( ∅ ) = s in , and for every ( c, a, c ) in → t , we have ∆ a ( ρ ( c )) = ρ ( c ). As A is deterministic, t admits a unique trace run; it will be denoted by ρ t . . Adsul, P. Gastin, S. Sarkar and P. Weil 7 Let L ⊆ T R ( e Σ) be a trace language. We say that L is accepted by A if there exists asubset S fin ⊆ S P of final global states such that L = { t = ( E, ≤ , λ ) ∈ T R ( e Σ) | ρ t ( E ) ∈ S fin } .Our aim is to associate with A , a natural atm T A and an asynchronous morphism ϕ A such that languages accepted by A are precisely the languages recognized via ϕ A .We first describe the transition monoid M A associated to A . It is possible to extend theglobal transition functions { ∆ a } to arbitrary traces using Proposition 1. For t ∈ T R ( e Σ), wedenote this extended global transition function by ∆ t : S P → S P . It is easy to check that,for t = ( E, ≤ , λ ) ∈ T R ( e Σ), ∆ t ( s in ) = ρ t ( E ). Further, as expected, for t, t ∈ T R ( e Σ), thefunction composition ∆ t ∆ t is identical to ∆ tt . We let M A be the finite set of functions { ∆ t | t ∈ T R ( e Σ) } . Clearly, it is a monoid under the usual composition of functions.Next, we define the transition atm of A to be T A = ( { S i } , M A ) and the natural map ϕ A : T R ( e Σ) → M A sending t to ∆ t . It is clear that ϕ A is a morphism of monoids. Furthermore,it is an asynchronous morphism from T R ( e Σ) to T A ; this is because, for a ∈ Σ, ϕ A ( a ) = ∆ a is in fact an a -map of the atm T A . The map ϕ A is called the transition (asynchronous)morphism of A . Note that, for t = ( E, ≤ , λ ) ∈ T R ( e Σ), ϕ A ( t )( s in ) = ∆ t ( s in ) = ρ t ( E )We refer to the above statement as the duality between a run of A and an evaluation of ϕ A .The following lemma summarizes the above discussion for later reference and its proof isimmediate. (cid:73) Lemma 10.
Given an asynchronous automaton A = ( { S i } , { δ a } , s in ) over e Σ , the transitionatm T A = ( { S i } , M A ) and the transition asynchronous morphism ϕ A : T R ( e Σ) → T A areeffectively constructible. Moreover, if L is a trace language, then L is accepted by A if andonly if it is recognized by T A via ϕ A with s in as the initial state. We now provide a form of converse to Lemma 10. Towards this, we fix an atm T =( { S i } , M ), a state s in ∈ S P and an asynchronous morphism ϕ : T R ( e Σ) → T . Since ϕ is anasynchronous morphism, ϕ ( a ) is an a -map, and is an extension of some δ a : S a → S a over a -states. We set A ϕ = ( { S i } , { δ a } , s in ) over e Σ. It turns out that the transition monoid of A ϕ is the image of ϕ , a submonoid of M and the transition morphism of A ϕ is the appropriaterestriction of ϕ to this submonoid. The next lemma is easy to prove and we skip its proof. (cid:73) Lemma 11.
Given T = ( { S i } , M ) , ϕ : T R ( e Σ) → T and s in ∈ S P , the asynchronousautomaton A ϕ over e Σ is effectively constructible. Moreover, a trace language L ⊆ T R ( e Σ) isrecognized by T via ϕ (with initial state s in ) if and only if it is accepted by A ϕ . We begin with the crucial definition of a wreath product of transformation monoids. For sets U and V , we denote the set of all functions from U to V by F ( U, V ). (cid:73) Definition 12 (Wreath Product) . Let T = ( X, M ) and T = ( Y, N ) be two tm’s. We define T = T o T to be the tm ( X × Y, M × F ( X, N )) where, for m ∈ M and f ∈ F ( X, N ) , ( m, f ) represents the following transformation on X × Y :for ( x, y ) ∈ X × Y, ( m, f )(( x, y )) = ( m ( x ) , f ( x )( y )) The tm T is called the wreath product of T and T . It turns out that, for ( m , f ) , ( m , f ) in M × F ( X, N ) , the composition law ( m , f )( m , f ) = ( m, f ) is such that m = m m andfor x ∈ X, f ( x ) = f ( x ) + f ( m ( x )) . Here + denotes the composition operation of N . Wreath products in the concurrent setting (extended version)
It is a standard fact that the wreath product operation is associative [6]. We now adapt thisoperation to asynchronous transformation monoids. (cid:73)
Definition 13.
Let T = ( { S i } , M ) and T = ( { Q i } , N ) be two atm’s. We define theirasynchronous wreath product, also denoted by T o T , to be the atm ( { S i × Q i } , M ×F ( S P , N )) .An element ( m, f ) ∈ M × F ( S P , N ) represents the following global transformation on S P × Q P : for ( s, q ) ∈ S P × Q P , ( m, f )(( s, q )) = ( m ( s ) , f ( s )( q )) The composition law on M × F ( S P , N ) is the same as in Definition 12. An important observation is that the tm associated with T o T is the wreath product ofthe tms ( S P , M ) and ( Q P , N ) associated with T and T respectively. Sometimes, we willrefer to the asynchronous wreath product simply as wreath product. The associativity of theasynchronous wreath product operation follows immediately.We now present an important combinatorial lemma regarding the ‘support’ of a globaltransformation in the wreath product. It plays a crucial role later. (cid:73) Lemma 14.
Fix atms T = ( { S i } , M ) and T = ( { Q i } , N ) . Let ( m, f ) ∈ M × F ( S P , N ) represent a P -map in T o T for some subset P ⊆ P . Then m is a P -map in T .For every s ∈ S P , f ( s ) is a P -map in T . Further, if s, s ∈ S P are such that s P = s P ,then f ( s ) = f ( s ) . Proof.
Fix x ∈ S − P and y ∈ Q − P . We define g : S P → S P and g : S P × Q P → Q P by g ( x ) = [ m (( x, x ))] P and g ( x, y ) = [ f (( x, x ))( y, y )] P . We first show that for all s ∈ S P , q ∈ Q P , ( m, f )(( s, q )) = (( g ( s P ) , s − P ) , ( g ( s P , q P ) , q − P )). Take an arbitrary( s, q ) ∈ S P × Q P . Then consider the global state (( s P , x ) , ( q P , y )) sharing the same P -component as ( s, q ) and the fixed − P -component ( x , y ). By the wreath product action(see Definition 12), ( m, f ) ((( s P , x ) , ( q P , y ))) = ( m (( s P , x )) , f (( s P , x ))(( q P , y ))). Be-ing a P -map, ( m, f ) does not change the − P -component of any global state. So we have m (( s P , x )) = ([ m (( s P , x ))] P , x ) and f (( s P , x ))(( q P , y )) = ([ f (( s P , x ))(( q P , y ))] P , y ).Let ( m, f )(( s, q )) = ( s , q ). Since ( m, f ) is a P -map and the two global states ( s, q )and (( s P , x ) , ( q P , y )) share the same P -component, by Lemma 4, s P = [ m (( s P , x ))] P and q P = [ f (( s P , x ))(( q P , y ))] P . Further, s P = s − P and q P = q − P . Using the definitions of g and g , we immediately see that ( m, f )(( s, q )) = (( g ( s P ) , s − P ) , ( g ( s P , q P ) , q − P )). However,by the wreath product action, ( m, f )(( s, q )) = ( m ( s ) , f ( s )( q )). Comparing this with theprevious expression, we have m ( s ) = ( g ( s P ) , s − P ) and f ( s )( q ) = ( g ( s P , q P ) , q − P ). Theresult now follows from Lemma 4. (cid:74) Let A = ( { S i } , { δ a } , s in ) be an asynchronous automaton over e Σ. Based on A and e Σ, wedefine the alphabet Σ k S = { ( a, s a ) | a ∈ Σ , s ∈ S P } where a letter a in Σ is extended withlocal a -state information of A . This can naturally be viewed as a distributed alphabet g Σ k S where ∀ a ∈ Σ , ∀ s ∈ S P , ( a, s a ) ∈ Σ k S i if and only if a ∈ Σ i . Then A induces the followingtransducer over traces. a global state (resp. P -state) of T o T is canonically identified with an element of S P × Q P (resp. S P × Q P ) . Adsul, P. Gastin, S. Sarkar and P. Weil 9 (cid:73) Definition 15 (Local Asynchronous Transducer) . Let χ A : T R ( e Σ) → T R ( g Σ k S ) be defined asfollows. If t = ( E, ≤ , λ ) ∈ T R ( e Σ) , then χ A ( t ) = t where t = ( E, ≤ , µ ) ∈ T R ( g Σ k S ) with thelabelling µ : E → Σ k S defined by: ∀ e ∈ E, µ ( e ) = ( a, s a ) where a = λ ( e ) and s = ρ t ( ↓ e \ { e } ) (recall that ρ t is the unique trace run of A over t ). We call χ A the local asynchronoustransducer of A . (cid:73) Example 16.
Let χ be the local asynchronous transducer associated to A ϕ where ϕ is asin Example 9. Figure 1 shows the run of A ϕ on a trace t ∈ T R ( e Σ) (by showing local processstates before and after each event), and the resulting trace χ ( t ) ∈ T R ( g Σ k S ). a b cp p p ⊥ ⊥ ⊥ ⊥ ⊥ Run of trace t in A ϕ a b ⊥ c ⊥ ⊥ p p p Trace χ ( t ) Figure 1
Local asynchronous transducer output on a trace; S p = {⊥ } , S p = {⊥ } . Note that, in general, χ A is not a morphism of monoids. The following lemma is astraightforward consequence of the definition of χ A and the duality between trace runs of A and evaluations of the asynchronous asynchronous morphism ϕ A . (cid:73) Lemma 17.
Let t ∈ T R ( e Σ) with factorization t = t a (where a ∈ e Σ ), and s = ϕ A ( t )( s in ) .Then the trace χ A ( t ) ∈ T R ( g Σ k S ) factors as χ A ( t ) = χ A ( t )( a, s a ) . (cid:73) Theorem 18.
Let A be an asynchronous automaton over e Σ and χ A be the correspondinglocal asynchronous transducer. If L ⊆ T R ( g Σ k S ) is recognized by an atm T , then χ − A ( L ) isrecognized by the atm T A o T . Proof.
Let ψ : T R ( g Σ k S ) → T = ( { Q i } , N ) be an asynchronous morphism, which recognizes L with q in ∈ Q P as the initial global state, and Q fin ⊆ Q P as the set of final global states.Then L = { t ∈ T R ( g Σ k S ) | ψ ( t )( q in ) ∈ Q fin } . Note that, for ( a, s a ) ∈ Σ k S , ψ (( a, s a )) is an a -map (that is, an extension of a map from Q a to Q a ; recall that loc(( a, s a )) = loc( a )).For a ∈ Σ, we set η ( a ) = ( ϕ A ( a ) , f a ) where f a : S P → N is defined by f a ( s ) = ψ (( a, s a )).It is easy to check that η ( a ) is an a -map (that is, an extension of a map from S a × Q a to S a × Q a ). By Lemma 8, this uniquely defines an asynchronous morphism η : T R ( e Σ) → T A o T .Let t = ( E, ≤ , λ ) ∈ T R ( e Σ). We write η ( t ) = ( π ( t ) , π ( t )). It follows from the definitionof wreath product that π ( t ) = ϕ A ( t ). Now we claim that π ( t )( s in ) = ψ ( χ A ( t )). Weprove this by induction on the cardinality of E . Suppose t = t a . Then η ( t ) = η ( t ) η ( a ).As a result, we have ( π ( t ) , π ( t )) = ( π ( t ) , π ( t ))( π ( a ) , π ( a )). Therefore, for s ∈ S P , π ( t )( s ) = π ( t )( s ) + π ( a )( π ( t )( s )). In particular, it holds with s = s in . Recall that π ( t ) = ϕ A ( t ). Also, by induction, π ( t )( s in ) = ψ ( χ A ( t )). Hence, with s = ϕ A ( t )( s in ), π ( t )( s in ) = π ( t )( s in ) + π ( a )( π ( t )( s in ))= ψ ( χ A ( t )) + π ( a )( s )= ψ ( χ A ( t )) + ψ (( a, s a ))= ψ ( χ A ( t )( a, s a ))= ψ ( χ A ( t ))The last equality follows from Lemma 17. So, t ∈ χ − A ( L ) if and only if χ A ( t ) ∈ L if and only if ψ ( χ A ( t ))( q in ) ∈ Q fin if and only if π ( t )( s in )( q in ) ∈ Q fin if and only if η ( t )( s in , q in ) ∈ S P × Q fin .This shows that η recognizes χ − A ( L ) with ( s in , q in ) ∈ S P × Q P as the initial global state,and S P × Q fin ⊆ S P × Q P as the set of final global states. (cid:74) Now we focus our attention on what is usually termed as the wreath product principle. (cid:73)
Theorem 19.
Let T and T be atms and let L ⊆ T R ( e Σ) be a trace language recognized byan asynchronous morphism η : T R ( e Σ) → T o T , with initial global state ( s in , q in ) . For each a ∈ Σ , let η ( a ) = ( m a , f a ) . Then ϕ : T R ( e Σ) → T , defined by ϕ ( a ) = m a , is an asynchronousmorphism. Finally, let A = A ϕ be the asynchronous automaton associated to ϕ and s in ,and let χ A be the corresponding local asynchronous transducer. Then L is a finite union oflanguages of the form U ∩ χ − A ( V ) , where U ⊆ T R ( ˜Σ) is recognized by T , and V ⊆ T R ( g Σ k S ) is recognized by T . Proof.
We write T = ( { S i } , M ) and T = ( { Q i } , N ). Consider a ∈ Σ and the a -map η ( a ) = ( m a , f a ) ∈ M × F ( S P , N ). This means that η ( a ) is an extension of a map from S a × Q a to S a × Q a . By Lemma 14, m a ∈ M is an a -map (of T ) and f a : S P → N is suchthat, for s ∈ S P , f a ( s ) ∈ N is an a -map (of T ) and it depends only on s a . In particular, f a : S P → N may be viewed as f a : S a → N . Below we will use f a in this sense.Now we define an asynchronous morphism ψ : T R ( g Σ k S ) → T as follows: ψ (( a, s a )) = f a ( s a ). Note that, by Lemma 8, ψ is indeed an asynchronous morphism as f a ( s a ) is an a -map. Further, as m a is an a -map, ϕ : T R ( e Σ) → T , defined by ϕ ( a ) = m a , also extends toan asynchronous morphism.Our aim is to express L in terms of languages recognized by T and T . It suffices toshow the result when L is recognized with a single final global state, say ( s fin , q fin ). Then L = { t ∈ T R ( e Σ) | η ( t )(( s in , q in )) = ( s fin , q fin ) } .For t ∈ T R ( e Σ), we write η ( t ) = ( π ( t ) , π ( t )). It follows from the definition of ϕ that ϕ ( t ) = π ( t ). Hence, we can alternatively write L as L = { t ∈ T R ( e Σ) | ϕ ( t )( s in ) = s fin and π ( t )( s in )( q in ) = q fin } Let U = { t ∈ T R ( e Σ) | ϕ ( t )( s in ) = s fin } . Then, with W = { t ∈ T R ( e Σ) | π ( t )( s in )( q in ) = q fin } , L = U ∩ W . By using essentially the same ideas as in the proof of Theorem 18, we can showthat π ( t )( s in ) = ψ ( χ A ( t )). Therefore, W = { t ∈ T R ( e Σ) | ψ ( χ A ( t ))( q in ) = q fin } .It follows that, with V = { t ∈ T R ( g Σ k S ) | ψ ( t )( q in ) = q fin } , W = χ − A ( V ). Clearly, U isrecognized by the atm T (via ϕ ), V is recognized by the atm T (via ψ ) and L = U ∩ χ − A ( V ).This completes the proof. (cid:74) In this section, we use the algebraic framework developed so far to propose an analogueof the fundamental Krohn-Rhodes decomposition theorem over traces. We first recall the . Adsul, P. Gastin, S. Sarkar and P. Weil 11
Krohn-Rhodes theorem in the purely algebraic setting of transformation monoids. We brieflyexplain how it is used to analyze/decompose morphisms from the free monoid and point outsome difficulties that arise when we consider morphisms from the trace monoid.Let M and N be monoids. We say that M divides N (in notation, M ≺ N ) if M is ahomomorphic image of some submonoid of N . This notion can be extended to transformationmonoids. Let ( X, M ) and (
Y, N ) be two tm’s. We say that (
X, M ) divides ( Y, N ), denoted(
X, M ) ≺ ( Y, N ), if there exists a pair of mappings ( f, ϕ ) where f : Y → X is a surjectivefunction and ϕ : N → M is a surjective morphism from a submonoid N of N , such that ϕ ( n )( f ( y )) = f ( n ( y )) for all n ∈ N and all y ∈ Y .Recall that U = ( { , } , { id , r , r } ) denotes the reset transformation monoid on twoelements. Along with it, the following class of transformation monoids plays an importantrole in the Krohn Rhodes theorem. (cid:73) Example 20.
Let G be a group. Then ( G, G ) is a tm where the monoid element g represents the transformation m g : G → G of the set G , which is the right multiplication by g . In otherwords, for h ∈ G, m g ( h ) = hg .We are now in a position to state the Krohn-Rhodes theorem [10]. See [19] for a classicalproof of the theorem, and [4] for a modern proof. (cid:73) Theorem 21 (Krohn-Rhodes Theorem) . Every finite transformation monoid T = ( X, M ) divides a wreath product of the form T o . . . o T n where each factor T i is either U or is of theform ( G, G ) for some non-trivial simple group G dividing M . Henceforth, we will be dealing with only finite tms and sometimes we will omit thequalifier ‘finite’. Now we turn our attention to the use of this decomposition theorem foranalysing word languages recognized by morphisms from the free monoid. (cid:73)
Definition 22.
Let ϕ : Σ ∗ → T = ( X, M ) be a morphism. Further, let ψ : Σ ∗ → T = ( Y, N ) be another morphism. We say that ψ simulates ϕ if there exists a surjective function f : Y → X such that, for all a ∈ Σ and all y ∈ Y , f ( ψ ( a )( y )) = ϕ ( a )( f ( y )) . X XY Y ϕ ( a ) ψ ( a ) f f Figure 2
Visual illustration of condition f ( ψ ( a )( y )) = ϕ ( a )( f ( y )) in Definition 22 Observe that if ψ simulates ϕ then a language recognized by ϕ is also recognized by ψ . (cid:73) Proposition 23.
Let ϕ : Σ ∗ → T = ( X, M ) be a morphism. Then there exists a morphism ψ : Σ ∗ → T which simulates ϕ such that the tm T is of the form T o . . . o T n where eachfactor T i is either U or ( G, G ) for some non-trivial simple group G dividing M . Proof.
Given T , we get T = T o . . . o T n = ( Y, N ) by the Krohn-Rhodes theorem. Since T ≺ T ,there exists a pair of mappings ( f, θ ) where f : Y → X is a surjective function and θ : N → M is a surjective morphism from a submonoid N of N , such that θ ( n )( f ( y )) = f ( n ( y )) forall n ∈ N and all y ∈ Y . Construct ψ : Σ → N by mapping ψ ( a ), for each a in Σ, to anarbitrary element in θ − ( ϕ ( a )). Thanks to the fact that Σ ∗ is a free monoid, ψ uniquelyextends to a morphism ψ : Σ ∗ → T . It is easily checked that ψ simulates ϕ . (cid:74) Combined with the wreath product principle, the above proposition provides a powerfulinductive tool to prove many non-trivial results in the theory of finite words. See [13, 2].Motivated by these applications, we look for an analogue of the above proposition forthe setting of traces. We now point to some problems that arise if one tries to naively liftthe Krohn-Rhodes theorem to the setting of traces. The first problem is that, unlike in theword scenario, division does not imply simulation of morphisms from the trace monoid . Bysimulation of morphisms from the trace monoid, we simply mean an obvious adaptation ofthe Definition 22 to the morphisms from the trace monoid. q q a q b q ab Automata Aab ba q q a q b q ab q ba Automata Bab ba
Figure 3
Automata A and B on the alphabet { a, b } (cid:73) Example 24 (Example for Problem of lifting Krohn Rhodes theorem to trace monoid) . Consider the transition tm (
X, M ) (resp. (
Y, N )) of the automata A (resp. B ) in Figure 3;assume both are complete, with any transition not shown in the figure going to trap state q t in A and q t in B . So X = { q , q a , q b , q ab , q t } and M = { M , m a , m b , m, M } where 1 M isthe identity transformation of the empty word, and m a , m b and m respectively represent thestate transformations by a , b and ab (or equivalently, ba ). 0 M represents the transformationby any other word. Hence the multiplication table of M is the left one in Table 1. Similarly, Y = { q , q a , q b , q ab , q ba , q t } and N = { N , n a , n b , n ab , n ba , N } with its multiplication given bythe right one in Table 1. Observe that ( X, M ) ≺ ( Y, N ) by the pair ( f, ψ ) where ψ ( n a ) = m a Table 1
Multiplication table of M and NM M m a m b m M M M m a m b m M m a m a M m M M m b m b m M M M m m M M M M M M M M M M N N n a n b n ab n ba N N N n a n b n ab n ba N n a n a N n ab N N N n b n b n ba N N N N n ab n ab N N N N N n ba n ba N N N N N N N N N N N N and ψ ( n b ) = m b extends to a surjective monoid morphism from N to M . The surjectivefunction f maps q ab and q ba both to q ab . Remaining details of the function are obvious. Inparticular, both the tm’s can recognize the language L = { ab, ba } .Now consider the distributed alphabet ˜Σ = (Σ = { a } , Σ = { b } ). Clearly aIb , and L is atrace language. Consider the function ϕ : Σ → M where ϕ ( a ) = m a and ϕ ( b ) = m b . As m a and m b commute, ϕ indeed extends to a morphism from the trace monoid, and can recognize L , for example. However, there is no morphism from T R ( e Σ) to (
Y, N ) that simulates ϕ .Note that the ‘lifts’ n a and n b , of m a and m b resp., don’t commute, and so the function thatextends to a simulating morphism ψ in the word case as in the proof of Proposition 23, doesnot work here for traces. . Adsul, P. Gastin, S. Sarkar and P. Weil 13 The second problem is that even if there is a morphism from
T R ( e Σ) to a wreath productof tm’s, in general it does not induce morphisms from trace monoids to the individual tm’sbeyond the first one. This is primarily because the output of the sequential transducerassociated with the first tm is not a trace. (cid:73)
Example 25.
Assume the DFA in Figure 4 represents the induced morphism to the first tmin a wreath product chain. The figure below shows the outputs of the sequential transducerassociated with this DFA on three different linearizations of a single input trace. Theseoutputs have different sets of letters and can not constitute a single trace. b b ca s qba, c c a, babbc : (cid:0) as (cid:1)(cid:0) bs (cid:1)(cid:0) bq (cid:1)(cid:0) cq (cid:1) babc : (cid:0) bs (cid:1)(cid:0) aq (cid:1)(cid:0) bq (cid:1)(cid:0) cq (cid:1) bbac : (cid:0) bs (cid:1)(cid:0) bq (cid:1)(cid:0) aq (cid:1)(cid:0) cq (cid:1) Figure 4
Sequential transducer outputs for all linearizations of a trace
Prior work in [7] devised a wreath product principle for traces, but it uses non-trace structuresto circumvent the second problem, thus limiting its applicability.As seen in the previous sections, the new algebraic framework of asynchronous structuressupports true concurrency and is well suited to reason about trace languages. Most im-portantly, an asynchronous morphism to a wreath product chain gives rise to asynchronousmorphisms to individual atm’s of the chain (see the proof of Theorem 19 for an illustration).This can be seen as a resolution of the second problem mentioned above.Going ahead, we extend the notion of simulation to the case when the ‘simulating’morphism is an asynchronous morphism to an atm. (cid:73)
Definition 26.
Let ϕ : T R ( e Σ) → T = ( X, M ) be a morphism to a tm. Further, let T = ( { S i } , N ) be an atm and ψ : T R ( e Σ) → T be an asynchronous morphism. We say that ψ is an asynchronous simulation of ϕ (or simply ψ simulates ϕ ) if there exists a surjectivefunction f : S P → X such that, for all a ∈ Σ and all s ∈ S P , f ( ψ ( a )( s )) = ϕ ( a )( f ( s )) . The fundamental theorem of Zielonka [20] states that every recognizable language isaccepted by some asynchronous automata. See [14] for another proof of the theorem. Fromthe viewpoint of our algebraic setup and the previous definition, it guarantees the existenceof a simulating asynchronous morphism. (cid:73)
Theorem 27 (Zielonka Theorem) . Let ϕ : T R ( e Σ) → T be a morphism to a finite tm. Thereexists an asynchronous morphism ψ : T R ( e Σ) → T , to a finite atm, which simulates ϕ . Recall that the atm U [ ‘ ], defined in Example 6, is a natural extension of the tm U tothe process ‘ . In a similar vein, for a group G , the atm G [ ‘ ] denotes the natural extension ofthe tm ( G, G ) from Example 20 to the process ‘ . We will use a similar notation to extend atm to an atm localized to a particular process.Now we formulate the following decomposition question: (cid:73) Question 1.
Let ϕ : T R ( e Σ) → ( X, M ) be a morphism to a finite tm. Does there exist anasynchronous morphism ψ : T R ( e Σ) → T to a finite atm, such that ψ simulates ϕ , and theatm T is of the form T o . . . o T n where each factor T i is, for some ‘ ∈ P , either the atm U [ ‘ ] or is of the form G [ ‘ ] for some non-trivial simple group G dividing M ? In view of our discussion so far, it is clear that the above question asks for a simultaneousgeneralization of the Krohn-Rhodes theorem for the setting of words (that is, Proposition 23),and the Zielonka theorem for the setting of traces (that is, Theorem 27). Question 1 ingeneral remains open. However we answer it positively in a particular case, namely that ofacyclic architectures, which is general enough to include the common client-server settings. (cid:73)
Definition 28.
Let e Σ = { Σ i } i ∈P be a distributed alphabet. Then its communication graphis G = ( P , E ) where E = { ( i, j ) ∈ P × P | i = j and Σ i ∩ Σ j = ∅} . If the communicationgraph is acyclic, then the distributed alphabet is called an acyclic architecture. Observe that if e Σ is an acyclic architecture, then no action is shared by more than twoprocesses. The work [9] provides a simpler proof of Zielonka’s theorem in this case. (cid:73)
Theorem 29. If e Σ is an acyclic architecture, then Question 1 admits a positive answer. Proof.
The proof is by induction on the number of processes. The base case with only oneprocess follows from Proposition 23.For the general case, let P = { , , . . . , k } . Since the communication graph is acyclic,there exists a ‘leaf’ process which communicates with at most one other process. Withoutloss of generality, let the leaf process be 1, and its only neighbouring process be 2 (if process1 has no neighbour, then process 2 can be any other process). We ‘split’ the given morphism ϕ : T R ( e Σ) → ( X, M ) based on the chosen leaf process 1.321 ab ce a f d ce d x ϕ ( t )( x ) ϕ Figure 5
Initial and final states of (
X, M ) under ϕ ab ϕ ( a ) cce a f d cc ϕ ( ad ) e d x ϕ ( a ) ϕ ( ad ) ϕ ( d )id xϕ ϕ Figure 6
Transfer of state information from ϕ to ϕ . The final states of the two atm’s are ϕ ( d )and x . Note that ϕ ( d )( x ) = ϕ ( t )( x ). Defining ϕ and ϕ Let N be the submonoid of M generated by { ϕ ( a ) | loc( a ) = { }} . Also let N be thesemigroup of reset (that is, constant) functions from N into itself. If n ∈ N , we denote by n the function on N which maps every element to n . . Adsul, P. Gastin, S. Sarkar and P. Weil 15 We define ϕ : Σ ∗ → ( N, N ∪ N ) by setting ϕ ( a ) = ϕ ( a ) if loc( a ) = { } ϕ ( a ) = id if loc( a ) = { , } Note that at any point, ϕ records in the state of the tm, the evaluation ϕ ( w ) where w ∈ (Σ \ Σ ) ∗ is the word read by process 1 since the last joint action with its neighbour.As a result, the sequential transducer associated with ϕ adds the corresponding informationat each process 1 event.In particular, the information supplied at the joint events of process 1 and 2, will beused by ϕ . For this, let us define a suitable distributed alphabet f Σ = { Σ , Σ , . . . , Σ k } over P \ { } , where Σ = (Σ \ Σ ) ∪ ((Σ ∩ Σ ) × N ). We define ϕ : T R ( f Σ ) → ( X, M ) by letting ϕ ( a ) = ϕ ( a ) if 1 / ∈ loc( a ) ϕ (( a, n )) = nϕ ( a ) if loc( a ) = { , } We denote the total alphabet corresponding to e Σ and f Σ by Σ and Σ respectively. For anytwo letters a, b ∈ Σ ∩ Σ = Σ \ Σ , if a and b are independent in the new distributed alphabet f Σ , then they must have been independent in e Σ. For independent letters ( a, n ) and b in f Σ ,it is easy to show that, process 1 being a leaf process, a and b are independent in e Σ, andthat ϕ ( b ) and n commute. Based on these, we can verify that ϕ is indeed a morphism. Simulating ϕ and ϕ By induction hypothesis, we get a simulating morphism of ϕ , namely c ϕ : Σ ∗ → T o T o . . . o T n where each factor is of the form U or ( G, G ) for some non-trivial simple group G dividing N ∪ N . Let T o T o . . . o T n = T = ( Y, M ). Then, by definition of simulation, thereexists a surjective mapping f : Y → N such that for any y ∈ Y and any a ∈ Σ , f ( c ϕ ( a )( y )) = ϕ ( a )( f ( y )).We define a morphism ψ : T R ( e Σ) → T [1] by setting ψ ( a ) = c ϕ ( a ) if a ∈ Σ ψ ( a ) = id otherwiseIt is easy to check that ψ is an asynchronous morphism. Also, it’s not difficult to see that T [1] = T [1] o . . . o T n [1]. We write T [1] as ( { Y i } , M ). Since the process 1 local states representthe global states of T [1], we can consider f as a surjective function from Y P to N such thatfor any y ∈ Y P , and a ∈ Σ , we have f ( ψ ( a )( y )) = ϕ ( a )( f ( y )).Note that, by construction, each T m [1] is of the form U [1] or G [1] for some non-trivialsimple group G dividing N ∪ N . If G ≺ N ∪ N , namely there exists a surjective morphism τ from a submonoid N of N ∪ N onto G , then τ ( n ) = id G for every n ∈ N . Indeed n is an idempotent, so its τ -image must be the only idempotent in G , namely id G . Clearly N = N ∩ N is a sub-monoid of N and τ : N → G defined by τ ( n ) = τ ( n ) is a surjectivemorphism from N to G . So, G ≺ N and since division is transitive, G ≺ M .Similarly for ϕ , by the induction hypothesis, we have a simulating morphism c ϕ : T R ( f Σ ) → T , where T = T o . . . o T n , with each factor of the form U [ ‘ ] or G [ ‘ ] for some simple group G dividing M , and some ‘ ∈ { , . . . , k } . Similar to what we did previously, we tweak theseatm’s to make them work over P , by adding a singleton set of local states for process 1. If wedenote this by T m [ ↑ T [ ↑
1] = T [ ↑ o . . . o T n [ ↑ f Σ = (Σ , Σ , Σ , . . . , Σ k ), where Σ = (Σ \ Σ ) ∪ ((Σ ∩ Σ ) × N ). We devise a morphism ψ : T R ( f Σ ) → T [ ↑
1] by setting ψ ( a ) = id if a ∈ Σ \ Σ ψ ( a ) = c ϕ ( a ) otherwiseLet us denote T [ ↑
1] as the atm ( { Z i } , M ). Due to the canonical bijection between globalstates of T and T [ ↑ f : Z P → X such that for any a ∈ Σ \ Σ ,and any z ∈ Z P , we have f ( ψ ( a )( z )) = ϕ ( a )( f ( z )). Furthermore, for ( a, n ) ∈ (Σ ∩ Σ ) × N ,and any z ∈ Z P , we have f ( ψ (( a, n ))( z )) = ϕ (( a, n ))( f ( z )). Asynchronously simulating ϕ The final step is to combine ψ and ψ to get asynchronous morphism ψ : T R ( e Σ) → ( { Y i } , M ) o ( { Z i } , M ) such that ψ simulates ϕ . Recall that ( { Y i } , M ) o ( { Z i } , M ) =( { Y i × Z i } , M × F ( Y P , M )). We define ψ as follows: ψ ( a ) = ( ψ ( a ) , γ a ) where γ a : Y P → M is given by γ a ( y ) = id if loc( a ) = { } γ a ( y ) = ψ (( a, f ( y ))) if loc( a ) = { , } γ a ( y ) = ψ ( a ) if 1 / ∈ loc( a )For a ∈ Σ ∩ Σ , recall that in the first atm T [1], any global state is completely determinedby its process 1 state. So, ψ ( a ) is an a -map, and hence ψ is an asynchronous morphism. X XY P × Z P Y P × Z P ϕ ( a ) ψ ( a ) f f Figure 7 ψ simulates ϕ We now show that there exists a surjective function f : Y P × Z P → X such that f ( ψ ( a )( y, z )) = ϕ ( a )( f ( y, z )) for all ( y, z ) ∈ Y P × Z P . We define f ( y, z ) = f ( y )( f ( z )). It issurjective because both f and f are surjective, and N contains an identity element. Simplecalculations show that ψ simulates ϕ . We give a case by case argument as to why this shouldbe true. f ( ψ ( a )( y, z )) refers to the new state of ( X, M ) that we get by first reading the letter a atstate ( y, z ) in the atm ( { Y i } , M ) o ( { Z i } , M ), and then mapping back to the correspondingstate of ( X, M ) using f . Case a ∈ Σ ∩ Σ : When a ∈ Σ ∩ Σ , it is a joint letter of process 1 and process 2.Recall from the definition of ϕ , that these joint letters reset the state of the tm ( N, N ∪ N ) tothe id state. Because ψ simulates ϕ on letters from Σ , it should be clear that the new state ψ ( a )( y ) of ( { Y i } , M ) maps to state id in the tm ( N, N ∪ N ). That is f ( ψ ( a )( y )) = id.The local asynchronous transducer of the first atm adds the process 1 state (equivalentto global state in the first atm) y to the letter a . This coresponds to the letter ( a, f ( y ))as input to ϕ . Before reading the letter, the tm ( X, M ) (for ϕ ) is in state f ( z ). Thus, . Adsul, P. Gastin, S. Sarkar and P. Weil 17 from the definition of ϕ , and because ψ simulates ϕ on the extended letters, we know thatthe new state ψ ( a, f ( y ))( f ( z )) in ( { Z i } , M ) should map to the state f ( y ) .ϕ ( a )( f ( z )) = ϕ ( a )( f ( y, z )) in ( X, M ). That is, f ( ψ ( a, f ( y ))( f ( z ))) = ϕ ( a )( f ( y, z )). The overall stateof ( X, M ) is then given by id( ϕ ( a )( f ( y, z ))) = ϕ ( a )( f ( y, z )). Hence in this case ψ simulates ϕ . f ( ψ ( a )( y, z )) = f ( ψ ( a )( y ) , ψ ( a, f ( y )( z )))= f ( ψ ( a )( y ))( f ( ψ ( a, f ( y )( z ))))= ϕ ( a ) f ( y )( ϕ (( a, f ( y ))( f ( z ))= id( f ( y ) ϕ ( a )( f ( z )))= ϕ ( a )( f ( y, z )) Case a ∈ Σ \ Σ : In this case, state of ( X, M ) (from ϕ ) doesn’t change, that is, itremains f ( z ). The state of ( N, N ∪ N ) should be ϕ ( a ) applied to the old state f ( y ). That is,the new state of ( X, M ) should be ϕ ( a )( f ( y ))( f ( z )). Note that ϕ ( a )( f ( y )) is the element f ( y ) .ϕ ( a ) in N . Thus new state is f ( y ) .ϕ ( a )( f ( z )) = ϕ ( a )( f ( y, z )). Hence, in this case ψ simulates ϕ . f ( ψ ( a )( y, z )) = f ( ψ ( a )( y ) , id( z ))= f ( ψ ( a )( y ))( f ( z ))= ϕ ( a ) f ( y )( f ( z ))= ϕ ( a )( f ( y, z )) Case a / ∈ Σ : In this case, state of tm for ϕ should not update. So its new state is the oldstate f ( y ). The new state of ( X, M ) (for ϕ ) should be ϕ ( a ) applied to old state f ( z ). Thus,the new overall state of ( X, M ) is f ( y )( ϕ ( a )( f ( z ))) = ϕ ( a ) .f ( y )( f ( z )). Since a / ∈ Σ , notethat f ( y ) ∈ N commutes with ϕ ( a ). Thus, new state is f ( y ) ϕ ( a )( f ( z )) = ϕ ( a )( f ( y, z )).hence in this case also, ψ simulates ϕ . and ϕ ( a ) f ( ψ ( a )( y, z )) = f ( ψ ( a )( y ) , ψ ( a )( z ))= f ( ψ ( a )( y ))( f ( ψ ( a )( z )))= f ( y )( ϕ ( a )( f ( z )))= ϕ ( a ) f ( y )( f ( z ))= f ( y ) ϕ ( a )( f ( z ))= ϕ ( a )( f ( y, z )) (cid:74) In this section, we introduce distributed automata-theoretic operations called local and globalcascade products. (cid:73)
Definition 30.
Let A = ( { S i } , { δ a } , s in ) over e Σ , and A = ( { Q i } , { δ ( a,s a ) } , q in ) over g Σ k S be two asynchronous automata. We define the local cascade product of A and A , denoted A ◦ ‘ A , to be the asynchronous automaton ( { S i × Q i } , { ∆ a } , ( s in , q in )) over e Σ , where, for a ∈ Σ and ( s a , q a ) ∈ S a × Q a , ∆ a (( s a , q a )) = ( δ a ( s a ) , δ ( a,s a ) ( q a )) . The operational working of A = A ◦ ‘ A can be understood in terms of A and A using the local asynchronous transducer χ A : T R ( e Σ) → T R ( g Σ k S ) (associated with A ) asfollows: for an input trace t ∈ T R ( e Σ), the run of A on t ends in global state ( s, q ) if andonly if the run of A on t ends in global state s and the run of A on χ A ( t ) ends in globalstate q . This operational cascade of A followed by A is summarized in the right part of A ( s, q ) t A s t A qχ A ( t ) Figure 8
Operational view of local cascade product the Figure 8. It is not difficult to check that the local cascade product is associative and χ A ◦ ‘ A ( t ) = χ A ( χ A ( t )) for all t ∈ T R ( e Σ).Local cascade product is the automata-theoretic counterpart of local wreath product,and Figure 8 shows the essence of the local wreath product principle discussed in Section 3.4.To explain this further, let T = ( { S i } , M ), T = ( { Q i } , N ) be two atm’s. Consider anasynchronous morphism η : T R ( e Σ) → T o T . Let A be the asynchronous automaton over e Σcorresponding to the morphism η with a fixed choice of ( s in , q in ) ∈ S P × Q P as the initialglobal state.Recall that, as seen in the proof of Theorem 19, η gives rise to canonical asynchronousmorphisms ϕ : T R ( e Σ) → T and ψ : T R ( g Σ k S ) → T as follows: for a ∈ Σ and s a ∈ S a , η ( a ) = ( m a , f a ) = ⇒ ϕ ( a ) = m a and ψ (( a, s a )) = f a ( s a )Let A (resp. A ) be the asynchronous automaton over e Σ (resp. g Σ k S ) corresponding tothe morphisms ϕ (resp. ψ ) with s in (resp. q in ) as the initial global state. Then it turns outthat A is the local cascade product of A and A . Following lemma summarizes this. (cid:73) Lemma 31.
Let η : T R ( e Σ) → ( { S i } , M ) o ( { Q i } , N ) canonically give rise to the twoasynchronous morphism ϕ : T R ( e Σ) → ( { S i } , M ) and ψ : T R ( g Σ k S ) → ( { Q i } , N ) defined by η ( a ) = ( m a , f a ) = ⇒ ϕ ( a ) = m a and ψ (( a, s a )) = f a ( s a ) . If A is the asynchronousautomata corresponding to η with ( s in , q in ) as its initial state, and A (resp. A ) is theasynchronous automata corresponding to ϕ (resp. ψ ) with s in (resp. q in ) as its initial state,then A = A ◦ ‘ A . Proof.
The proof follows easily from the definitions and skipped. (cid:74)
Let A = ( { S i } , { δ a } , s in ) be an asynchronous automaton over e Σ. Recall that the localasynchronous transducer χ A preserves the underlying set of events and, at an event, simplyrecords the previous local states of the processes participating in that event. . Adsul, P. Gastin, S. Sarkar and P. Weil 19 Now we introduce a natural variant of χ A which is called the global asynchronoustransducer . In this variant, at an event, we record the best global state that causally precedesthe current event. This is the best global state that the processes participating in thecurrent event are (collectively) aware of. It is important to note that the global and localasynchronous transducers coincide in the sequential setting.We first setup some notation. Based on A and e Σ, we define the alphabet Σ S P = Σ × S P where each letter in Σ is extended with global state information of A . This can naturally beviewed as a distributed alphabet g Σ S P where for all a ∈ Σ and s ∈ S P , we have ( a, s ) ∈ Σ S P i if and only if a ∈ Σ i . (cid:73) Definition 32 (Global Asynchronous Transducer) . Let A be an asynchronous automatonover e Σ . The global asynchronous transducer of A is the map θ A : T R ( e Σ) → T R ( g Σ S P ) definedas follows. If t = ( E, ≤ , λ ) ∈ T R ( e Σ) , then θ A ( t ) = ( E, ≤ , µ ) ∈ T R ( g Σ S P ) with the labelling µ : E → Σ × S P defined by: ∀ e ∈ E, µ ( e ) = ( a, s ) where a = λ ( e ) and s = ρ t ( ↓ e \ { e } ) (cid:73) Example 33.
For the same trace t and asynchronous automata A ϕ from Example 16,Figure 9 shows its global asynchronous transducer output θ ( t ). Note the difference fromFigure 1. For example, here the p -event has process p state 2 in its label (which is thebest process p state in its causal past) even though process p and process p never interactdirectly. a b cp p p ⊥ ⊥ ⊥ ⊥ ⊥ Run of trace t in A ϕ a ⊥ ⊥ b ⊥ ⊥ c ⊥ ⊥ p p p Trace θ ( t ) Figure 9
Global asynchronous transducer output on a trace
Below we give a uniform translation from the automaton A to another automaton G ( A ) suchthat the global asynchronous transducer of A is realized by the local asynchronous transducerof G ( A ). Gossip Automaton
It turns out that one must make crucial use of the latest information that the agents haveabout each other when defining the automaton G ( A ). It has been shown in [15] that thisinformation can be kept track of by a deterministic asynchronous automaton whose sizedepends only on e Σ.To bring out the relevant properties of this automaton, we start with more notation. Let t = ( E, ≤ , λ ) ∈ T R ( e Σ), c ∈ C t and i, j ∈ P . Then ↓ i ( c ) is the i -view of c and it is defined by: ↓ i ( c ) = ↓ ( c ∩ E i ). We note that ↓ i ( c ) is also a configuration. It is the “best” configurationthat the agent i is aware of at c . It is easy to see that if ↓ i ( c ) = ∅ , then there exists e ∈ E i such that ↓ i ( c ) = ↓ e . For P ⊆ P and c ∈ C t , we let ↓ P ( c ) denote the set S i ∈ P ↓ i ( c ). Onceagain, ↓ P ( c ) is a configuration. It represents the collective knowledge of the processes in P about c . For each subset P of processes, the function latest t,P : C t ×P → P is given by latest t,P ( c, j ) = ‘ if and only if ‘ is the least member of P with ↓ j ( ↓ k ( c )) ⊆ ↓ j ( ↓ ‘ ( c )) for all k in P . Inother words, among the agents in P , process ‘ has the best information about j at c . (cid:73) Theorem 34 (Gossip Automaton [15]) . There exists an asynchronous automaton G =( { Υ i } , {∇ a } , v in ) such that for each P = { i , i , . . . , i n } , there exists a function gossip P : Υ i × Υ i × . . . × Υ i n ×P → P with the following property. Let t ∈ T R ( e Σ) , c ∈ C t , j ∈ P and let ρ t bethe unique run of G over t with ρ t ( c ) = v . Then latest t,P ( c, j ) = gossip P ( v ( i ) , . . . , v ( i n ) , j ) . Henceforth, we refer to G as the gossip automaton . Translation
Now we describe the construction of G ( A ) from A . Roughly speaking, in the automaton G ( A ), each process i keeps track of the best global state of A that it is aware of, and itslocal gossip state in the gossip automaton. When processes synchronize, they use the jointgossip-state information to correctly update the best global state that they are aware of atthe synchronizing event. Of course, they also update their own local gossip states.Recall that A = ( { S i } , { δ a } , s in ). For each i ∈ P , let S G i = Υ i × S P . Further, let P = { i , i , . . . , i n } . We define the function globalstate P : S G P → S P as follows. Let ( v i , s i ) ∈ S G i ,( v i , s i ) ∈ S G i , . . . , ( v i n , s i n ) ∈ S G i n . Thenglobalstate P ((( v i , s i ) , ( v i , s i ) , . . . , ( v i n , s i n ))) = s ∈ S P where, for each i ∈ P , s ( i ) = s ‘ ( i ) with ‘ = gossip P ( v i , v i , . . . , v i n , i )We define the asynchronous automaton G ( A ) to be ( { S G i } , { δ G a } , s G in ). The initial state s G in is defined by letting, for each i ∈ P , s G in ( i ) = v in ( i ) × s in . Now we describe the transitionfunctions { δ G a : S G a → S G a } a ∈ Σ . Let a ∈ Σ with loc( a ) = { i , i , . . . , i n } and s G a ∈ S G a with s G a ( i ) = ( v i , s i ) for each i ∈ loc( a ). Suppose ∇ a (( v i , v i , . . . , v i n )) = (( v i , v i , . . . , v i n )). Nowwe set δ G a ( s G a ) = s a G , such that, for each i ∈ loc( a ), s a G ( i ) = ( v i , s ) where s = ∆ a ( s ) (recallthat ∆ a is the global transition function of A ) and s = globalstate loc( a ) ( s G a ).The next proposition says that, the best global state of A that a subset P of processesare collectively aware of, can be recovered from the local P -joint state of G ( A ). Thanks toTheorem 34, the proof is not very difficult albeit notationally somewhat cumbersome. Weskip the proof here. (cid:73) Proposition 35.
With the notation above, the family of functions { globalstate P } P ⊆P hasthe following property. Let t ∈ T R ( e Σ) and c ∈ C t . Further, let ρ t and ρ G t be the unique runsof A and G ( A ) over t with ρ G t ( c ) = s G . Then ρ t ( ↓ P ( c )) = globalstate P ( s G P ) , for each P ⊆ P . Let globalstate : Σ k S G → Σ S P be defined as follows. For a ∈ Σ and s G a ∈ S G a , we setglobalstate(( a, s G a )) = ( a, globalstate loc( a ) ( s G a ))Now we are ready to state one of the main results of this section. It asserts that theglobal asynchronous transducer output of A can be obtained from the local asynchronoustransducer output of G ( A ) by a simple relabelling letter-to-letter morphism given by theglobalstate function. Its proof is immediate and skipped. we assume an arbitrary total order on P . Adsul, P. Gastin, S. Sarkar and P. Weil 21 (cid:73) Theorem 36.
Let A be an asynchronous automaton, let θ A : T R ( e Σ) → T R ( g Σ S P ) be itsglobal asynchronous transducer and let χ G ( A ) : T R ( e Σ) → T R ( (cid:93) Σ k S G ) be the local asynchronoustransducer of G ( A ) . Then if t = ( E, ≤ , λ ) ∈ T R ( e Σ) and χ G ( A ) ( t ) = ( E, ≤ , µ ) , then θ A ( t ) =( E, ≤ , ν ) ∈ T R ( g Σ S P ) where, for e ∈ E , ν ( e ) = globalstate( µ ( e )) Now we are ready to define a cascade model which uses the global asynchronous transducer. (cid:73)
Definition 37 (Operational Global Cascade Product) . Let A = ( { S i } , { δ a } , s in ) be anasynchronous automaton over e Σ , and A = ( { Q i } , { δ ( a,s ) } , q in ) be an asynchronous automatonover g Σ S P . Then their operational global cascade product, denoted by A ◦ g A , is a cascademodel where, for any input trace t ∈ T R ( e Σ) , A runs on t (and ‘outputs’ θ A ( t ) ) and A runs on θ A ( t ) . See Figure 10. A s t A qθ A ( t ) Figure 10
Operational view of global cascade product
Note that A ◦ g A is not, a priori, an asynchronous automaton, but in view of the discussionin the preceeding subsection, it is simulated by the asynchronous automaton G ( A ) ◦ ‘ A .For simplicity, we view A ◦ g A as an (asynchronous) automaton with same state spaceas A ◦ ‘ A , and extend the notions of run, acceptance etc. to it in a natural way. Thus, arun of A ◦ g A on t ∈ T R ( e Σ) is a tuple ( ρ t , ρ θ A ( t ) ). As t and θ A ( t ) have the same set ofunderlying events with identical causality and concurrent relationships, both t and θ A ( t )admit the same set of configurations. In view of this, we abuse the notation slightly andwrite the run as ( ρ t , ρ t ) where ρ t : C t → S P and ρ t : C t → Q P . Similarly, the label of anyevent e in t (resp. θ A ( t )) is denoted by λ ( e ) (resp. λ ( e )). We also use A ◦ g A to accept alanguage by specifying a final subset (of global states) F ⊆ S P × Q P . As expected, an inputtrace t = ( E, ≤ , λ ) ∈ T R ( e Σ) is accepted if ( ρ t ( E ) , ρ t ( E )) ∈ F . Henceforth, we refer to theoperational global cascade product as the simply global cascade product.We consider an asynchronous automaton A as a base global cascade product. Now weuse structural induction to define the binary global cascade product B ◦ g B where B and B are themselves global cascade products: global states of B ◦ g B is the product of globalstates of B and B ; its run on t consists of a run of B on t and a run of B on θ B ( t ); itsglobal asynchronous transducer is θ B ◦ θ B . We also define the notion of a language beingaccepted by B ◦ g B as expected.It is easy to see that, for automata A , A , A , the global cascade products ( A ◦ g A ) ◦ g A and A ◦ g ( A ◦ g A ) can be identified naturally in terms of global states, runs, acceptedlanguages etc. In this sense, the global cascade product is associative. See Figure 11 for anintuitive explanation of this associativity.Thanks to this, we can talk about the global cascade product of a sequence of asynchronousautomata. The earlier notations, such as ( ρ t , ρ t ) of a run etc., are easily extended. In thisgeneral setting, the distributed alphabet for the m -th asynchronous automata in the sequenceis denoted by g Σ m . So, for instance, in Definition 37, we have f Σ = e Σ and f Σ = g Σ S P .The following global cascade product principle is an easy consequence of the definitions. A s A q θ A ( t ) θ A ◦ θ A ( t ) = t A r ( s , q ) t θ A ( t ) (a) ( A ◦ g A ) ◦ g A A s t A q θ A ( t ) A r θ A ( t ) = t t ( q , r ) θ A ◦ θ A ( t ) (b) A ◦ g ( A ◦ g A ) A s = s = s t A q = q = q θ A ( t ) A r = r = r θ A ◦ θ A ( t ) θ A ◦ θ A ◦ θ A ( t ) (c) A ◦ g A ◦ g A Figure 11
Associativity of global cascade product (cid:73)
Theorem 38.
Let A (resp. B ) be a global cascade product over e Σ (resp. g Σ S P ), where S P is the set of global states of A . Then any language L ⊆ T R ( e Σ) accepted by A ◦ g B is afinite union of languages of the form U ∩ θ − A ( V ) where U ⊆ T R ( e Σ) is accepted by A , and V ⊆ T R ( g Σ S P ) is accepted by B . An automata-theoretic consequence of Theorem 29 is that any aperiodic trace language(that is, a trace language recognized by an aperiodic monoid) over an acyclic architecture isaccepted by a local cascade product of localized two-state reset automata. In this section,we generalize this result to any distributed alphabet, but using global cascade product of thesame distributed resets. We call these automata U [ ‘ ] as well; that is, in this section, U [ ‘ ]refers to an asynchronous automata whose transition atm (recall discussion of Lemma 10)is a sub-atm of U [ ‘ ] from Example 6. So U [ ‘ ] = ( { S i } , { δ a } , s in ) where S ‘ = { , } and S i is a singleton set for i = ‘ . A global state of U [ ‘ ] is identified with its ‘ -component.Furthermore Σ ‘ has two disjoint subsets R , R that reset the state of the automata to 1and 2 respectively. All remaining letters do not change states.Our proof uses a process-based past local temporal logic (over traces) called LocTL [ Y i , S i ]that exactly defines aperiodic trace languages. This expressive completeness property of LocTL [ Y i , S i ] is an easy consequence of a non-trivial result from [3], where the future version of . Adsul, P. Gastin, S. Sarkar and P. Weil 23 a similar local temporal logic is shown to coincide with first-order logic definable, equivalently,aperiodic trace languages. The syntax of LocTL [ Y i , S i ] is as follows.Event formula α = a | ¬ α | α ∨ α | Y i α | α S i α a ∈ Σ , i ∈ P Trace formula β = ∃ i α | ¬ β | β ∨ β The semantics of the logic is given below. Each event formula is evaluated at an event of atrace. Let t = ( E, ≤ , λ ) ∈ T R ( e Σ) be a trace with e ∈ E . For any event x in t and i ∈ P , wedenote by x i the unique maximal event of ( ↓ x \ { x } ) ∩ E i , if it exists. t, e | = a if λ ( e ) = at, e | = ¬ α if t, e = αt, e | = α ∨ β if t, e | = α or t, e | = βt, e | = Y i α if e i exists, and t, e i | = αt, e | = α S i α if e ∈ E i and ∃ f ∈ E i such that f < e and t, f | = α and ∀ g ∈ E i f < g < e ⇒ t, g | = α Note that the since operator is a strict version.
LocTL [ Y i , S i ] trace formulas are evaluatedfor traces, with the following semantics. t | = ∃ i α if there exists a maximal i -event e in t such that t, e | = α The semantics of the boolean combinations of trace formulas are obvious. Any
LocTL [ Y i , S i ]trace formula β over e Σ defines the trace language L β = { t ∈ T R ( e Σ) | t | = β } . The followinglemma shows that LocTL [ Y i , S i ] is expressively complete. (cid:73) Lemma 39.
A trace language is defined by a
LocTL [ Y i , S i ] formula if and only if it isdefined by an FO formula. Proof.
In paper [3], a process based pure future local temporal logic is shown to be expressivelyequivalent to first order logic over traces. We consider its past dual here with followingsyntax and semantics for the event formulas. α = > | a | ¬ α | α ∨ α | Y i α | α S i α a ∈ Σ , i ∈ P t, e | = α S i α if ∃ f ∈ E i such that f ≤ e and t, f | = α and ∀ g ∈ E i if f < g ≤ e then t, g | = α We only need to show that
LocTL [ Y i , S i ] is expressive enough to define the S i operator.Consider the LocTL [ Y i , S i ] formulas γ = α ∨ ( α ∧ α S i α ) and i = ∨ a ∈ Σ i a . Then α S i α isequivalent to the LocTL [ Y i , S i ] formula ( i ∧ γ ) ∨ ( ¬ i ∧ Y i γ ). (cid:74)(cid:73) Theorem 40.
A trace language is defined by a
LocTL [ Y i , S i ] formula if and only if it isaccepted by a global cascade product of U [ ‘ ] . In conjunction with Lemma 39, Theorem 40 gives a new characterization of first order definabletrace languages. Before giving its proof, we provide a local temporal logic characterization forlocal cascade product of U [ ‘ ]. The corresponding local temporal logic LocTL [ S i ] is simply thefragment of LocTL [ Y i , S i ] where Y i is disallowed. The semantics is inherited. It is unknownwhether the logic LocTL [ S i ] is as expressive as LocTL [ Y i , S i ]. (cid:73) Theorem 41.
A trace language is defined by a
LocTL [ S i ] formula if and only if it isrecognized by local cascade product of U [ ‘ ] . Proof. ( ⇐ ) Consider a local cascade product A = U [ j ] ◦ ‘ B . By the wreath product principleof Theorem 19, and the relation between local cascade of automata and asynchronousmorphism into local wreath product of atm, we know that any language recognized by A isa union of languages of the form L ∩ χ − ( L ) where L ⊆ T R ( e Σ) is recognized by U [ j ],the language L ⊆ T R ( g Σ k S ) is recognized by B , and χ is the local asynchronous transducerassociated to U [ j ] and its initial state, say 1.With global accepting state 2, the language accepted by U [ j ] is defined by the formula ∃ j ( R ∨ ( ¬ R ∧ (( ¬ R ) S j R ))). The language accepted by U [ j ] with global accepting state1 can be defined with a similar formula. The difference is that, 1 being the initial state,we also have to consider the case where process j contains no events or no events from R .Hence we use the formula ( ¬∃ j > ) ∨ ∃ j ( R ∨ ( ¬ R ∧ ¬ ( ¬ R S j R ))).By induction on the number of U [ ‘ ]s in the local cascade product, we know that L is LocTL [ S i ] definable over alphabet g Σ k S . Thus we only need to prove that χ − ( L ) is LocTL [ S i ]definable over e Σ. We prove this by structural induction on
LocTL [ S i ] formulas over g Σ k S . For LocTL [ S i ] event formula α over g Σ k S , we provide ˆ α over e Σ such that for any trace t ∈ T R ( e Σ),and any event e in t , we have t, e | = ˆ α if and only if χ ( t ) , e | = α . The non-trivial case here isthe base case of letter formula α = ( a, s a ). If j / ∈ loc( a ), then ˆ α = a , else if [ s a ] j = 2, thenˆ α = a ∧ ( ¬ R ) S j R . Other cases can be handled similarly.( ⇒ ) For any LocTL [ S i ] event formula α , we create an asynchronous automaton A α such thatfor any trace t and its event e , from the local state [ ρ t ( ↓ e )] i for any i ∈ loc( e ), one can deducewhether t, e | = α . Furthermore the asynchronous automaton A α is a local cascade product of U [ ‘ ]s. The construction is done by structural induction on the LocTL [ S i ] event formulas. Base Case:
When α = a ∈ Σ, let A α = ( { S i } , { δ a } , s in ) where S i = {⊥} for all i / ∈ loc( a ),and S i = {> , ⊥} for all i ∈ loc( a ). For any P -state s , if for all i ∈ P we have s i = ⊥ , thenwe denote s = ⊥ ; similarly for > . Initial state s in = ⊥ . For local transitions, δ b is a reset to > if b = a , and it is a reset to ⊥ otherwise. By construction we ensure that, for all i ∈ loc( a )we have [ ρ t ( ↓ e )] i = > if and only if t, e | = α . It is also easy to see that A α is a local cascadeproduct of U [ j ] for j ∈ loc( a ). Inductive Case:
The non-trivial case is α = β S j γ . By inductive hypothesis, we can assume A β and A γ are available. For simplicity, we assume A = ( { S i } , { δ a } , s in ) simultaneouslyprovides truth value of β and γ at any event. We construct B = ( { Q i } , { δ ( a,s a ) } , q in ) over g Σ k S such that A ◦ ‘ B is the required asynchronous automaton. Let Q i = {> , ⊥} for all i ∈ P . Again, we denote a P -state q as ⊥ if q i = ⊥ for all i ∈ P ; similarly for > . Initial state q in = ⊥ . For any a / ∈ Σ j , δ ( a,s a ) is a reset to ⊥ . Note that if χ is the local asynchronoustransducer associated with A , and in χ ( t ) a j -event e is labelled ( a, s a ), then [ s a ] j tells us thetruth value of β and γ at the previous j -event e j , if it exists. Let us denote this by [ s a ] j ‘ β (resp. [ s a ] j ‘ ¬ β ) if at the previous j -event, β is true (resp. false) according to the j state of . Adsul, P. Gastin, S. Sarkar and P. Weil 25 s a . Then the transition for a ∈ Σ j is given by δ ( a,s a ) = reset to > if [ s a ] j ‘ γδ ( a,s a ) = reset to ⊥ if [ s a ] j ‘ ¬ γ and [ s a ] j ‘ ¬ βδ ( a,s a ) ( q a ) = > if [ s a ] j ‘ ¬ γ and [ s a ] j ‘ β and [ q a ] j = > δ ( a,s a ) ( q a ) = ⊥ if [ s a ] j ‘ ¬ γ and [ s a ] j ‘ β and [ q a ] j = ⊥ The transitions make sense if we recall the identity β S j γ ≡ O j ( γ ∨ ( β ∧ ( β S j γ ))), where O j χ ≡ ⊥ S j χ . Note that in the last two transitions above, δ ( a,s a ) is the identity transformationon the process j state; the other processes of loc( a ) can update their states mimicking process j state update if they have the previous process j state information available. In view of this,it is easy to verify that B is a local cascade product of U [ j ] followed by U [ ‘ ] for ‘ = j . (cid:74) We now give the proof of Theorem 40.
Proof of Theorem 40. ( ⇐ ) Consider a global cascade product A = U [ ‘ ] ◦ g B . By theglobal cascade product principle of Theorem 38, any language recognized by A is a unionof languages of the form L ∩ θ − ( L ) where L ⊆ T R ( e Σ) is recognized by U [ ‘ ], and thelanguage L ⊆ T R ( g Σ S P ) is recognized by B , and θ is the global asynchronous transducerassociated with U [ ‘ ] and its initial state, say 1. We have seen in the proof of Theorem 41that L is LocTL [ S i ] definable over alphabet e Σ.By induction on the number of U [ j ]s in the global cascade product, we know that L is LocTL [ Y i , S i ] definable over alphabet g Σ S P . Thus we only need to prove that θ − ( L )is LocTL [ Y i , S i ] definable over e Σ. We prove this by structural induction on
LocTL [ Y i , S i ]formulas over g Σ S P . For LocTL [ Y i , S i ] event formula α over g Σ S P , we provide ˆ α over e Σ suchthat for any trace t ∈ T R ( e Σ), and any event e in t , we have t, e | = ˆ α if and only if θ ( t ) , e | = α .The non-trivial case here is the base case of letter formula, say α = ( a, α = a ∧ Y ‘ ( R ∨ ( ¬ R ∧ (( ¬ R ) S ‘ R ))). Inductive cases are trivial. For instance d Y i α = Y i ˆ α .Other cases are similar.( ⇒ ) For any LocTL [ Y i , S i ] event formula α , we create an asynchronous automaton A α suchthat for any trace t and its event e , from the local state [ ρ t ( ↓ e )] i for any i ∈ loc( e ), onecan deduce whether t, e | = α . Furthermore A α is a global cascade product of U [ ‘ ]s. Theconstruction is done by structural induction on the LocTL [ Y i , S i ] event formulas. Since the LocTL [ S i ] proof is done, we only need to deal with the inductive case of Y j β . Inductive Case:
Suppose α = Y j β . By inductive hypothesis, we can assume A β is available,and provides truth value of β at any event. We construct B = ( { Q i } , { δ ( a,s a ) } , q in ) over g Σ S P such that A α = A β ◦ g B . Let Q i = {> , ⊥} for all i ∈ P . We denote a P -state q as ⊥ if q i = ⊥ for all i ∈ P ; similarly for > . Initial state q in = ⊥ . Let θ be the global asynchronoustransducer associated with A β . For any trace t ∈ T R ( e Σ), let e be an event in t . If the labelof e in θ ( t ) is ( a, s ), then note that s j tells us the truth value of β at the event e j , if it exists.Let us denote this by s j ‘ β and s j ‘ ¬ β depending on whether β is respectively true andfalse at e j , according to s j . The transition rules are simple δ ( a,s ) = reset to > if s j ‘ βδ ( a,s ) = reset to ⊥ if s j ‘ ¬ β This state update works same for all processes, and it is easy to see that B is, in fact, a localcascade product of U [ ‘ ]s. However, B requires the global state information from A β , and sothere is a global cascade product between A β and B .This completes the proof. (cid:74) Note that if our postulated decomposition (see Question 1) were true, it would imply that
LocTL [ S i ] is expressively complete, which would be a stronger temporal logic characterizationfor aperiodic, or equivalently first-order logic definable trace languages than what is currentlyknown. In particular, by Theorem 29, LocTL [ S i ] is expressively complete over tree architecture.And this holds true for any distributed alphabet where Question 1 admits a positive answer. We have presented an algebraic framework equipped with wreath products and proved awreath product principle which is well suited for the analysis of trace languages. Buildingon this framework, we have postulated a natural decomposition theorem which has beenproved for the case of acyclic architectures. This special case already provides an interestinggeneralization of the Krohn-Rhodes theorem. It simultaneously proves Zielonka’s theoremfor acyclic architectures.The wreath product operation in the new framework, when viewed in terms of automata,manifests itself in the form of a local cascade product of asynchronous automata. Wehave also proposed global cascade products of asynchronous automata and applied them toarrive at a novel decomposition of aperiodic trace languages. This is a non-trivial and trulyconcurrent generalization of the cascade decomposition of aperiodic word languages usingtwo-state reset automata.
References Bharat Adsul and Milind A. Sohoni. Asynchronous automata-theoretic characterizationof aperiodic trace languages. In
FSTTCS 2004: Foundations of Software Technology andTheoretical Computer Science, 24th International Conference, Chennai, India, December 16-18,2004, Proceedings , pages 84–96, 2004. doi:10.1007/978-3-540-30538-5\_8 . Joëlle Cohen, Dominique Perrin, and Jean-Eric Pin. On the expressive power of temporallogic.
Journal of Computer and System Sciences , 46(3):271–294, 1993. Volker Diekert and Paul Gastin. Pure future local temporal logics are expressively complete formazurkiewicz traces.
Inf. Comput. , 204(11):1597–1619, 2006. doi:10.1016/j.ic.2006.07.002 . Volker Diekert, Manfred Kufleitner, and Benjamin Steinberg. The Krohn-Rhodes theoremand local divisors.
Fundam. Inform. , 116(1-4):65–77, 2012. doi:10.3233/FI-2012-669 . Volker Diekert and Grzegorz Rozenberg.
The Book of Traces . World Scientific Publishing Co.,Inc., USA, 1995. Samuel Eilenberg.
Automata, Languages and Machines , volume B. Academic Press, 1976. Giovanna Guaiana, Raphaël Meyer, Antoine Petit, and Pascal Weil. An extension of the wreathproduct principle for finite Mazurkiewicz traces.
Information Processing Letters , 67(6):277 –282, 1998. doi:10.1016/S0020-0190(98)00123-9 . Hans Kamp.
Tense Logic and the Theory of Linear Order . PhD thesis, UCLA, 1968. Siddharth Krishna and Anca Muscholl. A quadratic construction for Zielonka automata withacyclic communication structure.
Theor. Comput. Sci. , 503(C):109–114, September 2013. Kenneth Krohn and John Rhodes. Algebraic theory of machines I. prime decompositiontheorem for finite semigroups and machines.
Transactions of The American MathematicalSociety , 116, 04 1965. doi:10.2307/1994127 . . Adsul, P. Gastin, S. Sarkar and P. Weil 27 Antoni Mazurkiewicz. Concurrent program schemes and their interpretations.
DAIMI ReportSeries , 6(78), Jul. 1977. doi:10.7146/dpb.v6i78.7691 . Robert McNaughton and Seymour A. Papert.
Counter-Free Automata . M.I.T. ResearchMonograph Nr 65. The MIT Press, 1971. Albert R. Meyer. A note on star-free events.
J. ACM , 16(2):220–225, April 1969. doi:10.1145/321510.321513 . Madhavan Mukund. Automata on distributed alphabets. In Deepak D’Souza and Priti Shankar,editors,
Modern applications of automata theory , pages 257–288. World Scientific, 2012. Madhavan Mukund and Milind A. Sohoni. Keeping track of the latest gossip in a distributedsystem.
Distributed Computing , 10(3):137–148, 1997. doi:10.1007/s004460050031 . Dominique Perrin and Jean-Eric Pin.
Infinite words - automata, semigroups, logic and games ,volume 141 of
Pure and applied mathematics series . Elsevier Morgan Kaufmann, 2004. Jean-Éric Pin. Mathematical foundations of automata theory. , 2019. M.P. Schützenberger. On finite monoids having only trivial subgroups.
Information andControl , 8(2):190 – 194, 1965. doi:10.1016/S0019-9958(65)90108-7 . Howard Straubing.
Finite automata, formal logic, and circuit complexity . Birkhaüser Verlag,Basel, Switzerland, 1994. Wieslaw Zielonka. Notes on finite asynchronous automata.