Affiliations: Department of Computer Science Swansea University, Singleton Park, Swansea SA2 8PP, Wales, UK [email protected] | Department of Computing and Software McMaster University, Hamilton, Ontario L8S 4K1, Canada [email protected]
Abstract: A stream is a sequence of data indexed by time. The behaviour of natural and artificial systems can be modelled by streams and stream transformations. There are two distinct types of data stream: streams based on continuous time and streams based on discrete time. Having investigated case studies of both kinds separately, we have begun to combine their study in a unified theory of stream transformers, specified by equations. Using only the standard mathematical techniques of topology, we have proved continuity properties of stream transformers. Here, in this sequel, we analyse their computability. We use the theory of computable functions on algebras to design two distinct methods for defining computability on continuous and discrete time streams of data from a complete metric space. One is based on low-level concrete representations, specifically enumerations, and the other is based on high-level programming, specifically ‘while’ programs, over abstract data types. We analyse when these methods are equivalent. We demonstrate the use of the methods by showing the computability of an analog computing system. We discuss the idea that continuity and computability are important for models of physical systems to be “well-posed”.
Keywords: analog computing, computing on streams, many-sorted algebras, topological algebras, stream operators, synchronous concurrent algorithms