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

Modularized Control Synthesis for Complex Signal Temporal Logic Specifications

Zengjie Zhang and Sofie Haesaert This work was supported by the European project SymAware under the grant Nr. 101070802.Zengjie Zhang and Sofie Haesaert are with the Department of Electrical Engineering, Eindhoven University of Technology, PO Box 513, 5600 MB Eindhoven, Netherlands. {z.zhang3, s.haesaert}@tue.nl
Abstract

The control synthesis of a dynamic system subject to a signal temporal logic (STL) specification is commonly formulated as a mixed-integer linear/convex programming (MILP/ MICP) problem. Solving such a problem is computationally expensive when the specification is long and complex. In this paper, we propose a framework to transform a long and complex specification into separate forms in time, to be more specific, the logical combination of a series of short and simple subformulas with non-overlapping timing intervals. In this way, one can easily modularize the synthesis of a long specification by solving its short subformulas, which improves the efficiency of the control problem. We first propose a syntactic timing separation form for a type of complex specifications based on a group of separation principles. Then, we further propose a complete specification split form with subformulas completely separated in time. Based on this, we develop a modularized synthesis algorithm that ensures the soundness of the solution to the original synthesis problem. The efficacy of the methods is validated with a robot monitoring case study in simulation. Our work is promising to promote the efficiency of control synthesis for systems with complicated specifications.

I INTRODUCTION

Signal temporal logic (STL) is widely used to specify requirements for robot systems [1, 2], due to its advantage in specifying real-valued signals with finite timing bounds [3]. System control with STL specifications renders a synthesis problem that can be solved by mixed integer linear/convex programming (MILP/MICP) [3, 4]. Based on this a closed-loop controller can be developed using model predictive control (MPC) [5, 6]. However, solving a MILP/MICP problem is computationally expensive and time-consuming, especially for complex STL formulas with long timing intervals since the computational load grows drastically as the number of the integer variables increases (exponentially in the worst case) [7]. Thus, computational complexity has become a bottleneck of the control synthesis of complex STL specifications, especially those with time-variant specifications [8] and fixed-order constraints [9]. One effective approach is the model-checking-based method which transforms an STL formula into an automaton with strict timing bounds [10]. This method is usually less complex than an optimization problem since it is only concerned with a feasible solution. Control barrier functions (CBF) [9] and funnel functions [11] are also used to simplify the STL synthesis problems.

Another direction of reducing the complexity is to decompose a long and complex STL formula into several shorter and simpler subformulas and solve them sequentially. A subformula refers to a simple STL formula that serves as a primitive unit of a complex formula [12]. This indicates the possibility of splitting a big planning problem into several smaller problems and solving them one by one in the order of time, which forms the essential thought of modularized synthesis. This idea is straightforward from a practical perspective: a complex task is usually composed of a series of smaller subtasks that have independent objectives and are ordered in time. For example, a typical food delivery task includes three subtasks: picking up the order at the restaurant, navigating to the customer, and performing the delivery. Finishing these subtasks means accomplishing the overall task. The advantage of this approach is based on the assumption that solving a subtask may be substantially simpler than directly solving the original overall task.

However, modularized synthesis based on specification decomposition is not trivial and brings up two major challenges. Firstly, the decomposed specification has to ensure soundness, i.e., any feasible solution of the modularized synthesis must also be a feasible solution of the original specification. This is important to ensure the efficacy of the specification decomposition and modularized synthesis [13]. Secondly, the subformulas may have overlapping timing intervals which indicate the dependence coupling among these subformulas. In this case, each subformula should not be synthesized independently but should incorporate the coupling with its overlapping subformulas. In existing work, the soundness of specification separation is ensured by syntactic separation as partially discussed in [14, 15]. Recently, model checking based on specification decomposition has been studied for a fragment of STL formulas [16]. Nevertheless, the coupling issues among subformulas have not been well resolved by the existing work. To our knowledge, there is no other existing work discussing the modularized synthesis of STL formulas, although we believe it to be a promising technology for the efficient synthesis of complex specifications.

In this paper, we investigate the modularized synthesis of complex STL specifications based on timing separation. We specifically look into a fragment of STL formulas composed of complex temporal operators for which interval overlapping can not be resolved by purely using syntactic separation. Besides proposing several complementary syntactic separation principles to the existing work [14, 15], we also provide a sufficient separation method for this STL fragment with the overlapping between subformulas eliminated. In such a way, we develop a modularized synthesis algorithm for the separated specification by transforming the overall synthesis problem into several small planning problems with reduced complexity, achieving higher efficiency than directly solving the original problem. The main contributions are as follows.

1). Proposing a syntactic timing separation form of a fragment of STL formulas that is proven to be syntactically equivalent to the original specification.

2). Proposing a complete splitting form of this STL fragment which is proven to be sound in semantics.

3). Developing a modularized synthesis algorithm for the complete splitting form, which ensures soundness but less complexity than the original specification synthesis problem.

The rest of the paper is organized as follows. Sec. II introduces the preliminary knowledge of this paper. In Sec. III, we present our main results on specification separation and modularized synthesis. Sec. IV provides a simulation case study to validate the efficacy of the proposed modularized synthesis method. Finally, Sec. V concludes this paper.

Notations: We use \mathbb{R} and n\mathbb{R}^{n} to denote the sets of real scalars and nn-dimensional real vectors. We also use \mathbb{N} and +\mathbb{N}^{+} to denote natural numbers and positive natural numbers.

Proofs: All proofs of this paper are in the Appendix.

II Preliminaries and Problem Statement

II-A Signal Temporal Logic (STL)

Specifications in Signal Temporal Logic (STL) can quantify requirements on real-valued signals. In this paper, we are concerned with discrete-time signals 𝐱[ 0,L]:=x0x1xL\mathbf{x}_{[\,0,\,L\,]}\!:=\!x_{0}x_{1}\cdots x_{L}, where L+L\!\in\!\mathbb{N}^{+} denotes the length of the signal and xknx_{k}\!\in\!\mathbb{R}^{n} is the value of the signal at time k{0,1,,L}k\!\in\!\{0,1,\cdots,L\}. With 𝐱[k1,k2]:=xk1xk1+1xk2\mathbf{x}_{[\,k_{1},k_{2}\,]}:=x_{k_{1}}x_{k_{1}+1}\ldots x_{k_{2}}, we denote a segment of 𝐱\mathbf{x} or equivalently 𝐱[ 0,L]\mathbf{x}_{[\,0,\,L\,]} with timing points 0k1k2L0\!\leq\!k_{1}\!\leq\!k_{2}\!\leq\!L. The syntax of STL is recursively defined as

φ::=|μ|¬φ|φ1φ2|φ1𝖴[a,b]φ2,\varphi::=\top\,|\,\mu\,|\,\lnot\varphi\,|\,\varphi_{1}\wedge\varphi_{2}\,|\,\varphi_{1}\mathsf{U}_{[\,a,\,b\,]}\varphi_{2}, (1)

where φ1,φ2\varphi_{1},\varphi_{2} are STL formulas, ¬\lnot, \wedge are operators negation and conjunction, μ\mu is a predicate that evaluates a predicate function η:n{,}\eta:\mathbb{R}^{n}\rightarrow\{\,\top,\,\bot\,\} by μ={ifη(xk)0ifη(xk)<0\displaystyle\mu=\left\{\begin{array}[]{ll}\top&\mathrm{if}~{}\eta(x_{k})\geq 0\\ \bot&\mathrm{if}~{}\eta(x_{k})<0\end{array}\right., for discrete time kk, and 𝖴[a,b]\mathsf{U}_{[\,a,\,b\,]} is the until operator bounded with time interval [a,b][\,a,\,b\,], where a,ba,b\in\mathbb{N} and aba\leq b.

The semantics of STL are given as follows. We denote the satisfaction of φ\varphi at time kk by 𝐱\mathbf{x} as (𝐱,k)φ(\mathbf{x},k)\vDash\varphi. Furthermore, we have that (𝐱,k)μη(xk)0(\mathbf{x},k)\vDash\mu\leftrightarrow\eta(x_{k})\geq 0; (𝐱,k)¬φ¬((𝐱,k)φ)(\mathbf{x},k)\vDash\lnot\varphi\leftrightarrow\lnot((\mathbf{x},k)\vDash\varphi); (𝐱,k)φ1φ2(𝐱,k)φ1(\mathbf{x},k)\vDash\varphi_{1}\wedge\varphi_{2}\leftrightarrow(\mathbf{x},k)\vDash\varphi_{1} and (𝐱,k)ϕ2(\mathbf{x},k)\vDash\phi_{2}; (𝐱,k)φ1𝖴[a,b]φ2(\mathbf{x},k)\vDash\varphi_{1}\mathsf{U}_{[\,a,\,b\,]}\varphi_{2} \leftrightarrow k[k+a,k+b]\exists\,k^{\prime}\in[\,k+a,\,k+b\,], such that (x,k)φ2(x,k^{\prime})\vDash\varphi_{2}, and (x,k′′)φ1(x,k^{\prime\prime})\vDash\varphi_{1} holds for all k′′[k,k]k^{\prime\prime}\in[\,k,\,k^{\prime}\,]. Besides, additional operators disjunction, eventually, and always are, respectively, defined as φ1φ2=¬(¬φ1¬φ2)\varphi_{1}\vee\varphi_{2}=\lnot\left(\lnot\varphi_{1}\wedge\lnot\varphi_{2}\right), 𝖥[a,b]φ=𝖴[a,b]φ\mathsf{F}_{[\,a,\,b\,]}\varphi=\top\mathsf{U}_{[\,a,\,b\,]}\varphi, and 𝖦[a,b]φ=¬𝖥[a,b]¬φ\mathsf{G}_{[\,a,\,b\,]}\varphi=\lnot\mathsf{F}_{[\,a,\,b\,]}\lnot\varphi. When k=0k\!=\!0, we also write (𝐱,0)φ(\mathbf{x},0)\vDash\varphi as 𝐱φ\mathbf{x}\vDash\varphi. The length [17] of an STL, (φ)\mathcal{L}(\varphi), is recursively defined as (μ)=0\mathcal{L}(\mu)=0, (¬φ)=(φ)\mathcal{L}(\lnot\varphi)=\mathcal{L}(\varphi), (φ1φ2)=max{(φ1),(φ2)}\mathcal{L}(\varphi_{1}\wedge\varphi_{2})=\max\{\mathcal{L}(\varphi_{1}),\mathcal{L}(\varphi_{2})\}, (φ1𝖴[a,b]φ2)=b+max{(φ1),(φ2)}\mathcal{L}(\varphi_{1}\mathsf{U}_{[\,a,\,b\,]}\varphi_{2})=b+\max\{\mathcal{L}(\varphi_{1}),\mathcal{L}(\varphi_{2})\}, which represents the maximum time it takes to determine the truth of the formula φ\varphi.

II-B Optimization-Based Specification Synthesis

STL formulas are used to specify the requirements of a signal of a dynamic system. In this paper, we consider the following discrete-time dynamic system,

xk+1=f(xk,uk),x_{k+1}=f(x_{k},\,u_{k}), (2)

where xknx_{k}\in\mathbb{R}^{n} and uk𝕌u_{k}\in\mathbb{U} are the state and the control input of the system at time kk, where 𝕌m\mathbb{U}\subseteq\mathbb{R}^{m} is the admissible control set, and f:n×𝕌nf:\mathbb{R}^{n}\times\mathbb{U}\rightarrow\mathbb{R}^{n} is a smooth vector field. Then, the control problem of the system can be formulated as the following optimization problem,

min𝐮(k=0L1ukukρ(𝐱,φ))\displaystyle\textstyle\min_{\mathbf{u}}\left(\sum_{k=0}^{L-1}u_{k}^{\!\top\!}u_{k}-\rho(\mathbf{x},\varphi)\right) (3a)
s.t.\displaystyle\mathrm{s.t.}~{} eq.(2)anduk𝕌,k{0,1,,L1},\displaystyle~{}\mathrm{eq}.~{}\eqref{eq:opti_sys}~{}\mathrm{and}~{}u_{k}\in\mathbb{U},~{}\forall\,k\in\{0,1,\cdots,L-1\}, (3b)

where L+L\!\in\!\mathbb{N}^{+} is the control horizon, 𝐮=u0u1\mathbf{u}\!=\!u_{0}u_{1} \cdots uL1u_{L-1} and 𝐱=x0x1xL\mathbf{x}\!=\!x_{0}x_{1}\cdots x_{L} are the open-loop control and state signals, φ\varphi is an STL formula with (φ)=L\mathcal{L}(\varphi)\!=\!L to specify the requirements on the state signal 𝐱\mathbf{x}, and ρ(𝐱,φ)\rho(\mathbf{x},\varphi) is the robustness of the satisfaction as defined in [18, 19], with ϱ(𝐱,φ)>0𝐱φ\varrho(\mathbf{x},\varphi)\!>\!0\!\leftrightarrow\!\mathbf{x}\!\vDash\!\varphi. Eq. (3) renders an open-loop control problem and can be solved using MICP [7] with an input interface (x0,L,φ)(x_{0},\,L,\,\varphi).

II-C Problem Statement

Solving problem (3) using MICP usually introduces heavy computational load due to the large number of integer variables brought up by the logical and temporal operators in the specification φ\varphi [7]. Usually, longer formulas introduce substantially more integer variables than shorter ones. In the worst case, a specification φ\varphi may contain N+N\in\mathbb{N}^{+} 𝖦\mathsf{G} or 𝖥\mathsf{F} subformulas with the same length L=(φ)L\!=\!\mathcal{L}(\varphi). This requires NLNL binary variables to determine the logical satisfaction of the complete specification, which leads to an exponential complexity O(2NL)O(2^{NL}). Therefore, the computational complexity of the synthesis problem is greatly dependent on the number and the lengths of subformulas.

In this paper, we intend to reduce the complexity of a synthesis problem (3) by separating a long specification φ\varphi into shorter subformulas which can be solved by smaller optimization problems. Examples of such separation include the following principle for an until operator φ=φ1𝖴(a,b)φ2\varphi\!=\!\varphi_{1}\mathsf{U}_{(\,a,\,b\,)}\varphi_{2} with a separating point κ+\kappa\!\in\!\mathbb{N}^{+}, a<κ<ba\!<\!\kappa\!<\!b [14],

φ=φ1𝖴(a,κ)φ2(𝖦(a,κ)φ1𝖥{κ}(φ1φ2φ1𝖴(0,bκ)φ2)),\begin{split}\!\!\!\!\varphi\!=\!\varphi_{1}\!\mathsf{U}_{(a,\kappa)}\!\varphi_{2}\!\vee\!(\!\mathsf{G}_{(a,\kappa)}\!\varphi_{1}\!\wedge\!\mathsf{F}\!_{\{\kappa\}}\!\!\left(\varphi_{1}\!\wedge\!\varphi_{2}\!\vee\!\varphi_{1}\!\mathsf{U}_{(0,b-\kappa)}\!\varphi_{2})\!\right),\end{split} (4)

where the temporal operators 𝖥\mathsf{F} and 𝖦\mathsf{G} in (4) have shorter intervals compared to the original interval (a,b)(\,a,\,b\,). This form is referred to as syntactic separation since it ensures syntactic equivalence [14, 15], i.e., both sides have the same set of satisfying signals.

In this sense, we aim to decompose the overall synthesis problem into several subproblems with shorter horizons and fewer specifications, inspiring the modularized synthesis of the original specification. More precisely, we focus on the following fragment of complex formulas,

φ:=i=1ns𝖦[ais,bis]γis𝗌𝖺𝖿𝖾𝗍𝗒𝖿𝗈𝗋𝗆𝗎𝗅𝖺j=1np𝖦[ajp,bjp]𝖥[ 0,cjp]γjpprogressformula𝖥[at,bt]𝖦[ 0,ct]γttargetformula,\small\textstyle\varphi\!:=\!\underbrace{\textstyle\bigwedge_{i=1}^{n_{s}}\!\mathsf{G}_{[\,a^{s}_{i},\,b^{s}_{i}\,]}\gamma^{s}_{i}}_{\mathsf{safety\ formula}}\!\wedge\!\underbrace{\textstyle\bigwedge_{j=1}^{n_{p}}\!\mathsf{G}_{[\,a^{p}_{j},\,b^{p}_{j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{j}\,]}\gamma^{p}_{j}}_{\mathrm{progress\ formula}}\!\wedge\!\underbrace{\textstyle\mathsf{F}_{[\,a^{t},\,b^{t}\,]}\mathsf{G}_{[\,0,\,c^{t}\,]}\gamma^{t}}_{\mathrm{target\ formula}}, (5)

where 𝖦[ais,bis]γis\mathsf{G}_{[\,a^{s}_{i},\,b^{s}_{i}\,]}\gamma^{s}_{i}, 𝖦[ajp,bjp]𝖥[ 0,cjp]γjp\mathsf{G}_{[\,a^{p}_{j},\,b^{p}_{j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{j}\,]}\gamma^{p}_{j}, and 𝖥[at,bt]𝖦[ 0,ct]γt\mathsf{F}_{[\,a^{t},\,b^{t}\,]}\mathsf{G}_{[\,0,\,c^{t}\,]}\gamma^{t} are the safety, progress, and target subformulas, for i{1,2,,ns}i\!\in\!\{1,2,\cdots,n_{s}\} and j{1,2,,np}j\!\in\!\{1,2,\cdots,n_{p}\}, ns,np+n_{s},n_{p}\!\in\!\mathbb{N}^{+}, γis\gamma^{s}_{i}, γjp\gamma^{p}_{j}, and γt\gamma^{t} are the boolean formulas that only contain predicates connected with logical operators ¬\lnot, \wedge, and \vee, and [ais,bis][\,a^{s}_{i},\,b^{s}_{i}\,], [ajp,bjp][\,a^{p}_{j},\,b^{p}_{j}\,], and [at,bt][\,a^{t},\,b^{t}\,] are the non-empty syntactic intervals of the subformulas. We also refer to [ais,bis][\,a^{s}_{i},\,b^{s}_{i}\,], [ajp,bjp+cjp][\,a^{p}_{j},\,b^{p}_{j}\!+\!c^{p}_{j}\,], and [at,bt+ct][\,a^{t},\,b^{t}\!+\!c^{t}\,] which represent the complete coverage of the subformulas as their complete intervals, making a clear distinguishment with the syntactic intervals.

Similar to the popularly used GR(1) specifications [20], the fragment φ\varphi defined above is a complex STL formula composed of three components representing meaningful specifications for practical tasks. The safety part consists of a series of always subformulas specifying the conditions that should always hold. This could include for example safety rules applicable to the system. The progress component contains the always subformulas with eventual operators embedded to represent the tasks that should be performed regularly, such as the monitoring routines. The target component describes the task that should be achieved within a strict deadline. An always formula is embedded to ensure the holding of the target condition for a minimum time.

Specifications in the form of eq. (5) already have a natural division in subformulas for individual subtasks. However, modularized synthesis also requires the division of the subformulas in time. Given a set of ordered timing points κ1<κ2<<κl\kappa_{1}\!<\!\kappa_{2}<\!\cdots\!<\!\kappa_{l}, κz\kappa_{z}\!\in\!\mathbb{N}, z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, ll\!\in\!\mathbb{N}, we intend to split the specification φ\varphi into subformulas φz\varphi_{z} with shorter lengths. Then, modularized synthesis expects to efficiently solve the synthesis problem for φ\varphi through a sequence of synthesis problems for its subformulas φz\varphi_{z}. To achieve this, the overlapping between the timing intervals of the subformulas should be eliminated to decouple the dependence of different timings. In the next section, we will show that the decoupling of the safety subformulas can be achieved by syntactic separation while ensuring the syntactic equivalence between the separated specification and the original one. However, the progress and the target subformulas are challenging to decouple since the timing overlapping cannot be eliminated by merely using syntactic separation. This has not been well investigated by existing work. We will also show that these subformulas can be decoupled using the complete specification split which ensures soundness but introduces conservativeness. Our work is the first to decompose such STL formulas for modularized synthesis in the literature.

III Main Results

In this section, we will first show how to split the syntactic intervals of a complex specification while ensuring the syntactic equivalence. Then, we further present a complete split form to eliminate the overlapping of the complete intervals of the subformulas while causing certain conservativeness. Finally, we give the modularized synthesis algorithm based on these separation forms.

III-A Syntactic Timing Separation

The syntactic separation form of a complex specification in eq. (5) is defined as follows.

Definition 1 (Syntactic Timing Separation)

Given an ordered sequence of timing 0=κ0<κ1<<κl=L0\!=\!\kappa_{0}\!<\!\kappa_{1}\!<\!\cdots\!<\!\kappa_{l}\!=\!L, κz\kappa_{z}\!\in\!\mathbb{N}, for z{1,2,,l1}z\!\in\!\{1,2,\cdots,l-1\}, ll\!\in\!\mathbb{N}, the specification φ\varphi defined in eq. (5) is said to be in a syntactic timing separation form if

φ:=z=1lϕzz=1lϕzt,\varphi\textstyle:=\bigwedge_{z=1}^{l}\phi_{z}\wedge\bigvee_{z=1}^{l}\phi^{t}_{z}, (6)

where, for each z{1,2,,l}z\!\in\!\{1,2,\cdots,l\,\},

ϕz=i=1ns,z𝖦[az,is,bz,is]γis𝗌𝖺𝖿𝖾𝗍𝗒𝗌𝗎𝖻𝖿𝗈𝗋𝗆𝗎𝗅𝖺j=1np,z𝖦[az,jp,bz,jp]𝖥[ 0,cz,jp]γjpprogresssubformula,ϕzt=𝖥[azt,bzt]𝖦[ 0,czt]γttargetsubformula or ϕzt=¬,\begin{split}&\small\phi_{z}\textstyle=\underbrace{\textstyle\bigwedge_{i=1}^{n_{s,z}}\mathsf{G}_{[\,a^{s}_{z,i},\,b^{s}_{z,i}\,]}\gamma^{s}_{i}}_{\mathsf{safety\ subformula}}\wedge\underbrace{\textstyle\bigwedge_{j=1}^{n_{p,z}}\mathsf{G}_{[\,a^{p}_{z,j},\,b^{p}_{z,j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j}}_{\mathrm{progress\ subformula}},\\ &\small\phi^{t}_{z}=\underbrace{\mathsf{F}_{[\,a^{t}_{z},\,b^{t}_{z}\,]}\mathsf{G}_{[\,0,\,c^{t}_{z}\,]}\gamma^{t}}_{\mathrm{target\ subformula}}\mbox{ or }\phi^{t}_{z}=\neg\top,\end{split}

and all intervals associated to z{1,2,,l}z\!\in\!\{1,2,\cdots,l\,\} satisfy [az,is,bz,is][κz1,κz][\,a^{s}_{z,i},\,b^{s}_{z,i}\,]\!\subset\![\,\kappa_{z-1},\,\kappa_{z}\,], i{1,2,,ns,z}\forall\,i\in\{1,2,\cdots,n_{s,z}\}, [az,jp,bz,jp][κz1,κz][\,a^{p}_{z,j},\,b^{p}_{z,j}\,]\!\subset\![\,\kappa_{z-1},\,\kappa_{z}\,], j{1,2,,np,z}\forall\,j\!\in\!\{1,2,\cdots,n_{p,z}\}, and [azt,bzt][κz1,κz][\,a^{t}_{z},\,b^{t}_{z}\,]\!\subset\![\,\kappa_{z-1},\,\kappa_{z}\,], where ns,z,np,zn_{s,z},n_{p,z}\!\in\!\mathbb{N} are the numbers of the effective safety and progress subformulas for [κz1,κz][\,\kappa_{z-1},\,\kappa_{z}\,].

Consider the following specifications with the same length 66: φ1=𝖦[ 0, 4]γ0𝖦[ 2, 6]γ1\varphi_{1}\!=\!\mathsf{G}_{[\,0,\,4\,]}\gamma_{0}\!\wedge\!\mathsf{G}_{[\,2,\,6\,]}\gamma_{1}, φ2=𝖦[ 0, 2]𝖥[ 0, 1]γ0𝖦[ 2, 6]γ1\varphi_{2}\!=\!\mathsf{G}_{[\,0,\,2\,]}\mathsf{F}_{[\,0,\,1\,]}\gamma_{0}\!\wedge\!\mathsf{G}_{[\,2,\,6\,]}\gamma_{1}, φ3=\varphi_{3}\!= 𝖦[ 0, 4]γ0𝖥[ 0, 4]𝖦[ 0, 2]γ1\mathsf{G}_{[\,0,\,4\,]}\gamma_{0}\!\wedge\!\mathsf{F}_{[\,0,\,4\,]}\!\mathsf{G}_{[\,0,\,2\,]}\gamma_{1}, and φ4=𝖦[ 0, 2]𝖥[ 0, 1]γ0𝖥[ 3, 5]𝖦[ 1, 1]γ1\varphi_{4}\!=\!\mathsf{G}_{[\,0,\,2\,]}\!\mathsf{F}_{[\,0,\,1\,]}\gamma_{0}\!\wedge\!\mathsf{F}_{[\,3,\,5\,]}\!\mathsf{G}_{[\,1,\,1\,]}\gamma_{1}, where γ0\gamma_{0}, γ1\gamma_{1} are boolean formulas. Consider splitting points κ0=0\kappa_{0}\!=\!0, κ1=2\kappa_{1}\!=\!2, κ2=6\kappa_{2}\!=\!6, according to Definition 1, only φ2\varphi_{2} and φ4\varphi_{4} are in a form that is syntactically separated by κ0\kappa_{0}, κ1\kappa_{1}, κ2\kappa_{2}. Formulas φ1\varphi_{1}, φ3\varphi_{3} are not since κ1\kappa_{1} splits the intervals [ 0, 4][\,0,\,4\,].

We are interested in translating the specification φ\varphi (5) into the separated form of (6) using syntactic separation. In this way, the individual numbers of the safety and progress specifications for each timing interval z{1,2,,l}z\in\{1,2,\cdots,l\}, denoted as ns,zn_{s,z}, np,zn_{p,z}, can be substantially smaller than those of the corresponding safety and progress specifications, i.e., nsn_{s}, npn_{p}. The following syntactic separation principles can be used to transform (5) into (6) with syntactic equivalence guaranteed.

Lemma 1 ([14])

The following properties hold for arbitrary STL formulas φ\varphi, φ1\varphi_{1}, and φ2\varphi_{2}, with κ\kappa\!\in\!\mathbb{N}, κ<a\kappa\!<\!a: 𝖥{κ}(¬φ)=¬𝖥{κ}φ\mathsf{F}_{\{\kappa\}}(\lnot\varphi)\!=\!\lnot\mathsf{F}_{\{\kappa\}}\varphi, 𝖥{κ}(φ1φ2)=𝖥{κ}φ1𝖥{κ}φ2\mathsf{F}_{\{\kappa\}}(\varphi_{1}\!\wedge\!\varphi_{2})\!=\!\mathsf{F}_{\{\kappa\}}\varphi_{1}\!\wedge\!\mathsf{F}_{\{\kappa\}}\varphi_{2}, 𝖥{κ}(φ1𝖴(a,b)φ2)=𝖥{κ}φ1𝖴(a,b)𝖥{κ}φ2\mathsf{F}_{\{\kappa\}}(\varphi_{1}\mathsf{U}_{(\,a,\,b\,)}\varphi_{2})\!=\!\mathsf{F}_{\{\kappa\}}\varphi_{1}\mathsf{U}_{(\,a,\,b\,)}\mathsf{F}_{\{\kappa\}}\varphi_{2}, φ𝖴(a,b)(φ1φ2)=\varphi\mathsf{U}_{(\,a,\,b\,)}(\varphi_{1}\!\vee\!\varphi_{2})= φ𝖴(a,b)φ1φ𝖴(a,b)φ2\varphi\mathsf{U}_{(\,a,\,b\,)}\varphi_{1}\!\vee\!\varphi\mathsf{U}_{(\,a,\,b\,)}\varphi_{2}.

Lemma 2

The following conditions hold for arbitrary STL formulas φ\varphi, φ1\varphi_{1}, and φ2\varphi_{2} defined in Sec. II-A.

1). 𝖥{κ}φ=𝖦{κ}φ\mathsf{F}_{\{\kappa\}}\varphi=\mathsf{G}_{\{\kappa\}}\varphi, for any κ\kappa\in\mathbb{N}, where both sides are true for signal 𝐱\mathbf{x}, if and only if (𝐱,κ)φ(\mathbf{x},\kappa)\vDash\varphi.

2). 𝖦{κ}(φ1φ2)=𝖦{κ}φ1𝖦{κ}φ2\mathsf{G}_{\{\kappa\}}(\varphi_{1}\!\vee\!\varphi_{2})\!=\!\mathsf{G}_{\{\kappa\}}\varphi_{1}\!\vee\!\mathsf{G}_{\{\kappa\}}\varphi_{2} holds for any κ\kappa\in\mathbb{N}.

3). For any a,ba,b\!\in\!\mathbb{N}, aba\leq b, 𝖦{κ}(𝖦[a,b]φ)=𝖦[κ+a,κ+b]φ\mathsf{G}_{\{\kappa\}}\!\!\left(\mathsf{G}_{[\,a,\,b\,]}\varphi\right)\!=\!\mathsf{G}_{[\,\kappa+a,\,\kappa+b\,]}\!\varphi and 𝖥{κ}(𝖥[a,b]φ)=𝖥[κ+a,κ+b]φ\mathsf{F}_{\{\kappa\}}\!\left(\mathsf{F}_{[\,a,\,b\,]}\varphi\right)\!=\!\mathsf{F}_{[\,\kappa+a,\,\kappa+b\,]}\varphi hold for κ\kappa\!\in\!\mathbb{N}, κ<a\kappa\!<\!a.

Lemma 3

Given a,ba,b\in\mathbb{N}, aba\leq b and an arbitrary STL formula φ\varphi, 𝖦[a,b]φ=𝖦{a}φ𝖦(a,b)φ𝖦{b}φ\mathsf{G}_{[\,a,\,b\,]}\varphi=\mathsf{G}_{\{a\}}\varphi\wedge\mathsf{G}_{(\,a,\,b\,)}\varphi\wedge\mathsf{G}_{\{b\}}\varphi and 𝖥[a,b]φ=𝖥{a}φ𝖥(a,b)φ𝖥{b}φ\mathsf{F}_{[\,a,\,b\,]}\varphi=\mathsf{F}_{\{a\}}\varphi\vee\mathsf{F}_{(\,a,\,b\,)}\varphi\vee\mathsf{F}_{\{b\}}\varphi hold.

Theorem 1 (Arbitrary Syntactic Separation)

Given κ\kappa\!\in\!\mathbb{N}, the following conditions hold for an STL formula φ\varphi,

𝖦[a,b]φ=𝖦[a,κ]φ𝖦[κ,b]φ,𝖥[a,b]φ=𝖥[a,κ]φ𝖥[κ,b]φ,\mathsf{G}_{[\,a,\,b\,]}\varphi\!=\!\mathsf{G}_{[\,a,\,\kappa\,]}\varphi\!\wedge\!\mathsf{G}_{[\,\kappa,\,b\,]}\varphi,~{}\mathsf{F}_{[\,a,\,b\,]}\varphi\!=\!\mathsf{F}_{[\,a,\,\kappa\,]}\varphi\!\vee\!\mathsf{F}_{[\,\kappa,\,b\,]}\varphi, (7)

with aκba\!\leq\!\kappa\!\leq\!b. Moreover, the following conditions hold,

𝖦[κ0,κl]φ=i=1l𝖦[κi1,κi]φ,𝖥[κ0,κl]φ=i=1l𝖥[κi1,κi]φ,\textstyle\mathsf{G}_{[\,\kappa_{0},\,\kappa_{l}\,]}\varphi\!=\!\bigwedge_{i=1}^{l}\!\mathsf{G}_{[\,\kappa_{i-1},\,\kappa_{i}\,]}\varphi,~{}\mathsf{F}_{[\,\kappa_{0},\,\kappa_{l}\,]}\varphi\!=\!\bigvee_{i=1}^{l}\!\mathsf{F}_{[\,\kappa_{i-1},\,\kappa_{i}\,]}\varphi, (8)

for κ0\kappa_{0}, κ1\kappa_{1}, \cdots, κl\kappa_{l}\in\mathbb{N}, κ0<κ1<<κl\kappa_{0}<\kappa_{1}<\cdots<\kappa_{l}.

Lemmas 2 and 3 provide complementary properties to previous work on syntactic separation [14, 15]. Note that they apply to all STL formulas as introduced in Sec. II-A, but not only the fragment in eq. (5). Most important is theorem 1 which allows separating a subformula into the logical combination of shorter subformulas with an arbitrary number of timing points. Such separation as eq. (6) does not change the syntax of the specification. i.e., for any signal 𝐱[ 0,L]\mathbf{x}_{[\,0,\,L\,]} with L=(φ)L\!=\!\mathcal{L}(\varphi), 𝐱φ𝐱z=1lϕzz=1lϕzt\mathbf{x}\!\vDash\!\varphi\!\leftrightarrow\!\mathbf{x}\!\vDash\!\bigwedge_{z=1}^{l}\phi_{z}\wedge\bigvee_{z=1}^{l}\phi^{t}_{z}. Nevertheless, syntactic timing separation only splits up the syntactic interval of a subformula, which does not eliminate the overlapping between the complete intervals of the subformulas. This is not sufficient for the modularized synthesis of specifications. In the following, we will give an alternative sufficient form of separation that is no longer equivalent to the original specification but ensures the separation of the complete intervals of the subformulas. This form is more conservative than the original specification but ensures the soundness of the solution and allows for modularized solutions to the synthesis problem.

III-B Complete Specification Split for Modularized Checking

Before we give the complete splitting form of specification (5), we first explain why eliminating the overlapping of the complete intervals of subformulas is important to modularized model checking which is the foundation of modularized synthesis to be explained in the following. Consider an STL specification φ\varphi and a signal prefix 𝐱\mathbf{x} with the same length. For a given series of timing points κ0,κ1,,κl\kappa_{0},\kappa_{1},\cdots,\kappa_{l}, modularized model checking investigates under what conditions and what subformulas φ~1\tilde{\varphi}_{1}, φ~2\tilde{\varphi}_{2}, \cdots, φ~l\tilde{\varphi}_{l}, where (φ¯z)=κzκz1\mathcal{L}(\bar{\varphi}_{z})\!=\!\kappa_{z}\!-\!\kappa_{z-1} for all z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, it ensures that

𝐱[κz1,κz]φ¯z,forsomez{1,2,,l}𝐱φ.\mathbf{x}_{[\,\kappa_{z-1},\kappa_{z}\,]}\vDash\bar{\varphi}_{z},~{}\mathrm{for~{}some}~{}z\!\in\!\{1,2,\cdots,l\}\rightarrow\mathbf{x}\vDash\varphi. (9)

In such a way, we can split the model checking of the original signal 𝐱\mathbf{x} and specification φ\varphi into ll-steps of model checking for shorter signals 𝐱[κz1,κz]φ¯z\mathbf{x}_{[\,\kappa_{z-1},\kappa_{z}\,]}\vDash\bar{\varphi}_{z} and specifications φ¯z\bar{\varphi}_{z}. This is only feasible when the coverage or the complete interval of the subformulas φ¯z\bar{\varphi}_{z} is confined within the corresponding interval [κz1,κz][\,\kappa_{z-1},\kappa_{z}\,] such that it does not overlap with those of other subformulas. Otherwise, the model checking for the left side of (9) can not be performed independently for each z{1,2,,l}z\!\in\!\{1,2,\cdots,l\} due to the coupled timing dependence.

Based on this consideration, we give the complete specification split form for formula φ\varphi in eq. (5) as

φ¯:=z=1lϕ¯zz=1lϕ¯zt,\bar{\varphi}\textstyle:=\bigwedge_{z=1}^{l}\bar{\phi}_{z}\wedge\bigvee_{z=1}^{l}\bar{\phi}^{t}_{z}, (10)

where, for any z{1,2,,l}z\!\in\!\{1,2,\cdots,l\},

ϕ¯z:=i=1ns,z𝖦[az,is,bz,is]γisj=1np,z𝖦[az,jp,min{bz,jp,κzcz,jp}]𝖥[ 0,cz,jp]γjpr=1n^p,z𝖥[κzτz,r,κz]γjpq=1n^p,z1𝖥[κz1,κz1+cz1,qpτz1,q]γjpϕ¯zt:=𝖥[azt,min{bzt,κzczt}]𝖦[ 0,czt]γt or ϕ¯zt=¬,\begin{split}&\small\textstyle\bar{\phi}_{z}\!:=\!\bigwedge_{i=1}^{n_{s,z}}\!\mathsf{G}_{[\,a^{s}_{z,i},\,b^{s}_{z,i}\,]}\gamma^{s}_{i}\wedge\bigwedge_{j=1}^{n_{p,z}}\mathsf{G}_{[\,a^{p}_{z,j},\,\min\{b^{p}_{z,j},\kappa_{z}-c^{p}_{z,j}\}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j}\\ &\textstyle~{}~{}~{}~{}\wedge\bigwedge_{r=1}^{\hat{n}_{p,z}}\!\mathsf{F}_{[\,\kappa_{z}-\tau_{z,r},\,\kappa_{z}\,]}\gamma^{p}_{j}\wedge\bigwedge_{q=1}^{\hat{n}_{p,z-1}}\mathsf{F}_{[\,\kappa_{z-1},\,\kappa_{z-1}+c^{p}_{z-1,q}-\tau_{z-1,q}\,]}\gamma^{p}_{j}\\ &\small\bar{\phi}^{t}_{z}\!:=\!\mathsf{F}_{[\,a^{t}_{z},\,\min\{b^{t}_{z},\,\kappa_{z}-c^{t}_{z}\}]}\mathsf{G}_{[\,0,\,{c}^{t}_{z}\,]}\gamma^{t}\mbox{ or }\bar{\phi}^{t}_{z}=\neg\top,\end{split}

where n^p,z\hat{n}_{p,z} for any z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, is the number of j{1,2,,np,z}j\!\in\!\{1,2,\cdots,n_{p,z}\} such that bz,jp+cz,jp>κzb^{p}_{z,j}+c^{p}_{z,j}>\kappa_{z}, i.e., the number of progress formulas that exceed the interval [κz1,κz][\,\kappa_{z-1},\,\kappa_{z}\,], and τz,r[ 0,cz,rp]\tau_{z,r}\!\in\![\,0,\,c^{p}_{z,r}\,] for any r{1,2,,n^p,z}r\!\in\!\{1,2,\cdots,\hat{n}_{p,z}\}, is a heuristic value to be determined beforehand. It can be verified that (φ¯)=κl=(φ)\mathcal{L}(\bar{\varphi})\!=\!\kappa_{l}\!=\!\mathcal{L}(\varphi). Then, we have the following two theorems to address the relation between the complete split form φ¯\bar{\varphi} in eq. (10) and the syntactic separation form φ\varphi in eq. (6).

Lemma 4 (Complete Interval Split)

Given 0=κ0<κ1<<κl=L0\!=\!\kappa_{0}\!<\!\kappa_{1}\!<\!\cdots\!<\!\kappa_{l}\!=\!L, κz\kappa_{z}\!\in\!\mathbb{N}, z{1,2,,l1}z\!\in\!\{1,2,\cdots,l-1\}, ll\!\in\!\mathbb{N} and a specification φ¯\bar{\varphi} in form (10), if κzκz1cz,jp\kappa_{z}-\kappa_{z-1}\geq c^{p}_{z,j} for all j{1,2,,np,z}j\!\in\!\{1,2,\cdots,n_{p,z}\} and for all z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, the complete intervals of ϕ¯1\bar{\phi}_{1}, ϕ¯2\bar{\phi}_{2}, \cdots, ϕ¯l\bar{\phi}_{l} do not overlap, and the complete intervals ϕ¯1t\bar{\phi}^{t}_{1}, ϕ¯2t\bar{\phi}^{t}_{2}, \cdots, ϕ¯lt\bar{\phi}^{t}_{l} do not overlap.

Lemma 5 (Soundness)

For a specification φ\varphi in eq. (6) and its complete split form φ¯\bar{\varphi} in eq. (10) with the splitting timing points κ0\kappa_{0}, κ1\kappa_{1}, \cdots, κl\kappa_{l} as described in lemma 4, any signal prefix 𝐱\mathbf{x} with length (φ)\mathcal{L}(\varphi) holds that 𝐱φ¯𝐱φ\mathbf{x}\vDash\bar{\varphi}\rightarrow\mathbf{x}\vDash\varphi.

Theorem 2

For a specification φ\varphi in eq. (6) and its complete split form φ¯\bar{\varphi} in eq. (10) with the splitting timing points κ0\kappa_{0}, κ1\kappa_{1}, \cdots, κl\kappa_{l} as described in lemma 4, 𝐱φ\mathbf{x}\vDash\varphi holds for signal 𝐱\mathbf{x} with length (φ)\mathcal{L}(\varphi) if the following conditions both hold,
1). 𝐱[κz1,κz]𝖦{κz1}ϕ¯z\mathbf{x}_{[\,\kappa_{z-1},\kappa_{z}\,]}\vDash\mathsf{G}_{\{-\kappa_{z-1}\}}\bar{\phi}_{z}, z{1,2,,l}\forall\,\,z\!\in\!\{1,2,\cdots,l\};
2). 𝐱[κz1,κz]𝖦{κz1}ϕ¯zt\mathbf{x}_{[\,\kappa_{z-1},\kappa_{z}\,]}\vDash\mathsf{G}_{\{-\kappa_{z-1}\}}\bar{\phi}^{t}_{z}, z{1,2,,l}\exists\,\,z\!\in\!\{1,2,\cdots,l\}.

Theorem 2 has solved the main problem of modularized model checking for specification φ\varphi given in eq. (5) by eliminating the overlapping between the complete intervals of its subformulas, as addressed by lemma 4. From a practical perspective, the overlapping means that the timing coupling between different subtasks specifies that these subtasks need to be executed in parallel. In this sense, theorems (2) provide a solution to decouple such dependence by imposing additional specifications to the subtasks, such that they can be solved independently in sequence. The soundness of the complete interval split is ensured by lemma 5. The timing points that mark the solving sequence can be predetermined according to practical requirements.

III-C Modularized Synthesis of Split Specifications

Given the complete specification split form φ¯\bar{\varphi} in eq. (10) for modularized model checking, we can further investigate the modularized synthesis by incorporating the constraints brought up by the dynamic systems (2). For this, we develop algorithm 1 for modularized synthesis of a split specification. In algorithm 1, opt() is a function of the optimization problem in eq. (3) with interface (x0,L,φ)(x_{0},\,L,\,\varphi), and FEASIBLE is a binary variable to indicate whether problem (3) is feasible. Algorithm 1 allows us to perform synthesis for the dynamic system (2) with specification φ¯\bar{\varphi} in a modularized way, i.e., by solving a sequence of smaller synthesis problems in a timing order κ1\kappa_{1}, κ2\kappa_{2}, \cdots, κl\kappa_{l}. For each time κz\kappa_{z}, z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, the synthesis subproblem requires substantially fewer integers than the original problem since it involves much shorter and fewer specifications.

Complexity Analysis: As addressed in Sec. II-C, the complexity of directly synthesizing the original specification φ\varphi in eq. 5 is O(2NL)O(2^{NL}), where L=(φ)L\!=\!\mathcal{L}(\varphi) is the length of φ\varphi and N:=maxx{1,2,,l}(ns+np+1)N:=\max_{x\in\{1,2,\cdot,l\}}(n_{s}+n_{p}+1) is the total number of subformulas. For its complete split form φ¯\bar{\varphi} in eq. (10), assume that the longest subformula has a length L¯=maxz{1,2,,l}(κzκz1)\bar{L}\!=\!\max_{z\in\{1,2,\cdots,l\}}(\kappa_{z}-\kappa_{z-1}), the complexity of algorithm 1 is O(l2N¯L¯)O(l\cdot 2^{\bar{N}\bar{L}}), where N¯:=maxz{1,2,,l}(ns,z+np,z+n^p,z+n^p,z1)\bar{N}\!:=\!\max_{z\in\{1,2,\cdots,l\}}(n_{s,z}\!+\!n_{p,z}\!+\!\hat{n}_{p,z}\!+\!\hat{n}_{p,z-1}) denotes the maximum number of subformulas in one synthesis module z{1,2,,l}z\in\{1,2,\cdots,l\}. As addressed in Sec. III-A and Sec. III-B, from syntactic separation we can expect ns,znsn_{s,z}\ll n_{s} and n^p,z<np,znp\hat{n}_{p,z}<n_{p,z}\ll n_{p} for any z{1,2,,l}z\!\in\{1,2,\cdots,l\}, which leads to N¯N\bar{N}\ll N. Moreover, we can also ensure L¯L\bar{L}\ll L by properly selecting the timing points κ0\kappa_{0}, κ1\kappa_{1}, \cdots, κl\kappa_{l}. Thus, with 2N¯L¯2NL2^{\bar{N}\bar{L}}\ll 2^{NL}, modularized synthesis can substantially reduce the complexity of the synthesis problem for long and complex specifications and improve its efficiency.

Algorithm 1 Modularized Synthesis of Specification φ¯\bar{\varphi}
0:  Initial system condition x0x_{0}, κ0=0\kappa_{0}\!=\!0, splitting timing points κz\kappa_{z} and subformulas ϕ¯z\bar{\phi}_{z}, ϕ¯zt\bar{\phi}^{t}_{z}, for z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}.
0:  Control signal 𝐮\mathbf{u} and state signal 𝐱\mathbf{x}.
1:  xκ0x0x_{\kappa_{0}}\leftarrow x_{0}
2:  for z=1z=1 to ll do
3:     Lzκzκz1L_{z}\leftarrow\kappa_{z}-\kappa_{z-1}
4:     if z>1z>1 and 𝐱[κ0,κz1]wz1ϕ¯wt\mathbf{x}_{[\,\kappa_{0},\kappa_{z-1}\,]}\!\vDash\!\vee_{w}^{z-1}\bar{\phi}^{t}_{w} then
5:        𝐱[κz1+1,κz],𝐮[κz1,κz1]opt(xκz1,Lz,ϕ¯z)\mathbf{x}_{[\,\kappa_{z-1}+1,\,\kappa_{z}\,]},\,\mathbf{u}_{[\,\kappa_{z-1},\,\kappa_{z}-1\,]}\leftarrow\mathrm{opt}(x_{\kappa_{z-1}},\,L_{z},\,\bar{\phi}_{z})
6:     else
7:        𝐱[κz1+1,κz],𝐮[κz1,κz1]opt(xκz1,Lz,ϕ¯zϕ¯zt)\mathbf{x}_{[\,\kappa_{z-1}+1,\,\kappa_{z}\,]},\,\mathbf{u}_{[\,\kappa_{z-1},\,\kappa_{z}-1\,]}\leftarrow\mathrm{opt}(x_{\kappa_{z-1}},\,L_{z},\,\bar{\phi}_{z}\wedge\bar{\phi}^{t}_{z})
8:        if not FEASIBLE then
9:           𝐱[κz1+1,κz],𝐮[κz1,κz1]opt(xκz1,Lz,ϕ¯z)\mathbf{x}_{[\,\kappa_{z-1}+1,\,\kappa_{z}\,]},\,\mathbf{u}_{[\,\kappa_{z-1},\,\kappa_{z}-1\,]}\leftarrow\mathrm{opt}(x_{\kappa_{z-1}},\,L_{z},\,\bar{\phi}_{z})
10:        end if
11:     end if
12:  end for
13:  𝐮𝐮[κ0,κl1]\mathbf{u}\leftarrow\mathbf{u}_{[\,\kappa_{0},\,\kappa_{l}-1\,]}, 𝐱𝐱[κ0,κl]\mathbf{x}\leftarrow\mathbf{x}_{[\,\kappa_{0},\,\kappa_{l}\,]}

Limitations: Nevertheless, a limitation of algorithm 1 is that it only ensures soundness but not optimality nor completeness to the original problem. This means that if it generates a feasible solution 𝐱\mathbf{x}, it is certainly a feasible solution to the synthesis problem of the original specification, i.e., 𝐱φ\mathbf{x}\!\vDash\!\varphi (soundness). However, it might not be the optimal solution in terms of the robustness ϱ(𝐱,φ)\varrho(\mathbf{x},\varphi), i.e., local optimality does not necessarily lead to global optimality. Moreover, if algorithm 1 is not feasible, it does not mean that the original synthesis problem 𝐱φ\mathbf{x}\!\vDash\!\varphi is also infeasible (completeness). However, this is already sufficient for most practical robotic tasks. It is also worth noting that algorithm 1 might not be feasible for an arbitrary initial system condition x0x_{0}. For a system (3) and a specification φ¯\bar{\varphi} in eq. (10), the initial condition x0x_{0} that ensures the feasibility of 𝐱φ\mathbf{x}\!\vDash\!\varphi belongs to a set which is referred to as the largest satisfaction region [21]. How to utilize the feasible sets to improve the feasibility of a synthesis problem is also partially discussed in a recent work [16]. We are not providing further discussions on this since it is out of the scope of this paper.

IV Case Study in Simulation

In this section, we use an essential simulation study to showcase how the proposed modularized synthesis approach can be used to efficiently solve a synthesis problem for a complex specification. As shown in Fig. 1, we consider a scenario where a mobile robot is required to perform a monitoring task in a rectangular space SAFETY sized 8×78\,\times 7\, (red) with three square regions TARGET (yellow), HOME (green), and CHANGER (blue) which are centered at (2,5)(2,5), (6,5)(6,5), and (6,2)(6,2) with the same side length 22. The robot is described as the following dynamic model,

ζk+1=ζk+uk,k,\zeta_{k+1}=\zeta_{k}+u_{k},~{}k\!\in\!\mathbb{N}, (11)

where ζk2\zeta_{k}\!\in\!\mathbb{R}^{2} denotes the planar coordinate of the robot position at time step kk and uk2u_{k}\!\in\!\mathbb{R}^{2} is the position increments of the robot per step as the control input of the system. The control input of the system is subject to saturation constraints |uk,1|1\left|u_{k,1}\right|\!\leq\!1, |uk,2|1\left|u_{k,2}\right|\!\leq\!1 for all kk\!\in\!\mathbb{N}, where uk,1,uk,2u_{k,1},u_{k,2}\!\in\!\mathbb{R} are the elements of uku_{k}. The monitoring task is described as follows.

1). Starting from position (0,5)(0,5), the robot should frequently visit TARGET every 55 steps or fewer until k=40k\!=\!40.

2). From k=15k\!=\!15 to k=45k\!=\!45, once the robot leaves HOME, it should get back to HOME within 55 time steps.

3). After k=20k\!=\!20 and before k=45k\!=\!45, it should stay in CHANGER continuously for at least 33 time steps to charge.

4). The robot should always stay in the SAFETY region.

Refer to caption
Figure 1: The illustration of the robot monitoring scenario with the spatial information of the synthesized trajectory subject to specification φ¯\bar{\varphi}.

These tasks can be specified using the following formulas: 𝖦[ 0, 35]𝖥[ 0, 5]γT\mathsf{G}_{[\,0,\,35\,]}\mathsf{F}_{[\,0,\,5\,]}\!\gamma_{T}, 𝖦[ 15, 40]𝖥[ 0, 5]γH\mathsf{G}_{[\,15,\,40\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{H}, 𝖥[ 20, 42]𝖦[ 0, 3]γC\mathsf{F}_{[\,20,\,42\,]}\mathsf{G}_{[\,0,\,3\,]}\gamma_{C}, and 𝖦[ 0, 45]γS\mathsf{G}_{[\,0,\,45\,]}\gamma_{S} respectively, where γT\gamma_{T}, γH\gamma_{H}, γC\gamma_{C}, and γS\gamma_{S} are boolean formulas used to specify ξk\xi_{k}\!\inTARGET, ξk\xi_{k}\!\inHOME, ξk\xi_{k}\!\inCHARGER, and ξk\xi_{k}\!\inSAFETY, for kk\!\in\!\mathbb{N}. Thus, the overall robot task is the conjunction of these formulas. With splitting timing points κ0=0\kappa_{0}\!=\!0, κ1=15\kappa_{1}\!=\!15, κ2=30\kappa_{2}\!=\!30, and κ3=45\kappa_{3}\!=\!45, the overall specification can be represented as a syntactic separation form as eq. (6), i.e., φ:=z=13ϕzz=13ϕzt\varphi\!:=\!\bigwedge_{z=1}^{3}\phi_{z}\!\wedge\!\bigwedge_{z=1}^{3}\phi^{t}_{z}, where ϕ1=𝖦[ 0, 15]γS𝖦[ 0, 15]𝖥[ 0, 5]γT\phi_{1}\!=\!\mathsf{G}_{[\,0,\,15\,]}\gamma_{S}\wedge\mathsf{G}_{[\,0,\,15\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{T}, ϕ2=𝖦[ 15, 30]γS𝖦[ 15, 30]𝖥[ 0, 5]γT𝖦[15,30]𝖥[0,5]γH\phi_{2}\!=\!\mathsf{G}_{[\,15,\,30\,]}\gamma_{S}\!\wedge\!\mathsf{G}_{[\,15,\,30\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{T}\!\wedge\!\mathsf{G}_{[15,30]}\mathsf{F}_{[0,5]}\!\gamma_{H}, ϕ3=𝖦[30,45]γS𝖦[30,35]𝖥[0,5]γT𝖦[30,40]𝖥[0,5]γH\phi_{3}\!=\!\mathsf{G}_{[30,45]}\!\gamma_{S}\!\wedge\!\mathsf{G}_{[30,35]}\mathsf{F}_{[0,5]}\!\gamma_{T}\!\wedge\!\mathsf{G}_{[30,40]}\mathsf{F}_{[0,5]}\!\gamma_{H}, ϕ1t=¬\phi^{t}_{1}\!=\!\lnot\top, ϕ2t=𝖥[ 20, 30]𝖦[ 0, 3]γC\phi^{t}_{2}\!=\!\mathsf{F}_{[\,20,\,30\,]}\mathsf{G}_{[\,0,\,3\,]}\gamma_{C}, ϕ3t=𝖥[ 30, 42]𝖦[ 0, 3]γC\phi^{t}_{3}\!=\!\mathsf{F}_{[\,30,\,42\,]}\mathsf{G}_{[\,0,\,3\,]}\gamma_{C}.

We transform the overal specification φ\varphi into a complete split form as eq. (10), i.e., φ¯:=z=13ϕ¯zz=13ϕ¯zt\bar{\varphi}:=\bigwedge_{z=1}^{3}\bar{\phi}_{z}\!\wedge\!\bigwedge_{z=1}^{3}\bar{\phi}^{t}_{z}, where ϕ¯1=𝖦[ 0, 15]γS𝖦[ 0, 10]𝖥[ 0, 5]γT𝖥[ 12, 15]γT\bar{\phi}_{1}\!=\!\mathsf{G}_{[\,0,\,15\,]}\gamma_{S}\!\wedge\!\mathsf{G}_{[\,0,\,10\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{T}\!\wedge\!\mathsf{F}_{[\,12,\,15\,]}\gamma_{T}, ϕ¯2=𝖦[ 15, 30]γS𝖥[ 15, 17]γT𝖦[ 15, 25]𝖥[ 0, 5]γT𝖥[ 27, 30]γT𝖦[ 15, 25]𝖥[ 0, 5]γH𝖥[ 27, 30]γH\bar{\phi}_{2}\!=\!\mathsf{G}_{[\,15,\,30\,]}\gamma_{S}\!\wedge\!\mathsf{F}_{[\,15,\,17\,]}\gamma_{T}\!\wedge\mathsf{G}_{[\,15,\,25\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{T}\!\wedge\!\mathsf{F}_{[\,27,\,30\,]}\gamma_{T}\!\wedge\!\mathsf{G}_{[\,15,\,25\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{H}\!\wedge\!\mathsf{F}_{[\,27,\,30\,]}\gamma_{H}, ϕ¯3=𝖦[ 30, 45]γS𝖥[ 30, 32]γT𝖦[ 30, 35]𝖥[ 0, 5]γT𝖥[ 30, 32]γH𝖦[ 30, 40]𝖥[ 0, 5]γH\bar{\phi}_{3}\!=\mathsf{G}_{[\,30,\,45\,]}\gamma_{S}\!\wedge\!\!\mathsf{F}_{[\,30,\,32\,]}\gamma_{T}\!\wedge\!\mathsf{G}_{[\,30,\,35\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{T}\!\wedge\!\mathsf{F}_{[\,30,\,32\,]}\gamma_{H}\!\wedge\!\mathsf{G}_{[\,30,\,40\,]}\mathsf{F}_{[\,0,\,5\,]}\gamma_{H}, ϕ¯1t=¬\bar{\phi}^{t}_{1}\!=\!\lnot\top, ϕ¯2t=𝖥[ 20, 27]𝖦[ 0, 3]γS\bar{\phi}^{t}_{2}\!=\!\mathsf{F}_{[\,20,\,27\,]}\mathsf{G}_{[\,0,\,3\,]}\gamma_{S}, ϕ¯3t=𝖥[ 30, 42]𝖦[ 0, 3]γS\bar{\phi}^{t}_{3}\!=\!\mathsf{F}_{[\,30,\,42\,]}\mathsf{G}_{[\,0,\,3\,]}\gamma_{S}, where the heuristic τ\tau values are all determined as 33. Then, we use Algorithm 1 to solve an open-loop control signal for system (11) with the split specification φ¯\bar{\varphi}. The stlpy toolbox [7] is used to implement the opt() method in algorithm 1. The program for this simulation study is published at [22]. The resulting robot trajectory ζk\zeta_{k} is shown in Fig. 1 and Fig. 2. The trajectories in different stages are marked with different colors.

Refer to caption
Figure 2: The xx- and yy-positions of the robot trajectory in three stages. The color in the background indicates in which region the robot stays, namely yellow for TARGET, green for HOME, and blue for CHARGER, which is consistent with Fig. 1.

From Fig. 1 and Fig. 2, it can be seen that the robot starts from the initial position (0,5)(0,5), reaches the TARGET at k=5k\!=\!5 and stays there until k=15k\!=\!15. From k=15k\!=\!15, the robot oscillates between TARGET and HOME to satisfy the task requirements 1) and 2). After k=40k\!=\!40, the robot maintains the visiting frequency to HOME, while taking time to charge itself, which satisfies condition 3). During the entire process, the robot is restricted within the SAFE region, which satisfies specification 4). Therefore, all task specifications are satisfied, which indicates the efficacy of the proposed timing separation approaches and modularized synthesis methods.

V CONCLUSIONS

In this paper, we discuss how to split a big synthesis problem for a complex and long STL specification into several smaller optimization problems with less complexity. The two proposed separation forms for the specification, namely a syntactically separated form and a complete splitting form, allow us to solve these smaller problems in a modularized manner, which is an important step toward efficient optimization-based specification synthesis. There are still two limitations of our work. One is that we only investigate the modularized synthesis for a certain class of STL formulas, although it is sufficient for many practical tasks. The other one is that the feasibility condition of modularized synthesis has not been deeply studied. Our future work will extend the results to wider fragments of STL formulas. We will also incorporate the feasible sets of specifications to investigate the feasibility of modularized synthesis.

APPENDIX

V-A Proof of Lemma 2

For 1), from the definition of STL syntax, we know, for an arbitrary STL formula φ\varphi, 𝖥{κ}φ=𝖴{κ}φ\mathsf{F}_{\{\kappa\}}\varphi=\top\mathsf{U}_{\{\kappa\}}\varphi indicates that there must exist k{κ}k\in\{\kappa\}, such that (x,k)φ(x,k)\vDash\varphi, which means (x,κ)φ(x,\kappa)\vDash\varphi. Then, from 𝖦{κ}φ=¬𝖥{κ}¬φ\mathsf{G}_{\{\kappa\}}\varphi=\lnot\mathsf{F}_{\{\kappa\}}\lnot\varphi and lemma 1, we know 𝖦{κ}φ¬(¬𝖥{κ}φ)=𝖥{κ}φ\mathsf{G}_{\{\kappa\}}\varphi\leftrightarrow\lnot\left(\lnot\mathsf{F}_{\{\kappa\}}\varphi\right)=\mathsf{F}_{\{\kappa\}}\varphi.

For 2), according to lemma 1, we have 𝖥{κ}(φ1φ2)=¬𝖥{κ}(¬φ1¬φ2)=¬(𝖥{κ}¬φ1𝖥{κ}¬φ2)\mathsf{F}_{\{\kappa\}}(\varphi_{1}\!\vee\!\varphi_{2})=\lnot\mathsf{F}_{\{\kappa\}}(\lnot\varphi_{1}\!\wedge\!\lnot\varphi_{2})\!=\!\lnot(\mathsf{F}_{\{\kappa\}}\lnot\varphi_{1}\wedge\mathsf{F}_{\{\kappa\}}\lnot\varphi_{2}). Then, using lemma 1, we obtain 𝖥{κ}(φ1φ2)=¬(¬𝖥{κ}φ1¬𝖥{κ}φ2)=𝖥{κ}φ1𝖥{κ}φ2\mathsf{F}_{\{\kappa\}}(\varphi_{1}\!\vee\!\varphi_{2})=\lnot(\lnot\mathsf{F}_{\{\kappa\}}\varphi_{1}\!\wedge\!\lnot\mathsf{F}_{\{\kappa\}}\varphi_{2})=\mathsf{F}_{\{\kappa\}}\varphi_{1}\vee\mathsf{F}_{\{\kappa\}}\varphi_{2}, which also holds for 𝖦\mathsf{G}, i.e., 𝖦{κ}(φ1φ2)=𝖦{κ}φ1𝖦{κ}φ2\mathsf{G}_{\{\kappa\}}(\varphi_{1}\vee\varphi_{2})=\mathsf{G}_{\{\kappa\}}\varphi_{1}\vee\mathsf{G}_{\{\kappa\}}\varphi_{2}, according to 1) of this lemma.

For 3), for κ<a\kappa<a, we have

𝖥{κ}(𝖥[a,b]φ)=𝖴[κ+a,κ+b]φ=𝖥[κ+a,κ+b]φ.\mathsf{F}_{\{\kappa\}}\!\left(\mathsf{F}_{[\,a,\,b\,]}\varphi\right)=\top\mathsf{U}_{[\,\kappa+a,\,\kappa+b\,]}\varphi=\mathsf{F}_{[\,\kappa+a,\,\kappa+b\,]}\varphi. (12)

Applying lemma 1 to 𝖥{κ}𝖦(a,b)φ\mathsf{F}_{\{\kappa\}}\mathsf{G}_{(\,a,\,b\,)}\varphi, we have 𝖥{κ}𝖦(a,b)φ=𝖥{κ}(¬𝖥(a,b)¬φ)=¬𝖥{κ}(𝖥(a,b)¬φ)\mathsf{F}_{\{\kappa\}}\mathsf{G}_{(\,a,\,b\,)}\varphi=\mathsf{F}_{\{\kappa\}}\left(\lnot\mathsf{F}_{(\,a,\,b\,)}\lnot\varphi\right)=\lnot\mathsf{F}_{\{\kappa\}}\!\left(\mathsf{F}_{(\,a,\,b\,)}\lnot\varphi\right). Considering (12), we have 𝖥{κ}𝖦(a,b)φ=¬𝖥(κ+a,κ+b)¬φ=𝖦(κ+a,κ+b)φ\mathsf{F}_{\{\kappa\}}\mathsf{G}_{(\,a,\,b\,)}\varphi=\lnot\mathsf{F}_{(\,\kappa+a,\,\kappa+b\,)}\lnot\varphi=\mathsf{G}_{(\,\kappa+a,\,\kappa+b\,)}\varphi. According to condition 1), we know,

𝖦{κ}𝖦(a,b)φ=𝖥{κ}𝖦(a,b)φ=𝖦(κ+a,κ+b)φ.\mathsf{G}_{\{\kappa\}}\mathsf{G}_{(\,a,\,b\,)}\varphi=\mathsf{F}_{\{\kappa\}}\mathsf{G}_{(\,a,\,b\,)}\varphi=\mathsf{G}_{(\,\kappa+a,\,\kappa+b\,)}\varphi. (13)

Therefore, principle 3) is proved by (12) and (13).

V-B Proof of Lemma 3

Applying eq. (4) to formulate formula 𝖥[a,b]φ\mathsf{F}_{[\,a,\,b\,]}\varphi, we have

𝖥[a,b]φ=𝖴[a,b]φ=𝖥{a}φ𝖴(a,b)φ𝖴{b}φ=𝖥{a}φ𝖥(a,b)φ𝖥{b}φ.\begin{split}\mathsf{F}_{[\,a,\,b\,]}\varphi=\top\mathsf{U}_{[\,a,\,b\,]}\varphi\,&=\mathsf{F}_{\{a\}}\varphi\vee\top\mathsf{U}_{(\,a,\,b\,)}\varphi\vee\top\mathsf{U}_{\{b\}}\varphi\\ \,&=\mathsf{F}_{\{a\}}\varphi\vee\mathsf{F}_{(\,a,\,b\,)}\varphi\vee\mathsf{F}_{\{b\}}\varphi.\end{split} (14)

Then, applying (14) to 𝖦[a,b]φ\mathsf{G}_{[\,a,\,b\,]}\varphi we obtain

𝖦[a,b]φ=¬𝖥[a,b]¬φ=¬(𝖥{a}¬φ𝖥(a,b)¬φ𝖥{b}¬φ)=¬𝖥{a}¬φ¬𝖥(a,b)¬φ¬𝖥{b}¬φ=𝖦{a}φ𝖦(a,b)φ𝖦{b}φ.\begin{split}\mathsf{G}_{[a,b]}\varphi&=\!\lnot\mathsf{F}_{[a,b]}\lnot\varphi=\lnot\left(\mathsf{F}_{\{a\}}\lnot\varphi\!\vee\!\mathsf{F}_{(a,b)}\lnot\varphi\!\vee\!\mathsf{F}_{\{b\}}\lnot\varphi\right)\\ \,&=\lnot\mathsf{F}_{\{a\}}\lnot\varphi\wedge\lnot\mathsf{F}_{(\,a,\,b\,)}\lnot\varphi\wedge\lnot\mathsf{F}_{\{b\}}\lnot\varphi\\ \,&=\mathsf{G}_{\{a\}}\varphi\wedge\mathsf{G}_{(\,a,\,b\,)}\varphi\wedge\mathsf{G}_{\{b\}}\varphi.\end{split} (15)

Thus, this lemma is proved by (14) and (15).

V-C Proof of Theorem 1

Substituting φ1=\varphi_{1}=\top and φ2=φ\varphi_{2}=\varphi to (4), we have

𝖴(a,b)φ=𝖴(a,κ)φ(𝖦(a,κ)𝖥{κ}(φ𝖴( 0,bκ)φ)),=𝖥(a,κ)φ𝖥{κ}(φ𝖥( 0,bκ)φ).\begin{split}\top\mathsf{U}_{(\,a,\,b\,)}\varphi=&\,\top\mathsf{U}_{(\,a,\,\kappa\,)}\varphi\vee(\mathsf{G}_{(\,a,\,\kappa\,)}\!\top\!\wedge\mathsf{F}_{\{\kappa\}}\!\left(\varphi\vee\!\top\mathsf{U}_{(\,0,\,b-\kappa\,)}\varphi)\right),\\ =&\,\mathsf{F}_{(\,a,\,\kappa\,)}\varphi\vee\mathsf{F}_{\{\kappa\}}\!\left(\varphi\vee\mathsf{F}_{(\,0,\,b-\kappa\,)}\varphi\right).\end{split}

Applying properties 1) and 3) in Lemma 2, we obtain

𝖥(a,b)φ=𝖴(a,b)φ=𝖥(a,κ)φ𝖥{κ}φ𝖥{κ}𝖥( 0,bκ)φ=𝖥(a,κ)φ𝖥{κ}φ𝖥(κ,b)φ.\begin{split}\mathsf{F}_{(\,a,\,b\,)}\varphi\!=&\top\mathsf{U}_{(\,a,\,b\,)}\varphi\!=\!\mathsf{F}_{(\,a,\,\kappa\,)}\varphi\!\vee\!\mathsf{F}_{\{\kappa\}}\varphi\!\vee\!\mathsf{F}_{\{\kappa\}}\mathsf{F}_{(\,0,\,b-\kappa\,)}\varphi\\ =&\mathsf{F}_{(\,a,\,\kappa\,)}\varphi\vee\mathsf{F}_{\{\kappa\}}\varphi\vee\mathsf{F}_{(\,\kappa,\,b\,)}\varphi.\end{split}

Substituting it to (14), we obtain

𝖥[a,b]φ=𝖥(a,κ)φ𝖥{κ}φ𝖥(κ,b)φ=𝖥{a}φ𝖥(a,κ)φ𝖥{κ}φ𝖥(κ,b)φ𝖥{b}φ=𝖥[a,κ]φ(𝖥{κ}φ𝖥(κ,b)φ𝖥{b})=𝖥[a,κ]φ𝖥[κ,b]φ.\begin{split}\,&\mathsf{F}_{[\,a,\,b\,]}\varphi=\mathsf{F}_{(\,a,\,\kappa\,)}\varphi\vee\mathsf{F}_{\{\kappa\}}\varphi\vee\mathsf{F}_{(\,\kappa,\,b\,)}\varphi\\ \,&~{}=\!\mathsf{F}_{\{a\}}\varphi\vee\mathsf{F}_{(\,a,\,\kappa\,)}\varphi\vee\mathsf{F}_{\{\kappa\}}\varphi\vee\mathsf{F}_{(\,\kappa,\,b\,)}\varphi\vee\mathsf{F}_{\{b\}}\varphi\\ \,&~{}=\!\mathsf{F}_{[a,\kappa]}\varphi\vee\!\left(\mathsf{F}_{\{\kappa\}}\varphi\!\vee\!\mathsf{F}_{(\kappa,b)}\varphi\!\vee\!\mathsf{F}_{\{b\}}\right)\!=\!\mathsf{F}_{[a,\kappa]}\varphi\!\vee\!\mathsf{F}_{[\kappa,b]}\varphi.\end{split}

Then, applying it to 𝖦[a,b]φ\mathsf{G}_{[\,a,\,b\,]}\varphi, we obtain

𝖦[a,b]φ=¬𝖥(a,b)¬φ=¬(𝖥[a,κ]¬φ𝖥[κ,b]¬φ)=¬𝖥[a,κ]¬φ¬𝖥[κ,b]¬φ=𝖦[a,κ]φ𝖦[κ,b]φ.\begin{split}\mathsf{G}_{[\,a,\,b\,]}&\,\varphi=\lnot\mathsf{F}_{(\,a,\,b\,)}\lnot\varphi=\lnot\left(\mathsf{F}_{[\,a,\,\kappa\,]}\lnot\varphi\vee\mathsf{F}_{[\,\kappa,\,b\,]}\lnot\varphi\right)\\ =&\,\lnot\mathsf{F}_{[\,a,\,\kappa\,]}\lnot\varphi\wedge\lnot\mathsf{F}_{[\,\kappa,\,b\,]}\lnot\varphi=\mathsf{G}_{[\,a,\,\kappa\,]}\varphi\wedge\mathsf{G}_{[\,\kappa,\,b\,]}\varphi.\end{split}

The two equations above prove (7). Also, (8) can be proved by recursively applying (7) to the time points κ0\kappa_{0}, κ1\kappa_{1}, \cdots, κl\kappa_{l}.

V-D Proof of Lemma 4

For any z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, we know [az,is,az,is][κz1,κz][\,a^{s}_{z,i},\,a^{s}_{z,i}\,]\!\subset\![\,\kappa_{z-1},\,\kappa_{z}\,] for all i{1,2,,ns,z}i\!\in\!\{1,2,\cdots,n_{s,z}\} and [az,jp,az,jp][κz1,κz][\,a^{p}_{z,j},\,a^{p}_{z,j}\,]\!\subset\![\,\kappa_{z-1},\,\kappa_{z}\,] for all j{1,2,,np,z}j\!\in\!\{1,2,\cdots,n_{p,z}\}. Thus, given τz,r[ 0,cz,rp]\tau_{z,r}\!\in\![\,0,\,c^{p}_{z,r}\,] and κzκz1cz1,jp\kappa_{z}-\kappa_{z-1}\!\geq\!c^{p}_{z-1,j}, the complete interval of ϕ¯z\bar{\phi}_{z} reads [min{κz1,az,is[\,\min\{\kappa_{z-1},a^{s}_{z,i}, az,is},max{κz,bz,is,bz,is}]=[κz1,κz]a^{s}_{z,i}\},\,\max\{\kappa_{z},b^{s}_{z,i},b^{s}_{z,i}\}\,]\!=\![\,\kappa_{z-1},\,\kappa_{z}\,] since φ¯z\bar{\varphi}_{z} in eq. (10) is already in a syntactic separation form. Thus, we know that the complete intervals of ϕ¯z\bar{\phi}_{z} for all z{1,2,,l}z\!\in\!\{1,2,\cdots,l\} do not overlap. Then, for the complete interval of ϕ¯zt\bar{\phi}^{t}_{z}, we have [azt,min{κz,bzt+czt}][κz1,κz][\,a^{t}_{z},\,\min\{\kappa_{z},b^{t}_{z}+c^{t}_{z}\}\,]\!\subset\![\,\kappa_{z-1},\,\kappa_{z}\,], which implies that the complete intervals of ϕ¯zt\bar{\phi}^{t}_{z} for all z{1,2,,l}z\!\in\!\{1,2,\cdots,l\} do not overlap.

V-E Proof of Lemma 5

It can be noticed that φ¯\bar{\varphi} and φ\varphi share the same safety formulas and also the same progress formulas with bz,jp+cz,jp<κzb^{p}_{z,j}\!+\!c^{p}_{z,j}\!<\!\kappa_{z}, for j{1,2,,nz,jp}j\!\in\!\{1,2,\cdots,n^{p}_{z,j}\}, for all z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}. Thus, these subformulas already have split complete intervals and ensure the same semantics between φ¯\bar{\varphi} and φ\varphi. Thus, we directly look into the progress formulas with bz,jp+cz,jp>κzb^{p}_{z,j}\!+\!c^{p}_{z,j}\!>\!\kappa_{z} for which we have 𝖦[az,jp,bz,jp]𝖥[ 0,cz,jp]γjp=𝖦[az,jp,κzcz,jp]𝖥[ 0,cz,jp]γjp𝖦[κzcz,jp,bz,jp]𝖥[ 0,cz,jp]γjp\mathsf{G}_{[\,a^{p}_{z,j},\,b^{p}_{z,j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j}=\mathsf{G}_{[\,a^{p}_{z,j},\,\kappa_{z}-c^{p}_{z,j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j}\wedge\mathsf{G}_{[\,\kappa_{z}-c^{p}_{z,j},\,b^{p}_{z,j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j} using theorem 1. Note that 𝖦[κzcz,jp,bz,jp]𝖥[ 0,cz,jp]γjp\mathsf{G}_{[\,\kappa_{z}-c^{p}_{z,j},\,b^{p}_{z,j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j} means that, there should always exist κzcz,jp<k1<k2<bz,jp+cz,jp\kappa_{z}\!-\!c^{p}_{z,j}\!<\!k_{1}\!<\!k_{2}\!<\!b^{p}_{z,j}\!+\!c^{p}_{z,j} and k2k1<cz,jpk_{2}\!-\!k_{1}\!<\!c^{p}_{z,j}, such that (𝐱,k1)γjp(\mathbf{x},k_{1})\vDash\gamma^{p}_{j} and (𝐱,k2)γjp(\mathbf{x},k_{2})\vDash\gamma^{p}_{j}. In this sense, it is straightforward to infer that, for any τz,j[κzbz,jp,cz,jp]\tau_{z,j}\!\in\![\,\kappa_{z}\!-\!b^{p}_{z,j},\,c^{p}_{z,j}\,], we have 𝖥[κzτz,j,κz]γjp𝖥[κz,κzτz,j+cz,jp]γjp𝖦[κzcz,jp,bz,jp]𝖥[ 0,cz,jp]γjp\mathsf{F}_{[\,\kappa_{z}-\tau_{z,j},\,\kappa_{z}\,]}\gamma^{p}_{j}\!\wedge\!\mathsf{F}_{[\,\kappa_{z},\,\kappa_{z}-\tau_{z,j}+c^{p}_{z,j}\,]}\gamma^{p}_{j}\!\rightarrow\!\mathsf{G}_{[\,\kappa_{z}-c^{p}_{z,j},\,b^{p}_{z,j}\,]}\mathsf{F}_{[\,0,\,c^{p}_{z,j}\,]}\gamma^{p}_{j}. Therefore, we have z=1lϕ¯zz=1lϕz\bigwedge_{z=1}^{l}\!\bar{\phi}_{z}\!\rightarrow\!\bigwedge_{z=1}^{l}\!\phi_{z}.

Now, looking into the target subformulas, it is easy to verify that 𝖥[azt,min{bzt,κzczt}]𝖦[ 0,czt]γt𝖥[azt,bzt]𝖦[ 0,czt]γt\mathsf{F}_{[\,a^{t}_{z},\,\min\{b^{t}_{z},\,\kappa_{z}-c^{t}_{z}\}]}\mathsf{G}_{[\,0,\,{c}^{t}_{z}\,]}\gamma^{t}\!\rightarrow\!\mathsf{F}_{[\,a^{t}_{z},\,b^{t}_{z}\,]}\mathsf{G}_{[\,0,\,{c}^{t}_{z}\,]}\gamma^{t} holds for all z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, which leads to z=1lϕ¯ztz=1lϕzt\bigvee_{z=1}^{l}\!\bar{\phi}^{t}_{z}\!\rightarrow\!\bigvee_{z=1}^{l}\!\phi^{t}_{z}. Then, we can summarize that z=1lϕ¯zz=1lϕ¯ztz=1lϕzz=1lϕzt\bigwedge_{z=1}^{l}\!\bar{\phi}_{z}\!\wedge\!\bigvee_{z=1}^{l}\!\bar{\phi}^{t}_{z}\!\rightarrow\!\bigwedge_{z=1}^{l}\!\phi_{z}\!\wedge\!\bigvee_{z=1}^{l}\!\phi^{t}_{z} which leads to 𝐱φ¯𝐱φ\mathbf{x}\vDash\bar{\varphi}\rightarrow\mathbf{x}\vDash\varphi.

V-F Proof of Theorem 2

We first look into condition 1). For z=lz\!=\!l, it addresses 𝐱[κl1,κl]𝖦{κl1}ϕ¯l\mathbf{x}_{[\,\kappa_{l-1},\kappa_{l}\,]}\vDash\mathsf{G}_{\{-\kappa_{l-1}\}}\bar{\phi}_{l}. Also, according to the semantics of STL formulas, for any 𝐱[κz,κl]φz\mathbf{x}_{[\,\kappa_{z},\kappa_{l}\,]}\vDash\varphi^{\prime}_{z}, where φz\varphi^{\prime}_{z} is an STL formula, for z{1,2,,l1}z\!\in\!\{1,2,\cdots,l-1\}, if 𝐱[κz1,κz]𝖦{κz1}ϕ¯z\mathbf{x}_{[\,\kappa_{z-1},\kappa_{z}\,]}\vDash\mathsf{G}_{\{-\kappa_{z-1}\}}\bar{\phi}_{z} and the complete intervals of ϕ¯z\bar{\phi}_{z} and φz\varphi^{\prime}_{z} do not overlap, we have 𝐱[κz1,κl]𝖦{κz1}ϕ¯z𝖦{κzκz1}φz\mathbf{x}_{[\,\kappa_{z-1},\kappa_{l}\,]}\vDash\mathsf{G}_{\{-\kappa_{z-1}\}}\bar{\phi}_{z}\wedge\mathsf{G}_{\{\kappa_{z}-\kappa_{z-1}\}}\varphi^{\prime}_{z}. Applying this recursively from z=lz\!=\!l back to z=1z\!=\!1, we obtain 𝐱[κ0,κl]ϕ¯1ϕ¯2ϕ¯l\mathbf{x}_{[\,\kappa_{0},\,\kappa_{l}\,]}\vDash\bar{\phi}_{1}\wedge\bar{\phi}_{2}\wedge\cdots\wedge\bar{\phi}_{l}, i.e., 𝐱z=1lϕ¯z\mathbf{x}\vDash\bigwedge_{z=1}^{l}\bar{\phi}_{z}. This inference indicates 1)𝐱z=1lϕ¯z\,\rightarrow\!\mathbf{x}\vDash\bigwedge_{z=1}^{l}\bar{\phi}_{z}. Note that this only holds if the complete intervals of ϕ¯1\bar{\phi}_{1}, ϕ¯2\bar{\phi}_{2}, \cdots, ϕ¯l\bar{\phi}_{l} do not overlap, which is ensured by lemma 4.

For condition 2), if there exists z{1,2,,l}z\!\in\!\{1,2,\cdots,l\}, such that 𝐱[κz1,κz]𝖦{κz1}ϕ¯zt\mathbf{x}_{[\,\kappa_{z-1},\kappa_{z}\,]}\vDash\mathsf{G}_{\{-\kappa_{z-1}\}}\bar{\phi}^{t}_{z}, we know that there exists k[azt,min{bzt,κzczt}]k\!\in\![\,a_{z}^{t},\,\min\{b^{t}_{z},\,\kappa_{z}-c^{t}_{z}\}], such that 𝐱[k,k+czt]𝖦[ 0,czt]γt\mathbf{x}_{[\,k,\,k+c^{t}_{z}\,]}\vDash\mathsf{G}_{[\,0,\,{c}^{t}_{z}\,]}\gamma^{t} which implies 𝐱z=1lϕ¯zt\mathbf{x}\vDash\bigvee_{z=1}^{l}\bar{\phi}^{t}_{z} since [azt,min{bzt,κzczt}][κ0,κl][\,a_{z}^{t},\,\min\{b^{t}_{z},\,\kappa_{z}-c^{t}_{z}\}]\subset[\,\kappa_{0},\,\kappa_{l}\,] for all zz. This renders 2)z=1lϕ¯zt\,\rightarrow\!\bigvee_{z=1}^{l}\bar{\phi}^{t}_{z}. Therefore, we can summarize that 1) \wedge 2) 𝐱z=1lϕ¯zz=1lϕ¯zt𝐱φ¯\rightarrow\!\mathbf{x}\!\vDash\!\bigwedge_{z=1}^{l}\bar{\phi}_{z}\!\wedge\!\bigvee_{z=1}^{l}\bar{\phi}^{t}_{z}\!\leftrightarrow\!\mathbf{x}\!\vDash\!\bar{\varphi}. Considering lemma 5, we further have 1) \wedge 2) 𝐱φ\rightarrow\!\mathbf{x}\!\vDash\!\varphi.

References

  • [1] E. Plaku and S. Karaman, “Motion planning with temporal-logic specifications: Progress and challenges,” AI communications, vol. 29, no. 1, pp. 151–162, 2016.
  • [2] X. Li, G. Rosman, I. Gilitschenski, C.-I. Vasile, J. A. DeCastro, S. Karaman, and D. Rus, “Vehicle trajectory prediction using generative adversarial network with temporal logic syntax tree features,” IEEE Robotics and Automation Letters, vol. 6, no. 2, pp. 3459–3466, 2021.
  • [3] V. Raman, A. Donzé, M. Maasoumy, R. M. Murray, A. Sangiovanni-Vincentelli, and S. A. Seshia, “Model predictive control with signal temporal logic specifications,” in 53rd IEEE Conference on Decision and Control.   IEEE, 2014, pp. 81–87.
  • [4] V. Kurtz and H. Lin, “A more scalable mixed-integer encoding for metric temporal logic,” IEEE Control Systems Letters, vol. 6, pp. 1718–1723, 2021.
  • [5] L. Lindemann, G. J. Pappas, and D. V. Dimarogonas, “Reactive and risk-aware control for signal temporal logic,” IEEE Transactions on Automatic Control, vol. 67, no. 10, pp. 5262–5277, 2021.
  • [6] A. Salamati, S. Soudjani, and M. Zamani, “Data-driven verification of stochastic linear systems with signal temporal logic constraints,” Automatica, vol. 131, p. 109781, 2021.
  • [7] V. Kurtz and H. Lin, “Mixed-integer programming for signal temporal logic with fewer binary variables,” IEEE Control Systems Letters, vol. 6, pp. 2635–2640, 2022.
  • [8] M. Srinivasan and S. Coogan, “Control of mobile robots using barrier functions under temporal logic specifications,” IEEE Transactions on Robotics, vol. 37, no. 2, pp. 363–374, 2020.
  • [9] L. Lindemann and D. V. Dimarogonas, “Control barrier functions for signal temporal logic tasks,” IEEE control systems letters, vol. 3, no. 1, pp. 96–101, 2018.
  • [10] D. Gundana and H. Kress-Gazit, “Event-based signal temporal logic synthesis for single and multi-robot tasks,” IEEE Robotics and Automation Letters, vol. 6, no. 2, pp. 3687–3694, 2021.
  • [11] S. Liu, A. Saoud, P. Jagtap, D. V. Dimarogonas, and M. Zamani, “Compositional synthesis of signal temporal logic tasks via assume-guarantee contracts,” in 2022 IEEE 61st Conference on Decision and Control (CDC).   IEEE, 2022, pp. 2184–2189.
  • [12] S. Alatartsev, S. Stellmacher, and F. Ortmeier, “Robotic task sequencing problem: A survey,” Journal of intelligent & robotic systems, vol. 80, pp. 279–298, 2015.
  • [13] T. Wongpiromsarn, U. Topcu, and R. M. Murray, “Receding horizon temporal logic planning,” IEEE Transactions on Automatic Control, vol. 57, no. 11, pp. 2817–2830, 2012.
  • [14] P. Hunter, J. Ouaknine, and J. Worrell, “Expressive completeness for metric temporal logic,” in 2013 28th Annual ACM/IEEE Symposium on Logic in Computer Science.   IEEE, 2013, pp. 349–357.
  • [15] K. Bae and J. Lee, “Bounded model checking of signal temporal logic properties using syntactic separation,” Proceedings of the ACM on Programming Languages, vol. 3, no. POPL, pp. 1–30, 2019.
  • [16] X. Yu, C. Wang, D. Yuan, S. Li, and X. Yin, “Model predictive control for signal temporal logic specifications with time interval decomposition,” arXiv preprint arXiv:2211.08031, 2022.
  • [17] O. Maler and D. Nickovic, “Monitoring temporal properties of continuous signals,” in Formal Techniques, Modelling and Analysis of Timed and Fault-Tolerant Systems: Joint International Conferences on Formal Modeling and Analysis of Timed Systmes, FORMATS 2004, and Formal Techniques in Real-Time and Fault-Tolerant Systems, FTRTFT 2004, Grenoble, France, September 22-24, 2004. Proceedings.   Springer, 2004, pp. 152–166.
  • [18] L. Nenzi and L. Bortolussi, “Specifying and monitoring properties of stochastic spatio-temporal systems in signal temporal logic,” EAI Endorsed Transactions on Cloud Systems, vol. 1, no. 4, 2015.
  • [19] G. E. Fainekos and G. J. Pappas, “Robustness of temporal logic specifications for continuous-time signals,” Theoretical Computer Science, vol. 410, no. 42, pp. 4262–4291, 2009.
  • [20] M. Schlaipfer, G. Hofferek, and R. Bloem, “Generalized reactivity (1) synthesis without a monolithic strategy,” in Haifa Verification Conference.   Springer, 2011, pp. 20–34.
  • [21] C. Belta, B. Yordanov, E. Aydin Gol, C. Belta, B. Yordanov, and E. Aydin Gol, “Largest satisfying region,” Formal Methods for Discrete-Time Dynamical Systems, pp. 119–139, 2017.
  • [22] Z. Zhang and H. Sofie, “Benchmark for modularized synthesis of complex specifications,” GitHub repository, 2023. [Online]. Available: https://github.com/zhang-zengjie/modustl