3
$\begingroup$

So the intent is to construct an LTL formula that describes the following scenario:

There are two agents, Anastasia and Boris, who have arranged to meet at a cafe and exchange secret information. Initially, neither of them are at the cafe, then Anastasia arrives, strictly before Boris does. She cannot leave before Boris arrives. Boris must arrive at some point. Once Boris arrives they spend some time together, but they leave separately. Anastasia has to leave strictly before Boris, who must leave eventually. They will never return to the cafe.

The propositions are the following:

$A$: Anastasia is at the cafe

$B$: Boris is at the cafe


So first by breaking up things into sub-formulas I have constructed the following:

$\neg A \land \neg B \hspace{10pt}$ "Neither Anastasia or Boris are at the cafe"

$\neg B \cup (A \land \neg B) \hspace{10pt}$ "Anastasia arrives, strictly before Boris"

$A \cup (A \land B) \hspace{10pt}$ "Anastasia cannot leave before Boris arrives. Boris must arrive at some point."

$B \cup (\neg A \land B) \hspace{10pt}$ "Anastasia leaves strictly before Boris"

$\Diamond \neg B \hspace{10pt}$ "Boris leaves eventually"

$\square (\neg A \land \neg B) \hspace{10pt}$ "Anastasia and Boris never return to the cafe"


The trouble I have is combining the above formulas in a way such that they take place in the proper chronological order. My attempt would be

\begin{align} (\neg A \land \neg B) & \land \bigcirc (\neg B \cup (A \land \neg B)) \\ & \land ((A \land \neg B) \implies A \cup (A \land B)) \\ & \land ((A \land B) \implies B \cup (\neg A \land B)) \\ & \land ((\neg A \land B) \implies \neg A \cup (\neg A \land \neg B)) \\ \end{align}


However I don't know how to incorporate the fact that Anastasia and Boris never return to the cafe

1 Answers 1

3

I'm going to use $\def\until{\,\mathsf{U}\,}$$\until$ instead of $\cup$ for "until." One of the many ways to describe "Alice and Bob in Moscow" is this:

  • Initially, neither is at the cafe: $\neg A \wedge \neg B$, as you wrote.
  • Anastasia arrives strictly before Boris does: $(\neg B) \until (\neg B \wedge A)$, as you wrote.
  • Boris must arrive and eventually leave: $\Diamond (B \wedge \Diamond \neg B)$.
  • Anastasia cannot leave before Boris arrives: $\Box(A \rightarrow (A \until (A \wedge B)))$.
  • Anastasia leaves strictly before Boris does: $\Box((A \wedge B) \rightarrow (B \until (B \wedge \neg A)))$.
  • Anastasia never returns to the cafe: $\Box (A \rightarrow \Box(A \vee \Box \neg A))$.
  • Boris never returns to the cafe: $\Box (B \rightarrow \Box(B \vee \Box \neg B))$.

All these properties are simply conjoined to get the complete specification for the meeting of Anastasia and Boris.