In this paper we compare four languages for real time systems specification, namely Timed Z, Timed CSP, Timed CCS and TE-LOTOS, by applying them to the benchmark Railroad Crossing problem. We use slightly different sets of assumptions in each of our solutions in order to investigate how the presence or absence of such assumptions affects the resulting solution. We pay particular attention to the level of justification we may ascribe to each assumption; it may be explicit or implicit in the problem statement, implicit in our knowledge of real- world railroad crossings, or none of these, in which case it must be regarded as a simplifying assumption. We compare and evaluate the resulting specifications in each of the four languages. Our solution in Timed Z is shown to be on a different level to the three process algebras, being much more abstract, closer to the English specification and further from an implementation. It is argued that the three process algebras have essentially equivalent expressive power over the domain of this problem. We compare the proofs in each of the process algebra formalisms. Timed CSP has a well developed dedicated formal proof system, while the proof methods required by Timed CCS and TE-LOTOS are much more ad hoc. In these two cases we use proof techniques based on path and state analysis. We briefly evaluate the Railroad Crossing case study itself. It is found to be a problem of great generality with hidden subtleties; we argue that this problem can teach us much about how to approach real-time specification tasks, and therefore must be considered a highly successful benchmark problem.
Author and article information
Department of Computing, University of Bradford
Bradford, BD7 1DP, UK