 This is joint work with my co-authors Axel Lege, also from Erisa Inrieren and Kloes Trane from Olbo University, about the quantitative linear time branching time spectrum. So let me start with an overview, a kind of an upshot of what we want to do. So the idea is to generalize process equivalences and pre-orders as they are well known from the quantitative world to a quantitative setting. So for example, trace equivalence, we are going to generalize this to trace distances, simulation pre-order to a simulation distance by simulation equivalence to a by simulation distance and so on. But the problem is, the huge problem in this context is that once you start to consider quantities, there is a host of different ways of actually measuring your distances. Depending on your application, you might want to measure point-wise distances in your systems. You might want to accumulate your differences over time, if you are considering energy consumption for example. Once you accumulate, you might want to discount the future, so you can do some discounted accumulating distances or you can do some limit average stuff. All this has been considered in different papers. You can do something which is called maximum lead distance, specifically for time systems. This is useful. So there is a host of those quantitative ways of measuring things and we thought instead of continuing to write papers on special ways of measuring things, why not try to consider all those things under one umbrella. So what I am going to tell you about is how to do all this at the same time. Two ideas for this, when you want to apply your things in a quantitative setting, what is easiest for let's say systems engineers or somebody to come up with how to measure things is to define distances between traces of the system, between executions. Like imagine a hybrid system, you have two different ways where your variables can evolve and then the control engineers have ways to measure distances between executions. And what we want to do here is to convert those linear distances, those trace distances to branching distances which work by simulation distance, like simulation distance, ready simulation distance, this kind of stuff. So here is the outline of the talk. I am going to first recall for you the linear time branching time spectrum of different pre-orders and equivalences. Afterwards I will tell you how to apply games to go from linear distances to branching distances and then we are going to conclude and see what we did. Here is what is called the linear time branching time spectrum. And by the way, not sure that the year 2000 and 2001 is correct there, but this is something which Rob van Glebek basically wrote his thesis about. So you see here different notions of equivalences and pre-orders which are all used by people to classify processes. So you have some processes and then you are interested in are they doing the same thing? And whether or not the answer, what the answers to this question depends on your notion of doing the same thing, right? So there is different notions of doing the same thing. One of them is bi-simulation equivalence. This is rather well known. The other one also rather well known is trace equivalence or linear equivalence. But then there is also readiness, there is simulation equivalence or similarity as it's called. There is possible futures, ready simulation. There are some others which are not in this, here are in this spectrum here, which were in van Glebek's spectrum. There is also some which are not in van Glebek's spectrum. The upshot is that people are using a lot of different notions of equivalences of processes and what van Glebek did, the contribution of van Glebek, is to collect most of them into this spectrum where the arrows mean implication. So bi-simulation equivalence is the finest one. Trace equivalence is the causest one. Of course, most of them also have a pre-order version. So instead of considering simulation equivalence, you can also consider simulation pre-order. So the question now then is not anymore. Does one process simulate the other and the other the first? But does T simulate S only, right? So this is not equivalent, this is pre-orders. So it becomes rather big already the spectrum. And what I want to do next is to reorganize this using games. So let me recall or introduce, by the way, one thing I forgot. There are some extra arrows there too, it's even more complicated. There is also an arrow from nested simulation pre-order to simulation equivalence. There is a lot of implications there and it's a rather messy thing. So I want to use games for re-ordering it. So let me play a game with you, some of you might know this kind of games. Usually it's formulated as a bi-simulation game, but the simulation game is easier. So we will play the simulation game. In this game there are two players and they are trying to find out whether the state T simulates the state S in this. So this is two transition systems with labels here. Player one will be the red player, player two will be the blue player. The red player is trying to prove that those two states are not similar, that T does not simulate S. The blue player is trying to prove the simulation relation. How does the game work? So they both, they have some marks, so player one has a red mark, player two has a blue mark or a pebble, if you want, or some other objects. And they are moving them around in this transition graph. First player one moves her pebble. There is only one way to move it, so that it always moved along transitions. And now player two has to match the label on this transition by matching his pebble. The player two has now the choice between true transitions, which both have the same labels. So player two has to match with the transition with the same label. Player two chooses to go to the right. And now player one can finish the game and proving that T does not simulate S by moving her pebble to the left. Because then player two doesn't have an answer to this move anymore. So player two lost the simulation game and this is the proof that T does not simulate S. If it would have been the case that player two could always answer to any move which player one can make, then player one would have lost the game and thus have proven that T indeed simulates S. But this is not the case here. So let me sum up this simulation game. Here's the algorithm for the game. Player one chooses an edge from the state, then player two chooses a matching edge and the game continues from this new configuration. Now, if player two can always answer the move of player one, then there is a simulation relation. And if player two at some point cannot answer, then there is no simulation relation. The interesting thing is now that this game can be modified in different ways to explain all those relations in the spectrum, which I showed you here. The spectrum is slightly re-ordered and there are some new relations in it too. But what I was playing with you was the simulation pre-order game. We can also play a bi-simulation game. You've heard about this probably already. But let me explain to you how to go up the hierarchy one step at a time. So if we wanted to play a simulation equivalence game, how would we play this? What is simulation equivalence? Two states are simulation equivalent of similar. If one simulates the second and the second simulates the first. So what do we do in the game? We let player one choose in the beginning which state to play from. Either to play from S or from T. This is the simulation equivalence game. Okay, another game, what about ready simulation? So first, I don't know if you know what ready simulation is. This is maybe not so much used in the community anymore. But ready simulation means that the players, so let me just declare the game, the players are playing a game which is like the simulation game. Only that at any point during the game, player one, player one is here, can choose to switch to the other side of the game. And then play one transition, which player two has to answer. If player two can answer the transition, then player two has one. If player two cannot answer, then player one has one. This is the ready simulation pre-order game. Now we can also play ready simulation equivalence games by combining those two features. So letting player one choose in the beginning and at some point in the game, letting player one choose to finish the game by switching to the other side. We can also play, what is more that, there is the nesting. Two nested or just nested simulation pre-order. Here's the nested simulation pre-order game. Let the game go on and at some point player one can choose to switch. And then let the game go on. So not only for answer, but just let it go on. This is nested simulation. Of course, if you have two nested or nested simulation, you can also have three nested simulation where player one can switch twice. So there is, but by equipping the simulation game with three different features, we can explain all the hierarchy. Switching in the beginning, switching during the game, and switching during the game and stopping. This is the three features which are necessary to have all those relations. I should explain here that I'm not actually sure how new this is, what I just told you here. It appears to, I mean, some people tell me that this is kind of folklore knowledge. I didn't really find it written down anywhere. It's, I don't know, maybe it's obvious for us it wasn't. Now, the next step, there is some space on the right here. And you remember that the linear time branching time hierarchy was a bit more complicated than this. There was more things in this. How do we get the other things? Well, let me first put them there. And let's start again in the bottom of the hierarchy. We saw the simulation game. Now there is another feature we can add to the game, which is blindness or partial information. So now let's play a simulation game where player one is blind. So player one is playing something, but doesn't see the answer of player two. And then has to play something again. And player two is answering and player one just doesn't see what player two is doing. So then player one has no way of adapting to the strategy of player two, right? So player one might as well just have played all our actions in the beginning, up front. So player one might as well just have played a trace. So what I've just proven to you is that the simulation pre-order game when player one is blind is the same as the trace inclusion game. Now I've explained trace exclusion using a game. Actually, all the ones on the right hand side can be explained by the same game as on the left hand side, where player one is blind. Now, technically, the definition is slightly complicated. You can read this in the paper because it's a bit difficult to find out what you mean by being blind when the players can switch states all the time, can switch sides in the game. But that's the essence here is that you have those four features of switching, three different switchings, and blindness, which explain all those equivalences and pre-orders in the hierarchy. Now I would like to keep track of time because I did not actually talk about quantities yet. Yes, very good, yes. Well, maybe we should consider continuing running ahead because it's lunch afterwards. I don't want to upset people who are hungry. Okay, but to introduce time, let's revisit the simulation game and reformulate it in a slightly different way. So remember the simulation game, you have those plays, no, those rounds where player one plays some edge and player two tries to match it. And then in the end, if player two can always match, then the answer is yes. Let's choose it more in an even-fished-precie way where player two doesn't actually try to match. Now what we are doing is player one chooses and player two chooses, player one chooses, player two chooses, and once they are done, which might be after an infinite number of steps, then they compare the chosen traces. And then if the two traces they match if they are the same, then player two has one and there is a simulation. If they are not the same, player one has one. Now if you add to this information that player one is the one which wants to spoil the game, and player two is the one who wants to win the game, then you get precisely the simulation game again. So this is just a slight reformulation of the simulation game where the notion of who wins the game is first done after the game is actually being played by comparing the two traces. Once you compare the two traces, you might, of course, also do this using a distance instead. So what we did here before was to say we have those two traces, and if they are equal, then there is a simulation. If they are not, then there is no simulation. Let's go back to the beginning. I told you we want to introduce a quantitative setting by the idea that it's easy to measure or easy to define distances on system traces. Now assume we have such a distance. Assume we have a way to measure distances of traces which might come from an application. Hence a metric, or technically a hemimetric, taking two traces as input and giving that distance as output which is a real number, positive real number, non-negative real number, or infinity. Well, if we can then measure those distances and traces, then we can precisely play this Irinfisch-Fressé simulation game. Choose those edges. Once you are done, measure the distance between those two traces which you have chosen. This is what we call the quantitative simulation game. Using the four features in the hierarchy I was talking about, you can also define quantitative simulation equivalence game, quantitative trace equivalence game, and so on, and so on. So we have a full linear time branching time spectrum of distances. So this is just the same spectrum as before. But now all of those are distances. And additionally, we have this spectrum of distances for any trace distance which the application might come out with. So every time somebody thinks of a way to measure differences between traces, we can bring back a spectrum like this now. This is it. Now you have seen the quantitative linear time branching time spectrum. Let me just try to finish with some further results. Here's a transfer principle. The thesis of Bangladesh is organized in a very beautiful way, because every time he introduces a new type of pre-order equivalence, he's always putting some counter examples to differentiate them from the others. We have a transfer principle, which is saying that whenever you have a counter example which separates two different qualitative notions, which separates, let's say, three nested simulation pre-order and two nested ready simulation equivalence, then you can use the same counter example to prove that the two corresponding distances are topologically inequivalent. So basically what it means as an application is that, and now I would like to go back here, all those distances for any trace distance are topologically inequivalent. By the way, what does topologically inequivalence means? It means that I have no chance of computing one of them using one of the others. I really have to consider all of them separately. I cannot transfer any information in this diagram. Here's another thing, which is maybe slightly more interesting from a practical point of view. If the trace distance I start with, coming from the application possibly, has a recursive characterization, then all distances in the spectrum can be described as fixed points. How does it work precisely? If I can decompose my trace distance through some complete lattice, so a function f which goes to a complete lattice L, and then the g which computes the actual distance, and this function f has a recursive formula so that I can, so maybe now I should use this the other way. So that f on two traces can be computed using the first element of sigma, the first element of tau, and the distance between the rest of the two traces. If I have such a recursion formula, then I can describe all the quantitative linear time branching time spectrum distances as least fixed points of some function is using this recursion function f. Also we should notice that all trace distances which I know, which encompass all of them I was showing you in one of the first slides, they can all be described like this. So essentially what does give us is fixed point characterizations of all spectrum distances for all known trace distances. So let me conclude. What have I done here? What have we done in the paper? We show how to convert any distance on system traces or executions to any type of branching distance in the LTBT spectrum. One of the reviewers was writing us the nice sentence, in doing this they avoid many future papers on many possible variations. Just for that, this paper deserves to be. Another way you can think about this is that we are adding an extra dimension to the linear time branching time spectrum, because you can view the standard equivalences and pre-orders as discrete distances, which are either zero or infinity. Now on the other side, you have the trivial discrete distance, which is always zero, where everything is equivalent. And then we are adding our stuff into the space in between, because everything we are doing using quantities is to differentiate between things which have distance infinity in the discrete spectrum. What is more to be done here? Well, the first thing to notice is that, yeah, fine, it's very nice. You have all those fixed point characterizations here. But what about algorithms? Do they give any algorithms? Usually, you use fixed point stuff for having some algorithms. Well, the point is it depends on the lattice L. If your lattice is too complicated, then your fixed point characterization will gain you nothing. It's a nice definition. It kind of gives you something to work with, but it doesn't give you an algorithm. So what needs to be done and what we are doing is an application of these two different scenarios. Now we have a general framework, now we better show that it can be used for something. Application to different types of transition systems, applications to different types of trace distances. How does it work in concrete cases? Do we get approximations algorithms? When you want to compute something, the question is almost always, can I compute it, but can I approximate it? And for the papers we've written, it works OK. Applications to real-time and hybrid systems are slightly further out in the future, slightly more complicated, because time is a bit more complicated to deal with. For example, because of the additivity of time. Once you have two time transitions after each other, then you can also add them to get a new time transition that adds some extra complications. What is much more complicated is to add probabilities into the equation. When you talk about quantities, people sometimes assume, actually, that you talk about probabilities. But there is nothing probabilistic in this. And adding probabilities is much more complicated, because people have actually done this. There is papers by Luca del Faro, and Marie Stollinger, and others on probabilistic systems, and distances of probabilistic systems. The framework I've shown you here doesn't apply to those on the nose. There is some things which have to be done. And this is something which we are considering currently. Thank you very much.