This paper establishes completeness theorems for pomset languages using bi-Kleene algebra operations, connecting their equational theory to regular and commutative-regular languages, and explores properties of rational pomset languages and ideals.
Contribution
It proves that all valid equations over pomset languages are derivable from known algebraic theories and characterizes the structure of rational pomset languages and their ideals.
Findings
01
Valid universal equalities follow from regular and commutative-regular language theories.
02
Rational pomset languages are closed under Boolean operations.
03
Equivalence of ideal languages is provable from Kleene and exchange axioms.
Abstract
Pomsets constitute one of the most basic models of concurrency. A pomset is a generalisation of a word over an alphabet in that letters may be partially ordered. A term t using the bi-Kleene operations 0,1,+,β ,β,β₯,(β) defines a language [[t]] of pomsets in a natural way. We prove that every valid universal equality over pomset languages using these operations is a consequence of the equational theory of regular languages (in which parallel multiplication and iteration are undefined) plus that of the commutative-regular languages (in which sequential multiplication and iteration are undefined). We also show that the class of rational pomset languages (that is, those languages generated from singleton pomsets using the bi-Kleene operations) is closed under all Boolean operations. An ideal of a pomsetβ¦
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Full text
Completeness Theorems for Pomset Languages and Concurrent Kleene Algebras
Michael R Laurence
Georg Struth
Department of Computer Science, University of Sheffield
Abstract
Pomsets constitute one of the most basic models of concurrency. A pomset is a generalisation of a word over an alphabet in that letters may be partially ordered rather than totally ordered. A term t using the bi-Kleene operations 0,1,+,β ,β,β₯,(β)
defines a set [[t]] of pomsets in a natural way.
We prove that every valid universal equality over pomset languages using these operations is a consequence of the equational theory of regular languages (in which parallel multiplication and iteration are undefined) plus that of the commutative-regular languages (in which sequential multiplication and iteration are undefined). We also show that the class of rational pomset languages (that is, those languages generated from singleton pomsets using the bi-Kleene operations) is closed under all Boolean operations.
Pomsets may be regarded as a generalisation of both words over an alphabet and commutative words over an alphabet as studied by Conway [1, Chapter 11]. Words of the former kind are generated using sequential multiplication (β ), whereas commutative words
are generated using parallel multiplication (β₯). Both operations are defined on the set of pomsets. Pomsets have been widely used to model the behaviour of concurrent systems [2, 3, 4, 5, 6].
A pomset over an alphabet Ξ£ is defined by a finite labelled partially ordered set; that is, a finite partially ordered set (or poset) V on which a labelling function into Ξ£ is defined. Since the focus is on the labelling rather than the elements of V, isomorphic labelled posets are regarded as defining the same pomset. For pomsets p1β,p2β defined by posets V1β,V2β, the sequential and parallel products p1ββ p2β and p1ββ₯p2β are defined, respectively, by placing the elements of V1β below those of V2β, and placing the elements of V1β and V2β side by side.
Given any monoid (M,β ,1), the operation β can be extended pointwise to the power set 2M of M, and if the regular operations 0,1,+,β ,β are defined in the usual way for 2M (in particular, Pβ=βͺiβ₯0βPi), then the algebra thus defined is an example of a Kleene algebra (Definition 1).
Since the set of pomsets over an alphabet Ξ£ is a monoid with respect to the operations β ,1 and a commutative monoid with respect to β₯,1,
the class of languages (sets) of pomsets over Ξ£
is thus a bi-Kleene algebra with respect to the bi-Kleene operations 0,1,+,β ,ββ₯,(β), where parallel iteration (β) is defined analogously to β, but using parallel multiplication.
A pomset language is rational if is defined by a bi-Kleene term over an alphabet Ξ£.
This is a simplification of the phrase series-parallel-rational used by Lodaya and Weil [7, 8]. If t is a bi-Kleene term, then we use [[t]] to denote the language that it defines.
In this paper we prove the following theorems, for bi-Kleene terms t,tβ² over an alphabet Ξ£;
β’
The language [[t]]β[[tβ²]] is rational.
β’
It is decidable whether [[t]]=[[tβ²]] holds.
β’
If [[t]]=[[tβ²]] holds, then t=tβ² holds in every bi-Kleene algebra. Equivalently, the algebra of pomset languages generated by the bi-Kleene operations from the singleton pomsets with label in Ξ£ is the free bi-Kleene algebra with basis Ξ£.
This latter theorem is, in effect, a strengthening of GischerΒ [9, Theorem 4.3], in which neither of the two Kleene stars β,(β) was considered.
Bi-Kleene algebras have been proposed as tools for the verification of concurrent programs [10]. Our completeness and decidability results can make reasoning about such programs simpler and less problematic.
1.1 New theorems for pomset ideals and bw-rational operations
Given a pomset p, an ideal of p is a pomset that may be represented using the same vertex set as p, with the same labelling, but whose partial ordering is at least as strict as that for p. We write Id(L) for a pomset language L to denote the set of ideals of elements of L. The function Id was first defined by Grabowski [11], who associated pomset ideals (that is, pomset languages closed under Id) with a reachability condition between markings of a Petri net.
The class of pomset ideals over Ξ£ is a Kleene algebra with respect to the Kleene operations, but is not a Kleene algebra with respect to the commutative Kleene operations 0,1,+,β₯,(β), since Lβ₯Lβ² is not an ideal if L,Lβ²β{1}, but it can be made into a bi-Kleene algebra if β₯ is interpreted as (L,Lβ²)β¦Id(Lβ₯Lβ²) and parallel iteration (β) is defined analogously.
Additionally, the class of pomset ideals satisfies the exchange law:
[TABLE]
where we use the abbreviation
[TABLE]
We have failed to prove an analogous result for ideals to the freeness theorem given for pomset languages above, but by abandoning the parallel iteration operation (β) we have the following partial results.
We will refer to 0,1,+,β ,ββ₯ as bw-rational operations (βbwβ meaning bounded width) and we call algebras over the bw-rational operations
that satisfy both the Kleene axioms for 0,1,+,β ,β and the idempotent commutative semiring axioms for 0,1,+,β₯ bw-rational algebras
and refer to a term in the bw-rational operations as a bw-rational term.
We say that a pomset is series-parallel if it is generated from the set of singleton pomsets using only sequential and parallel multiplication, and use Pomspβ to denote the set of series-parallel pomsets.
With these definitions, we prove for bw-rational terms t,tβ² over an alphabet Ξ£ that
This freeness result is, in effect, a generalisation of Gischer [9, Theorem 5.9], which gave the analogous result for idempotent bi-semirings, in which the Kleene star β was not considered.
1.2 Organisation of the paper
In Section 2, we give most of the basic definitions and results that will be used throughout the paper. In Section 3, we prove our first main theorem for rational pomset languages; in particular, we show that if L,Lβ² are rational languages, then so is LβLβ². We also show that a bi-Kleene term defining LβLβ² can be computed from terms defining L and Lβ². In Section 4, we prove our second main theorem; that if two bi-Kleene terms define the same rational language, then they define the same element of every bi-Kleene algebra.
In Section 8, we give further definitions for pomset ideals. We also prove that
the set of pomset ideals defines a bi-Kleene algebra, provided that the operations β₯,(β)
are suitably modified. Section 5.1 gives a summary of the method of proof of our remaining theorems, which occupies Sections 6β8.
In Section 9 we give our conclusions.
2 Kleene algebra and pomset definitions
Definition 1** (bi-Kleene algebras and bw-rational algebras)**
A monoid, as usual, is an algebra with an associative binary operation β and identity 1.
A bimonoid is an algebra with operations β ,β₯,1 that is a monoid with respect to β ,1 and a commutative monoid with respect to β₯,1.
A Kleene algebra is an algebra K with constants 0,1, a binary addition operation +, a multiplication operation β (usually omitted) and a unary iteration operation β, such that the following hold; (K,1,β ) is a monoid, (K,0,+) is a commutative monoid and also, for all x,y,zβK,
[TABLE]
where (2) is assumed.
The identities (5) are normally called the induction axioms. The identities in (3) together with the preceding conditions amount to stating that K is an idempotent semiring, or dioid. We say that K is a commutative Kleene algebra if β is commutative.
A bi-Kleene algebra is an algebra with operations 0,1,+,β ,β,β₯,(β) that is a Kleene algebra with respect to 0,1,+,β ,β and a commutative Kleene algebra with respect to 0,1,+,β₯,(β), with β₯ and (β) playing the role of β and β respectively in the Kleene axioms given above. For the purposes of this paper, we need to define bw-rational algebras, which have operations 0,1,+,β ,β,β₯, and satisfy only the conditions on the definition of a bi-Kleene algebra given above that do not mention (β); thus, a bw-rational algebra is a Kleene algebra with respect to 0,1,+,β ,β and is
a commutative idempotent semiring with respect to the operations 0,1,+,β₯; that is, it
satisfies (3) with β replaced by β₯ and is a commutative monoid with respect to 1,β₯.
Given a set Ξ£, we use TRegβ(Ξ£), TComRegβ(Ξ£), Tbimonoidβ(Ξ£), TbiβKAβ(Ξ£), and TbwβRatβ(Ξ£) to denote the sets of terms generated from Ξ£ using, respectively, the regular operations 0,1,+,β ,β, the commutative-regular operations 0,1,+,β₯,(β), the bimonoid operations 1,β ,β₯, the bi-Kleene operations
0,1,+,β ,β,β₯,(β) and the bw-rational operations 0,1,+,β ,β,β₯.
An important class of naturally arising Kleene algebras is given by Proposition 2.
Proposition 2** (Kleene algebras defined on power sets of monoids)**
Let
(M,1,β ) be a monoid. Then (2M,0,1,+,β ,β), with [math] defining β , 1 defining {1}, + defining union, β given by pointwise multiplication and Sβ=defnβͺiβ₯0βSi, is a Kleene algebra.
*Proof. *
Straightforward. β
Definition 3** (commutative words)**
A commutative word over an alphabet Ξ£ is a multiset over Ξ£; that is, a function from Ξ£ into the set of non-negative integers. A commuting word may be represented by a word Ο1ββ₯β―β₯Οmβ with each ΟiββΞ£, with two such words representing the same commutative word if and only if for each ΟβΞ£, they contain the same number of occurrences of Ο. Thus the set of commutative words forms a commutative monoid with β₯ as multiplication and the empty word 1 as identity.
It follows from Proposition 2 that the set of languages of strings over an alphabet Ξ£ is a Kleene algebra, and the set of languages of commutative words over Ξ£ is a commutative Kleene algebra with respect to the commutative-regular operations 0,1,+,β₯,(β), when these are interpreted as given in the Proposition; in particular, S(β)=βͺiβ₯0βS(i), where we define
[TABLE]
Definition 4** (pomsets and the supp function)**
A labelled partial order is a 3-tuple (V,β€,ΞΌ), where V is a set of vertices, β€ is a partial ordering on the set V and ΞΌ:VβΞ£ for an alphabet Ξ£ is a labelling function.
Two labelled partial orders (V,β€,ΞΌ) and (Vβ²,β€β²,ΞΌβ²) are isomorphic if there is a bijection Ο:VβVβ² that preserves ordering and labelling; that is, for v,wβV, vβ€wβΊΟ(v)β€β²Ο(w) and ΞΌ(v)=ΞΌβ²(Ο(v)) holds.
A pomset is an isomorphism class of finite labelled partial orders, and a set of pomsets is usually called a language. We write Pom(Ξ£) to denote the set of all pomsets with labels in an alphabet Ξ£.
If p is a pomset, then supp(p) is the set of labels occurring in p, and if L is a pomset language, then we define supp(L)=βͺpβLβsupp(p).
Observe that a pomset whose ordering β€ is total is simply a word, in the usual sense, over its labelling alphabet Ξ£. Thus the word Ο of length one for ΟβΞ£ is
the pomset with a single vertex having label Ο. On the other hand, a pomset over Ξ£ whose order relation is empty is, in effect, a commutative word Ο1ββ₯β¦β₯Οmβ with each ΟiββΞ£.
Definition 5** (sequential and parallel multiplication of pomsets)**
For pomsets p1β,p2β represented by the 3-tuples (V1β,β€1β,ΞΌ1β) and (V2β,β€2β,ΞΌ2β) respectively, their sequential product p1ββ p2β and parallel product p1ββ₯p2β are given as follows; these definitions can easily be shown to be well-defined; that is, independent of the choice of representative 3-tuple of each pomset piβ.
β’
p1ββ p2β (usually written simply p1βp2β) is represented by the 3-tuple (V1ββͺV2β,βͺ,ΞΌ), where the function ΞΌ agrees with each function ΞΌiβ on the set Viβ and vβͺw holds if and only if either both vertices v,w lie in one set Viβ for iβ{1,2} and vβ€iβw holds, or vβV1β and wβV2β.
β’
the pomset p1ββ₯p2β is represented by the 3-tuple (V1ββͺV2β,βΊ,Ξ·), where the function Ξ· agrees with each function ΞΌiβ on the set Viβ and vβΊw holds if and only if both vertices v,w lie in one set Viβ for iβ{1,2}.
2.1 The bi-Kleene algebra of pomset languages
It follows from Proposition 2 that the set of pomset languages over Ξ£ is a bi-Kleene algebra when equipped with the constant operations 0,1, the operations +,β ,β₯ of arity two and the operations β and
(β) of arity one, with interpretations as given in the Proposition; in particular,
1 denotes the singleton containing the empty pomset, also denoted by 1, whose vertex set is empty,
the sequential and parallel products of pomset languages are defined from those of pomsets by pointwise extension, and
for a pomset language P, we define Pβ=βiβ₯0βPi and P(β)=βiβ₯0βP(i), where P(i) is defined as indicated in (6).
2.2 Series-parallel pomsets and rational pomset languages
For an alphabet Ξ£ and ΟβΞ£, we use Ο to refer to the pomset having only one vertex with label Ο, and for any tβTbiβKAβ(Ξ£), we write [[t]] to denote
the pomset language defined by t, with operations interpreted as above. Thus if
tβTRegβ(Ξ£) then [[t]] is regular; by analogy, if tβTComRegβ(Ξ£) then we say that [[t]] is commutative-regular.
If a pomset p satisfies {p}=[[t]] for tβTbimonoidβ(Ξ£), then we say that p is a series-parallel pomset. We write Pomspβ and Pomspβ(Ξ£) to denote, respectively, the set of all series-parallel pomsets and the set of all series-parallel pomsets with labels in Ξ£. Fig. 1 gives an example of a pomset that does not lie in Pomspβ.
We say that a pomset language L is rational if L=[[t]] for tβTbiβKAβ(Ξ£); if tβTbwβRatβ(Ξ£), we say that L is bw-rational.
The following freeness results for the algebras of regular and commutative-regular languages have been proved.
Theorem 6
Let Ξ£ be an alphabet. If t,tβ²βTRegβ(Ξ£) and [[t]]=[[tβ²]] holds, then t=tβ² holds in every Kleene algebra. If instead, t,tβ²βTComRegβ(Ξ£) and [[t]]=[[tβ²]] holds, then t=tβ² holds in every commutative Kleene algebra.
*Proof. *
The assertion for regular languages was proved by Kozen [12]. For commutative-regular languages, the result is implicit in the work of Conway [1, chap.11]. β
Definition 7** (parallel and sequential pomset languages)**
A pomset p is
[TABLE]
for pomsets q1β,q2β with each qiβξ =1 in each case. A pomset language L is sequential if every element of L is sequential and non-sequential if none of its elements are sequential; we define a language to be parallel analogously. We define Seq and Para to be the language of all sequential and parallel pomsets respectively. Further, for any iβ₯1 we define the language Paraiβ={q1ββ₯β―β₯qiββ£eachΒ qiβξ =1Β andΒ notΒ parallel}.
Thus
[TABLE]
holds.
2.3 The bi-Kleene algebra of rational pomset languages is free with respect to bi-Kleene algebras defined by power sets of bimonoids
Lemma 8 shows that a pomset cannot be both sequential and parallel, and hence a sequential pomset language and a parallel pomset language do not intersect.
Lemma 8
Let p1β,p2β,q1β,q2β be pomsets and suppose that each piβξ =1,qjβξ =1. Then p1ββ₯p2βξ =q1βq2β holds.
Let p1ββ₯β―β―β₯pmβ=q1ββ₯β―β―β₯qnβ be a pomset and assume that no pomset piβ or qjβ is parallel. Then m=n and there is a permutation ΞΈ on {1,β¦,m} such that each piβ=qΞΈ(i)β.
2. (2)
Let p1ββ¦β¦pmβ=q1ββ¦β¦qnβ be a pomset and assume that no pomset piβ or qjβ is sequential. Then m=n and each piβ=qiβ.
*Proof. *
(2) is proved in GischerΒ [9, Lemma 3.2]. (1) is proved as follows. Let (V,β€) be a poset defining p1ββ₯β¦β¦β₯pmβ. We may assume that Vξ =β since otherwise the conclusion is obvious.
We may define the partition V=V1βββ¦βVmβ, where each pomset piβ is defined by Viβξ =β and the restriction of β€ to Viβ.
Similarly, V=W1βββ¦βWnβ, where each pomset qiβ is defined by Wiβξ =β and the restriction of β€ to Wiβ.
Define the collection
Corollary 10 states that the pomset language defined by Tbimonoidβ(Ξ£) is the free bimonoid over Ξ£.
Corollary 10
Let Ξ£ be an alphabet, let M be a bimonoid and let ΞΊ:Tbimonoidβ(Ξ£)βM be a homomorphism of the bimonoid operations. Let t,tβ²βTbimonoidβ(Ξ£) with [[t]]=[[tβ²]]. Then ΞΊ(t)=ΞΊ(tβ²) holds.
*Proof. *
Using Theorem 8 and Lemma 9 it follows by induction on the structure of t that t=tβ² holds in any bimonoid, and hence in M. β
Our main result of the subsection follows.
Lemma 11
Let Ξ£ be an alphabet, let M be a bimonoid and let ΞΊ:TbiβKAβ(Ξ£)β2M be a homomorphism of the bi-Kleene operations. Suppose we extend ΞΊ to Pomspβ(Ξ£) by defining ΞΊ(p)=ΞΊ(t) for any tβTbimonoidβ(Ξ£) with [[t]]={p} (well-defined by Corollary 10).
Let tβTbiβKAβ(Ξ£). Then
[TABLE]
holds. In particular, [[t]]=[[tβ²]]βΞΊ(t)=ΞΊ(tβ²) holds, and hence ΞΊ defines a bi-Kleene homomorphism from \big{\{}\mathopen{[\![}t\mathclose{]\!]}\big{|}\,t\in T_{bi-KA}(\Sigma)\big{\}} into 2M.
*Proof. *
The displayed equation follows by induction on the structure of t. If tβΞ£βͺ{0,1} then the equality is obvious, and the case where t=t1β+t2β is straightforward. We now consider the remaining cases.
β’
Suppose that t=t1βt2β. Then
[TABLE]
follows, using the inductive hypothesis for each tiβ at the fourth equality.
β’
Suppose that t=sβ. Then
[TABLE]
using the inductive hypothesis at the second equality.
The cases where t=t1ββ₯t2β or t=s(β) are similar to those above, hence the conclusion holds. β
Lemma 11 has analogues for TRegβ(Ξ£) and monoids, and TComRegβ(Ξ£) and commutative monoids, and these have similar proofs.
2.4 Depth of a series-parallel pomset
In order to prove our main theorems, we need to find a quasi-partial order on bi-Kleene terms in such a way that a parallel term is preceded by its sequential subterms and ground subterms (and the analogous statement with sequential and parallel interchanged also holds) and this ordering
is determined by the language that a term defines. Therefore, we first define the depth of a pomset, and then
extend this definition to bi-Kleene terms.
Definition 12** (depth of a series-parallel pomset)**
Let pβPomspβ. Then we define depth(p)βN recursively as follows.
β’
If p is a singleton pomset or p=1, then depth(p)=0.
β’
If p=p1ββ₯β¦β¦β₯pmβ for mβ₯2 and each piβ is a singleton pomset or is sequential, then
[TABLE]
β’
If p=q1ββ¦β¦qnβ for nβ₯2 and each qiβ is a singleton pomset or is sequential, then
[TABLE]
Owing to Lemma 9 and Lemma 8, this is a valid definition.
Definition 13** (width of a pomset)**
The width of a pomset p, width(p), is the maximal cardinality of any set of wholly unordered vertices in a representation of p. If L is a pomset language then width(L) is the maximum width of any pomset in L, if this is defined, in which case we say that L has bounded width; otherwise we define width(L)=β. We also define width(t)=width([[t]]) for a bi-Kleene term t.
Observe that if tβTbiβKAβ(Ξ£) and [[t]] has bounded width, then [[t]]=[[tβ²]] for some tβ²βTbwβRatβ(Ξ£), since any subterm s(β) of t can be replaced by
the term βi=0width(t)βs(i), thus eliminating occurences of (β) from t. Conversely, every term in TbwβRatβ(Ξ£) defines a language of bounded width. This justifies our bw-rational terminology.
2.5 Standardising terms using the bi-Kleene axioms
In this subsection we will show that the parallel and sequential subsets of a rational language are rational, and definable by terms that can be computed. There is a difficulty, however, with the usual Kleene operations in that the way to partition a rational language into its parallel, sequential and other pomsets is not clearly indicated by the highest-level operation that defines it; for example, a language [[tβ]] may contain both parallel and sequential pomsets. Therefore we consider new unary operations
!, (!) that will not be used outside this subsection. They are defined by
[TABLE]
Definition 14 gives the relations between terms with which our main theorems will be expressed.
Definition 14** (The =biβKAβ and =bwβRatβrelations)**
Let
Ξ£ be an alphabet and let t,tβ²βTbiβKAβ(Ξ£). We say that t=biβKAβtβ² if t=tβ² holds in every bi-Kleene algebra. If t,tβ²βTbwβRatβ(Ξ£), then we say
t=bwβRatβtβ² if t=tβ² holds in every bw-rational algebra.
We also define the partial orderings β€biβKAβ and β€bwβRatβ by analogy with
(2).
Proposition 15 shows the use of defining the new operations given in (7).
Proposition 15
Let Ξ£ be an alphabet and let t be a term over Ξ£ with operations in {+,β ,!,β₯,(!)}. We extend the definition of the language [[t]] by interpreting !,(!) as given in (7). Then 1β/[[t]]; also, if the term
t=uv or t=u!, then [[t]] is a sequential language, and an analogous assertion holds for the operations β₯,(!).
*Proof. *
The proof that 1β/[[t]] follows by induction on the structure of t; in particular, it follows from (7) that 1β/[[r]]β1β/[[r!]], and analogously for r(!), if r has operations in {+,β ,β₯,!,(!)}. The remaining assertions follow by applying this result to u and v. β
Proposition 16
Let Ξ£ be an alphabet and let tβTbiβKAβ(Ξ£). Suppose the relation =biβKAβ is extended to terms containing the unary operations !,(!) by assuming the substitutions indicated by (7). Then there is a term tβ² with operations in {0,1,+,β ,β₯,!,(!)} satisfying t=biβKAβtβ² such that either tβ²=0 or [math] does not occur in tβ² and 1 does not occur in the argument of any operation except possibly + in tβ².
*Proof. *
By using the Kleene-valid substitutions
[TABLE]
and their parallel analogues, we may assume that either t=0 or [math] does not occur in t.
We now eliminate the iteration operations β,(β) from t by replacing them with new unary operations !, (!) respectively using the following identities;
[TABLE]
which follow from (7) plus the Kleene axioms.
If tξ =0, then by using the distributive laws and the substitutions
[TABLE]
which follow from the Kleene axioms plus (7), and their parallel analogues, we can ensure that 1 does not occur in the resulting term in the argument of any operation except possibly +, thus proving the result. β
We are now able to show that a rational language can be expressed as a sum of terms representing its sequential, parallel and remaining pomsets.
*Proof. *
By Proposition 16, we may assume that either t=0 or 1 does not occur in t in the argument of any operation except possibly +, and t has operations lying in {1,+,β ,β₯,!,(!)}.
We prove the results (apart from the computability assertions, which follow immediately) for the set of terms t satisfying these conditions by induction on the structure of t, and we can then reinstate the operations β,(β) in tβ²,tβ²β²,tβ²β²β² using (7).
If tβΞ£βͺ{0,1} then the results are immediate.
If t=t1β+t2β then the results follow from the inductive hypothesis applied to each tjβ.
Proposition 18 will be an essential tool for proving assertions on bi-Kleene terms by induction on the depth of their languages.
Proposition 18
*Let Ξ£ be an alphabet and let tβTbiβKAβ(Ξ£). If
t is parallel, then t=biβKAβc(u1β,β¦,umβ) for a commutative-regular term c and terms uiββTbiβKAβ(Ξ£) defining non-empty languages that are either sequential or lie in Ξ£, and satisfy
depth(uiβ)<depth(t), with c and each uiβ being computable from t.*
*Proof. *
By Proposition 16, we may assume that
either t=0, or t contains only the operations 1,+,β ,!,β₯,(!), with 1 not occurring in the argument of any operation in t except possibly +. If t=0 then the conclusion is obvious, so we assume the latter case. Since t is parallel, this implies that 1 does not occur at all in t.
Thus t has the form c(u1β,β¦,umβ) for a term c with operations in {+,β₯,(!)} and terms uiβ that either lie in Ξ£ or have the form uv or u! and are hence sequential by Proposition 15, and define non-empty languages. For each jβ€m, let pjβ be a pomset in [[ujβ]] of maximal depth. We may assume that each uiβ actually occurs in t.
Let iβ€m. Thus for an alphabet {Ο1β,β¦,Οmβ}, the language [[c(Ο1β,β¦,Οmβ)]] contains a parallel word w of width β₯2 in which Οiβ occurs, and so the pomset language
[[t]] contains w(Οjββpjββ£jβ€m), whose depth is greater than that of uiβ, proving the depth assertion.
By reinstating β and (β) in each uiβ and (β) in c using (7), we get the result required.
β
2.6 Regular and commutative-regular languages are closed under boolean operations
Theorem 19 recalls the fact that our first main theorem is known to hold for the subclasses of regular and commutative-regular languages.
Theorem 19
Let Ξ£ be an alphabet and let t1β,t2ββTRegβ(Ξ£), or alternatively t1β,t2ββTComRegβ(Ξ£). Then there exists a term sβTRegβ(Ξ£) or TComRegβ, respectively, such that [[s]]=[[t1β]]β[[t2β]]. Furthermore, s can be computed from t1β and t2β.
*Proof. *
If each term tiβ is regular, then the conclusion is a well-known theorem for regular languages. If each term tiβ is commutative-regular, then it
follows from Conway [1, Chapter 11], the computability result being an implicit consequence of his method of proof. β
Corollary 20
Let Ξ£ be an alphabet and let t1β,t2β be both regular or both commutative-regular terms over Ξ£. Then it is decidable whether [[t1β]]=[[t2β]] holds.
*Proof. *
This follows since
[TABLE]
holds, and it is clearly possible to decide whether an element of TbiβKAβ(Ξ£) defines the empty language. β
Corollary 21
Let Ξ£ be an alphabet and
let T be a finite set of elements of TbiβKAβ(Ξ£) that are either all regular or all commutative-regular. Then there exists a finite set U of terms, pairs of which define disjoint languages, and such that for each tβT, there exists VtββU such that [[t]]=βxβVtββ[[x]] holds. Furthermore, the set U can be computed from T, as can the subset Vtβ from T and t.
thus proving the Corollary, since from Theorem 19, the terms sNβ can clearly be computed from T.
β
3 Closure of rational pomset languages under Boolean operations
In this section we prove our first main theorem.
3.1 The label set LUβ and function Ξ½
For the remainder of this section, and in Section 4, Definition 22 will be assumed.
Definition 22** (associating a label with a term, the function Ξ½)**
For any term u, we assume a label luβ, where distinct terms define distinct labels, and for any set U of terms over an alphabet Ξ£, we define LUβ={luββ£uβU}. We also define the homomorphism
[TABLE]
given by Ξ½(luβ)=u. Further, for any pβPomspβ(LUβ), we define Ξ½(p)=Ξ½(t), where tβTbimonoidβ(LUβ) satisfies [[t]]={p} (well-defined by Corollary 10).
Note: the assertions of Proposition 18, Lemma 23 and Corollary 24, and Lemma 28 in Section 4 have their counterparts with references to sequential and parallel multiplication interchanged, and these have analogous proofs.
Lemma 23
Let Ξ£ be an alphabet and let U be a set of elements of TbiβKAβ(Ξ£) such that every element of U either lies in Ξ£ or is sequential. Assume that distinct terms in U define disjoint languages. Let
p be a parallel product of elements of LUβ
and let sβTComRegβ(LUβ). Then
Corollary 24 extends
Lemma 23 by replacing p by an arbitrary commutative-regular term.
Corollary 24
Let Ξ£ be an alphabet and let U be a set of elements of TbiβKAβ(Ξ£) such that every element of U either lies in Ξ£ or is sequential. Assume that distinct terms in U define disjoint languages.
Let s,sβ²βTComRegβ(LUβ). Then
[TABLE]
holds.
*Proof. *
If [[Ξ½(s)]] and [[Ξ½(sβ²)]] are not disjoint, then from the commutative-regular analogue of Lemma 11, there exists a commutative word w such that wβ[[s]] and [[Ξ½(w)]]β[[Ξ½(s)]] and [[Ξ½(w)]] intersects with [[Ξ½(sβ²)]], and so from Lemma 23, wβ[[sβ²]] also follows.
β
Lemma 25
Let Ξ£ be an alphabet and let T be a finite set of elements of TbiβKAβ(Ξ£). Then there exists a finite set U of elements of TbiβKAβ(Ξ£) defining non-empty pairwise disjoint languages, such that for each tβT, there exists UtββU such that [[t]]=βxβUtββ[[x]] holds. Furthermore, the set U can be computed from T and any subset Utβ can be computed from T and t.
*Proof. *
We will prove the computability assertion separately; first we prove the preceding claims in the Lemma by induction on
depth(βxβTβx). If TβΞ£βͺ{1} then the conclusion is obvious, and so
using Lemma 17, we need only consider the case that each term in T is parallel; the case that each term in T is sequential is analogous.
By Proposition 18, for each tβT there exists a finite set Utβ of terms that all either lie in Ξ£ or are sequential and a commutative-regular term stβ over LUtββ such that [[t]]=[[Ξ½(stβ)]] and for each uβUtβ, depth(u)<depth(t), and hence
[TABLE]
holds.
From applying the inductive hypothesis to βͺtβTβUtβ there is a set V of terms over Ξ£ defining non-empty pairwise disjoint pomset languages, and such that for each uββͺtβTβUtβ, there exists VuββV such that
[TABLE]
holds.
For each tβT, let stβ²β be obtained from stβ by replacing every letter luβ by the sum
βxβVuββlxβ. Thus [[Ξ½(stβ²β)]]=[[Ξ½(stβ)]]=[[t]] holds by Theorem 6. By Corollary 21 applied to the terms stβ²β, there is a set C of commutative-regular terms defining non-empty pairwise disjoint languages and such that for each tβT, there are terms c1β,β¦,β¦,cnββC satisfying [[stβ²β]]=[[c1β+β¦β¦+cnβ]]
and again from Theorem 6,
[TABLE]
holds.
From Corollary 24, the terms in Ξ½(C) also satisfy the required disjointness property and hence satisfy the conclusion of the Lemma for U.
We now consider the computability assertion. We define a recursive algorithm A that on input T computes the sets U and Utβ for each tβT satisfying the conditions required.
We may assume that each term in T defines a non-empty pomset language.
A is defined precisely as indicated by our proof above. We prove by induction on depth(βxβTβx) that A terminates with the correct outputs. We define the partition T=TparaββTseqββTΞ£β, where Tparaβ contains all elements of T that are parallel, Tseqβ contains all elements of T that are sequential, and
TΞ£ββΞ£βͺ{1} contains all remaining elements of T. The term sets Utβ and terms stβ can be computed from each tβTparaβ, by Lemma 18. A obtains the sets V and Vuβ for each uββͺtβTparaββUtβ by calling itself with input βͺtβTparaββUtβ; by the inductive hypothesis and (11), A terminates and returns the correct values.
Thus the terms stβ²β can also be computed, and so the set C and the appropriate set of elements {c1β,β¦,cnβ} for each term t can be computed by Corollary 21. The function Ξ½ is clearly computable and thus A returns the correct term sets for Tparaβ. The correct output for Tseqβ is computed analogously. β
We now give our bi-Kleene term decidability result.
Theorem 27
Let Ξ£ be an alphabet and let
t,tβ²βTbiβKAβ(Ξ£). Then
it is decidable whether [[t]]=[[tβ²]] holds.
*Proof. *
This follows from Theorem 26, similarly to the proof of Corollary 20.
4 Equality between bi-Kleene terms defining pomset languages is a consequence of the bi-Kleene axioms
In this section we use Lemma 25 to prove our second main theorem.
We first show that under stricter hypotheses, the converse implication to that given in Corollary 24 holds.
Lemma 28
Let Ξ£ be an alphabet and let U be a set of elements of TbiβKAβ(Ξ£) such that every element of U either lies in Ξ£ or is sequential and defines a non-empty language.
Assume that pairs of terms in U define disjoint languages. Let s,t be commutative-regular terms over LUβ. Then
Let Ξ£ be an alphabet and let
t,tβ²βTbiβKAβ(Ξ£).
Assume [[t]]=[[tβ²]]; then t=biβKAβtβ² holds.
*Proof. *
We prove the Theorem
by induction on depth(t)=depth(tβ²).
If [[t]]=[[tβ²]]β{1}βͺΞ£, then
t=biβKAβtβ² is obvious. By Lemma 17, we may assume that t,tβ² are both parallel; the case that they are both sequential is analogous.
By Proposition 18, there exists a finite set
U of terms that all either lie in Ξ£ or are sequential and define non-empty languages,
and commutative-regular terms s,sβ² over LUβ such that
[TABLE]
By Lemma 25, there is a finite subset V of TbiβKAβ(Ξ£), pairs of which define disjoint languages, and such that for each uβU there exists VuββV satisfying
[TABLE]
For each uβU, let wuβ be a sum of the labels lxβ for each xβVuβ. Hence by Theorem 6 and (13),
[TABLE]
holds.
Let the terms r,rβ² be obtained from s,sβ² respectively by replacing each occurrence of any luββLUβ by wuβ. Thus Ξ½(r) is obtained from Ξ½(s) by replacing each subterm uβU by Ξ½(wuβ), and similarly for Ξ½(rβ²) and Ξ½(sβ²).
By Proposition 18 and (14), for each uβU
[TABLE]
follows, and so from the inductive hypothesis,
Ξ½(wuβ)=biβKAβu follows from (14). Since =biβKAβ is preserved by congruence,
[TABLE]
holds using (12). Since [[t]]=[[tβ²]] holds, [[Ξ½(r)]]=[[Ξ½(rβ²)]] follows from (15).
From Lemma 28, r=biβKAβrβ² follows from Theorem 6 since the terms r,rβ² are commutative-regular, and so Ξ½(r)=biβKAβΞ½(rβ²) holds since =biβKAβ is preserved by substitution. Hence
t=biβKAβtβ² follows from (15), thus concluding the proof.
β
Theorem 29 has an analogue for bw-rational algebras.
Theorem 30
Let Ξ£ be an alphabet and let
t,tβ²βTbwβRatβ(Ξ£).
Assume [[t]]=[[tβ²]]; then t=bwβRatβtβ² holds.
*Proof. *
This has a similar proof to that of Theorem 29. The proof relies on the fact that the proofs of Theorem 29 and its contributing lemmas and propositions can be adapted for bw-rational algebras by ignoring the cases in their proofs that consider the parallel iteration operation (β). In the case of Theorem 6, the relevant result is that the algebra of commutative-word languages generated by an alphabet Ξ£ and the operations 0,1,+,β₯ is the free idempotent commutative semiring with basis Ξ£, and this is straightforward to prove.
β
5 The bi-Kleene algebra of pomset ideals
We now move on to considering pomset ideals.
We first give a criterion for elements of Pom to lie in Pomspβ.
Definition 31** (N-free pomsets)**
A pomset defined by vertex set V with partial order β€ is N-free if V does not contain a 4-element subset {v1β,β¦,v4β} with v1ββ€v2β and v3ββ€v2β,v3ββ€v4β, and such that β€ when restricted to {v1β,β¦,v4β} does not contain any other pairs.
Theorem 32
A pomset is series-parallel if and only if it is N-free.
In order to to study the sp-ideal of a parallel product pβ₯q of pomsets, we introduce the function β. The use of this operation will be demonstrated by the identity (19).
Definition 34** (the β binary function on pomset languages)**
Let p1β,p2β be pomsets defined with disjoint vertex sets V1β,V2β. Then we
define the set p2ββp2β to be the set of all pomsets qβPomspβ whose vertex set is V1ββͺV2β and such that q retains the vertex labelling and ordering of each piβ within Viβ. We extend the domain of β pointwise to pairs of pomset languages. Clearly β is associative and commutative.
Lemma 35
The following hold for pomset languages L,Lβ²,Ljβ for j in an indexing set S.
[TABLE]
[TABLE]
[TABLE]
Furthermore, if L,Lβ²,LjββPomspβ then the same equalities with Id replaced by Idspβ also hold; in addition,
[TABLE]
*Proof. *
(16) and its Idspβ counterpart follow immediately from the definition of an ideal.
(17) for Id is straightforward.
To prove Idspβ(LLβ²)βIdspβ(L)Idspβ(Lβ²), observe that any element of Id(LLβ²) has the form ppβ² with pβId(L), pβ²βId(Lβ²). If in addition ppβ²βPomspβ, then ppβ² is N-free by Theorem 32, hence p,pβ² are also N-free and again by this Theorem, p,pβ²βPomspβ hold. The other inclusion is obvious, and hence
Idspβ(Li)=(Idspβ(L))i for each iβ₯0 follows by induction on i. Thus
Idspβ(Lβ)=(Idspβ(L))β follows from this and
(16) for Idspβ, thus proving both versions of (17).
(18) follows immediately from the definition of a (sp-)ideal and their closure properties.
We prove (19) as follows. Suppose a pomset rβIdspβ(Lβ₯Lβ²). Thus r is representable by a labelled partial order (VβͺVβ²β€,ΞΌ) for pomsets q,qβ² defined by disjoint vertex sets V,Vβ² that are ideals of pomsets lying in L,Lβ² respectively.
By Theorem 32 applied to r, the pomsets q,qβ² are N-free; hence again by this Theorem, q,qβ²βIdspβ(L), Idspβ(Lβ²) respectively. Thus rβIdspβ(L)βIdspβ(Lβ²). We have shown that Idspβ(Lβ₯Lβ²)βIdspβ(L)βIdspβ(Lβ²), and clearly equality holds.
β
The set of pomset ideals is not a sub-bi-Kleene algebra of the set of pomset languages, since
if the commutative Kleene operations are defined as given by Proposition 2, then the parallel product of two pomset ideals is not usually an ideal; an analogous statement holds for
sp-ideals. However, by taking the ideal closure, or sp-ideal closure, respectively, of the pomset languages defined in the usual way by β₯ and (β), we obtain bi-Kleene algebras of pomset ideals and sp-pomset ideals.
Theorem 36** (bi-Kleene algebras of pomset ideals and sp-ideals)**
Let Ξ£ be an alphabet. Then Id(2Pom(Ξ£)) is a bi-Kleene algebra provided that the Kleene operations 0,1,+,β ,β are interpreted as indicated in Proposition 2 and the commutative Kleene operations β₯,(β) are interpreted as
[TABLE]
respectively.
Furthermore, the set Idspβ(2Pom(Ξ£)) of sp-ideals with labels in Ξ£ is a bi-Kleene algebra provided that the Kleene operations 0,1,+,β ,β are interpreted as indicated in Proposition 2, and the commutative Kleene operations β₯,(β) are interpreted as
[TABLE]
respectively.
Lastly, the function
[TABLE]
defined by
[TABLE]
is an injective bi-Kleene homomorphism.
*Proof. *
We first consider Id(2Pom(Ξ£)). Since this set is closed under the Kleene operations 0,1,+,β ,β, it is a Kleene subalgebra of 2Pom(Ξ£). Thus it remains to prove the validity of the bi-Kleene axioms mentioning β₯ and (β). Associativity of β₯ follows since for Iβ²,Iβ²β²,Iβ²β²β²βId(2Pom(Ξ£)),
[TABLE]
by (18) in Lemma 35. The remaining axioms involving only 0,1,+,β₯ are clear.
The identities in (4) for β₯,(β) follow since for IβId(2Pom(Ξ£)),
[TABLE]
The induction axiom sβ₯tβ€tβs(β)β₯tβ€t follows since for I,JβId(2Pom(Ξ£))
[TABLE]
The corresponding result for Idspβ(2Pom(Ξ£)) is proved analogously.
We now show that the function given by (22) is a bi-Kleene homomorphism. For the Kleene operation + this follows from (16). For β₯, observe that
Id(Idspβ(Iβ₯Iβ²))=Id(Iβ₯Iβ²)=Id(Id(I)β₯Id(Iβ²)) using (18), and the case of (β) then follows from (16).
The cases of β and
β are given by (17).
To show injectivity, observe that there is a partial inverse function
Restricting the homomorphism from Idspβ(2Pom(Ξ£)) to Id(2Pom(Ξ£)) given by (22) to the subalgebra of Idspβ(2Pom(Ξ£)) generated by the set of singleton pomsets \big{\{}\{\sigma\}\big{|}\,\sigma\in\Sigma\big{\}} gives an isomorphism onto the subalgebra of Id(2Pom(Ξ£)) generated by this set.
Theorem 37
Let Ξ£ be an alphabet. Then the bi-Kleene algebras
[TABLE]
with the operations β₯,(β) interpreted as given in (21) and (20) respectively, and the Kleene operations 0,1,+,β ,β interpreted as given in Proposition 2, are isomorphic; an isomorphism is given by
The classes of pomset ideals and sp-ideals,
with the operation β₯ interpreted as in (20) and (21) respectively, satisfy the exchange law (1).
*Proof. *
We consider the class of pomset ideals; the proof for the case of sp-ideals is analogous, with Id replaced by Idspβ.
Let u,v,x,yβId(2Pom) and suppose puββu and similarly for pvβ,pxβ,pyβ.
Then the pomset
(puββ₯pvβ)β (pxββ₯pyβ)βId(pvββ pyββ₯puββ pxβ) holds,
and hence
[TABLE]
follows.
Applying Id to the left side by using (17) gives Id(uβ₯v)β Id(xβ₯y)βId(vβ yβ₯uβ x) and thus (1) holds. β
Definition 39** (The =EXβ relation)**
Let t,tβ²βTbwβRatβ(Ξ£) for an alphabet Ξ£. We say that t=EXβtβ² if t=tβ² holds in every bw-rational algebra in which the exchange law (1) also holds.
We also define the partial ordering β€EXβ by analogy with
(2).
In view of Theorem 30, we will broaden the use of the relations β€EXβ and =EXβ.
Clearly β€bwβRatβββ€EXβ holds, and we exploit this by allowing bw-rational pomset languages to occur in the arguments of β€EXβ and =EXβ; for example, L=EXβtβ² for term tβ² and language L if t=EXβtβ² holds for at least one (and hence every) term tβTbwβRatβ(Ξ£) satisfying L=[[t]].
5.1 Summary of proof of our main theorems on pomset ideals
In order to prove our main theorems, we need the following automata-theoretic results.
Lemma 40
Let Ξ be a finite alphabet and let L be a regular language over Ξ.
Let β be a congruence of finite index of the monoid (Ξβ,1,β ) and assume that L is a union of some of the β-congruence classes. Define
a finite set Ξ and a function ΞΈ:ΞβΞβ/β.
Define the set
[TABLE]
Then V is a regular language over Ξ.
*Proof. *
We define a deterministic finite state automaton B as follows. B has state set Ξβ/β. Its initial state is the β-class containing 1, and its final states are those whose union is L. For each Ξ΄βΞ, B has a binary transition relation Ξ΄ββ on Ξβ/β as follows;
for SβΞβ/β,
we define SΞ΄ββSβ², where SΞΈ(Ξ΄)βSβ².
Since β is a congruence, the class Sβ² exists and is uniquely determined by S and Ξ΄.
Let S0β be the initial state of B, so 1βS0β.
Given Ξ΄1β,β¦,Ξ΄bββΞ for bβ₯0, there are states S1β,β¦,Sbβ of B such that
S0βΞ΄1βββS1βΞ΄2ββββ¦Ξ΄bβββSbβ holds. Thus SbββLβΊS0βΞΈ(Ξ΄1β)β¦ΞΈ(Ξ΄bβ)βLβΊΞΈ(Ξ΄1β)β¦ΞΈ(Ξ΄bβ)βLβΊΞ΄1ββ¦Ξ΄bββV, proving that B accepts V.
β
Lemma 41
Let Ξ be a finite alphabet and let L1β,L2β be regular languages over Ξ.
Let β be a congruence of finite index of the monoid (Ξβ,1,β ) and assume that each Liβ is a union of some of the β-congruence classes. Define
a finite set Ξ and a function ΞΈ:ΞβΞβ/β,
and define the language
7 Expressing the sequential sublanguage of a β-product as a regular function of βsmallerβ non-sequential sublanguages of β-products
Our main result in this section is Corollary 43, which is an essential intermediate result for proving that the β operation preserves bw-rationality,
as indicated in Section 5.1.
Lemma 42
Let Ξ£ be an alphabet and let C1β,β¦,CmββPomspβ(Ξ£) be non-sequential and let {Ξ³1β,β¦,Ξ³mβ} be an alphabet and for i=1,2 let
[TABLE]
Let Ξ be a set and let β be a congruence on the monoid ({Ξ³1β,β¦,Ξ³mβ}β,1,β ) such that each language Liβ is a union of β-classes.
Let Ο be a function from Ξ onto {Ξ³1β,β¦,Ξ³mβ}β/β. Define the language
[TABLE]
over the alphabet ΞΓΞ,
and write
[TABLE]
where for each Ξ΄βΞ, we write Ο(Ξ΄)(C1β,β¦,Cmβ) to denote the language Ο(Ξ΄) with each letter Ξ³iβ replaced by the language Ciβ.
Then
[TABLE]
holds.
*Proof. *
Let p\in\big{(}L_{1}(C_{1},\ldots,C_{m})\odot L_{2}(C_{1},\ldots,C_{m})\big{)}\cap\operatorname{\textbf{{Seq}}}. We will show that pβU~. We have
[TABLE]
for bβ₯2 and each pjββParaβͺΞ£ and there are pomsets
[TABLE]
such that
[TABLE]
Clearly
each
qiβ=ri1ββ¦riaiββ for some aiββ₯0, where each pomset rijβββͺk=1mβCkβ and is hence non-sequential. Hence the vertices in any pomset rijβ all lie in one of the pomsets plβ and since their ordering in each qiβ is preserved in p,
for any j<jβ² the vertices in rijβ and rijβ²β lie in plβ and plβ²β respectively for some lβ€lβ². Hence by gathering together adjacent pomsets rijβ whose vertices lie in the same pomset plβ, we may write
[TABLE]
where each wijβ is a sequence of pomsets all lying in βͺk=1mβCkβ and the vertices in wijβ occur in the pomset pjβ. Thus each
[TABLE]
holds.
Clearly each language
[TABLE]
and so each wi1ββ¦wibβ=qiββviβ(C1β,β¦,Cmβ) for words
viβ=viβ(Ξ³1β,β¦,Ξ³mβ)βLiβ. Since the pomsets in the language βͺk=1mβCkβ are non-sequential, by Part (2) of Lemma 9 there are words
vijβ=vijβ(Ξ³1β,β¦,Ξ³mβ) such that viβ=vi1ββ¦vibβ and
wijββvijβ(C1β,β¦,Cmβ) holds. Hence
[TABLE]
holds.
Since Ο is onto, we may suppose each vijββΟ(Ξ΄ijβ) for Ξ΄ijββΞ. Then each
wijββΟ(Ξ΄ijβ)(C1β,β¦,Cmβ) and so
Conversely, suppose that pβU~ holds.
Then there exist bβ₯2 and elements Ξ΄ijββΞ such that
[TABLE]
and so there exist words vijβ=vijβ(Ξ³1β,β¦,Ξ³mβ)βΟ(Ξ΄ijβ) such that
each
[TABLE]
and hence there exist pomsets
[TABLE]
such that
each p_{j}\in\big{(}w_{1j}\odot w_{2j}\big{)}\cap(\operatorname{\textbf{{Para}}}\cup\Sigma).
Thus
[TABLE]
where for each i=1,2, clearly
vi1ββ¦vibββLiβ(Ξ³1β,β¦,Ξ³mβ) and thus
[TABLE]
holds. Thus p\in\big{(}L_{1}(C_{1},\ldots,C_{m})\odot L_{2}(C_{1},\ldots,C_{m})\big{)}\cap\operatorname{\textbf{{Seq}}} follows, as required.
β
The main result of this section follows.
Corollary 43
Let Ξ£ be an alphabet and let terms c1β,β¦,cmββTbwβRatβ(Ξ£) be non-sequential with each [[cjβ]]=Cjβ and let
[TABLE]
be regular terms over an alphabet
{Ξ³1β,β¦,Ξ³mβ}.
Let Ξ be a finite set and let β be a congruence of finite index on the monoid ({Ξ³1β,β¦,Ξ³mβ}β,1,β ) such that each language [[tiβ]] is a union of β-classes.
Let Ο be a function from Ξ onto {Ξ³1β,β¦,Ξ³mβ}β/β.
Then there is a regular term u over the alphabet ΞΓΞ such that
[TABLE]
holds and for each word (Ξ΄11β,Ξ΄21β)β¦(Ξ΄1bβ,Ξ΄2bβ)β[[u]] and i=1,2,
[TABLE]
Also,
for each (Ο΅1β,Ο΅2β)βsupp(u) and i=1,2,
[TABLE]
holds.
*Proof. *
By Lemma 41, there is a term uβTRegβ(ΞΓΞ) such that
[TABLE]
and so (27) holds by Lemma 42, with [[tiβ]] in the role of the languages Liβ, and (28) holds from the definition of u.
To prove (29), let (Ο΅1β,Ο΅2β)βsupp(u). Thus there is a word
(Ξ΄11β,Ξ΄21β)β¦(Ξ΄1bβ,Ξ΄2bβ)β[[u]] in which (Ο΅1β,Ο΅2β) occurs and so there exists bβ²β€b such that for each
j=1,2, Ο΅jβ=Ξ΄jbβ²β holds and so from (28),
[TABLE]
holds.
Since the elements of Ο(Ξ) are non-empty sublanguages of {Ξ³1β,β¦,Ξ³mβ}β, each pomset language Ο(Ξ΄jkβ)(C1β,β¦,Cmβ) is also non-empty and so
where for each iβ{1,2}, sets
Ti1β,β¦,Tikβ partition the set {1,β¦,miβ}, and such that for each jβ€k, the set T1jββͺT2jβξ =β . If additionally kβ₯2 holds then
Since the ordering of the vertices in β₯bβ€miββqibβ and hence in β₯bβTijββqibβ is preserved in p, and each pjββSeqβͺΞ£, it follows that pjββMjβ, with Mjβ defined as in the statement of the Lemma using the sets Tijβ. The assertion that T1jββͺT2jβξ =β holds follows since pβParakβ and each Mjβξ ={1}.
The width property asserted by the Lemma holds if kβ₯2 since for each jβ€k and iβ{1,2}, Tijββ{1,β¦,miβ} and so
[TABLE]
holds, with strict inequality for at least one iβ{1,2}, since given any j,jβ²β€k with jβ²ξ =j, Tijβ²βξ =β holds for at least one element iβ{1,2}, and so for every bβTijβ²β=Tijβ²ββTijβ, the term Sibβ²β occurs in the middle term but not on the left side of
the above inequality, and Sibβ²ββqibβξ ={1}. Thus we have proved the Lemma.
β
Corollary 45 gives an inductive step in the proof of Theorem 48, our third main theorem.
*Proof. *
Using the distributive law for β₯, we may assume that each Liβ=Si1ββ₯β―β₯Simiββ
for miββ₯1 and
bw-rational pomset languages Sijβ satisfying SijββSeqβͺΞ£.
We first prove that M1ββ₯β―β₯Mkββ€EXβL1ββ₯L2β holds, where the languages Mjβ are as defined using sets Tijβ as in Lemma 44; in particular, βͺj=1kβTijβ={1,β¦,miβ} for each iβ{1,2}. From the conclusion of that Lemma and the extra hypotheses assumed here, each language Mjβ is bw-rational and
8 The main theorems for sp-ideals of rational languages
We now show that β preserves bw-rationality of pomset languages, and defines a language that is =EXβ-equivalent to the parallel product of the languages. We first need an automata-theoretic lemma.
Lemma 46
Let Ξ be a finite alphabet, and let S be a finite set of regular languages over Ξ.
Then there exists a congruence β of finite index of the monoid (Ξβ,1,β )
such that each language LβS is the union of a subcollection of β-equivalence classes.
*Proof. *
Since the conjunction of two congruences of finite index is itself a congruence of finite index, we may assume that S is a singleton, S={L}.
Let A be a deterministic finite state automaton accepting the language L. We assume A has state set Q and a binary transition relation wβββQΓQ for each wβΞβ. For any function ΞΈ:QβQ, let
Lemma 47 will be used with Corollary 43 to transform a βregular over parallelβ term given by u in the statement of this Corollary into a sum of parallel terms in Theorem 48, which shows that β preserves bw-rationality.
Lemma 47
Let {Ξ³1β,β¦,Ξ³mβ} be an alphabet and let terms
d1β,β¦,dkββTRegβ(Ξ³1β,β¦,Ξ³mβ) be such that the languages
[[d1β]],β¦,[[dkβ]] partition {Ξ³1β,β¦,Ξ³mβ}β and for each i,iβ²β€k there is a term djβ satisfying [[diβdiβ²β]]β[[djβ]].
Let Ξ be a set and let Ο:Ξβ{d1β,β¦,dkβ} be a bijection.
Then for any term uβTRegβ(ΞΓΞ), there is a set ΞβΞΓΞ such that
[TABLE]
holds and for each element
(Ο΅1β,Ο΅2β)βΞ, there is a word
(Ξ΄11β,Ξ΄21β)β¦(Ξ΄1bβ,Ξ΄2bβ)β[[u]] such that
[[Ο(Ξ΄i1β)β¦Ο(Ξ΄ibβ)]]β[[Ο(Ο΅iβ)]] for each iβ{1,2}, where if b=0 the product
[[Ο(Ξ΄i1β)β¦Ο(Ξ΄ibβ)]] is defined to be the language {1}.
*Proof. *
This follows by induction on the structure of u. For convenience, since Ο is a bijection we may define 1ΞββΞ to be the element satisfying 1β[[Ο(1Ξβ)]], and for any regular term x over the alphabet ΞΓΞ we define xΛ=x((Ξ΄,Ξ΄β²)βΟ(Ξ΄)β₯Ο(Ξ΄β²)β£Ξ΄,Ξ΄β²βΞ). If u is [math] or an element of ΞΓΞ then Ξ is as follows;
[TABLE]
and the conclusion of the Lemma is immediate. If u=1, we define Ξ={(1Ξβ,1Ξβ)}; for then by Theorem 30, uΛ=1β€bwβRatβΟ(1Ξβ)β₯Ο(1Ξβ) and {1}β[[Ο(1Ξβ)]] hold, as required by the Lemma.
If u is a sum of terms, then the result follows from the inductive hypothesis applied to each of these terms.
There remain two cases, in both of which it is convenient to define multiplication on the set Ξ as follows, using the fact that Ο is a bijection; if Ο(Ξ΄)Ο(Ξ΄β²)βΟ(Ξ΄β²β²), then δδβ²=Ξ΄β²β² holds.
Clearly this definition turns Ξ into a monoid, with 1Ξβ as the identity element. Furthermore, for any Ξ΄1β,β¦,Ξ΄rβ,βΞ,
[TABLE]
follows by induction on r.
Thus the condition [[Ο(Ξ΄i1β)β¦Ο(Ξ΄ibβ)]]β[[Ο(Ο΅iβ)]] in the statement of the Lemma is equivalent to Ξ΄i1ββ¦Ξ΄ibβ=Ο΅iβ, where if b=0 this states that 1Ξβ=Ο΅iβ.
β’
Suppose u=u1βu2β. By the inductive hypothesis, for each iβ{1,2}, there are sets ΞiββΞΓΞ such that
[TABLE]
Define the set
[TABLE]
From the exchange law and the fact that by Theorem 30, Ο(Ξ΄)Ο(Ξ΄β²)β€bwβRatβΟ(δδβ²) always holds,
[TABLE]
holds.
In addition, if Ξ»βΞ₯, say Ξ»=(Ο΅11βΟ΅21β,Ο΅12βΟ΅22β) with each (Ο΅i1β,Ο΅i2β)βΞiβ, by the inductive hypothesis
there is a word
wiβ=(Ξ΄i11β,Ξ΄i21β)β¦(Ξ΄i1biββ,Ξ΄i2biββ)β[[uiβ]] such that
Ξ΄ij1ββ¦Ξ΄ijbiββ=Ο΅ijβ for each i,jβ{1,2}.
Thus the word
w1βw2ββ[[u]], and the product of all the jth components of the letters of w1βw2β is
Ξ΄1j1ββ¦Ξ΄1jb1ββΞ΄2j1ββ¦Ξ΄2jb2ββ=Ο΅1jβΟ΅2jβ, proving the result.
β’
Suppose u=tβ. By the inductive hypothesis, there is a set
ΞβΞΓΞ such that
[TABLE]
Define the set
[TABLE]
(note that (1Ξβ,1Ξβ)βΞ¨).
For each (Ο΅1β,Ο΅2β)βΞ,
[TABLE]
follows from the exchange law and Theorem 30 and the fact that (Ξ΄1β,Ξ΄2β)βΞ¨β(Ο΅1βΞ΄1β,Ο΅2βΞ΄2β)βΞ¨ always holds,
and hence
[TABLE]
using the induction axiom of Kleene algebra.
In addition, if Ξ»βΞ¨, then
[TABLE]
for some bβ₯0, and each (Ξ΄j1β,Ξ΄j2β)βΞ; and by the inductive hypothesis, for each jβ€b and iβ{1,2} there is a word wjββ[[t]] such that the product of all the ith components of the letters of wjβ is Ξ΄jiβ. Clearly the word w=w1ββ¦wbββ[[u]], and the product of all the ith components of the letters of w is Ξ΄1iββ¦Ξ΄biβ, completing the proof. β
Theorem 48** (β preserves bw-rationality)**
Let r1β,r2β be bw-rational terms over an alphabet. Then the language
[[r1β]]β[[r2β]] is bw-rational and satisfies [[r1β]]β[[r2β]]=EXβr1ββ₯r2β.
*Proof. *
Assume that each term riββTbwβRatβ(Ξ£) for an alphabet Ξ£.
We will first prove that
By Lemma 17 and Proposition 18 and its sequential counterpart, and by ignoring the cases in their proofs that refer to parallel iteration (β),
there are
regular terms tiβ=tiβ(Ξ³1β,β¦,Ξ³mβ) over an alphabet
Ξ={Ξ³1β,β¦,Ξ³mβ} satisfying riβ=bwβRatβtiβ(c1β,β¦,cmβ) for non-sequential terms c1β,β¦,cmβ.
By Lemma 46, there exists a congruence β of finite index of the monoid (Ξβ,1,β )
such that each language [[tiβ]] is the union of a subcollection of β-equivalence classes. Define the languages Cjβ=[[cjβ]] for each jβ€m.
Let Ξ be a set such that there is a bijection Ο from Ξ to the set of β-equivalence classes.
Then by Corollary 43, there is a regular term u with supp(u)βΞΓΞ such that
(27) holds,
and for each word (Ξ΄11β,Ξ΄21β)β¦(Ξ΄1bβ,Ξ΄2bβ)β[[u]] and i=1,2, (28) holds.
Let (Ξ΄1β,Ξ΄2β)βsupp(u).
Then by (29),
\operatorname{width}\big{(}\phi(\delta_{i})(C_{1},\ldots,C_{m})\big{)}\leq\operatorname{width}(r_{i}) holds for each i=1,2. Hence by the inductive hypothesis, we can apply
Corollary 45 to the languages
Ο(Ξ΄iβ)(C1β,β¦,Cmβ),
and so for each kβ₯2,
[TABLE]
holds.
In addition, the same statement with Parakβ replaced by Ξ£ is clearly true. Thus
by taking the union of the languages
\phi(\delta_{1})(C_{1},\ldots,C_{m})\odot\phi(\delta_{2})(C_{1},\ldots,C_{m})\big{)}\cap\operatorname{\textbf{{Para}}}_{k}
for each
k\in\{2,\ldots,\operatorname{width}\big{(}\phi(\delta_{1})(C_{1},\ldots,C_{m})\odot\phi(\delta_{2})(C_{1},\ldots,C_{m})\big{)}\} and also the language
holds.
By Lemma 47, there exists a set ΞβΞΓΞ such that
[TABLE]
and
for each (Ο΅1β,Ο΅2β)βΞ, there is a word
(Ξ΄11β,Ξ΄21β)β¦(Ξ΄1bβ,Ξ΄2bβ)β[[u]] such that
[TABLE]
for each iβ{1,2}, where if b=0 the product
Ο(Ξ΄i1β)β¦Ο(Ξ΄ibβ) is defined to be the language {1};
and since each language [[tiβ]] is a union of β-equivalence classes,
Ο(Ο΅iβ)β[[tiβ]] follows from (28) and so by Theorem 30,
[TABLE]
and so (32) follows from (33) and (34) with the languages Cjβ substituted for Ξ³jβ.
Hence we have proved (31). Since [[r1β]]β[[r2β]]β[[r1ββ₯r2β]] clearly holds, by Theorem 30 we can replace β€EXβ by =EXβ in (31).
β
Our main theorems concerning pomset ideals follow.
Theorem 49** (Idspβ preserves bw-rationality of pomset languages)**
*Let t be a bw-rational pomset term. Then Idspβ([[t]]) is bw-rational and
Idspβ([[t]])β€EXβt holds.*
*Proof. *
The result follows by induction on the structure of t. If tβ{0,1} or t is a letter, then the result is immediate. If t=u+v then the result follows since Idspβ([[t]])=Idspβ([[u]])+Idspβ([[v]]).
If t=uβ then the result follows since Idspβ([[t]])=(Idspβ([[u]]))β. If t=uv then the result follows since Idspβ([[t]])=Idspβ([[u]])Idspβ([[v]]). Lastly if t=r1ββ₯r2β then the result follows from Theorem 48 since Idspβ([[t]])=Idspβ([[r1β]])βIdspβ([[r2β]]) by (19) in Lemma 35.
β
Theorem 50** (free bw-rational algebras with exchange law given as ideals)**
Let Ξ£ be an alphabet and let a,bβTbwβRatβ. Suppose that Idspβ([[a]])=Idspβ([[b]]) holds. Then a=EXβb holds. Thus the isomorphic bw-rational algebras
[TABLE]
with β₯ interpreted as in (21) and (20) respectively,
are both freely generated in the class of bw-rational algebras satisfying (1)
by the elements {Ο} for ΟβΞ£.
*Proof. *
By Theorem 49, the languages Idspβ([[a]]) and Idspβ([[b]]) are bw-rational, and so we have
[TABLE]
where the first two relations follow from Theorem 30
and the last relation follows from Theorem 49. Interchanging a and b in this argument gives a=EXβb.
The freeness assertion then follows from Theorem 37.
β
9 Conclusions
We have proved, in this paper, that the class of pomset languages is closed under all Boolean operations, and that every identity that is valid for all pomset languages is a consequence of the set of valid regular and commutative-regular identities. We have also shown that the problem of establishing whether two pomset terms define the same language is decidable. The complexity of this is not clear however.
It is known that decidability of equivalence of two regular terms is PSPACE-complete [14, 15], and can be shown that the analogous problem for commutative-regular terms lies in PSPACE, hence it is possible that generalising to pomset terms does not increase the bound beyond PSPACE. On the other hand, this problem may be EXPTIME-complete or EXPSPACE-complete. This is worth investigating further.
Bibliography15
The reference list from the paper itself. Each links out to its DOI / PubMed record.
1[1] J. H. Conway, Regular Algebra and Finite Machines, Chapman and Hall, 1971.
2[2] V. R. Pratt, On the composition of processes, in: R. A. De Millo (Ed.), POPL 82, ACM, 1982, pp. 213β223.
3[3] V. R. Pratt, Some constructions for order-theoretic models of concurrency, in: R. Parikh (Ed.), Logic of Programs, Vol. 193 of LNCS, Springer, 1985, pp. 269β283.
4[4] S. D. Brookes, Traces, pomsets, fairness and full abstraction for communicating processes, in: L. Brim, P. Jancar, M. KretΓnskΓ½, A. Kucera (Eds.), CONCUR 2002, Vol. 2421 of LNCS, Springer, 2002, pp. 466β482.
5[5] P. Gastin, M. Mislove, A truly concurrent semantics for a process algebra using resource pomsets, Theoretical Computer Science 281 (2002) 369β421.
6[6] Y. Zhao, X. Wang, Z. H., Towards a pomset semantics for a shared-variable parallel language, in: S. Qin (Ed.), UTP 2010, Vol. 6445 of LNCS, Springer, 2010, pp. 271β285.
7[7] K. Lodaya, P. Weil, Series-parallel posets: Algebra, automata and languages, in: M. Morvan, M. C., D. Krob (Eds.), STACS 98, Vol. 1373 of LNCS, Springer, 1998, pp. 555β565.
8[8] K. Lodaya, P. Weil, Series-parallel languages and the bounded-width property, Theoretical Computer Science 237 (1-2) (2000) 347β380.