2

CTL* as in https://en.wikipedia.org/wiki/CTL*, is a logic that combines CTL and LTL. I know that CTL* can express everything expressible in these two languages and more. My question is whether we can model the computation tree of each LTS with CTL*

revision
  • 92
  • 5

1 Answers1

3

First of all, for every transition system M, there indeed exists a CTL* formula Φ such that M ⊨ Φ holds, namely the CTL* formula "true".

What you may have wanted to express is the question if for every transition system M, there exists a CTL* formula Φ such that exactly the computation tree of M satisfies Φ. This is not the case. There are multiple reasons for this, and I will list two.

For the first, note that CTL* cannot distinguish between bisimulation-equivalent LTS. Hence, when computing a CTL* property characterizing an LTS, there will always be another bisimulation-equivalent-but-not-the-same-LTS that will also do.

Second, note that CTL* is not a counting logic. You cannot express "along all traces, in infinitely many even positions in a trace, p holds" in CTL*. This means that for a LTS having this property, we can't compute a CTL* property capturing this aspect.

DCTLib
  • 2,817
  • 17
  • 13