Partial order techniques for the analysis and synthesis of hybrid and embedded systems
Organizer: Domitilla Del Vecchio EECS Systems Laboratory University of Michigan, Ann Arbor
Abstract—The objective of this tutorial is to introduce in s. Min(T ) denotes the set of minimal elements of T and a tutorial fashion the employment of partial order techniques Max(T ) denotes the set of maximal elements of T . If Min(T ) for analysis and synthesis problems in hybrid systems. While is the singleton {s} then s is called the least element of T . familiar to computer scientists, partial order notions may be less familiar to a control audience. The session will present If Max(T ) is the singleton {s} then s is called the greatest fundamental notions in partial order theory including the element of T . We write Max⊑ and Min⊑ if we need to make definition of a partial order, properties of maps, and complete clear the underlying order. A partially ordered set (S, ⊑) is partial order (CPO) fix point theorems. The application of these a complete partial order, cpo for short, iff every chain of S notions to hybrid systems will be illustrated for the synthesis has a lub in S. of safety controllers, for the design of state estimators, for robust verification, and for the analysis of the dynamics. Finally, Example 1: Let us consider S = {s1,s2,s3}. In the S problems in the context of intelligent transportation will be partially ordered set (2 , ⊆), {s1,s3} is below {s1,s2,s3} introduced and the application of partial order tools will be as {s1,s3} ⊆ {s1,s2,s3}, Max({∅, {s1}, {s2,s3}}) = S S discussed. {{s1}, {s2,s3}}, Max(2 ) = {S}, Min(2 ) = {∅}, S is the greatest element of 2S, and ∅ is the least element of 2S. I. CONTROLLER SYNTHESIS USING LATTICE THEORY S {{s1}, {s1,s3}} is a chain in 2 and {{s1}, {s2,s3}} is an Jean-Franc¸ois Raskin antichain. Computer Science Department Example 2: Let us consider I the set of intervals of reals Universit´eLibre de Bruxelles included in [0, 1]. Let I\1 be the set of intervals of reals included in [0, 1). (I, ⊆) and (I\1, ⊆) are partially ordered A. Elements of lattice theory sets. It is easy to show that (I, ⊆) is a complete partial order. Let S be a set. As usual, we note 2S for the set of subsets But (I\1, ⊆) is not a complete partial order. Indeed, let us of S, ∅ for the empty set, S × S for the set of pairs of consider the set of intervals {I0, I1,...,In,... } where Ii is 1 elements of S, and we write S1 ⊆ S2 when the set S1 is the interval [0, 1 − i+2 ). Clearly, this set of intervals is a \1 included in the set S2. chain but as the interval [0, 1] is not in I there is no lub A partial-order over S is a relation ⊑⊆ S ×S which is (i) for this chain of intervals in I\1. reflexive, i.e. ∀s ∈ S · s ⊑ s; (ii) transitive, i.e. ∀s1,s2,s3 ∈ A complete partial order (S, ⊑) is a complete lattice if every S · s1 ⊑ s2 ∧ s2 ⊑ s3 → s1 ⊑ s3; (iii) antisymetric, i.e. subset of S has a lub in S. As a direct consequence, every ∀s1,s2 ∈ S · s1 ⊑ s2 ∧ s2 ⊑ s1 → s1 = s2. We note subset of S has also an glb in S. Indeed, the ⊓T = ⊔{s | (S, ⊑), when S is partially ordered by ⊑. For example, let s is a lower bound of T }. So, in a complete lattice every S S = {s1,s2,s3}, then (2 , ⊆) is a partially ordered set. subset of elements has a lub and a glb. The lub of ∅ is Let (S, ⊑) be a partially ordered set, let s1,s2 ∈ S, and the least element of the set and the glb of the entire set let T ⊆ S. When s1 ⊑ s2, we say that s1 is below s2 and s2 is the greatest element of the set, those elements exist. We is above s1. We say that s1 is comparable to s2 whenever note hS, ⊑, ⊔, ⊓, ⊥, ⊤i for the complete lattice with carrier s1 ⊑ s2 or s2 ⊑ s1, there are incomparable otherwise. T set S, partial order ⊑, least upper-bound operator ⊔, greatest is a chain if any two elements of T are comparable. T is lower-bound operator ⊓, least element ⊥, greatest element a antichain is any two elements of T are incomparable. s ⊤. (not necessarily in T ) is a lower-bound for T if s is below Example 3: Let S be any set, h2S, ⊆, ∪, ∩, ∅,Si is a any element of T , i.e. ∀s′ ∈ T · s ⊑ s′. An element s (not complete lattice. This complete lattice is called the powerset necessarily in T ) is a upper-bound for T if s is above any lattice of S. The powerset lattice of S = {s1,s2,s3} is element of T , i.e. ∀s′ ∈ T · s′ ⊑ s. A lower bound for T depicted in Fig. 1 is the greatest lower bound (glb) for T iff it is above any A function f : S → S over a partially ordered set (S, ⊑) is lower bound for T , it is denoted ⊓T if it exists. An upper monotone iff ∀s1,s2 ∈ S · s1 ⊑ s2 → f(s1) ⊑ f(s2). bound for T is the least upper bound (lub) for T iff it is Example 4: A transition system is a tuple (Q, qinit , ∆) below any upper bound for T , it is denoted ⊔T if it exists. A where Q is the set of states, qinit ∈ Q is the initial state, element s ∈ T is a minimal (respectively maximal) element and ∆ ⊆ Q × Q is the transition relation. Fig. 1 (right) of T if no other element of T is below (respectively above) depicts a transition system whose nodes are the set of states This theorem suggests an iteration scheme to compute the least fixed point of a function: iterate the function from the least element of the set until stabilization. This sequence is a chain which converges to the least fixed point. In any finite set, this scheme gives an algorithm which always terminates and computes the least fixed point of the function. Example 6: Let us consider again the transition system Fig. 1. The powerset lattice on the left and a transition system on depicted in Fig. 1, the function Ipost, and apply theorem 1 the right. to compute the least fixed point of Ipost. First, remember that 0 1 ⊥ = ∅ here, so Ipost (⊥)= Ipost(∅) = {q1}, Ipost (⊥)= 2 Ipost({q1}) = {q1, q2}, Ipost (⊥) = Ipost({q1, q2}) = 3 Q = {q1, q2, q3, q4, q5}, node q1 is the initial state, and the {q1, q2, q3, q4}, Ipost (⊥) = Ipost({q1, q2, q3, q4}) = 2 transition relation is depicted by arrows, i.e. an arrow from {q1, q2, q3, q4} which is equal to Ipost (⊥), and the iteration a state q to a state q′ denotes the fact that (q, q′) ∈ ∆. We have reached the least fixed point of Ipost which is exactly ′ ′ say that q is a successor of q when (q, q ) ∈ ∆. We say that the set of states reachable from q1. a state q′ is reachable from a state q if there exists a finite We can also formulate an iterative scheme to evaluate ′ sequence of states q0q1 ...qn such that q = q0, q = qn, and greatest fixed point that starts from the greatest element of for all 0 ≤ i
states can be distinguished by looking at the output sequence. ^ We now restrict our attention to transition system models L(k +1) = f˜(L(k) g Oy(k),y(k)) describing hybrid systems. In this case, we specify a set of _ U(k +1) = f˜(U(k) f Oy(k),y(k)) (2) continuous and a set of discrete variables. In particular, for a system Σ = (S, Y,F,g) we suppose that (i) S = U × Z with L(0) = χ, U(0) = χ are such that with U a finite set and Z a finite dimensional space; (ii) (i) L(k) ≤ α(k) ≤ U(k) (correctness); V W F = (f,h), where f : U×Z→U and h : U×Z→Z; (ii) |[L(k + 1),U(k + 1)]| ≤ |[L(k),U(k)]| (non-increasing (iii) y = g(α, z) := z, where α ∈ U, z ∈ Z, y ∈ Y, and error); Y = Z. The set U is a set of logic states and Z is a set of (iii) There exists k0 > 0 such that for any k ≥ k0 we have measured states or physical states, such as position, velocity, [L(k),U(k)] ∩U = α(k) (convergence). temperature, etc. In the sequel, we will denote with abuse of Update laws (2) were pictorially shown in Fig. 2. We have notation this class of deterministic transition systems by Σ= used the notation |X| to denote the cardinality of a finite set (U, Z,f,h), in which we associate to the tuple (U, Z,f,h), X. the equations: Example: The robotic example described in detail in [24] and [16] involves two teams of robots competing against α(k +1) = f(α(k),z(k)) each other in a defensive maneuver of a robotic capture-the- z(k +1) = h(α(k),z(k)) (1) flag game [28]. The state estimator on a partial order was y(k) = z(k), implemented by one of the teams to efficiently estimate in real-time the current internal state describing the evolution in which α ∈U and z ∈ Z. An execution of the system Σ in of the strategy of the opposing team. In [29], this approach equations (1) is a sequence σ = {α(k),z(k)}k∈N. The output was extended to perform dynamic feedback (state estimation sequence is {y(k)}k∈N = {z(k)}k∈N. Given an execution plus control) in order device a better team strategy. σ of the system Σ, we denote the α and z sequences EMPORAL OGICS OVER ATTICES AND corresponding to such an execution by {σ(k)(α)}k∈N and III. T L L PPLICATIONS {σ(k)(z)}k∈N, respectively. A From the measurement of the output sequence, which Georgios E. Fainekos and George Pappas in our case coincides with the evolution of the continuous GRASP Laboratory variables, we want to construct a discrete state estimator: a University of Pennsylvania system Σˆ that takes as input the values of the measurable variables and asymptotically tracks the value of the variable A. Temporal Logics α. An alternative to simply maintaining a list of all possible The need to utter statements whose truth value depends on values for α is proposed in [24]. Specifically, (1) we immerse the current, future and past time has led to the development of the set of discrete states U in a larger set χ whose elements the temporal logics which are a branch of modal logics. They can be related by an order relation ≤ and (2) we extend the were first introduced in the middle of the previous century functions f and h to functions f˜ and h˜ that are defined on by philosophers who wanted to argue about the passage of χ×Z (as opposed to being defined on U ×Z). At this point, time. In the context of computer science, temporal logics if (a) h˜ is such that the set of discrete states corresponding to were first (very insightfully) employed by Pnueli [30] in the a pair of consecutive output measurements is an interval and seventies for the analysis of distributed systems. With this (b) f˜ is an order isomorphism between such an interval and formalism, we can express temporal properties like always, its image through f˜, we obtain a state estimator that updates until, before and sometimes. For example, temporal logics only the lower and the upper bound of the set of all possible can formally capture statements like “Whenever the voltage current discrete states. More formally, given a partial order drops below -10, then it should also eventually raise above (χ, ≤) with U ⊆ χ, we can define an extended system Σ˜ 10”. Both the signals σ1 and σ2 in the plot of Fig. 3 satisfy of Σ as the tuple Σ˜ = (χ, Z, f,˜ h˜), in which f˜|U×Z = f the aforementioned specification. and h˜|U×Z = h. For an output sequence {y(k)}k∈N, the The propositional logic’s semantics is interpreted using output set of Σ˜ corresponding to two consecutive outputs is the Boolean algebra over the lattice L2 = ({0, 1}, ⊓, ⊔) given by Oy(k) := {w ∈ χ | y(k +1) = h˜(w,y(k))}. The (see right side diagram of Fig. 3). The set of well formed 15 σ1 In the classical notion of sets, the membership of an 10 object to a set is determined by the set’s membership or characteristic function. Assume that we have a set of objects 5 2 σ S and that we want to define a subset T of S such that 0 L L L L 2=({0,1},d) 2,2= 2u 2 every object in T satisfies a property H. Let the membership
−5 function of T be h : S → {0, 1} with definition: h(s)=1 1 true 1,1 (true) if s satisfies property H and h(s) = 0 (false) −10 1,0 0,1 otherwise. Then the collection of objects of S that constitute
−15 0 false 0,0 0 2 4 6 8 10 the subset T is denoted by {s ∈ S | h(s)}, which implies that for all the objects t ∈ T it is the case that h(t)=1. 1 2 Fig. 3. Two signals σ and σ on the left. The Hasse diagrams of The multi-valued sets, denoted by mv-sets from now on, L L the lattices 2 and 2,2 on the right. are a straightforward extension of the classical sets. The characteristic function of an mv-set takes values over a lattice instead of the classical two valued Boolean set. Intuitively, formulas Φ of propositional logic are build upon a set AP of when the characteristic function is multi valued it expresses atomic propositions and some binary and unary operators like the degree that an object belongs to the mv-set. conjunction (∧), disjunction (∨), negation (¬), implication Definition 1: Let L = (L, ⊓, ⊔) be a lattice and S a set (→), and equivalence (↔). Temporal logics are obtained of objects, then a multi-valued set, denoted by S, is a total from the standard propositional logic by adding temporal function S : S → L. operators such as eventually (♦), always (), next ( ), until As mv-sets are functions, S(x) actually denotes the degree (U) and release (R) in combination with the path quantifiers of membership of x in S. Next, we will define the operations for all paths (A) and for some path (E). of union (∪L), intersection (∩L), set inclusion (⊆L) and The intuition behind these operators is as follows. ♦φ equality (=L) for the multi valued case using the lattice join means that at some point in the future the formula φ will and meet operations. hold, whereas φ means that φ should hold at every moment Definition 2: Let L = (L, ⊓, ⊔) be a lattice, then: in the future. φ states that φ will hold at the next time moment (note that we regard time as a discrete sequence and (S ∩L S′)(x) := S(x) ⊓ S′(x) (mv-intersection) not as continuous quantity). φ Uφ means that φ should be 1 2 1 (S ∪L S′)(x) := S(x) ⊔ S′(x) (mv-union) true at every time in the future until φ becomes true. Let’s 2 ′ ′ consider again the voltage example mentioned above. Let S ⊆L S := (∀x).(S(x) ⊑ S (x)) (mv set inclusion) ′ ′ the set of atomic propositions be AP = {a1,a2} such that S =L S := (∀x).(S(x)= S (x)) (mv-equality) a1 labels the set R≤−10 and a2 labels the set R≥10, then formally we can write “A(a → ♦a )”. 1 2 B CTL∗ is a temporal logic whose syntax contains both state Definition 3: Let = (B, ⊓, ⊔, ∼, ⊥, ⊤) be an algebra, then the multi-valued set will be the total function S : S → formulas φs and path formulas φp. Let AP be the set of B. Now, we can define the mv-set complement operation atomic propositions, then the set ΦCTL∗ of well formed CTL∗ formulas is generated according to the following using the algebra’s complementation ∼ operation and, also, grammar: derive the De Morgan laws: S(x) :=∼ (S(x)) (mv-complementation) φs ::= a | ¬φs | φs ∨ φs | Eφp | Aφp S ∩B S′ = S ∪B S′ (De-Morgan) φp ::= φs | ¬φp | φp ∨ φp | φp | φp Uφp S ∪B S′ = S ∩B S′ where a ∈ AP . If φs above is replaced by φs ::= Aφp, then S ⊆B S′ = S′ ⊆B S (antimonotonicity) we generate the set of all well formed LTL formulas ΦLTL. Note that all the above definitions actually follow the Whereas, if φp is replaced by φp ::= φp | φp Uφp, then definitions for the algebraization of the classical two-valued we generate the set of all well formed CTL formulas ΦCTL. logic. Hence, in the special case where the algebra is over The rest of the operators can be derived from the above basic the lattice L2 we get the classical two valued set theory (see operators (see [31] for details). Theorem 2 in [33]). Now that we have established the notion of mv-sets, we proceed to define multi-valued relations (or B. Multi-Valued CTL Model Checking mv-relations). Defining mv-relations is important as they are The symbolic model checking methods [32] have been the necessary for defining Kripke structures with multi-valued flagship of the formal verification techniques. Here, we give transition relations. a brief presentation of the extension of the classic two-valued Definition 4: A multi-valued relation R on sets S and T symbolic model checking [32] to the many-valued case over over a lattice L is a function R : S × T → L. quasi-Boolean algebras [33]. We proceed to define multi- The extension of the classical notion of Kripke structures valued sets, relations and Kripke structures which are going to the multi-valued ones (mv-Kripke structures) is straight- to be the foundations of the multi-valued model checking. forward. s0 [[a]] [[b]] s0 {s0} { } a=1 a=0 a=1 a=1 b=0 b=0 b=0 b=1 { } {s2} {s1} {s2} s 2 s2 a=0 a=0 {s1} {s0} s b=1 b=0 1 s1 Fig. 5. The multi-valued sets [[a]] and [[b]]. Here, the notation [[a]] (a) (b) with a ∈ AP represents the multi-valued set that indicates the 11 degree that a state s of M satisfies the property a. a=11 01 a=01 b=00 b=01 R {(s ,s ), (s ,s )} s0 s2 1 2 2 2 10 11 a=00 {(s0,s1)} {(s0,s2)} s b=10 1 {(s0,s0), (s1,s0), (s1,s1), (s ,s ), (s ,s )} (c) 2 0 2 1 R Fig. 4. Two independent experts model a real system as the Kripke Fig. 6. The mv-transition relation of M. structures K1 and K2. In this example, the two models are combined by simply merging the states with the same name. Also assume that the initial state of M is s0. (a) The structure K1. (b) The structure model the same system. We can merge the two models to K2. (c) The merged multi-valued model M. get a multi-valued model M (Fig. 4). One can think of the resulting structure M as a model where we can verify properties that hold despite the possible local inconsistencies Definition 5: A multi-valued Kripke structure (mv-Kripke in the initial models K and K . In the model M, both B 1 2 structure) is a tuple M = (S,S0, R, AP, O, ) where: the atomic propositions and the transition relation take truth • S is a finite set of states values over the lattice L2,2 (right side diagrams of Fig. • S0 is the set of initial states 3). It can be easily proven that the lattice L2,2 extended • R : S × S → B is an mv-transition relation with a negation operator ∼ such that ∼ (1, 1) = (0, 0), • AP is a finite set of atomic propositions ∼ (0, 0) = (1, 1), ∼ (1, 0) = (0, 1) and ∼ (0, 1) = (1, 0) is • O : S ×AP → B is a total labelling function that maps a Boolean algebra (as a product of two Boolean algebras). a pair (s,a) ∈ S × AP to some b ∈ B In Fig. 5, we present some multi-valued sets. Each diagram • B is an algebra (L, ⊓, ⊔, ∼, ⊥, ⊤) represents an mv-set that specifies the degree that each state Also, we need to revisit the notion of predecessor states. of M belongs to it. Similarly in Fig. 6, we present the mv- We need to extend the definition in order to handle multi- transition relation. Finally, Fig. 7 presents the results of the valued sets of states. The extension seems to be straight- computations for the predecessor mv-sets using Definition 6. forward, if one follows the standard definition of existential and universal quantification as introduced for the First Order Next, we define the multi-valued CTL semantics over mv- predicate calculi of non-classical logics. Thus, we replace the Kripke structures. In the following, we use the notation [[·]]M existential quantifiers with join operations over the objects to denote the membership functions. of the set and the universal quantifiers with meet operations. Definition 7: Let the mv-membership function [[φ]] : S → Note that the definition of the mv-predecessor membership B denote the degree that a state s ∈ S satisfies a specification function reduces to the classical one when the algebra is B2 φ, then the multi-valued semantics of the core operators (for a proof see Theorem 3 in [33]). of mv-CTL with respect to an mv-Kripke structure M = Definition 6: Let R : S1 × S2 → B be an mv-relation (S,S0, R, AP, O, B) is defined as follows: defined over an algebra (B, ⊓, ⊔, ∼, ⊥, ⊤) and let Q : S2 → R [[a]]M(s) := O(s,a) for a ∈ AP B be an mv-set, then for all s1 ∈ S1 we define pre∃ (Q) : R [[¬φ]] := [[φ]] S1 → B and pre∀ (Q) : S1 → B as: M M R [[φ ∨ ψ]]M := [[φ]]M ∪B [[ψ]]M pre∃ (Q)(s1) := ⊔s2∈S2 (R(s1,s2) ⊓ Q(s2)) R R [[E φ]]M := pre∃ ([[φ]]M) pre∀ (Q)(s1) := ⊓s2∈S2 (R(s1,s2) ⊔ Q(s2)) [[Eφ]]M := νZ.[[φ]]M ∩B [[EXZ]]M
R [[Eφ Uψ]]M := µZ.[[ψ]]M ∪B ([[φ]]M ∩B [[E Z]]M) Lemma 1 (in [33]): The predecessor mv-sets pre∃ and R R pre∀ are order preserving. where [[EXZ]] = pre∃ (Z). Example 1: In order to make clear the notion of multi- Finally, note that mv-CTL reduces to classical CTL when valued sets and the usage of the predecessor functions, we the algebra is on L2 (see Theorem 4 in [33]). Now, we state present an example from [33]. Assume that we have two a series of important theorems. different (classical) Kripke structures K1 and K2 that model Theorem 2 (in [33]): The mv-CTL temporal operators a real system. The differences in the two structures can EX and AX are order preserving. be attributed to the attempts of two independent experts to The finiteness of the multi-valued Kripke structures and pre ([[a]]) = pre ([[a]]) pre ([[b]]) that a trajectory can tolerate without changing the truth value { } {s } 0 of a specification expressed in the Linear Temporal Logic. { } {s ,s ,s } { } {s ,s } 0 1 2 1 2 Let σ : T → X be a signal (you can think of it as the { } { } output trajectory of a dynamical system), where (X, d) is a metric space and T is a time domain (usually T = N Fig. 7. Some multi-valued predecessor sets. As an example, T R R or = ≥0). We propose multi-valued semantics for LTL consider the following computation: pre∃ ([[a]])(s1)=(R(s1,s0)⊓ R R where the valuation function on the atomic propositions takes [[a]](s0))⊔( (s1,s1)⊓[[a]](s1))⊔( (s1,s2)⊓[[a]](s2)) = ((0, 0)⊓ R R∞ (1, 1))⊔((0, 0)⊓(0, 0))⊔((1, 1)⊓(0, 1)) = (0, 0)⊔(0, 0)⊔(0, 1) = values over the infinite complete lattice = ( , ⊓, ⊔), R R∞ R (0, 1). Also, note that [[E b]](s0)= pre∃ ([[b]])(s0)=(1, 1). where = ∪{±∞}, according to the metric d operating on the state space X of the signal σ. For this purpose, we let the valuation function to be the signed distance from the the monotonicity of the predecessor functions as well as the current value of the signal to the set O(a) labeled by the monotonicity of the join and meet operations guarantee the atomic proposition a. Intuitively, this distance represents how termination of the fixpoint algorithm. Thus, the next result robustly is the point σ(t) within a set O(a). If this metric is immediate. is zero, then even the smallest perturbation of the point can Theorem 3 (in [33]): The mv-CTL model checking prob- drive it inside or outside the set O(a), dramatically affecting lem is decidable. membership. Example 2: Consider the case where we want to verify Definition 8: Let x ∈ X be a point, S ⊆ X be a set and that the property E b is true despite the differences in d be a metric on X. Then, the Distance from x to S is the two models. As Fig. 7 indicates, the property holds distd(x, S) := inf{d(x, y) | y ∈ S} on both K1 and K2 when we start from the initial state s0. Also, assume that we want to compute the value of and the Signed Distance from x to S is the specification Ea. Hence, we use the fixpoint function R −distd(x, S) if x 6∈ S [[Ea]]M = νZ.[[a]]M ∩B pre (Z). The fixpoint algorithm Distd(x, S) := ∃ distd(x, X\S) if x ∈ S is initialized by setting (∀s ∈ S).(Z0(s) = (1, 1)). After Note that R is actually a totally ordered set (the closure 2 iterations, the algorithm converges to [[Ea]]M(s0) = of the reals with the usual ordering relation). Recall that (0, 1) and we can conclude that the property holds only in ⊔R∞ = +∞ and ⊓R∞ = −∞ and that any subset of R∞ the model that the second expert has provided (K2). The has a supremum and infimum. Finally, because R is a totally sequence of computations can be found in Fig. 14 in [31]. ordered set, it is also distributive, i.e., for all a,b,c ∈ R it is a ⊓ (b ⊔ c) = (a ⊓ b) ⊔ (a ⊓ c) (and its order dual). C. Robustness of LTL Formulas for Signals & Bounded Time Definition 9: For an LTL formula φ and a trajectory σ : Verification of Systems T → X, the robust semantics of φ with respect to σ is Dynamical systems (linear, non-linear or hybrid systems) [[a]](σ) := Distd(σ(0), O(a)) either model physical processes or the interaction between some software and/or hardware system and the continu- [[¬ψ]](σ) := −[[ψ]](σ) ous physical world. Fundamentally, no formal model exists [[φ1 ∨ φ2]](σ) := [[φ1]](σ) ⊔ [[φ2]](σ) that can capture accurately the behaviour of such systems. [[ ψ]](σ) := [[ψ]](σ|1) Moreover, these type of systems have a certain degree of [[φ Uφ ]](σ) := ⊔i [[φ ]](σ|i) ⊓ ⊓ j