This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

A Topological Approach for Computing Supremal Sublanguages for Some Language Equations in Supervisory Control Theory

Liyong Lin    Rong Su School of Electrical and Electronic Engineering, Nanyang Technological University, Singapore (e-mail: {liyong.lin, rsu}@ntu.edu.sg).
Abstract

In this paper, we shall present a topological approach for the computation of some supremal sublanguages, often specified by language equations, which arise from the study of the supervisory control theory. The basic idea is to identify the solutions of the language equations as open sets for some (semi)-topologies. Then, the supremal sublanguages naturally correspond to the supremal open subsets, i.e., the interiors. This provides an elementary and uniform approach for computing various supremal sublanguages encountered in the supervisory control theory and is closely related to a theory of approximation, known as the rough set theory, in artificial intelligence.

keywords:
discrete event systems; supervisory control; rough set; topology; language equations; Kuratowski closure
thanks: The research of the project was supported by Ministry of Education, Singapore, under grant AcRF TIER 1-2018-T1-001-245 (RG 91/18).

,

1 Introduction

The supervisory control theory (SCT) provides a rigorous framework for the automatic synthesis of correct-by-construction controllers. Given the models of the plant and the specification, the theory provides tools for the automatic synthesis of a supervisor, i.e., a discrete-event controller, such that the closed-loop system is safe, i.e., bad state is never reachable, and non-blocking, i.e., goal state is always reachable [1].

The foundation of SCT is largely built based on the theory of formal languages and automata [2]. In fact, quite many important properties such as controllability, normality, LL-closure and so on [1], which are used for characterizing the existence of a supervisor, can be naturally specified with language equations, by using the operations of prefix-closure, concatenation, intersection, projection, inverse projection and so on. The computation of the supremal sublanguages specified by these language equations is a central task in supervisor synthesis [1].

Up to now, quite a few papers have been devoted to the computation of the supremal sublanguages that occur in SCT, either for specific properties with guaranteed finite convergence [1][3][4][5][6][7][8][9][10], or in a systematic approach [11][12], which sometimes has to sidestep the finite convergence issue in the discussions.

In this paper, we adopt the tool of (semi)-topology for computing some supremal sublanguages which occur in the supervisory control theory. The basic idea is to identify the solutions of the defining language equations as open sets for some (semi)-topologies. Then, the supremal sublanguages naturally correspond to the supremal open subsets, i.e., the interiors. Essentially, several properties of interest, such as controllability and normality, are open subsets for different topologies. This naturally leads to the perspective that “supervisors are open subsets”. We hope this work may help to point out the usefulness of elementary topology, which has not found serious applications in the supervisory control theory, for the synthesis of supervisors.

This paper is to be organized as follows. Section 2 provides some preliminaries on the supervisory control theory and others. In Section 3, we introduce the basic tool of (semi)-topology to support the computation of some supremal sublanguages. In Section 4, we provide examples to illustrate the topological techniques. We conclude the paper in Section 5.

2 Mathematical Preliminaries

In this section, we recall most of the notations and terminologies that will be used in this paper, from the supervisory control theory and others.

Let Σ\Sigma denote an alphabet. For any two languages L1,L2L_{1},L_{2} over Σ\Sigma, their concatenation is denoted by L1L2L_{1}L_{2}. We write L1\L2:={sL1sL2}L_{1}\backslash L_{2}:=\{s\in L_{1}\mid s\notin L_{2}\} to denote their set-theoretic difference. The right quotient of L1L_{1} by L2L_{2} is denoted by L1/L2:={sΣtL2,stL1}L_{1}/L_{2}:=\{s\in\Sigma^{*}\mid\exists t\in L_{2},st\in L_{1}\}, where stst denotes the string concatenation of ss and tt. The prefix-closure of LL is denoted by L¯\overline{L}. The Kleene closure of LL is denoted by LL^{*}. We sometimes denote the complement of LL w.r.t. Σ\Sigma^{*} as LcL^{c}, i.e., Lc:=Σ\LL^{c}:=\Sigma^{*}\backslash L.

Let ΣoΣ\Sigma_{o}\subseteq\Sigma. We define natural projection PΣo:ΣΣoP_{\Sigma_{o}}:\Sigma^{*}\longrightarrow\Sigma_{o}^{*} recursively as follows.

  1. 1.

    PΣo(ϵ)=ϵP_{\Sigma_{o}}(\epsilon)=\epsilon, where ϵ\epsilon denotes the empty string,

  2. 2.

    for any sΣs\in\Sigma^{*} and any σΣ\sigma\in\Sigma, PΣo(sσ)=PΣo(s)P_{\Sigma_{o}}(s\sigma)=P_{\Sigma_{o}}(s) if σΣo\sigma\notin\Sigma_{o}, and PΣo(sσ)=PΣo(s)σP_{\Sigma_{o}}(s\sigma)=P_{\Sigma_{o}}(s)\sigma if σΣo\sigma\in\Sigma_{o}.

The definition of PΣoP_{\Sigma_{o}} is extended to PΣo:2Σ2ΣoP_{\Sigma_{o}}:2^{\Sigma^{*}}\longrightarrow 2^{\Sigma_{o}^{*}} in such a way that PΣo(L):={PΣo(s)ΣosL}P_{\Sigma_{o}}(L):=\{P_{\Sigma_{o}}(s)\in\Sigma_{o}^{*}\mid s\in L\} for any LΣL\subseteq\Sigma^{*}. The inverse projection PΣo1:Σo2ΣP_{\Sigma_{o}}^{-1}:\Sigma_{o}^{*}\longrightarrow 2^{\Sigma^{*}} is defined such that PΣo1(t):={sΣPΣo(s)=t}P_{\Sigma_{o}}^{-1}(t):=\{s\in\Sigma^{*}\mid P_{\Sigma_{o}}(s)=t\} for any tΣot\in\Sigma_{o}^{*}. Similarly, we define PΣo1(L)=tLPΣo1(t)P_{\Sigma_{o}}^{-1}(L^{\prime})=\bigcup_{t\in L^{\prime}}P_{\Sigma_{o}}^{-1}(t) for any LΣoL^{\prime}\subseteq\Sigma_{o}^{*}, as a natural extension.

A binary relation IΣ×ΣI\subseteq\Sigma\times\Sigma is said to be an independence relation (over Σ\Sigma) if it is both irreflexive and symmetric. II is irreflexive if, for any σΣ\sigma\in\Sigma, (σ,σ)I(\sigma,\sigma)\notin I. II is symmetric if, for any σ,σΣ\sigma,\sigma^{\prime}\in\Sigma, (σ,σ)I(\sigma,\sigma^{\prime})\in I if and only if (σ,σ)I(\sigma^{\prime},\sigma)\in I. For any (σ,σ)I(\sigma,\sigma^{\prime})\in I, σ\sigma and σ\sigma^{\prime} are said to be independent symbols.

Two strings s,ss,s^{\prime} over Σ\Sigma are said to be trace equivalent with respect to (the independence relation) II, denoted by sIss\sim_{I}s^{\prime}, if there exist strings v0,,vkv_{0},\ldots,v_{k} for some k0k\geq 0 such that s=v0s=v_{0}, s=vks^{\prime}=v_{k} and for each i[1,k]i\in[1,k], there exist some ui,uiΣu_{i},u_{i}^{\prime}\in\Sigma^{*} and σi,βiΣ\sigma_{i},\beta_{i}\in\Sigma such that (σi,βi)I(\sigma_{i},\beta_{i})\in I, vi1=uiσiβiuiv_{i-1}=u_{i}\sigma_{i}\beta_{i}u_{i}^{\prime} and vi=uiβiσiuiv_{i}=u_{i}\beta_{i}\sigma_{i}u_{i}^{\prime}. Intuitively, two strings are trace equivalent if each one of them can be obtained from the other by a sequence of permutations of adjacent symbols that are independent.

The set of trace equivalent strings of ss for II is said to be the trace closure of ss with respect to II, denoted by [s]I[s]_{I}. The trace closure [L]I[L]_{I} of a language LΣL\subseteq\Sigma^{*} is defined to be the language sL[s]I\bigcup_{s\in L}[s]_{I}.

We shall remark that the operations of taking complement, intersection, prefix-closure, projection and inverse projection preserve regularity of languages. However, the trace closure operation does not preserve the regularity of languages [15].

Several important language-theoretic properties in SCT are formulated as language equations given below.

Definition 1 (Normality).

Let KLΣK\subseteq L\subseteq\Sigma^{*} and ΣoΣ\Sigma_{o}\subseteq\Sigma. KK is normal w.r.t. (L,Σo)(L,\Sigma_{o}) if K=PΣo1PΣo(K)LK=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(K)\cap L.

Definition 2 (Controllability).

Let KL=L¯ΣK\subseteq L=\overline{L}\subseteq\Sigma^{*} and ΣucΣ\Sigma_{uc}\subseteq\Sigma. KK is said to be controllable w.r.t. (L,Σuc)(L,\Sigma_{uc}) if K¯ΣucL=K¯\overline{K}\Sigma_{uc}^{*}\cap L=\overline{K}.

Definition 3 (LL-closedness).

Let KLΣK\subseteq L\subseteq\Sigma^{*}. KK is said to be LL-closed if K=K¯LK=\overline{K}\cap L.

Definition 4 (Trace-closedness).

Let KΣK\subseteq\Sigma^{*}. KK is said to be trace-closed w.r.t. an independence relation II over Σ\Sigma if K=[K]IK=[K]_{I}

Definition 5 (Prefix-closedness).

Let KΣK\subseteq\Sigma^{*}. KK is said to be prefix-closed if K=K¯K=\overline{K}.

The following straightforward result holds.

Lemma 1.

KK is prefix-closed iff KK is Σ\Sigma^{*}-closed.

3 Semi-Topologies for Computation

Let MΣM\subseteq\Sigma^{*} be any language. A function :2M2M\square:2^{M}\longrightarrow 2^{M} is said to be a semi-topological closure operator (on MM) if it satisfies the following four axioms S1, S2, S3, S4: for any A,BMA,B\subseteq M,

  1. (S1):

    AAA\subseteq A^{\square},

  2. (S2):

    (A)=A(A^{\square})^{\square}=A^{\square},

  3. (S3):

    AB(AB)A^{\square}\cup B^{\square}\subseteq(A\cup B)^{\square},

  4. (S4):

    =\varnothing^{\square}=\varnothing,

where S1, S2, S3 are adopted from [16]. We here remark that S3 here only requires AB(AB)A^{\square}\cup B^{\square}\subseteq(A\cup B)^{\square} to hold, compared with the stronger requirement that AB=(AB)A^{\square}\cup B^{\square}=(A\cup B)^{\square} in the Kuratowski closure axioms that define a topological closure operator [17].

The semi-topological closure operator \square on MM induces a (unique) semi-topology (M,𝒯)(M,\mathcal{T}) with 𝒯={M\LLM}\mathcal{T}=\{M\backslash L^{\square}\mid L\subseteq M\} being the family of open sets such that the following three conditions T1, T2, T3 hold.

  1. (T1):

    𝒯\varnothing\in\mathcal{T},

  2. (T2):

    𝒯\mathcal{T} is closed under arbitrary unions,

  3. (T3):

    M𝒯M\in\mathcal{T}.

On the other hand, LML\subseteq M is said to be closed if L=LL=L^{\square}. {LLM}\{L^{\square}\mid L\subseteq M\} is the family of closed sets. In particular, KMK\subseteq M is open (respectively, closed) iff M\KM\backslash K is closed (respectively, open), in the semi-topology (M,𝒯)(M,\mathcal{T}).

The semi-topological interior operator :2M2M\circ:2^{M}\longrightarrow 2^{M} can be defined and is dual to the semi-topological closure operator \square, with L=M\(M\L)L^{\circ}=M\backslash(M\backslash L)^{\square} for any LML\subseteq M. It satisfies the following four conditions S1’, S2’, S3’, S4’: for any A,BMA,B\subseteq M,

  1. (S1’):

    AAA\supseteq A^{\circ},

  2. (S2’):

    (A)=A(A^{\circ})^{\circ}=A^{\circ},

  3. (S3’):

    AB(AB)A^{\circ}\cap B^{\circ}\supseteq(A\cap B)^{\circ},

  4. (S4’):

    M=MM^{\circ}=M,

The conditions S1’, S2’, S3’, S4’ are, respectively, dual to and can be obtained from the axioms S1, S2, S3, S4.

In the following subsections, we consider four increasingly more powerful techniques, however, with the same basic topological idea.

3.1 Supremal Solution of A Topologized Equation

We have the next useful result, which is a straightforward consequence of the semi-topology endowed on MM.

Theorem 1.

There exists the unique supremal open subset of EE for any language EME\subseteq M. Indeed, the supremal open subset of EE is the interior E=M\(M\E)E^{\circ}=M\backslash(M\backslash E)^{\square} of EE.

Remark: To make the paper more self-contained, we here briefly explain why the interior M\(M\E)M\backslash(M\backslash E)^{\square} is indeed the supremal open subset of EE in the semi-topology (M,𝒯)(M,\mathcal{T}). Let M\LEM\backslash L^{\square}\subseteq E be any given open subset of EE. We have LM\EL^{\square}\supseteq M\backslash E, from M\LEM\backslash L^{\square}\subseteq E, and thus L(M\E)L^{\square}\supseteq(M\backslash E)^{\square}. It then follows that M\LM\(M\E)M\backslash L^{\square}\subseteq M\backslash(M\backslash E)^{\square}. M\(M\E)M\backslash(M\backslash E)^{\square} is clearly an open subset of EE.

Indeed, in the terminology of the rough set theory [18], M\(M\E)M\backslash(M\backslash E)^{\square} is the largest under-approximation of EE in the collection of open subsets of EE.

The next result could be more convenient in some applications, which is a direct consequence of Theorem 1.

Corollary 1.

If the family of open sets corresponds to the family of closed sets for the semi-topology induced by \square on MM, then the supremal closed subset of EE is M\(M\E)M\backslash(M\backslash E)^{\square}.

Corollary 1 states that, if the semi-topology induced by \square on MM satisfies the following property (*): the family of open sets corresponds to the family of closed sets, then M\(M\E)M\backslash(M\backslash E)^{\square} is also the largest under-approximation of EE in the collection of closed subsets of EE. We shall refer to any (semi-topological) closure operator that satisfies the property (*) as a clopen closure operator.

Theorem 1 can be used in the following way. Suppose we can formulate a property as the solutions of an equation K=M\(M\K)K=M\backslash(M\backslash K)^{\square}, with KEMK\subseteq E\subseteq M and a function :2M2M\square:2^{M}\longrightarrow 2^{M}. If \square is a semi-topological closure operator, then this equation states that KK is equal to its interior KK^{\circ}, that is, KK is open, in the semi-topology induced by \square on MM. Then, the supremal solution of this equation exists and is equal to the interior E=M\(M\E)E^{\circ}=M\backslash(M\backslash E)^{\square} of EE.

Corollary 1 can be used in a similar manner. Suppose we can formulate a property as the solutions of an equation K=KK=K^{\square}, with KEMK\subseteq E\subseteq M and a function :2M2M\square:2^{M}\longrightarrow 2^{M}. If \square is a clopen closure operator, then the supremal solution of this equation exists and is equal to the interior E=M\(M\E)E^{\circ}=M\backslash(M\backslash E)^{\square} of EE.

Remark: If \square is a clopen closure operator, then K=KK=K^{\square} (KK is a closed set) if and only if K=M\(M\K)=KK=M\backslash(M\backslash K)^{\square}=K^{\circ} (KK is an open set).

In the rest of this paper, for generality, we mostly only consider equations of the form K=M\(M\K)K=M\backslash(M\backslash K)^{\square}. However, we shall work with the equation K=KK=K^{\square} if \square is a clopen closure operator and it is more convenient to do so.

3.2 Supremal Solution of System of Topologized Equations

Let MiΣM_{i}\subseteq\Sigma^{*} be any given language and let i:2Mi2Mi\square_{i}:2^{M_{i}}\longrightarrow 2^{M_{i}} be any semi-topological closure operator on MiM_{i}, for each i[1,n]i\in[1,n]. Let Ei=1nMiE\subseteq\bigcap_{i=1}^{n}M_{i}.

Consider a system Δ\Delta of language equations in the topologized forms

K=M1\(M1\K)1,\displaystyle K=M_{1}\backslash(M_{1}\backslash K)^{\square_{1}},
K=M2\(M2\K)2,\displaystyle K=M_{2}\backslash(M_{2}\backslash K)^{\square_{2}},
\displaystyle\ldots
K=Mn\(Mn\K)n,\displaystyle K=M_{n}\backslash(M_{n}\backslash K)^{\square_{n}},

with KEK\subseteq E. Thus, any solution of this system is an open set in the semi-topology induced by i\square_{i} on MiM_{i}, for each i[1,n]i\in[1,n]. By T2, the supremal solution exists, and it can be successively approximated with the iteration scheme

Ki+1=Ki12n,K_{i+1}=K_{i}^{\circ_{1}\circ_{2}\ldots\circ_{n}},

where K0=EK_{0}=E, and each function i:2Mi2Mi\circ_{i}:2^{M_{i}}\longrightarrow 2^{M_{i}} is a semi-topological interior operator that is dual to i\square_{i}, with Ki:=Mi\(Mi\K)iK^{\circ_{i}}:=M_{i}\backslash(M_{i}\backslash K)^{\square_{i}} for any KMiK\subseteq M_{i}. The correctness of the iteration scheme is shown in the following.

Theorem 2.

Let KK^{\uparrow} denote the supremal solution of the system Δ\Delta of equations. If the iteration scheme

Ki+1=Ki12nK_{i+1}=K_{i}^{\circ_{1}\circ_{2}\ldots\circ_{n}}, with K0=EK_{0}=E

terminates with KlK_{l}, where l0l\geq 0, then Kl=KK_{l}=K^{\uparrow}.

Proof: The descending chain

E=K0K1Kl=Kl+1=E=K_{0}\supseteq K_{1}\supseteq\ldots\supseteq K_{l}=K_{l+1}=\ldots

is obtained. We first show that KKiK^{\uparrow}\subseteq K_{i} for each i0i\geq 0.

By definition, (K)j=K(K^{\uparrow})^{\circ_{j}}=K^{\uparrow} for each j[1,n]j\in[1,n]. Thus, for each i0i\geq 0, KKiK^{\uparrow}\subseteq K_{i} implies KKi12n=Ki+1K^{\uparrow}\subseteq K_{i}^{\circ_{1}\circ_{2}\ldots\circ_{n}}=K_{i+1}. The claim KKiK^{\uparrow}\subseteq K_{i}, for each i0i\geq 0, follows from KE=K0K^{\uparrow}\subseteq E=K_{0}. Thus, we have KKlK^{\uparrow}\subseteq K_{l}.

Next, we show KKlK^{\uparrow}\supseteq K_{l}. By definition, Kl=Kl+1=Kl12nK_{l}=K_{l+1}=K_{l}^{\circ_{1}\circ_{2}\ldots\circ_{n}}. Thus, we have KljKl=Kl12nKljK_{l}^{\circ_{j}}\subseteq K_{l}=K_{l}^{\circ_{1}\circ_{2}\ldots\circ_{n}}\subseteq K_{l}^{\circ_{j}}, for each j[1,n]j\in[1,n]. That is, Kl=KljK_{l}=K_{l}^{\circ_{j}} for each j[1,n]j\in[1,n]. With KlEK_{l}\subseteq E, we know that KlK_{l} is also a solution of the system Δ\Delta of equations. Thus, KKlK^{\uparrow}\supseteq K_{l}. \blacksquare

3.3 Supremal Solution of System of Topologized Equations with Search Space Relaxation

In some cases, the topological approach given above cannot be directly applied. This is so, for example, when we need to search for the supremal solution of KEK\subseteq E, while the topological characterization only applies to K¯\overline{K}. For example, consider the following system Θ\Theta of equations

K¯=M1\(M1\K¯)1,\displaystyle\overline{K}=M_{1}\backslash(M_{1}\backslash\overline{K})^{\square_{1}},
K¯=M2\(M2\K¯)2,\displaystyle\overline{K}=M_{2}\backslash(M_{2}\backslash\overline{K})^{\square_{2}},
\displaystyle\ldots
K¯=Mn\(Mn\K¯)n,\displaystyle\overline{K}=M_{n}\backslash(M_{n}\backslash\overline{K})^{\square_{n}},

where KEK\subseteq E. As before, MiΣM_{i}\subseteq\Sigma^{*} is any given language and i:2Mi2Mi\square_{i}:2^{M_{i}}\longrightarrow 2^{M_{i}} is a semi-topological closure operator (on MiM_{i}), for each i[1,n]i\in[1,n]. Here, E¯i=1nMi\overline{E}\subseteq\bigcap_{i=1}^{n}M_{i}. The supremal solution for this system exists (see Proposition 2 for a generalization).

In this case, the use of the weakened requirement K¯E¯\overline{K}\subseteq\overline{E} (for the search space) allows one to apply the topological techniques developed before for K¯\overline{K}. However, this relaxation only computes the supremal solution of K¯\overline{K} from the topologized equations. The solution needs to be constrained as we only ask for the supremal solution of KK, for which it holds that KK¯EK\subseteq\overline{K}\cap E. This leads to a natural iteration scheme that successively approximates the supremal solution of KK, subjected to the language equations for K¯\overline{K}. Now, consider a more general setup, where we have a system Λ\Lambda of equations

K=M1\(M1\K)1,\displaystyle K^{\square}=M_{1}\backslash(M_{1}\backslash K^{\square})^{\square_{1}},
K=M2\(M2\K)2,\displaystyle K^{\square}=M_{2}\backslash(M_{2}\backslash K^{\square})^{\square_{2}},
\displaystyle\ldots
K=Mn\(Mn\K)n,\displaystyle K^{\square}=M_{n}\backslash(M_{n}\backslash K^{\square})^{\square_{n}},

where KEK\subseteq E. Here, MiM_{i} and i\square_{i} are the same as before.

We assume :2M2M\square:2^{M}\longrightarrow 2^{M} is a semi-topological closure operator on some MΣM\subseteq\Sigma^{*} such that the equation X=XX=X^{\square} has an equivalent dual X=M\(M\X)X=M\backslash(M\backslash X)^{\square^{\prime}} for some semi-topological closure operator :2M2M\square^{\prime}:2^{M}\longrightarrow 2^{M}. Let Ei=1nMiE^{\square}\subseteq\bigcap_{i=1}^{n}M_{i}.

Then, the following iteration scheme (#\#) works for the system Λ\Lambda, by replacing KK^{\square} with XX.

  1. 1.

    Let i=0i=0 and Ki=EK_{i}=E.

  2. 2.

    Solve the following system Γ(i)\Gamma(i) of equations

    X=M\(M\X),\displaystyle X=M\backslash(M\backslash X)^{\square^{\prime}},
    X=M1\(M1\X)1,\displaystyle X=M_{1}\backslash(M_{1}\backslash X)^{\square_{1}},
    X=M2\(M2\X)2,\displaystyle X=M_{2}\backslash(M_{2}\backslash X)^{\square_{2}},
    ,\displaystyle\ldots,
    X=Mn\(Mn\X)n,\displaystyle X=M_{n}\backslash(M_{n}\backslash X)^{\square_{n}},

    where XKiX\subseteq K_{i}^{\square}. The supremal solution XiX_{i} exists, as for the system Δ\Delta, and can be computed with the iteration scheme as given below.

    Lj+1=Lj12n,L_{j+1}=L_{j}^{\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime}},

    where L0=KiL_{0}=K_{i}^{\square}. Let Ki+1=KiXiK_{i+1}=K_{i}\cap X_{i}. Let i:=i+1i:=i+1 and repeat step 2).

Remark: The system Λ\Lambda contains the system Θ\Theta as a special case. Indeed, let :2Σ2Σ\square:2^{\Sigma^{*}}\longrightarrow 2^{\Sigma^{*}} be defined such that K=K¯K^{\square}=\overline{K} for any KΣK\subseteq\Sigma^{*}. \square is a semi-topological closure operator on Σ\Sigma^{*} and the equation X=XX=X^{\square} has an equivalent dual X=Σ\(Σ\X)X=\Sigma^{*}\backslash(\Sigma^{*}\backslash X)^{\square^{\prime}}, where :2Σ2Σ\square^{\prime}:2^{\Sigma^{*}}\longrightarrow 2^{\Sigma^{*}} is a semi-topological closure operator on Σ\Sigma^{*} defined such that L=LΣL^{\square^{\prime}}=L\Sigma^{*} for any LΣL\subseteq\Sigma^{*}. Indeed, we have X=X¯X=\overline{X} iff X¯X\overline{X}\subseteq X iff X¯(Σ\X)=\overline{X}\cap(\Sigma^{*}\backslash X)=\varnothing iff X(Σ\X)Σ=X\cap(\Sigma^{*}\backslash X)\Sigma^{*}=\varnothing iff XΣ\(Σ\X)ΣX\subseteq\Sigma^{*}\backslash(\Sigma^{*}\backslash X)\Sigma^{*} iff X=Σ\(Σ\X)ΣX=\Sigma^{*}\backslash(\Sigma^{*}\backslash X)\Sigma^{*}. The system Λ\Lambda also contains the system Δ\Delta as a special case, by setting K=KK^{\square}=K for any KΣK\subseteq\Sigma^{*}.

Before we show the correctness of the iteration scheme given above, we first show some useful results.

Proposition 1.

Suppose :2M2M\square:2^{M}\longrightarrow 2^{M} is a clopen closure operator on MM, then X=XX=X^{\square} has an equivalent dual X=M\(M\X)X=M\backslash(M\backslash X)^{\square^{\prime}} for some semi-topological closure operator :2M2M\square^{\prime}:2^{M}\longrightarrow 2^{M}.

Proof: Suppose :2M2M\square:2^{M}\longrightarrow 2^{M} is a clopen closure operator on MM. Then, for any language LML\subseteq M, LL satisfies the equation X=XX=X^{\square} (that is, LL is a closed set) iff LL satisfies the equation X=M\(M\X)X=M\backslash(M\backslash X)^{\square} (that is, LL is an open set). We can choose :=\square^{\prime}:=\square. \blacksquare

Remark: \square being a clopen closure operator on MM is a sufficient, but in general not necessary, condition for X=XX=X^{\square} to have an equivalent dual X=M\(M\X)X=M\backslash(M\backslash X)^{\square^{\prime}}, for some semi-topological closure operator \square^{\prime}. For example, K=K¯K=\overline{K} has an equivalent dual K=Σ\(Σ\K)ΣK=\Sigma^{*}\backslash(\Sigma^{*}\backslash K)\Sigma^{*} but the prefix closure operator is a semi-topological closure operator on Σ\Sigma^{*} that is not clopen.

We have the next useful result.

Lemma 2.

Suppose the equation X=XX=X^{\square} has an equivalent dual X=M\(M\X)X=M\backslash(M\backslash X)^{\square^{\prime}}, where \square and \square^{\prime} are semi-topological closure operators on MM, then (αIKα)=αIKα(\bigcup_{\alpha\in I}K_{\alpha})^{\square}=\bigcup_{\alpha\in I}K_{\alpha} holds for any index set II, if each KαK_{\alpha} is a closed set, i.e., Kα=KαK_{\alpha}=K_{\alpha}^{\square}.

Proof: Each KαK_{\alpha} satisfies the equation X=XX=X^{\square}. Thus, Kα=M\(M\Kα)K_{\alpha}=M\backslash(M\backslash K_{\alpha})^{\square^{\prime}} for each αI\alpha\in I. That is, each KαK_{\alpha} is an open set for the semi-topology on MM induced by \square^{\prime}. It follows that αIKα\bigcup_{\alpha\in I}K_{\alpha} is also an open set and thus it satisfies the equation X=M\(M\X)X=M\backslash(M\backslash X)^{\square^{\prime}}. It then follows that αIKα\bigcup_{\alpha\in I}K_{\alpha} satisfies the equation X=XX=X^{\square}, that is, αIKα\bigcup_{\alpha\in I}K_{\alpha} is a closed set in the semi-topology induced by \square. The statement holds even when II is an empty index set, for which we have αIKα=\bigcup_{\alpha\in I}K_{\alpha}=\varnothing. \blacksquare

We now show the following result.

Proposition 2.

The supremal solution KK^{\uparrow} for the system Λ\Lambda exists.

Proof: Since \square is a semi-topological closure operator on MM, we have =\varnothing^{\square}=\varnothing; we have that \varnothing is a solution of the system Λ\Lambda. Let {KααI}\{K_{\alpha}\mid\alpha\in I\} be any (non-empty) set of solutions of the system Λ\Lambda. We show that {KααI}\bigcup\{K_{\alpha}\mid\alpha\in I\} is also a solution of the system Λ\Lambda. We only need to show that, for each i[1,n]i\in[1,n],

({KααI})Mi\(Mi\({KααI}))i.(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square}\subseteq M_{i}\backslash(M_{i}\backslash(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square})^{\square_{i}}.

We have that ({KααI})αIKα(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square}\supseteq\bigcup_{\alpha\in I}K_{\alpha}^{\square}. Thus,

Mi\({KααI})αI(Mi\Kα).M_{i}\backslash(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square}\subseteq\bigcap_{\alpha\in I}(M_{i}\backslash K_{\alpha}^{\square}).

It follows that

(Mi\({KααI}))i(αI(Mi\Kα))iαI(Mi\Kα)i.(M_{i}\backslash(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square})^{\square_{i}}\subseteq(\bigcap_{\alpha\in I}(M_{i}\backslash K_{\alpha}^{\square}))^{\square_{i}}\subseteq\bigcap_{\alpha\in I}(M_{i}\backslash K_{\alpha}^{\square})^{\square_{i}}.

Thus,

Mi\(Mi\({KααI}))iMi\αI(Mi\Kα)i=αIMi\(Mi\Kα)i=αIKαM_{i}\backslash(M_{i}\backslash(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square})^{\square_{i}}\supseteq M_{i}\backslash\bigcap_{\alpha\in I}(M_{i}\backslash K_{\alpha}^{\square})^{\square_{i}}=\bigcup_{\alpha\in I}M_{i}\backslash(M_{i}\backslash K_{\alpha}^{\square})^{\square_{i}}=\bigcup_{\alpha\in I}K_{\alpha}^{\square}.

By Lemma 2, we have that

αIKα=(αIKα)({KααI}).\bigcup_{\alpha\in I}K_{\alpha}^{\square}=(\bigcup_{\alpha\in I}K_{\alpha}^{\square})^{\square}\supseteq(\bigcup\{K_{\alpha}\mid\alpha\in I\})^{\square}.

This finishes the proof. \blacksquare

The correctness of the successive approximation scheme is shown below.

Theorem 3.

Let KK^{\uparrow} denote the supremal solution of the system Λ\Lambda of equations. If the iteration scheme (#\#) terminates with KlK_{l}, where l0l\geq 0, then Kl=KK_{l}=K^{\uparrow}.

Proof: The descending chain

E=K0K1Kl=Kl+1=E=K_{0}\supseteq K_{1}\supseteq\ldots\supseteq K_{l}=K_{l+1}=\ldots

is obtained from the iteration scheme. We first show that KiKK_{i}\supseteq K^{\uparrow} for each i0i\geq 0.

To that end, we shall show that, for any i0i\geq 0, KiKK_{i}\supseteq K^{\uparrow} implies Ki+1KK_{i+1}\supseteq K^{\uparrow}. Since Ki+1=KiXiK_{i+1}=K_{i}\cap X_{i}, we only need to show that KiKK_{i}\supseteq K^{\uparrow} implies XiKX_{i}\supseteq K^{\uparrow}, where XiX_{i} is the supremal solution of the system Γ(i)\Gamma(i) of equations

X=M\(M\X),\displaystyle X=M\backslash(M\backslash X)^{\square^{\prime}},
X=M1\(M1\X)1,\displaystyle X=M_{1}\backslash(M_{1}\backslash X)^{\square_{1}},
X=M2\(M2\X)2,\displaystyle X=M_{2}\backslash(M_{2}\backslash X)^{\square_{2}},
,\displaystyle\ldots,
X=Mn\(Mn\X)n,\displaystyle X=M_{n}\backslash(M_{n}\backslash X)^{\square_{n}},

where XKiX\subseteq K_{i}^{\square}.

Suppose KKiK^{\uparrow}\subseteq K_{i}, we have (K)Ki(K^{\uparrow})^{\square}\subseteq K_{i}^{\square}. Since KK^{\uparrow} is the supremal solution of the system Λ\Lambda and (K)Ki(K^{\uparrow})^{\square}\subseteq K_{i}^{\square}, we conclude that (K)(K^{\uparrow})^{\square} is a solution of the system Γ(i)\Gamma(i). Thus, (K)Xi(K^{\uparrow})^{\square}\subseteq X_{i}. Consequently, we have KXiK^{\uparrow}\subseteq X_{i}.

This finishes the proof of the claim that, for any i0i\geq 0, KiKK_{i}\supseteq K^{\uparrow} implies Ki+1KK_{i+1}\supseteq K^{\uparrow}. Now, since KE=K0K^{\uparrow}\subseteq E=K_{0}, we conclude that KiKK_{i}\supseteq K^{\uparrow} for each i0i\geq 0.

We have Kl=Kl+1=KlXlK_{l}=K_{l+1}=K_{l}\cap X_{l}. Thus, we have KlXlK_{l}\subseteq X_{l}. We recall that XlX_{l} is the supremal solution of the system Γ(l)\Gamma(l) of equations

X=M\(M\X),\displaystyle X=M\backslash(M\backslash X)^{\square^{\prime}},
X=M1\(M1\X)1,\displaystyle X=M_{1}\backslash(M_{1}\backslash X)^{\square_{1}},
X=M2\(M2\X)2,\displaystyle X=M_{2}\backslash(M_{2}\backslash X)^{\square_{2}},
,\displaystyle\ldots,
X=Mn\(Mn\X)n,\displaystyle X=M_{n}\backslash(M_{n}\backslash X)^{\square_{n}},

where XKlX\subseteq K_{l}^{\square}, which is computed with the iteration

Lj+1=Lj12n,L_{j+1}=L_{j}^{\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime}},

with L0=KlL_{0}=K_{l}^{\square}. Since the computation terminates, there is some m0m\geq 0 such that Xl=Kl(12n)mX_{l}=K_{l}^{\square(\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime})^{m}}. Thus,

KlXl=Kl(12n)mKl12nK_{l}\subseteq X_{l}=K_{l}^{\square(\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime})^{m}}\subseteq K_{l}^{\square\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime}}

Let T:=Kl12nT:=K_{l}^{\square\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime}}. We have T=T=M\(M\T)T=T^{\circ^{\prime}}=M\backslash(M\backslash T)^{\square^{\prime}}. Since X=X=M\(M\X)X=X^{\circ^{\prime}}=M\backslash(M\backslash X)^{\square^{\prime}} has an equivalent dual X=XX=X^{\square}, we have T=TT=T^{\square}. Thus, from KlTK_{l}\subseteq T, we obtain KlT=T=Kl12nK_{l}^{\square}\subseteq T^{\square}=T=K_{l}^{\square\circ_{1}\circ_{2}\ldots\circ_{n}\circ^{\prime}}. We then conclude that

KlKl1Kl,\displaystyle K_{l}^{\square}\subseteq K_{l}^{\square\circ_{1}}\subseteq K_{l}^{\square},
KlKl2Kl,\displaystyle K_{l}^{\square}\subseteq K_{l}^{\square\circ_{2}}\subseteq K_{l}^{\square},
,\displaystyle\ldots,
KlKlnKl,\displaystyle K_{l}^{\square}\subseteq K_{l}^{\square\circ_{n}}\subseteq K_{l}^{\square},

where KlEK_{l}\subseteq E. Thus, KlK_{l} is a solution of the system Λ\Lambda and we have KlKK_{l}\subseteq K^{\uparrow}. This, when combined with the fact that KKlK^{\uparrow}\subseteq K_{l}, shows that Kl=KK_{l}=K^{\uparrow}. This finishes the proof. \blacksquare

3.4 Supremal Solution of Mixed System of Topologized Equations

In general, consider the system Ξ\Xi of equations

K1=M1\(M1\K1)1,\displaystyle K^{\square_{1}^{\prime}}=M_{1}\backslash(M_{1}\backslash K^{\square_{1}^{\prime}})^{\square_{1}},
K2=M2\(M2\K2)2,\displaystyle K^{\square_{2}^{\prime}}=M_{2}\backslash(M_{2}\backslash K^{\square_{2}^{\prime}})^{\square_{2}},
\displaystyle\ldots
Kn=Mn\(Mn\Kn)n,\displaystyle K^{\square_{n}^{\prime}}=M_{n}\backslash(M_{n}\backslash K^{\square_{n}^{\prime}})^{\square_{n}},

with KEK\subseteq E. Let MiΣM_{i}\subseteq\Sigma^{*} be any given language and i:2Mi2Mi\square_{i}:2^{M_{i}}\longrightarrow 2^{M_{i}} be a semi-topological closure operator (on MiM_{i}), for each i[1,n]i\in[1,n]. For each i[1,n]i\in[1,n], let i\square_{i}^{\prime} be a semi-topological closure operator on some MiΣM_{i}^{\prime}\subseteq\Sigma^{*} such that the equation X=XiX=X^{\square_{i}^{\prime}} has an equivalent dual X=Mi\(Mi\X)i′′X=M_{i}^{\prime}\backslash(M_{i}^{\prime}\backslash X)^{\square_{i}^{\prime\prime}} for some semi-topological closure operator i′′\square_{i}^{\prime\prime} on MiM_{i}^{\prime}. Here, EiMiE^{\square_{i}^{\prime}}\subseteq M_{i} for each i[1,n]i\in[1,n].

Remark: The system Ξ\Xi is a straightforward generalization of the system Λ\Lambda. In particular, if 1=2==n\square_{1}^{\prime}=\square_{2}^{\prime}=\ldots=\square_{n}^{\prime}, then the system Ξ\Xi degenerates into the system Λ\Lambda.

By an analysis which is similar to the proof of Proposition 2, the supremal solution KK^{\uparrow} of the system Ξ\Xi exists. A strategy to solve the system Ξ\Xi is to iteratively solve each equation, by using the technique developed in Section 3.3. This leads to a natural iteration scheme shown below.

Given any equation Ki=Mi\(Mi\Ki)i,K^{\square_{i}^{\prime}}=M_{i}\backslash(M_{i}\backslash K^{\square_{i}^{\prime}})^{\square_{i}}, with KLK\subseteq L. The supremal solution exists and is denoted by LiL^{\diamond_{i}} for convenience, which can be computed with the technique developed in Section 3.3. Then, the system Ξ\Xi is solved with the following iteration scheme

Kj+1=Kj12nK_{j+1}=K_{j}^{\diamond_{1}\diamond_{2}\ldots\diamond_{n}},

with K0=EK_{0}=E. The correctness of the iteration scheme is shown below.

Theorem 4.

Let KK^{\uparrow} denote the supremal solution of the system Ξ\Xi of equations. If the iteration scheme

Kj+1=Kj12nK_{j+1}=K_{j}^{\diamond_{1}\diamond_{2}\ldots\diamond_{n}}, with K0=EK_{0}=E

terminates with KlK_{l}, where l0l\geq 0, then Kl=KK_{l}=K^{\uparrow}.

Proof: The descending chain

E=K0K1Kl=Kl+1=E=K_{0}\supseteq K_{1}\supseteq\ldots\supseteq K_{l}=K_{l+1}=\ldots

is obtained from the iteration scheme. We first show that KiKK_{i}\supseteq K^{\uparrow} for each i0i\geq 0.

To that end, we shall show that, for any i0i\geq 0, KiKK_{i}\supseteq K^{\uparrow} implies Ki+1KK_{i+1}\supseteq K^{\uparrow}. Indeed, suppose KiKK_{i}\supseteq K^{\uparrow}. Then, KK^{\uparrow} is a solution of the system of equations

K1=M1\(M1\K1)1,\displaystyle K^{\square_{1}^{\prime}}=M_{1}\backslash(M_{1}\backslash K^{\square_{1}^{\prime}})^{\square_{1}},
K2=M2\(M2\K2)2,\displaystyle K^{\square_{2}^{\prime}}=M_{2}\backslash(M_{2}\backslash K^{\square_{2}^{\prime}})^{\square_{2}},
\displaystyle\ldots
Kn=Mn\(Mn\Kn)n,\displaystyle K^{\square_{n}^{\prime}}=M_{n}\backslash(M_{n}\backslash K^{\square_{n}^{\prime}})^{\square_{n}},

where KKiK\subseteq K_{i}. In particular, we have KK^{\uparrow} is a solution of the equation K1=M1\(M1\K1)1,K^{\square_{1}^{\prime}}=M_{1}\backslash(M_{1}\backslash K^{\square_{1}^{\prime}})^{\square_{1}}, with KKiK\subseteq K_{i}. Thus, KKi1K^{\uparrow}\subseteq K_{i}^{\diamond_{1}}. It follows that KK^{\uparrow} is a solution of the equation K2=M2\(M2\K2)2,K^{\square_{2}^{\prime}}=M_{2}\backslash(M_{2}\backslash K^{\square_{2}^{\prime}})^{\square_{2}}, with KKi1K\subseteq K_{i}^{\diamond_{1}}. We then have KKi12K^{\uparrow}\subseteq K_{i}^{\diamond_{1}\diamond_{2}}. The same reasoning shows that KKi12n=Ki+1K^{\uparrow}\subseteq K_{i}^{\diamond_{1}\diamond_{2}\ldots\diamond_{n}}=K_{i+1}.

The claim that KiKK_{i}\supseteq K^{\uparrow} for each i0i\geq 0 then follows from KE=K0K^{\uparrow}\subseteq E=K_{0}. Thus, KlKK_{l}\supseteq K^{\uparrow}.

We have Kl=Kl+1=Kl12nKliKlK_{l}=K_{l+1}=K_{l}^{\diamond_{1}\diamond_{2}\ldots\diamond_{n}}\subseteq K_{l}^{\diamond_{i}}\subseteq K_{l}, for each i[1,n]i\in[1,n]. Thus, we have Kl=KliK_{l}=K_{l}^{\diamond_{i}}, for each i[1,n]i\in[1,n]. Thus, KlK_{l} is a solution of the system Ξ\Xi and KlKK_{l}\subseteq K^{\uparrow}. \blacksquare

4 Illustrative Examples

In this section, we shall provide some examples to illustrate the previously presented ideas.

4.1 Computation With A Topologized Equation

In this subsection, we present some example properties which can be specified with a topologized equation, including the properties of normality, LL-closedness, prefix-closedness and trace-closedness. It thus follows that the supremal sublanguages for these properties can be expressed with the same formula given in Section 3.1.

4.1.1 Supremal Normal Sublanguage

Let

N(E;Lm(G)):={KEK=PΣo1PΣo(K)Lm(G)}N(E;L_{m}(G)):=\{K\subseteq E\mid K=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(K)\cap L_{m}(G)\}

be the collection of normal sublanguages of EE with respect to (Lm(G),Σo)(L_{m}(G),\Sigma_{o}). Without loss of generality, we may assume that ELm(G)E\subseteq L_{m}(G), since any KN(E;Lm(G))K\in N(E;L_{m}(G)) satisfies the property that KLm(G)K\subseteq L_{m}(G). We shall endow a (semi)-topology on Lm(G)L_{m}(G). Let N:2Lm(G)2Lm(G)\square_{N}:2^{L_{m}(G)}\longrightarrow 2^{L_{m}(G)} denote a function, where, for any KLm(G)K\subseteq L_{m}(G), KN:=PΣo1PΣo(K)Lm(G)K^{\square_{N}}:=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(K)\cap L_{m}(G). N\square_{N} is a (semi)-topological closure operator on Lm(G)L_{m}(G) (and is a clopen closure operator).

We reformulate the elements of 𝒩(E;Lm(G))\mathcal{N}(E;L_{m}(G)) as follows: with KEK\subseteq E,

K=PΣo1PΣo(K)Lm(G)K=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(K)\cap L_{m}(G) iff PΣo1PΣo(K)Lm(G)KP_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(K)\cap L_{m}(G)\subseteq K iff PΣo1PΣo(K)(Lm(G)\K)=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(K)\cap(L_{m}(G)\backslash K)=\varnothing iff KPΣo1PΣo(Lm(G)\K)=K\cap P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash K)=\varnothing iff KLm(G)\PΣo1PΣo(Lm(G)\K)K\subseteq L_{m}(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash K) iff K=Lm(G)\PΣo1PΣo(Lm(G)\K)K=L_{m}(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash K) iff K=Lm(G)\(Lm(G)\K)NK=L_{m}(G)\backslash(L_{m}(G)\backslash K)^{\square_{N}}

Thus, 𝐒𝐮𝐩𝒩(E;Lm(G)){\bf Sup}\mathcal{N}(E;L_{m}(G)) exists in 𝒩(E;Lm(G))\mathcal{N}(E;L_{m}(G)) and

𝐒𝐮𝐩𝒩(E;Lm(G))=Lm(G)\(Lm(G)\E)N=Lm(G)\PΣo1PΣo(Lm(G)\E).{\bf Sup}\mathcal{N}(E;L_{m}(G))=L_{m}(G)\backslash(L_{m}(G)\backslash E)^{\square_{N}}=L_{m}(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash E).

Remark: It is straightforward to show that this expression is equivalent to the Lin-Brandt formula [1] given by

𝐒𝐮𝐩𝒩(E;Lm(G))=E\PΣo1PΣo(Lm(G)\E){\bf Sup}\mathcal{N}(E;L_{m}(G))=E\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash E)

(see also [3]). Indeed,

Lm(G)\PΣo1PΣo(Lm(G)\E)=(E(Lm(G)\E))\PΣo1PΣo(Lm(G)\E)=E\PΣo1PΣo(Lm(G)\E).L_{m}(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash E)=(E\cup(L_{m}(G)\backslash E))\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash E)=E\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash E).

4.1.2 Supremal LL-closed Sublanguage

Let

(E;Lm(G)):={KEK=K¯Lm(G)}\mathcal{M}(E;L_{m}(G)):=\{K\subseteq E\mid K=\overline{K}\cap L_{m}(G)\}

denote the collection of Lm(G)L_{m}(G)-closed sublanguages of EE. Without loss of generality, we assume ELm(G)E\subseteq L_{m}(G). We now endow a different topology on Lm(G)L_{m}(G). Let L:2Lm(G)2Lm(G)\square_{L}:2^{L_{m}(G)}\longrightarrow 2^{L_{m}(G)} denote a function defined such that KL:=KΣLm(G)K^{\square_{L}}:=K\Sigma^{*}\cap L_{m}(G), for any KLm(G)K\subseteq L_{m}(G). L\square_{L} is a (semi)-topological closure operator on Lm(G)L_{m}(G).

We shall reformulate the elements of (E;Lm(G))\mathcal{M}(E;L_{m}(G)) in the following manner: with KEK\subseteq E,

K=K¯Lm(G)K=\overline{K}\cap L_{m}(G) iff K¯Lm(G)K\overline{K}\cap L_{m}(G)\subseteq K iff K¯(Lm(G)\K)=\overline{K}\cap(L_{m}(G)\backslash K)=\varnothing iff K(Lm(G)\K)Σ=K\cap(L_{m}(G)\backslash K)\Sigma^{*}=\varnothing iff KLm(G)\(Lm(G)\K)ΣK\subseteq L_{m}(G)\backslash(L_{m}(G)\backslash K)\Sigma^{*} iff K=Lm(G)\(Lm(G)\K)ΣK=L_{m}(G)\backslash(L_{m}(G)\backslash K)\Sigma^{*} iff K=Lm(G)\(Lm(G)\K)LK=L_{m}(G)\backslash(L_{m}(G)\backslash K)^{\square_{L}}

Thus, 𝐒𝐮𝐩(E;Lm(G)){\bf Sup}\mathcal{M}(E;L_{m}(G)) exists in (E;Lm(G))\mathcal{M}(E;L_{m}(G)) and we have

𝐒𝐮𝐩(E;Lm(G))=Lm(G)\(Lm(G)\E)L=Lm(G)\(Lm(G)\E)Σ.{\bf Sup}\mathcal{M}(E;L_{m}(G))=L_{m}(G)\backslash(L_{m}(G)\backslash E)^{\square_{L}}=L_{m}(G)\backslash(L_{m}(G)\backslash E)\Sigma^{*}.

As a special case, we consider Lm(G)=ΣL_{m}(G)=\Sigma^{*}. Then, the supremal prefix-closed sublanguage 𝐒𝐮𝐩(E;Σ){\bf Sup}\mathcal{M}(E;\Sigma^{*}) of EE is Σ\(Σ\E)Σ\Sigma^{*}\backslash(\Sigma^{*}\backslash E)\Sigma^{*}, by Lemma 1. In particular, the (semi)-topological closure operator for this case is denoted by P:2Σ2Σ\square_{P}:2^{\Sigma^{*}}\longrightarrow 2^{\Sigma^{*}}, where KP=KΣK^{\square_{P}}=K\Sigma^{*}.

4.1.3 Supremal Trace-closed Sublanguage

Let II be an independence relation over Σ\Sigma. Let

𝒯(E;I):={KEK=[K]I}\mathcal{T}(E;I):=\{K\subseteq E\mid K=[K]_{I}\}

denote the collection of trace-closed sublanguages of EE. We now endow a topology on Σ\Sigma^{*}. Let T:2Σ2Σ\square_{T}:2^{\Sigma^{*}}\longrightarrow 2^{\Sigma^{*}} be a map such that KT:=[K]IK^{\square_{T}}:=[K]_{I} for any KΣK\subseteq\Sigma^{*}. T\square_{T} is a (semi)-topological closure operator. The complement of a trace-closed language w.r.t. Σ\Sigma^{*} is also trace-closed. Thus, T\square_{T} is a clopen closure operator; 𝐒𝐮𝐩𝒯(E;I){\bf Sup}\mathcal{T}(E;I) exists in 𝒯(E;I)\mathcal{T}(E;I) and

𝐒𝐮𝐩𝒯(E;I)=Σ\(Σ\E)T=Σ\[Σ\E]I{\bf Sup}\mathcal{T}(E;I)=\Sigma^{*}\backslash(\Sigma^{*}\backslash E)^{\square_{T}}=\Sigma^{*}\backslash[\Sigma^{*}\backslash E]_{I}.

However, the trace closure operator does not always preserve the regularity of languages. Thus, 𝐒𝐮𝐩𝒯(E;I){\bf Sup}\mathcal{T}(E;I) can be non-regular, even if EE is regular.

4.2 Computation With A System of Topologized Equations

In this subsection, we use the property of prefix-closed controllability to illustrate the computation with a system of topologized equations, as explained in Section 3.2, and explain an acceleration technique.

4.2.1 Supremal Prefix-closed Controllable Sublanguage

Let E=E¯E=\overline{E} and let

𝒞¯(E;L(G)):={KEK=K¯,KΣucL(G)=K}.\overline{\mathcal{C}}(E;L(G)):=\{K\subseteq E\mid K=\overline{K},K\Sigma_{uc}^{*}\cap L(G)=K\}.

denote the collection of prefix-closed controllable sublanguages of EE with respect to (L(G),Σuc)(L(G),\Sigma_{uc}). Without loss of generality, we assume EL(G)E\subseteq L(G). 𝒞¯(E;L(G))\overline{\mathcal{C}}(E;L(G)) is the solution set of a system of two language equations

K=K¯,\displaystyle K=\overline{K},
K=KΣucL(G),\displaystyle K=K\Sigma_{uc}^{*}\cap L(G),

with KEK\subseteq E.

We need to reformulate the two language equations in the following manner:

1) K=K¯K=\overline{K} iff K=Σ\(Σ\K)ΣK=\Sigma^{*}\backslash(\Sigma^{*}\backslash K)\Sigma^{*} iff K=Σ\(Σ\K)PK=\Sigma^{*}\backslash(\Sigma^{*}\backslash K)^{\square_{P}}

2) with KEK\subseteq E, KΣucL(G)=KK\Sigma_{uc}^{*}\cap L(G)=K iff KΣucL(G)KK\Sigma_{uc}^{*}\cap L(G)\subseteq K iff KΣuc(L(G)\K)=K\Sigma_{uc}^{*}\cap(L(G)\backslash K)=\varnothing iff K(L(G)\K)/Σuc=K\cap(L(G)\backslash K)/\Sigma_{uc}^{*}=\varnothing iff KL(G)\((L(G)\K)/Σuc)K\subseteq L(G)\backslash((L(G)\backslash K)/\Sigma_{uc}^{*}) iff K=L(G)\((L(G)\K)/Σuc)K=L(G)\backslash((L(G)\backslash K)/\Sigma_{uc}^{*}).

We shall endow a (semi)-topology on L(G)L(G). We let C:2L(G)2L(G)\square_{C}:2^{L(G)}\longrightarrow 2^{L(G)} be a function defined such that KC:=K/ΣucL(G)K^{\square_{C}}:=K/\Sigma_{uc}^{*}\cap L(G), for any KL(G)K\subseteq L(G). C\square_{C} is indeed a (semi)-topological closure operator on L(G)L(G). Thus, 𝒞¯(E;L(G))\overline{\mathcal{C}}(E;L(G)) can be reformulated as the solution set of a system of two topologized equations

K=Σ\(Σ\K)P,\displaystyle K=\Sigma^{*}\backslash(\Sigma^{*}\backslash K)^{\square_{P}},
K=L(G)\(L(G)\K)C,\displaystyle K=L(G)\backslash(L(G)\backslash K)^{\square_{C}},

with KEK\subseteq E. Then, the iteration scheme

Li+1=LiCP,L_{i+1}=L_{i}^{\circ_{C}\circ_{P}},

where L0=EL_{0}=E, can be applied. Thus, we have

L1=Σ\(Σ\(L(G)\((L(G)\E)/Σuc)))ΣL_{1}=\Sigma^{*}\backslash(\Sigma^{*}\backslash(L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})))\Sigma^{*}

by straightforward applications of interior constructions. We can simplify the expression of L1L_{1} as follows.

Lemma 3.

L1=L(G)\((L(G)\E)/Σuc)ΣL_{1}=L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}.

Proof: We now use the rule A\(B\C)=(A\B)(AC)A\backslash(B\backslash C)=(A\backslash B)\cup(A\cap C) and obtain the following

L1=Σ\(L(G)c(L(G)\E)/Σuc)Σ=Σ\(L(G)cΣ((L(G)\E)/Σuc)Σ)=(Σ\L(G)cΣ)Σ\(L(G)\E)/Σuc)ΣL_{1}=\Sigma^{*}\backslash(L(G)^{c}\cup(L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}=\Sigma^{*}\backslash(L(G)^{c}\Sigma^{*}\cup((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*})=(\Sigma^{*}\backslash L(G)^{c}\Sigma^{*})\cap\Sigma^{*}\backslash(L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}

We then apply the rule Σ\L(G)cΣ=L(G)\Sigma^{*}\backslash L(G)^{c}\Sigma^{*}=L(G) and obtain the simplified expression L1=L(G)\((L(G)\E)/Σuc)ΣL_{1}=L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}. \blacksquare

L1L_{1} is by construction prefix-closed, i.e., L1P=L1L_{1}^{\circ_{P}}=L_{1}. The next result shows that L1L_{1} is indeed the fixed-point, i.e., L1=𝐒𝐮𝐩𝒞¯(E;L(G))L_{1}={\bf Sup}\overline{\mathcal{C}}(E;L(G)).

Lemma 4.

L1C=L1L_{1}^{\circ_{C}}=L_{1} or, equivalently, L1ΣucL(G)=L1L_{1}\Sigma_{uc}^{*}\cap L(G)=L_{1}.

Proof: We need to show L1ΣucL(G)L1L_{1}\Sigma_{uc}^{*}\cap L(G)\subseteq L_{1}. We only need to show

(L(G)\((L(G)\E)/Σuc)Σ)ΣucL(G)((L(G)\E)/Σuc)Σ=(L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*})\Sigma_{uc}^{*}\cap L(G)\cap((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}=\varnothing

Suppose, on the contrary, that there exists some string sL(G)\((L(G)\E)/Σuc)Σs\in L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*} and some string suΣucs_{u}\in\Sigma_{uc}^{*} such that ssu((L(G)\E)/Σuc)ΣL(G)ss_{u}\in((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}\cap L(G).

We analyze ss based on ssu((L(G)\E)/Σuc)Σss_{u}\in((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}. There are only two (not necessarily mutually exclusive) cases.

  1. 1.

    s((L(G)\E)/Σuc)Σs\in((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}

  2. 2.

    s(L(G)\E)/Σuc¯s\in\overline{(L(G)\backslash E)/\Sigma_{uc}^{*}}, and there exist some su1,su2Σucs_{u}^{1},s_{u}^{2}\in\Sigma_{uc}^{*} such that su=su1su2s_{u}=s_{u}^{1}s_{u}^{2} and ssu1(L(G)\E)/Σucss_{u}^{1}\in(L(G)\backslash E)/\Sigma_{uc}^{*}.

The first case is in contradiction with the supposition that sL(G)\((L(G)\E)/Σuc)Σs\in L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}. Thus, we only need to consider the second case that s(L(G)\E)/Σuc¯s\in\overline{(L(G)\backslash E)/\Sigma_{uc}^{*}}.

However, from ssu1(L(G)\E)/Σucss_{u}^{1}\in(L(G)\backslash E)/\Sigma_{uc}^{*}, we know that s(L(G)\E)/Σucs\in(L(G)\backslash E)/\Sigma_{uc}^{*}, which again leads to contradiction. \blacksquare

Again, the formula

𝐒𝐮𝐩𝒞¯(E;L(G))=L(G)\((L(G)\E)/Σuc)Σ{\bf Sup}\overline{\mathcal{C}}(E;L(G))=L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}

is equivalent to the formula derived in [3]. In particular, we have

𝐒𝐮𝐩𝒞¯(E;L(G))=(E(L(G)\E))\((L(G)\E)/Σuc)Σ=E\((L(G)\E)/Σuc){\bf Sup}\overline{\mathcal{C}}(E;L(G))=(E\cup(L(G)\backslash E))\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}=E\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})

4.2.2 Topology Optimization for Prefix-closed Controllability

In certain cases, a system of topologized equations can be reduced to an equivalent topologized equation by setting up an optimized semi-topology. It follows that the technique of Section 3.1 can be used for solving such a system of topologized equations as well, as an acceleration technique (for chain termination).

It is possible to obtain an optimized semi-topology for the computation of 𝐒𝐮𝐩𝒞¯(E;L(G)){\bf Sup}\overline{\mathcal{C}}(E;L(G)) as follows.

With KEK\subseteq E, we have

K=K¯K=\overline{K} and KΣucL(G)=KK\Sigma_{uc}^{*}\cap L(G)=K iff K¯ΣucL(G)=K\overline{K}\Sigma_{uc}^{*}\cap L(G)=K iff K¯Σuc(L(G)\K)=\overline{K}\Sigma_{uc}^{*}\cap(L(G)\backslash K)=\varnothing iff K¯(L(G)\K)/Σuc=\overline{K}\cap(L(G)\backslash K)/\Sigma_{uc}^{*}=\varnothing iff K((L(G)\K)/Σuc)Σ=K\cap((L(G)\backslash K)/\Sigma_{uc}^{*})\Sigma^{*}=\varnothing iff KL(G)\((L(G)\K)/Σuc)ΣK\subseteq L(G)\backslash((L(G)\backslash K)/\Sigma_{uc}^{*})\Sigma^{*} iff K=L(G)\((L(G)\K)/Σuc)ΣK=L(G)\backslash((L(G)\backslash K)/\Sigma_{uc}^{*})\Sigma^{*} iff K=L(G)\(L(G)\K)OK=L(G)\backslash(L(G)\backslash K)^{\square_{O}},

where O:2L(G)2L(G)\square_{O}:2^{L(G)}\longrightarrow 2^{L(G)} is a map defined such that, for any LL(G)L\subseteq L(G), LO:=(L/Σuc)ΣL(G)L^{\square_{O}}:=(L/\Sigma_{uc}^{*})\Sigma^{*}\cap L(G). O\square_{O} is a (semi)-topological closure operator on L(G)L(G).

Thus, 𝐒𝐮𝐩𝒞¯(E;L(G)){\bf Sup}\overline{\mathcal{C}}(E;L(G)) exists in 𝒞¯(E;L(G))\overline{\mathcal{C}}(E;L(G)) and

𝐒𝐮𝐩𝒞¯(E;L(G))=L(G)\(L(G)\E)O=L(G)\((L(G)\E)/Σuc)Σ{\bf Sup}\overline{\mathcal{C}}(E;L(G))=L(G)\backslash(L(G)\backslash E)^{\square_{O}}=L(G)\backslash((L(G)\backslash E)/\Sigma_{uc}^{*})\Sigma^{*}

4.3 Computation With A System of Topologized Equations With Search Space Relaxation

In this subsection, we show that the computation of the supremal controllable sublanguage, without the prefix-closedness property, can be treated as solving a system of topologized equations with search space relaxation.

Let

𝒞(E;L(G))={KEK¯ΣucL(G)=K¯}\mathcal{C}(E;L(G))=\{K\subseteq E\mid\overline{K}\Sigma_{uc}^{*}\cap L(G)=\overline{K}\}.

denote the collection of controllable sublanguages of EE w.r.t. (L(G),Σuc)(L(G),\Sigma_{uc}). Without loss of generality, we assume E¯L(G)\overline{E}\subseteq L(G). The elements of 𝒞(E;L(G))\mathcal{C}(E;L(G)) can be reformulated as below (see Section 4.2): with E¯L(G)\overline{E}\subseteq L(G),

K¯ΣucL(G)=K¯\overline{K}\Sigma_{uc}^{*}\cap L(G)=\overline{K} iff K¯=L(G)\((L(G)\K¯)/Σuc)\overline{K}=L(G)\backslash((L(G)\backslash\overline{K})/\Sigma_{uc}^{*}) iff K¯=L(G)\(L(G)\K¯)C\overline{K}=L(G)\backslash(L(G)\backslash\overline{K})^{\square_{C}}

We can now apply the technique from Section 3.3. Thus, the iteration scheme Ki+1=KiXiK_{i+1}=K_{i}\cap X_{i} can be used. XiX_{i} is the supremal solution of the system

X=Σ\(Σ\X)P,\displaystyle X=\Sigma^{*}\backslash(\Sigma^{*}\backslash X)^{\square_{P}},
X=L(G)\(L(G)\X)C,\displaystyle X=L(G)\backslash(L(G)\backslash X)^{\square_{C}},

where XKi¯X\subseteq\overline{K_{i}}. Thus, Xi=L(G)\((L(G)\Ki¯)/Σuc)ΣX_{i}=L(G)\backslash((L(G)\backslash\overline{K_{i}})/\Sigma_{uc}^{*})\Sigma^{*}, by reusing the result from Section 4.2.1. We then have the iteration equation

Ki+1=KiXi=Ki\((L(G)\Ki¯)/Σuc)ΣK_{i+1}=K_{i}\cap X_{i}=K_{i}\backslash((L(G)\backslash\overline{K_{i}})/\Sigma_{uc}^{*})\Sigma^{*}

4.4 Computation With A Mixed System of Topologized Equations

In this subsection, we explain the application of a mixed system of topologized equations to the computation of the supremal controllable and normal sublanguage [1].

Let

N¯(E;L(G))={KEK¯=PΣo1PΣo(K¯)L(G)}\overline{N}(E;L(G))=\{K\subseteq E\mid\overline{K}=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\cap L(G)\}

denote the collection of sublanguages of EE whose prefix-closure is normal w.r.t. (L(G),Σo)(L(G),\Sigma_{o}). Now, let

𝒮(E)=𝒞(E;L(G))N(E;Lm(G))𝒩¯(E;L(G)).\mathcal{S}(E)=\mathcal{C}(E;L(G))\cap N(E;L_{m}(G))\cap\overline{\mathcal{N}}(E;L(G)).

𝒮(E)\mathcal{S}(E) is commonly referred to as the set of controllable and normal sublanguages of EE [1][6]. Now, without loss of generality, we shall assume ELm(G)E\subseteq L_{m}(G) and ΣcΣo\Sigma_{c}\subseteq\Sigma_{o}. The elements of 𝒮(E)\mathcal{S}(E) are formulated as the solutions of the system

K¯=L(G)\(L(G)\K¯)O,\displaystyle\overline{K}=L(G)\backslash(L(G)\backslash\overline{K})^{\square_{O}},
K=Lm(G)\(Lm(G)\K)N,\displaystyle K=L_{m}(G)\backslash(L_{m}(G)\backslash K)^{\square_{N}},
K¯=L(G)\(L(G)\K¯)N\displaystyle\overline{K}=L(G)\backslash(L(G)\backslash\overline{K})^{\square_{N}}

with KEK\subseteq E. Then, we can apply the technique developed in Section 3.4. Here, we directly use an acceleration technique, with an optimized topology. The key result is the following [19].

Lemma 5.

Let KELm(G)K\subseteq E\subseteq L_{m}(G). We have that K¯=PΣo1PΣo(K¯)L(G)\overline{K}=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\cap L(G) and K¯ΣucL(G)=K¯\overline{K}\Sigma_{uc}^{*}\cap L(G)=\overline{K} if and only if K¯=PΣo1PΣo(K¯)ΣucL(G)\overline{K}=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\Sigma_{uc}^{*}\cap L(G).

With KEK\subseteq E, we have

K¯=PΣo1PΣo(K¯)ΣucL(G)\overline{K}=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\Sigma_{uc}^{*}\cap L(G) iff PΣo1PΣo(K¯)ΣucL(G)K¯P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\Sigma_{uc}^{*}\cap L(G)\subseteq\overline{K} iff PΣo1PΣo(K¯)Σuc(L(G)\K¯)=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\Sigma_{uc}^{*}\cap(L(G)\backslash\overline{K})=\varnothing iff PΣo1PΣo(K¯)(L(G)\K¯)/Σuc=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(\overline{K})\cap(L(G)\backslash\overline{K})/\Sigma_{uc}^{*}=\varnothing iff K¯PΣo1PΣo((L(G)\K¯)/Σuc)=\overline{K}\cap P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{K})/\Sigma_{uc}^{*})=\varnothing iff K¯L(G)\PΣo1PΣo((L(G)\K¯)/Σuc)\overline{K}\subseteq L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{K})/\Sigma_{uc}^{*}) iff K¯=L(G)\PΣo1PΣo((L(G)\K¯)/Σuc)\overline{K}=L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{K})/\Sigma_{uc}^{*})

Let A:2L(G)2L(G)\square_{A}:2^{L(G)}\longrightarrow 2^{L(G)} denote a function defined such that LA=PΣo1PΣo(L/Σuc)L(G)L^{\square_{A}}=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L/\Sigma_{uc}^{*})\cap L(G) for any LL(G)L\subseteq L(G). A\square_{A} is a (semi)-topological closure operator over L(G)L(G), with ΣcΣo\Sigma_{c}\subseteq\Sigma_{o}.

Thus, the elements of 𝒮(E)\mathcal{S}(E) can be reformulated as the solutions of the system

K¯=L(G)\(L(G)\K¯)A,\displaystyle\overline{K}=L(G)\backslash(L(G)\backslash\overline{K})^{\square_{A}},
K=Lm(G)\(Lm(G)\K)N,\displaystyle K=L_{m}(G)\backslash(L_{m}(G)\backslash K)^{\square_{N}},

with KEK\subseteq E. We now apply the technique of Section 3.4 to this system, which leads to the iteration scheme

Kj+1=KjAN=KjAN=Lm(G)\PΣo1PΣo(Lm(G)\KjA)K_{j+1}=K_{j}^{\diamond_{A}\diamond_{N}}=K_{j}^{\diamond_{A}\circ_{N}}=L_{m}(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash K_{j}^{\diamond_{A}}), with K0=EK_{0}=E

In particular, KjAK_{j}^{\diamond_{A}} is the supremal solution of the equation K¯=L(G)\(L(G)\K¯)A\overline{K}=L(G)\backslash(L(G)\backslash\overline{K})^{\square_{A}}, with KKjK\subseteq K_{j}. It can be solved with the iteration scheme (see Section 3.3).

Li+1=LiXiL_{i+1}=L_{i}\cap X_{i}, where L0=KjL_{0}=K_{j}

where XiX_{i} is the supremal solution of the system

X=Σ\(Σ\X)P,\displaystyle X=\Sigma^{*}\backslash(\Sigma^{*}\backslash X)^{\square_{P}},
X=L(G)\(L(G)\X)A,\displaystyle X=L(G)\backslash(L(G)\backslash X)^{\square_{A}},

with XLi¯X\subseteq\overline{L_{i}}. XiX_{i} can be computed with the scheme

Hk+1=HkAPH_{k+1}=H_{k}^{\circ_{A}\circ_{P}}, where H0=Li¯H_{0}=\overline{L_{i}}

We have

H1=Σ\(Σ\(L(G)\PΣo1PΣo((L(G)\Li¯)/Σuc)))Σ=Σ\(L(G)cPΣo1PΣo((L(G)\Li¯)/Σuc))Σ=Σ\(L(G)cΣPΣo1PΣo((L(G)\Li¯)/Σuc)Σ)=L(G)\PΣo1PΣo((L(G)\Li¯)/Σuc)Σ=L(G)\PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ)H_{1}=\Sigma^{*}\backslash(\Sigma^{*}\backslash(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})))\Sigma^{*}=\Sigma^{*}\backslash(L(G)^{c}\cup P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*}))\Sigma^{*}=\Sigma^{*}\backslash(L(G)^{c}\Sigma^{*}\cup P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*})=L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}=L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*})

H1H_{1} is by construction prefix-closed, i.e., H1P=H1H_{1}^{\circ_{P}}=H_{1}. The next result shows that H1H_{1} is indeed the fixed-point, i.e., H1=H1APH_{1}=H_{1}^{\circ_{A}\circ_{P}}.

Lemma 6.

H1A=H1H_{1}^{\circ_{A}}=H_{1} or, equivalently, PΣo1PΣo(H1)ΣucL(G)=H1P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(H_{1})\Sigma_{uc}^{*}\cap L(G)=H_{1}.

Proof: We need to show PΣo1PΣo(H1)ΣucL(G)H1P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(H_{1})\Sigma_{uc}^{*}\cap L(G)\subseteq H_{1}. We only need to show

PΣo1PΣo(L(G)\PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ))ΣucL(G)PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ)=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}))\Sigma_{uc}^{*}\cap L(G)\cap P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*})=\varnothing.

Suppose, on the contrary, that there exists some string

sPΣo1PΣo(L(G)\PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ))s\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}))

and some string suΣucs_{u}\in\Sigma_{uc}^{*}, such that

ssuL(G)PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ).ss_{u}\in L(G)\cap P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}).

We analyze ss based on ssuPΣo1PΣo((L(G)\Li¯)/Σuc)Σss_{u}\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}. There are two (not necessarily mutually exclusive) cases.

  1. 1.

    sPΣo1PΣo((L(G)\Li¯)/Σuc)Σs\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}

  2. 2.

    sPΣo1PΣo((L(G)\Li¯)/Σuc)¯s\in\overline{P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})}, and also there exist some su1,su2Σucs_{u}^{1},s_{u}^{2}\in\Sigma_{uc}^{*} such that su=su1su2s_{u}=s_{u}^{1}s_{u}^{2} and ssu1PΣo1PΣo((L(G)\Li¯)/Σuc)ss_{u}^{1}\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*}).

The first case is in contradiction with

sPΣo1PΣo(L(G)\PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ)).s\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*})).

since (with the rule PΣo1PΣo(A\PΣo1PΣo(B))PΣo1PΣo(B)=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(A\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(B))\cap P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(B)=\varnothing)

PΣo1PΣo(L(G)\PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ))PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ)=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}))\cap P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*})=\varnothing.

Thus, we only need to consider the second case. However, from ssu1PΣo1PΣo((L(G)\Li¯)/Σuc)ss_{u}^{1}\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*}), we conclude, with ΣcΣo\Sigma_{c}\subseteq\Sigma_{o}, that

sPΣo1PΣo((L(G)\Li¯)/Σuc)/Σuc=PΣo1PΣo((L(G)\Li¯)/Σuc)s\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})/\Sigma_{uc}^{*}=P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*}).

However, this again contradicts with

sPΣo1PΣo(L(G)\PΣo1PΣo(((L(G)\Li¯)/Σuc)Σ))PΣo1PΣo(L(G)\PΣo1PΣo((L(G)\Li¯)/Σuc)).s\in P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}))\subseteq P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})).

\blacksquare
Thus, we have Li+1=Li\PΣo1PΣo((L(G)\Li¯)/Σuc)ΣL_{i+1}=L_{i}\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}.

In summary, we have the iteration equation

Kj+1=Lm(G)\PΣo1PΣo(Lm(G)\KjA)K_{j+1}=L_{m}(G)\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}(L_{m}(G)\backslash K_{j}^{\diamond_{A}}), with K0=EK_{0}=E.

KjAK_{j}^{\diamond_{A}} is computed with the iteration equation

Li+1=Li\PΣo1PΣo((L(G)\Li¯)/Σuc)ΣL_{i+1}=L_{i}\backslash P_{\Sigma_{o}}^{-1}P_{\Sigma_{o}}((L(G)\backslash\overline{L_{i}})/\Sigma_{uc}^{*})\Sigma^{*}, with L0=KjL_{0}=K_{j}

5 Conclusion

In this work, we have presented a topological technique for computing some supremal sublanguages, often specified by language equations, that arise from the study of the supervisory control theory. Theorem 1 of Section 3.1 is central to the rough set theory [18], which is a formal theory of approximation. This work can thus be viewed as a further development of the rough set theory in solving language equations.

The topological technique provides an elementary and uniform approach for the computation, if we do not care about the finite convergence property. It is of interest to know if the topological perspective can also be useful for establishing the finite convergence property, which is left open.

References

  • [1] W. M. Wonham, K. Cai. Supervisory control of discrete-event systems, Springer, 2018.
  • [2] J. E. Hopcroft, J. D. Ullman, Introduction to automata theory, languages, and computation, Addison-Wesley, Reading, Massachusetts, 1979.
  • [3] R. D. Brandt, V. Garg, R. Kumar, F. Lin, S. I. Marcus, W. M. Wonham. “Formulas for calculating supremal controllable and normal sublanguages”, Systems and Control Letters, 15(2): 111-117, 1990.
  • [4] W. M. Wonham, P. J. Ramadge. “On the supremal controllable sublanguage of a given language”, SIAM J. Control Optim., 25(3): 637-659, 1987.
  • [5] K. Cai, R. Zhang, W. M. Wonham, “Relative observability of discrete-event systems and its supremal sublanguages”, IEEE Transactions on Automatic Control 60 (3): 659-670, 2014.
  • [6] S. Hashtrudi Zad, M. Moosaei, W. M. Wonham, “On computation of supremal controllable, normal sublanguages”, Systems and Control Letters, 54(9): 871-876, 2005.
  • [7] R. M. Ziller, J. E. R. Cury, “On the supremal LmL_{m}-closed and the supremal LmL_{m}-closed and LL-controllable sublanguages of a given language”, 11th International Conference on Analysis and Optimization of Systems: Discrete Event Systems, LNCIS, Vol. 199, pp. 80-85, 1994.
  • [8] E. Chen, S. Lafortune, “On nonconflicting languages that arise in supervisory control of discrete event systems”, Systems and Control Letters, 17(2):105-113, 1991.
  • [9] H. Cho, S. I. Marcus, “On supremal languages of classes of sublanguages that arise in supervisor synthesis problems with partial observations”, Mathematics of Control, Signal and Systems 2, 47–69, 1989.
  • [10] J. Komenda, J. H. van Schuppen, “Control of discrete-event systems with partial observations using coalgebra and coinduction”, Discret. Event Dyn. Syst. 15(3): 257-315, 2005.
  • [11] S. Hashtrudi Zad, R. H. Kwong and W. M. Wonham, “Supremum operators and computation of supremal elements in system theory”, SIAM J. Control Optim., vol. 37, no. 3, pp. 695-709, 1999.
  • [12] R. Kumar, V. K. Garg. “Extremal solutions of inequations over lattices with applications to supervisory control”, Theoretical Computer Science, 148(1): 67-92, 1995.
  • [13] T. Moor, C. Baier, T.S. Yoo, F. Lin, and S. Lafortune, “On the computation of supremal sublanguages relevant to supervisory control”, Workshop on Discrete Event Systems, pp. 175–180, 2012.
  • [14] N. Yevtushenko, T. Villa, R.K. Brayton, “A. Petrenko, A.L. Sangiovanni-Vincentelli, “Solution of parallel language equations for logic synthesis”, in: International Conference on Computer-Aided Design, ACM, pp. 103-110, 2001.
  • [15] I. J. Aalbersberg, E. Welzl. “Trace languages defined by regular string languages”, R.A.I.R.O. Theoretical Informatics and Applications, 20(2): 103-119, 1986.
  • [16] D. Peled. “A generalized closure and complement phenomenon”, Discrete Mathematics, Vol. 50, pp. 285-293, 1984.
  • [17] I. M. James, General topology and homotopy theory, Springer, 1984.
  • [18] Z. Pawlak. “Rough sets”, International Journal of Computer & Information Sciences, 11(5): 341-356, 1982.
  • [19] D. Wang, L. Lin, Z. Li, W. M. Wonham. “State-based control of discrete-event systems under partial observation”, IEEE Access, 6: 42084–42093, 2018