Abstract
Several results from classical computability theory (computability over discrete structures such as the natural numbers and strings over finite alphabets, due to Turing, Church, Kleene and others) have been shown to hold for generalisations of computability theory over total abstract algebras, using a computation model of a high level imperative (
We present a number of results relating to computation on topological partial algebras using an abstract model of computation,
This research has significance in the field of scientific computation, which is underpinned by computability on the real numbers. By the Continuity Principle, computability of functions implies their continuity. Since equality, order, and other total boolean-valued functions on the reals are clearly discontinuous, we resolve this incompatibility by redefining such functions to be partial, leading us to consider topological partial algebras.
Introduction
Generalising computability theory
In classical computability theory, many formalisms have been presented and been proven to be equivalent, including the formalism of Turing machines, λ-calculus, and the μ-recursive functions, presented by Alan Turing [35], Alonzo Church [7] and Stephen C. Kleene [20] during the 1930’s. These all capture the informal notion of computation by a finite, deterministic algorithm on
We investigate generalisations of the classical computability theory to other abstract structures, especially the domain of real numbers
An important difference between
A model of computation is a mathematical model of some general method (algorithm) for computing functions, or deciding membership of a set. We distinguish two main kinds of such models: abstract and concrete [32,37].
In abstract models of computation, the data are taken as primitive, so that the programs and algorithms do not depend on representations. Examples of abstract models are high level imperative programming languages, flow charts and register machines over any algebra [2,9,31].
In concrete models, data are given by representations, and so the programs and algorithms depend crucially on the choice of representation, e.g. the representation of reals by (indices of) effective Cauchy sequences of rationals [28,36].
An important part of our work in this paper is to consider whether certain well-known results from classical computability theory still hold in the generalised theory, e.g. the closure of semicomputable sets under union. In addition, we investigate the properties of semicomputable subsets of the real plane, e.g. the equivalence or inequivalence with respect to some notion of semicomputability for variations of a high-level imperative language for topological algebras over the reals.
Related work
There is a rich history of work in generalised computability theory, with many models having been proposed. Good overviews of several of them are provided in [31,36].
We will focus in this paper on models based on the simple imperative language
Overview
In Section 2 we review many-sorted algebras, relations and projections, topological partial algebras (in particular the algebra
In Section 3 we give definitions and lemmas for the
In Section 5 we present results regarding the (in)equivalence of models of computation on
In Section 6 we summarise our conclusions, and give some ideas for future work.
In Appendix A we consider an adaptation of our (in)equivalence results to the 1-dimensional case over
In Appendix B we outline a proof of the equivalence of
In Appendix C we check that another result from the classical theory, Post’s Theorem, also holds in the case of
Previous work
This paper developed out of the first author’s Master’s thesis. It serves as an extension of the work contained in [37].
Specifically, the structure theorems presented there for 1-dimensional computation were previously extended to 2-dimensional computation in [13], with an incomplete structure theorem for
Additionally, in [37] it was shown that the model
Signatures; algebras; the
While
language
We will study the computation of functions and relations by high level imperative programming languages based on the ‘
We begin by reviewing basic concepts of many-sorted signatures and algebras. Next we define the syntax and semantics of the abstract computation model
Basic algebraic definitions
A many-sorted signature Σ is a pair
A product type of Σ has the form
For a signature Σ, a Σ-algebra A has, for each Σ-sort s, a non-empty set
We use ⇀ in place of → to signify that a function is partial.
We write
An algebra A is said to be total if
The signature and (total) algebra of the booleans are as follows:
The (total) algebra of the naturals is as follows:
where the carrier sets
We will use the infix notations ∨ and ∧ in place of ‘ A signature is called standard if it includes the sorts and functions of Correspondingly, an algebra is called standard if it is an expansion of A signature is called Correspondingly, an algebra is called All signatures and algebras in this paper will be assumed to be (
For a Σ-product type
A relation R on A of type u (written
The complement of a relation Let R be a relation of type
Topological partial algebras
Recall the definition of continuity of partial functions: Given two topological spaces X and Y, a partial function for every open A topological partial algebra is a partial Σ-algebra with topologies on the carriers such that each of the basic Σ-functions is continuous. The carriers The significance of the continuity of the basic functions of a topological algebra A is that it implies continuity of all This is in accordance with the Continuity Principle, which can be expressed as
One motivation for this design decision is Hadamard’s principle [18], which, as re-formulated by Courant and Hilbert [8,19], states that for a scientific problem to be well posed, the solution must (apart from existing and being unique) depend continuously on the data. (Continuity).
(Topological partial algebra).
(Continuity of computable functions).
The algebra
of reals
In the following sections, we work mostly with the following topological algebra:2
In [14] ‘
where the functions and constants
We will often write −, + and ∗ in place of ‘
The signature We write ↑ to denote “undefinedness”. We use the symbol ‘≃’ to denote “Kleene equality”, where the two sides are either both defined and equal, or both undefined [21, Section 63]. Note that by contrast, the basic functions For By contrast, the semantics of operators ∧ and ∨ are taken to be “strict”, i.e. While it is not strictly necessary to include the conditional operators, they seem a natural inclusion when dealing with partial functions. Note that we will discuss the semantics of the infinite conditional disjunction in Discussion 3.3. We present two approaches motivating the above partial functions. The first is a discussion of the continuity of comparison operators on The total versions of the comparison operators Consider now the task of determining whether, in some concrete model, two representations denote the same real number or not. As an example, let us use, as representations of these real numbers, effective Cauchy sequences of rationals When using effective Cauchy sequences as a representation, we assume given a computable modulus of convergence; given this, we can (by effectively taking subsequences) easily restrict our attention to sequences which are fast. (Conditional boolean operators).
(Motivation for use of partial functions).
Throughout this paper we focus on functions on
The algebra
The significance of arrays for computation is that they provide finite but unbounded memory. Note that despite the convenience of the starred sorts,
Syntax of terms and the
While
programming language
As has been mentioned, we will study the abstract models of high level imperative programming languages based on the ‘
Note that ‘≡’ denotes syntactic identity between two expressions.
Σ Σ That is, a Σ-term of sort
every variable occurring in the body S must be declared in D (among
If
We now give the semantics of terms, statements and procedures. To begin, we need to define the notions of state and variant a of state.
A state over A is a family
We write
Let σ be a state over A, and for some Σ-product type u, let
We can now define the semantics of terms, statements and procedures:
Σ The definition of
We overload the symbols ↑, ↓ and ≃, discussed in Notation 2.10 where they deal with the definedness of terms, for use with statements and procedures. Here instead of definedness they refer to the convergence or divergence of computations. The definition can be shown to be independent of the exact choice of σ (by the Functionality Lemma [31, Lemma 3.4]).
A function
The halting set of a procedure
A set
Extending
While
to
and
In preparation for the theorems in Sections 4 and 5, we give the semantics of strong disjunction and strong existential quantification to introduce the
The motivation for these extensions is that with our model of
The
The
To simplify the exposition, we include the strong disjunction operator ‘
If instead of strong existential quantification, we constructed
cf. the two definitions of infinite disjunction given in Discussion 3.3.
By means of these constructs, interleaving of processes may be simulated. The
We now present some important background relating to boolean terms. We begin by introducing notation used throughout this section and Section 4:
We will often write For a tuple of variables Similarly define
This is of vital importance in proving our Structure Theorem for
First we need the concepts of semantic disjointedness of a sequence of booleans. A sequence Let Infinite conditional disjunction (“evaluation from the left”), written Infinite strong disjunction (“strong Kleene evaluation”), written Note that if an effective sequence of booleans We will only consider infinite disjunction in the context of semantically disjoint sequences of booleans, and so for our purposes the choice of semantic definition is irrelevant. Given a partial Σ-algebra A and a Σ-product type Engeler’s Lemma can be proved by an analysis of the computation trees for (Semantic Disjointedness).
(Semantics of infinite disjunction).
In the proof of our Structure Theorem in Section 4 for
(Canonical form for
).
For a tuple
Note that this “canonical form” is not unique.
The proof is by structural induction on the booleans.
Note that the canonical form of booleans coincides with the notion of semi-algebraic set, to which we now turn.
We introduce the concepts of basic and semi-algebraic sets, which are fundamental to our results. We consider these sets on
(Basic set).
A basic set is a subset of
In this paper, polynomials are always taken as having rational [or, equivalently, integer] coefficients.
Note that all basic sets are open.9
We use “basic sets” to mean “basic open semialgebraic sets”.
A semi-algebraic set is a subset of
The class of basic sets is closed under binary intersection.
Given a polynomial
and
(Positive, negative and divergent sets of booleans).
Let
These will be used in the proof of the Partition Lemma in the next section.
semicomputable sets: Structure Theorem and failure of closure under union
We present a Partition Lemma for booleans in
For the remainder of this section, let
(Partition Lemma for booleans in
).
Consider any boolean
cf. Definition 3.13. For our purpose, the form of the divergent set of
Before giving the proof, we consider some examples of positive and negative sets in
These examples are of interest because our counterexample to the closure of semicomputable sets under union will build on them.
Consider the polynomials

The sets
The proof of the Partition Lemma serves as an algorithm for constructing such representations.

This is by structural induction on Base case: Induction step: In what follows, suppose:
Now we consider the various cases based on the major operator of b: Then:
The sets Similar to case (ii). Again, similar to case (ii). Again, similar to ((ii)). □
The Partition Lemma for booleans in
(Structure Theorem for
).
For subsets of
For the ‘
Recall Remark 3.4.
Hence
For the ‘
This is clear from the definition of basic sets.
Then the disjoint effective sequence
□
An incomplete version of our structure theorem for

For total standard algebras, we have the following proposition [31, Section 5.2], [34, Section 6.1]:
(Closure of
While
semicomputable sets under union for total standard algebras).
For any total standard algebra A, the class of
We now use the Structure Theorem for
This follows simply from:
(A union of two basic sets which is not basic).
Consider the overlapping basic sets (cf. Examples 4.3):
This follows from a more general result [1]: if the boundaries of two semi-algebraic subsets of
We thank Professor Bröcker (Münster) for pointing this out (personal communication).
The class of
Recall the sets
Note that with respect to
In this section we consider the equivalence or inequivalence of the classes of
A set which is projectively
semicomputable but not
semicomputable
We will show, by means of an example, that the concept of projective

Domain of
Consider the three-dimensional function
The domain of
We have met this set previously in Fig. 3, and we have seen that it is not
From this example, we have:
For subsets of
In [13, Section 4.6], structure theorems for
For subsets of
The above three structure theorems will be used (in Theorems 4 and 5 below) to show the inequivalence between
For the first example, we return to our working example,
For subsets of
For the second example, consider a sequence of polynomials
B is partially pictured in Fig. 5, for

Now consider whether B is
If B were semi-algebraic, then this set would also be semi-algebraic. However, this set is a union of infinitely many disjoint intervals (the intervals on which the horizontal line at
So B is not semi-algebraic, and therefore not
For subsets of
The following was proved in [37, Section 5.6].
For subsets of
Essentially, this involves replacing a projection onto a real plane, i.e. existential quantification over
We want to show further:
For subsets of
The ‘ For the ‘ We will construct a We construct Then suppose that for some input values Note that the order of the naturals used in the existential quantification steps may have no relation to the order of the
We now compare the classes of subsets of
We begin by combining the results discussed in the previous subsection:
For subsets of
This follows from
We have thus established the existence of three distinct classes of subsets of
We further have the equivalence of each model in the above diagram with its respective starred version (as shown in Appendix B).
Conclusion
In this paper, we investigated the possible generalisation of two results from classical computability theory to the context of topological partial algebras on the reals: closure of semicomputable sets under finite union, and the equivalence of semicomputable sets to projectively (semi)computable sets. Both results were shown not to hold over
In the process we also developed a Structure Theorem for
In Appendix A, we give an adaptation of our (in)equivalence results to the 1-dimensional case over
In Appendix B, we outline a proof of the equivalence of
In Appendix C, we show that another result from classical computability theory, Post’s Theorem, holds in the case of
Future work
We have compared various classes of subsets of
See Section 1.2.
Footnotes
Acknowledgements
We are very grateful to Professor Ludwig Bröcker for his input on the properties of basic semi-algebraic sets. This research was supported by a grant from the Natural Sciences and Engineering Research Council of Canada.
Inequivalence results for 1 dimension
The Semicomputability Structure Theorems (Section 5.1) were formulated for the case
For the case
To prove Theorem 7, we need some facts about algebraic intervals and algebraic numbers.
We may now show, by another example, that
For 1-dimensional computation over
Consider Since I is a single interval, if it were However, it is It is interesting to note that the counterexample used in the proof of Theorem 8 generalises easily to the case of However, the counterexamples used earlier in the paper for
The equivalence of While ( R ) and While ∗ ( R )
We wish to justify our claims that the
A similar result was shown in [31, Section 4] for a total algebra
We may use the same technique to show that
So we proceed with a proof of Step (1), i.e. that
In this proof, we must work with encodings of the syntactic expressions used in the
For the remainder of this Appendix, let A be any
We define the term evaluation function on A relative to
This term evaluation function on A relative to
This is well defined by the Functionality Lemma [31, Lemma 3.4].
The equivalence of
Post’s Theorem for the partial algebra R
For partial algebras, Post’s Theorem does not always hold [3]. However it holds trivially on
