{'fraction_non_alphanumeric': 0.05346140128641881, 'fraction_numerical': 0.011720431429941829, 'mean_word_length': 3.921140228772015, 'pattern_counts': {'":': 0, '<': 40, '<?xml version=': 0, '>': 41, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 27, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
On non-detectability of non-computability and the degree of non-computability of solutions of circuit and wave equations on digital computers

It is known that there exist mathematical problems of practical relevance which cannot be computed on a Turing machine. An important example is the calculation of the first derivative of continuously differentiable functions. This paper precisely classifies the non-computability of the first derivative, and of the maximum-norm of the first derivative in the Zheng-Weihrauch hierarchy. Based on this classification, the paper investigates whether it is possible that a Turing machine detects this non-computability of the first derivative by observing the data of the problem, and whether it is possible to detect upper bounds for the peak value of the first derivative of continuously differentiable functions. So from a practical point of view, the question is whether it is possible to implement an exit-flag functionality for observing non-computability of the first derivative. This paper even studies two different types of exit-flag functionality. A strong one, where the Turing machine always has to stop, and a weak one, where the Turing machine stops if and only if the input lies within the corresponding set of interest. It will be shown that non-computability of the first derivative is not detectable by a Turing machine for two concrete examples, namely for the problem of computing the input--output behavior of simple analog circuits and for solutions of the three-dimensional wave equation. In addition, it is shown that it is even impossible to detect an upper bound for the maximum norm of the first derivative. In particular, it is shown that all three problems are not even semidecidable. Finally, we briefly discuss implications of these results for analog and quantum computing.


I. INTRODUCTION
Computer simulations are essential tools in the design and development of systems for processing, transmitting, or storing information. Because of the high complexity of modern information processing systems, and because of nonlinear components and algorithms, their behavior cannot usually be described by closed-form mathematical expressions. Therefore, numerical simulations are extensively used for the design, development and analysis of such systems [1], [2], [3], [4]. Although most physical models and systems are analog, i.e. operating with analog input and output quantities (e.g. time, voltage, current, etc.), simulations of such systems are usually done on digital computers, which are able to compute with finite sequences of rational numbers only. So it is a natural and interesting question, which analog systems can actually be simulated on a digital machine [5], [6], [7]. Moreover, investigations on the limits of present day digital computers is also of huge interest in view of the enormous progress made over the last years in the development of new computing technologies, such as neuromorphic, analog, and quantum computing. These new computing approaches are theoretically as least as powerful as digital computers. In fact, these new approaches have the potential to provide us with much more powerful hardware platforms, not only in the sense of complexity theory, but in the sense that they will be capable of solving many more complex computational problems than present day digital hardware.
Groundbreaking works of Church [8], Turing [9], Specker [10] and many others showed that there exist fundamental limitations of digital computers with respect to their ability to calculate continuous (i.e. non-discrete) quantities. Based on a theoretical model (the Turing machine) for general digital computers, several examples of non-computable operations were discovered in mathematics and computer science, e.g.: • There are real numbers r ∈ R which can't be computed on a Turing machine [10].
• There are computable continuous functions u which are continuously differentiable but with a first derivative u ′ (τ ) which is not computable on a Turing machine at certain computable points τ ∈ R [11]. • There exist computable initial values for the three-dimensional wave equation so that the solution of the corresponding Cauchy problem is not computable at certain computable times and positions [12], [13]. Closely related to the mentioned results on the computability of the derivative is the computability theory of differential equations, and there already exist a quite advanced structure theory for the computability of different classes of differential equations, see, e.g., [14] for polynomial differential equations and [15] for general differential equations. We also refer to the recent paper [16] for an excellent review on this topic.
Apart from characterizing whether a number is computable or not, it is sometimes desirable to classify the non-computable numbers according to their degree of non-computability. To this end, Zheng and Weihrauch introduced an arithmetic hierarchy of real numbers classifying different degrees of non-computability [17].
From a practical side, recent years have seen a growing interest of computability problems in engineering and information theory. This research discovered more operations, important for practical applications, which are not computable even under reasonable physical assumptions regarding the data of the problem. Examples include the calculation of channel capacities in information theory [18], the input-output relation of RLC circuits [19], the calculation of Fourier-and Hilbert transforms [20], [21], [22], the determination of spectral factorization [23], and the calculation of the signal bandwidth [24]. Moreover there do exist standard approaches in information theory and signal processing which naturally give a solution that is not effectively computable on digital hardware. Examples include probabilistic methods [25], [26], optimization techniques [27], [28], [29], applications of distribution theory [30], [31], and sampling based techniques [32], [33], [34], [35], to mention only a few.

II. MOTIVATION AND PROBLEM FORMULATION
Non-computability has far reaching consequences for simulations with digital computers [19]. If the output of an operation is not computable, then it is generally impossible to assess how well the simulated result approximates the real output. This is of particular importance in computer-aided design (CAD) [36], [37], [38], where algorithms are expected to autonomously calculate certain quantities for given input data. If the operation is not computable, these algorithms may fail to compute a solution that satisfy predefined error bounds. To overcome these problems with non-computable solutions, one may try to algorithmically detect the non-computability before the actual computation. Modern simulation programs often contain functionality to assess several aspects of the quality of the simulation. Such a quality assessment can be done before, during, or after the actual simulation. Then the simulation program may react accordingly. For example: • Before the calculation, the program may check whether the input matrix for the simulation is ill-conditioned. If so, the program may simply stop further calculations. • During the calculation, the program may observe whether the magnitude of the search direction becomes too small and stops further iterations. • During the calculation, the program may count iterations, and terminates if this number becomes too large. • After finishing the calculation, some algorithms can assess how confident the result might be. These are just a few simple examples of the so-called exit-flag functionality as can be found in software packages like MATLAB, Mathematica, Python, and many others. With such a functionality, the simulation program itself is able to autonomously detect problems before/during/after the simulation, to make sure that the final result is sufficiently reliable. However, from the point of view of computability, the above requirements on the exit-flag functionality are generally too strong, even through they reflect the actual approach taken in many practical applications, such as computer-aided system and signal design. In these applications, one usually has the situation that either the program is able to solve the specific problem or, based on an exit flag functionality, it declares that it is not able to solve this specific problem. The following example shows that even very simple problems may not be algorithmically solvable but that it might be possible to slightly restrict the requirements to obtain a problem which is computationally solvable. EXAMPLE 1: Assume that for a given computable number x ∈ R, we want to decide whether x < 0, whether x = 0, or whether x > 0. It is well known that this problem is not algorithmically solvable [39], i.e. there exists no Turing machine TM with input x (or more precisely, with an algorithmic description of x) with 3 possible output states ("x < 0" , x = 0, "x > 0"), and which always stops for any arbitrary computable input x ∈ R. The non-computability of this problem arises by the state "x = 0". Indeed, it was shown in [39] that there exists a Turing machine TM >0 with computable input x ∈ R and which has only one output state ("x > 0") and which stops if and only if x > 0. So the Turing machine TM >0 accepts exactly all computable numbers x > 0. In the same way, one shows that there exists a Turing machine TM <0 which accepts only all computable numbers x < 0 [39]. Based on these two Turing machines one can now construct a third Turing machine TM * whose inputs are all computational real numbers x = 0 and which will always stop in one of the two output states "x < 0" or "x > 0". So by leaving out the state "x = 0", we have obtained an algorithmically solvable problem.
In this paper, we investigate problems similar to the following more concrete example: Assume a simulation program that has to determine the first derivative u ′ (τ ) of a computable and continuously differentiable function u at a computable point τ ∈ R. Does there exist an algorithm which is able to autonomously decide (without any human help), for any given u in Stop the Computation u ′ (τ ) Fig. 1. Exit-flag functionality for the differential operator: A Turing machine TM D (u) serves as a preprocessing unit for detecting whether u ′ (τ ) is computable or not. Dependent on the result, it either stops the calculation or it starts a Turing machine TM u ′ (u, ǫ), which computes u ′ (τ ) up to any predefined precision Weak exit-flag functionality: A Turing machine TM P (u) serves as a preprocessing unit which halts only if u ′ (τ ) is computable for the given u ∈ Uc.
In this case, TM P starts the actual Turing machine TM u ′ (u, ǫ), which computes u ′ (τ ) up to any predefined precision ǫ > 0.
a certain subset U c of computable and continuously differentiable functions, whether u ′ (τ ) is computable or not? If such an algorithm exists, it could be used to implement an exit-flag functionality as sketched in Fig. 1. Therein, a Turing machine TM D serves as a preprocessing unit which detects whether, for the given u ∈ U c , the value u ′ (τ ) is computable. If so, TM D starts the actual Turing machine TM u ′ for calculating u ′ (τ ) up to the given precision ǫ. Otherwise, if u ′ (τ ) is not computable, TM D stops the calculation. This paper is going to show that such a Turing machine TM D does not actually exist for a reasonable and practical relevant set U c . In fact, we will even show that the much weaker problem of detecting whether u ∈ U c belongs to the set of functions for which u ′ (τ ) is computable is not solvable by any Turing machine. Such a Turing machine could be used for implementing a weak exit-flag functionality as sketched in Fig. 2. Only if u ′ (τ ) is computable, will a Turing machine be started for calculating u ′ (τ ) up to the desired precision ǫ. Otherwise, if u ′ (τ ) is not computable, the preprocessor TM P may never halt. Alternatively, one may try to detect inputs u ∈ U c for which the output u ′ (τ ) is not computable. Then the Turing machine stops the calculation of u ′ (τ ). This alternative weak exit-flag functionality is sketched in Fig. 3. Remark 1: Notice that the Turing machine TM * in Example 1 was obtained by combining the two Turing machines TM <0 and TM >0 . Each of these two machines implements, in fact, such a weak-exit flag functionality. EXAMPLE 2: Another example where an exit flag functionality is actually not algorithmically computable comes from computer-aided circuit and system design. Especially for non-linear circuits, the input-output behavior described by non-linear differential equations can often only be determined by simulations, because no closed-form solution exists. In these situations, it is of central importance to determine the maximum (time) interval for which a solution exists. If the input requires a solution outside this interval, the machine has to stop and has to indicate the this is not possible. Nevertheless, as it was shown in [15], these intervals cannot algorithmically be determined and we refer to [16] for an overview of more practically relevant results in this direction.

A. Problem statement
This paper investigates several aspects of the detectability of the non-computability of the first derivative of continuously differentiable functions. The determination of the first derivative of certain signals or functions is an essential step in many algorithms in communications, signal processing, and quantum computing. For example, to simulate the output of linear timeinvariant systems described by an ordinary linear differential equation, one has to calculate the first (or higher order) derivative of the input signal. In wireless communications, one often needs to dynamically determine the peak value of the transmit signal. Applying the mean value theorem, this peak value can be estimated from the knowledge of the first derivative (see, e.g., [40] for an overview on this topic). Moreover, new applications of quantum algorithms for breaking advanced cryptosystems also need the first derivative of a certain function as an input [41], [42], [43]. If this first derivative cannot be provided, these algorithms may fail to achieve the high computational efficiency compared to classical algorithms.
Since the first derivative of a computable continuously differentiable function is usually not computable, it is natural to ask whether it is possible to algorithmically detect this non-computability. So we ask whether there exists an exit-flag functionality u ∈ U c TM P Is u ′ (τ ) computable? no yes TM P never halts.
Stop the Calculation Fig. 3. Weak exit-flag functionality: The Turing machine TM P (u) serves as a preprocessing unit which halts only if u ′ (τ ) is not computable for the given u ∈ Uc. In this case, TM P stops the calculation with a notice that u ′ (τ ) is not computable. Otherwise TM P runs forever.
for detecting the non-computability of the first derivative. This paper is going to show that this is actually not possible. Nevertheless, in many applications (including the above examples from wireless communications and quantum computing), it will not be necessary to know the first derivative u ′ (τ ) of a function u at specific position τ ∈ R exactly, but it would be sufficient to have a good upper bound on the peak value of the first derivative, i.e. on u ′ ∞ . The question then is, is it possible to algorithmically decide for a given computable and continuously differentiable function u whether a certain number λ is an upper bound for u ′ ∞ ? This paper is going to show that even this decision problem is generally not semidecidable.

B. Contribution and outline of the paper
In the first part of this paper, we investigate the computability of the first derivative for important subsets of continuously differentiable and computable functions. Starting with a known result on the non-computability of the first derivative, we will use the Zheng-Wheirauch hierarchy to precisely characterize the degree of this non-computability and the degree of the non-computability of the maximum norm of the first derivative. Since the first derivative and the maximum norm of the first derivative are generally not computable, the second part of this paper investigates whether it is possible to have exit-flag functionalities for detecting this non-computability. In particular, we are going to show that it is impossible to detect: • the non-computability of the first derivative, • an upper bound for the maximum norm of the first derivative, • the non-computability of the solution of the wave equation. Thus, this paper answers two of Daniel Kahneman's questions [44], from the areas of semi-autonomous vehicles and general artificial intelligence. Namely, he asks about problems which can be solved by humans but which can't be solved by machines, and he asks whether a machine is able to recognize by itself that it is faced with a problem which can only be solved by a human.
The remainder of the paper is organized as follows. Section III illustrates the importance of computability in circuit and system theory and it recalls the corresponding formal concepts and notions from computational analysis. Section IV precisely characterizes the non-computability of the first derivative, and of the maximum norm of the first derivative, for a subset of continuously differentiable and computable functions using the Zheng-Weihrauch hierarchy. Section V establishes the nondetectability of non-computability for the ordinary differential operator. Section VI will show the impossibility of detecting an upper bound for the maximum norm of the first derivative, and Section VII establishes the non-detectability of the noncomputability of solutions of the three-dimensional wave equation. The paper closes with discussions of future problems in Section VIII. At several places in this paper, we will need properties of the Poisson integral. These necessary results are collected in Appendix A, at the end of the paper.

III. COMPUTABILITY THEORY
Computability theory plays a crucial role in assessing whether a continuous physical system can be simulated on a digital computer, and for the development of corresponding algorithms. The first part of this section illustrates and explains this fundamental importance, based on a very simple but generic example from circuit theory. Afterwards, we recall necessary notions and concepts from computability analysis to make the paper self-contained and accessible to readers not familiar with these concepts and notions. Detailed introductions to the topic may be found in [39], [45], [46], [47].

A. Circuit theory and computability
For motivation and illustration, we consider one of the main building blocks in circuit and system theory, namely a resistorcapacitor (RC) circuit as in Fig. 4. Its output voltage u out is related to its input u in by the first order differential equation Fig. 4. An RC-circuit composed of a resistor R and a capacitor C with input voltage u in (t) and output voltage uout(t).
with initial condition u out (0) = u 0 . Assume that we want to simulate this continuous system, i.e. for a given input u in , we want to calculate the value u out (t) for times t ≥ 0 exactly, on a digital computer. For simplicity, we assume that u in (t) is identical to zero and the initial condition is u out (0) = u 0 = 1. Then the solution of (1) is given by the closed-form expression and our goal is to calculate u out (t) exactly for t > 0. Calculating u out (t) exactly means that a digital computer is able to obtain the solution u out (t) of (1) after finitely many computation steps.
We use the computing model of a Turing machine [9]. It describes an upper limit for the capability of any digital computer. If a problem is not solvable on a Turing machine, then it can't be solved on any digital computer. A Turing machine can calculate exactly, but only with rational numbers. So all inputs have to be rational, and if the Turing machine has computed a certain number (after finitely many computation steps), then this number is again rational. In our RC-circuit of Fig. 4, we therefore assume that R and C are rational numbers, and we restrict ourselves to calculate the output u(t) at rational times t > 0. Then t/(RC) is again rational and it follows from the Lindemann-Weierstrass theorem that the output u out (t), given by (2), is a transcendental number for every positive t ∈ Q. In other words, no Turing machine is able to simulate exactly the output of the RC-circuit in Fig. 4.
Of course, from a practical point of view, there is no need to calculate u out (t) exactly, but it is sufficient to obtain a (rational) approximation u out (t) of the exact (transcendental) solution u out (t), but under an effective control of the approximation error. This means that we need a Turing machine TM which calculates in finite computation steps a rational approximation u out (t), such that | u out (t) − u out (t)| < ǫ with a predefined error bound ǫ ∈ Q, which we give to the Turing machine TM. If such a Turing machine exists, one would say that u out (t) is (Turing) computable.
For our simple example, the construction of such a Turing machine is fairly easy. It consists of an implementation of the power series expansion of the exponential function in (2) and uses the estimate of the remainder to effectively control the approximation error. Nevertheless, for more complicated networks or for more complicated input signals u in , it is generally no longer obvious whether a Turing machine for simulating this network can always be found. In fact, it was shown in [19] that even for the simple RC-circuit in Fig. 4, there exist computable, continuously differentiable input signals u in , so that the output u out (t) is not computable for some computable time instances t.
So the requirement of an exact simulation of arbitrary analog circuits can be met only in very trivial cases (e.g. if the output signal is a polynomial). Even if the output can be expressed in "closed-form", i.e. in terms of, e.g., the exponential-, the sine-, or the cosine function, it can usually not be calculated exactly. Therefore, one always needs to find techniques to approximate the exact solution under an effective control of the approximation error. This paper deals with the question of whether it is possible to detect, algorithmically, that such an effective approximation is impossible.

B. Notation and computable analysis
General notation: We primarily consider 2π-periodic functions on R, and so T = R/2πZ often stands for the additive quotient group of real numbers modulo 2π. Alternatively, T sometimes denotes an arbitrary closed interval on R. For any 1 ≤ p ≤ ∞, we write L p (T) for the usual Banach space of p-integrable functions on T with norm · p , and C(T) stands for the Banach space of continuous functions on T with norm f ∞ = max t∈T |f (t)|. The Banach space of all k-times continuously differentiable functions is denoted by C k (T) and equipped with the norm f C k = max n=0,1,...,k f (n) ∞ . We recall that a function f on T is said to be absolute continuous if there exists a g ∈ L 1 (T), so that f (t) = f (0)+ t 0 g(τ ) dτ for all t ∈ [0, 2π). Then the first derivative of f exists almost everywhere on T, and f ′ = g almost everywhere. We write C ac (T) for the set of all absolute continuous functions on T. The Fourier coefficients of any f ∈ L 1 (T) are denoted by c n (f ) = 1 2π π −π f (τ ) e −inτ dτ , n ∈ N, and the Wiener algebra W is the set of all f ∈ L 1 (T) with an absolutely converging Fourier series, i.e.
Computable analysis: A sequence {r n } n∈N ⊂ Q of rational numbers is said to be computable if there exist recursive functions a, b, s : N → N, such that r n = (−1) s(n) a(n)/b(n) and with b(n) = 0 for all n ∈ N. A recursive function a : N N → N is a mapping that is built from elementary computable functions and recursion [48]. For us, it is only important that a recursive function has an integer input, an integer output, and that it can be calculated on a Turing machine [9], [49], [46]. This is an abstract device which provides a theoretical model describing the fundamental limits of any realizable digital computer.
Any real number x ∈ R is the limit of a sequence of rational numbers. In order for x ∈ R to be "computable", the convergence of the corresponding sequence of rationals has to be effective in the following sense. Definition III.1 (Effective convergence): A sequence {x n } n∈N in R is said to effectively converge to a limit x ∈ R if there exists a recursive function e : N → N so that for all N ∈ N, one has |x n − x| ≤ 2 −N for every n ≥ e(N ) . (3)

Definition III.2 (Computable numbers):
A number x ∈ R is called computable if there exists a computable sequence {r n } n∈N ⊂ Q which effectively converges to x, and R c will denote the set of computable real numbers.
So a function f is computable if f can effectively be approximated by trigonometric polynomials p m with computable coefficients. Since {p m } m∈N converges uniformly, the limit f is necessarily a continuous function.

Definition III.4 (Computability in a Banach space): A function f in a Banach space X of functions on T is said to be X -computable if there exists a computable sequence of real trigonometric polynomials {p m } m∈N and a recursive function
The set of all X -computable functions will be denoted by X c .
The case X = C(T) is of particular interest to us. It follows from the uniform and effective convergence in Def. III.3 that every computable function is also C c (T)-computable.
In the following, we consider Turing machines TM whose inputs x are either computable numbers or computable functions. It should be noted that these inputs are always given to the Turing machine in the form of a program, which allows TM to compute x effectively. For example, if we want to give the computable number x = π to a Turing machine TM, then we hand over a description of π, i.e. a program which can be run on TM and which effectively computes a rational approximation of π up to any necessary precision.

Remark 3:
This form of representing all the information about x by an algorithm, which is able to compute for every arbitrary given error a corresponding rational approximation of x, is most appropriate for digital computing hardware. We only mentioned that there exist other computing concepts which allow, in principle, the computation with real numbers (e.g. Blum-Shub-Smale machines [50]). However, these concepts are not relevant for digital hardware. These computing concepts differ in the way information about numbers is represented.

C. Decidability and deciders
Subsequently, it will be important to distinguish between decidable and semidecidable sets and to realize that every such set is associated with a particular type of Turing machine. To this end, we first recall that a subset A ⊂ N of natural numbers is said to be decidable (or recursive) if there exists an algorithm taking natural numbers as input and which correctly decides, after finitely many iterations, whether the input belongs to A or to the complement A c = N\A. A set A ⊂ N is called semidecidable (or recursively enumerable) if there is an algorithm which correctly identifies (after finitely many iterations) all inputs belonging to A, but which may not halt if the input does not belong to A. Since the set R c of all computable numbers is countable, the previous definition of decidable and semidecidable sets also applies to subsets of R c . However, we will later consider subsets B which are known to belong to a certain subset U of R c . Knowing that B belongs to U ⊂ R c may make it simpler to decide whether a given x ∈ U belongs to B or not. So we will need the following notion of decidablility relative to a basic set U.
Definition III.5 (Decidable and semidecidable sets): Let U ⊂ R c be a subset of computable numbers. A set B ⊂ U is said to be decidable (with respect to U) if there exists a Turing machine TM(x) with input x ∈ U which correctly identifies, after finitely many iterations, whether x ∈ B or x ∈ B c = U\B.
A set B ⊂ U is said to be semidecidable (with respect to U) if there exists a Turing machine TM(x) with input x ∈ U which correctly identifies (after finitely many iterations) every input x ∈ B, but which may run forever for x ∈ B c = U\B. Remark 4: We again emphasize the importance of the basic set U in Def. III.5. If, for example, the basic set is reduced to a subset U 1 ⊂ U, then this means that one has more information about B ⊂ U 1 . Consequently, a subset B ⊂ U 1 which is not semidecidable with respect to U may be semidecidable with respect to U 1 . In most cases the set U will be clear from the context, and so we can often omit the addition "with respect to U".
For the semidecidability of B, Def. III.5 requires only very weak properties on the corresponding Turing machine TM(x). This Turing machine has only one output state and it is guaranteed to halt only if the input x ∈ U belongs to the subset B ⊂ U. Otherwise, if x / ∈ B, TM might never halt. Clearly, it is not possible to observe that TM runs forever. One can only notice that TM(x) still runs after N iterations. But this tells us nothing about x, because TM(x) might halt after N + k iterations, or it might run forever. Only if TM(x) terminates its calculation, can we be sure that x belongs to B. The situation is completely different for a decidable set B. In this case, TM(x) always halts (after a finite number of iterations) and it has two output states, namely "1" if x belongs to the subset B ⊂ U and "0" if x belongs to the complement B c = U\B. So in this case one only has to wait until TM(x) halts. Then its output shows whether x belongs to B or B c . Turing machines corresponding to decidable sets are often called deciders, and if we want to emphasize that a Turing machine is a decider, we will denote it by TM D .

D. Degrees of non-computability: Zheng-Weihrauch hierarchy
A real number x ∈ R is computable (cf. Def. III.2) if there exists a computable sequence {r n } n∈Z of rational numbers which effectively converges to x. Here the effectivity of convergence (cf. Def. III.1) is important, since there exist computable sequences which do not converge effectively to an x ∈ R. In this case, x is non-computable. The standard example is a so-called Specker sequence [10]: If A ⊂ N is a non-recursive set, then the real number x = x[A] = n∈A 2 −n is known to be non-computable.
In many situations, it is not only important to know that a number is non-computable, but how much worse this noncomputability actually is. In order to characterize such different degrees of non-computability, Zheng and Weihrauch introduced an arithmetical hierarchy of real numbers [17]. In this hierarchy, we only need the first two classes. Therefore, following [17], we briefly give an intuitive explanation of these two classes, before giving the full definition of the Zheng-Weihrauch hierachy for the sake of completeness. We denote by Σ 1 (Π 1 ), the set of all x ∈ R, which is the limit of an increasing (decreasing) computable sequence {r n } n∈Z ⊂ Q, and ∆ 1 = Σ 1 ∩ Π 1 . The question is now whether all elements of Σ 1 (or Π 1 ) are computable. The answer is no, and it is actually known that ∆ 1 is precisely the set of all computable numbers. Note that the previous example of the Specker sequence shows that generally, Σ 1 \∆ 1 = ∅, because x[A] is the limit of a monotonically increasing sequence. Similarly, one also has Π 1 \∆ 0 = ∅. Now, one may generalize the above question by considering the sets Σ 2 and Π 2 of all real numbers x = lim sup n→∞ r n and x = lim inf n→∞ r n , respectively, with a computable sequence of rational numbers {r n } n∈N . One may ask whether every x ∈ ∆ 2 = Σ 2 ∩ Π 2 is computable. Here the answer is no, i.e. there exist numbers x ∈ ∆ 2 so that x / ∈ Σ 1 ∩ Π 1 . Continuing the above process, Zheng and Weihrauch introduced the following hierarchy of sets Σ n , Π n and ∆ n : Definition III.6 (Zheng-Weihrauch Hierachy): For n ∈ N let m = (m 1 , . . . , m n ) ∈ N n . Then the sets Σ n R, Π n R, and ∆ n R are defined as follows: and where Θ stands for the infimum if n is even and for the supremum if n is odd. • A number x ∈ R belongs to Π n if and only if there exists an n-fold computable sequence {r m } m∈N n of rational numbers, such that and where Θ stands for the supremum if n is even and for the infimum if n is odd. • ∆ n = Σ n ∩ Π n . Remark 5: We note that for every n ≥ 1, one has ∆ n Σ n and ∆ n Π n and ∆ n ∆ n+1 . Since ∆ 1 = R c , the sets ∆ n describe subsets of R whose entries are increasingly less computable as n increases. Remark 6: There is a very close relation between the arithmetical hierarchy of Zheng and Weihrauch and the Kleene-Mostowski hierarchy of subsets of natural numbers [51], [52].
According to [17], to every x ∈ Σ 1 ∩ [0, 1] there exists a unique recursively enumerable set A ⊂ N so that Conversely, every recursively enumerable set A ⊂ N defines by (4) a number x ∈ Σ 1 ∩ [0, 1]. Since (4) converges absolutely, it can be rearranged, which gives rise to the following definition. Definition III.7 (Zheng-Weihrauch Representation): Let x ∈ Σ 1 ∩ [0, 1] be arbitrary with a corresponding recursively enumerable set A ⊂ N, such that (4) holds. Then every one-to-one mapping ϕ A : N → A is said to be a Zheng-Weihrauch representation of x.
In other words,

IV. COMPUTABILITY OF THE FIRST DERIVATIVE
The differential operator D : u → u ′ is a fundamental operator in circuit and system theory because the voltage and current on an ideal capacitor or inductor are related by i(t) = C u ′ (t) or u(t) = L i ′ (t), respectively. Simulating larger networks or circuits usually yields a higher order ordinary differential equation. To keep the derivations as simple as possible, here we consider only the first derivative, but it will be clear that the results extend to higher order differential equations. In the first subsection, we recall that for an important class of continuously differentiable functions, the first derivative is generally non-computable. In the second subsection, we then show that u ′ ∞ is also not computable and we characterize the degree of the non-computability of u ′ and u ′ ∞ in the Zheng-Weihrauch hierarchy.

A. Degree of non-computability of u ′
This section considers functions on T = R/2πZ, and it is known that there exist computable continuous functions which are continuously differentiable (u ∈ C c (T) ∩ C 1 (T)), but which have a first derivative u ′ which is not a computable function [11]. Even more, there are functions u ∈ C c (T) ∩ C 1 (T) satisfying additional smoothness conditions, but such that u ′ (τ ) is still not computable for some τ ∈ T. Since this result from [19] will be the basis for the following investigations, we briefly restate it for future reference. To this end, we define the set of all computable continuous functions on T with an absolute continuous first derivative which belongs to the Wiener algebra W. Then [19] gives an explicit construction of a u A ∈ U c , such that u ′ A (0) is not a computable number. Theorem IV.1: Let A ⊂ N be a recursively enumerable set which is not recursive and define with trigonometric polynomials p n given for n ∈ N by and with computable numbers Remark 7: It might be worth noting that the function u A constructed in Theorem IV.1 has the property that u ′ It is clear that Theorem IV.1 might be reformulated for arbitrary points on T: Without loss of generality and to simplify notation, we stick to the case τ = 0 as given in Theorem IV.1.

Remark 8:
We emphasize that u A , defined in (6), is a computable continuous function. Therefore, in view of Lemma III.3, there exists a sequence {u m } m∈N of trigonometric polynomials, which converges uniformly and effectively to u A . In particular, it was shown in [19] that , for every t ∈ T , with a computable positive constant K 0 ∈ R c and with trigonometric polynomials which are the partial sums of (6).
B. Degree of computability of u ′ and u ′ ∞ Theorem IV.1 showed that there exist functions u ∈ U c so that u ′ (0) and u ′ ∞ are not computable numbers. Next, we want to determine the degree of non-computability of these two numbers using the Zheng-Weihrauch hierarchy. Later, in Section VI we use these results to show that the problem of algorithmically detecting an upper bound for u ′ ∞ is not semidecidable, and we will discuss consequences for recent quantum algorithms. Lemma IV.3: Let u ∈ U c be arbitrary, then u ′ (t) ∈ ∆ 2 for every t ∈ R c .
Proof: The function u is continuously differentiable and 2π-periodic. So for every fixed t ∈ R c , one can define a computable sequence {r n } n∈N of computable numbers by which satisfies lim n→∞ r n (t) = u ′ (t). Since for every convergent sequence its limit inferior and and limit superior are equal, we have u ′ (t) ∈ ∆ 2 . Remark 9: Together with Theorem IV.1, Lemma IV.3 shows in particular that not all numbers x ∈ ∆ 2 are necessarily computable.
Next we characterize the degree of non-computability for the maximum norm of the first derivative for functions in U c . The following theorem shows that for every u ∈ U c , the maximum norm u ′ ∞ is the limit of a monotone increasing computable sequence of computable numbers, so u ′ ∞ ∈ Σ 1 . Theorem IV.4: Let u ∈ U c be arbitrary, then u ′ ∞ ∈ Σ 1 . Proof: Let u ∈ U c be arbitrary. Then both, u and u ′ are continuous functions on T. Consequently, u can be written as a Fourier series [a n cos(nt) + b n sin(nt)] , t ∈ T , which converges uniformly on T and with the Fourier coefficients a n = 1 π T u(τ ) cos(nτ ) dτ and b n = 1 π T u(τ ) sin(nτ ) dτ.
Both {a n } n∈N and {b n } n∈N are computable sequences of computable numbers. Then for 0 ≤ r < 1 the Poisson integral (29) of u is given by (P r u) (t) = a0 2 + ∞ n=1 r n [a n cos(nt) + b n sin(nt)] for t ∈ T. Since u is a computable continuous function, it follows that for every r ∈ [0, 1] ∩ R c , the mapping u → P r u from C(T) to C(T) is computable. Moreover, since u ′ is continuous on T, one has for every r ∈ [0, 1] which easily follows from the representation (10) of the Poisson integral P r u. Moreover, for every r ∈ [0, 1] ∩ R c , the mapping d dt • P r : C(T) → C(T) is also computable [39]. Therefore with r n = 1 − 1/n, defines a computable sequence {d n } n∈N of computable numbers. Moreover, it follows from (10) that for all r, ̺ ∈ [0, 1], one has P ̺·r u = P ̺ (P r u). So for arbitrary 0 ≤ r 1 < r 2 ≤ 1 and with µ = r 1 /r 2 , one gets where the last inequality follows from the maximum-modulus principle (30). So because r n < r n+1 for all n ∈ N, one has d n (f ) ≤ d n+1 (f ) for all n ∈ N, i.e. {d n } n∈N is a non-decreasing sequence. In addition, lim n→∞ d n (f ) = u ′ ∞ . Thus u ′ ∞ is the limit of a non-decreasing computable sequence of computable numbers, i.e. u ′ ∞ ∈ Σ 1 . So for every u ∈ U c , one always has that u ′ ∞ ∈ Σ 1 . It is worth noting that the converse of this statement is also true: Given an arbitrary positive number x ∈ Σ 1 , there always exists a function u ∈ U c so that u ′ ∞ = x. This is shown by the following theorem. Theorem IV. 5: Let x ∈ Σ 1 , x ≥ 0 be arbitrary, then there exists a u ∈ U c with u ′ ∞ = x. Proof: If x = 0, then the function u(t) = 0 for all t ∈ T has the properties required by the theorem. Assume now x ∈ Σ 1 , x > 0. We are going to construct u ∈ U c with u ′ ∞ = x. To this end, we first note that since x ∈ Σ 1 , there exists a computable sequence {r n } n∈N of rational numbers with r n ≤ r n+1 for all n ≥ 1 and with lim n→∞ r n = x. Without loss of generality, we assume r 0 = 0 and define d n = r n − r n−1 for all n > 1. Then d n ≥ 0 for all n ∈ N and n∈N d n = lim n→∞ r n = x. Now we choose a computable sequence {n k } k∈N ⊂ N so that G(n k ) > k 2 , wherein G(n) = n+1 k=2 1 k log k as in the definition of the polynomials p n in (7). Therewith, we define the function The corresponding sequence {P K } K∈N , given by P K (t) = K k=1 d k p n k (t), is a computable sequence of polynomials with using |p n (t)| ≤ C 1 /G(n) for all t ∈ T and with the constant C 1 = ∞ k=2 1/(k 2 log k) < ∞. Moreover, there always exists an n * ∈ N so that n * > x. Therefore n * > d k for all k ∈ N, and so for every K ∈ N, we have showing that P K converges effectively to u. Therefore, u is a computable continuous function. Now, for the function using p ′ n ∞ ≤ 1 for all n ∈ N and lim n→∞ r n = x. So for K → ∞, one gets lim K→∞ g − P ′ K ∞ = 0, showing that g ∈ C(T), and and Lemma A.1 implies that g = u ′ , showing that u ∈ U c . Finally, as in the proof of Theorem IV.7, we have It is an interesting question of practical importance whether it is possible to algorithmically construct this u based on the given x ∈ Σ 1 , i.e. does there exist a Turing machine with input x and whose output is a function u ∈ U c satisfying u ′ ∞ = x? Analyzing the previous proof of Theorem IV.5, we notice that the construction of u ∈ U c was not constructive, i.e. the proof shows only the existence of such a u but it gives no algorithm which allows us to construct u from the given x. In particular, there is no algorithmic way to obtain the sequence {r n } n∈N , which was used in the proof to construct u ∈ U c . However, if we restrict x to lie in the interval [0, 1], then there exists such a Turing machine TM * whose input is an algorithmic description of the input x (namely the Zheng-Weihrauch representation of x) and whose output is an approximation u of u so that the approximation error can effectively be controlled. This is shown by the following theorem. Theorem IV.7: There exists a Turing machine TM * with the following property: For an arbitrary x ∈ Σ 1 ∩ [0, 1] with Zheng-Weihrauch representation ϕ A : N → A ⊂ N, the input of TM * is ϕ A and the output is the function u ∈ U c satisfying u ′ ∞ = x. Remark 10: Remember, the output of TM * is, in fact, an approximation u ∈ U c , satisfying u − u ∞ < ǫ, and where the desired error bound ǫ > 0 is a further input to TM * .
Remark 11: Note also, that TM * is universal for this task in the sense that it does not depend on the given x.
Proof: Let x ∈ Σ 1 ∩ [0, 1] be arbitrary with a corresponding recursively enumerable set A ⊂ N, and let ϕ A : N → A be a Zheng-Weihrauch representation of x. Therewith, define the function with p n given in (7). It follows from Theorem IV.1 that u ∈ U c . Moreover, it was shown in [19,Theorem 5] that is a computable sequence {u m } m∈N of polynomials which satisfies Additionally, the definition of p n immediately implies |p ′ n (t)| ≤ p ′ n (0) = 1 for all t ∈ T, so that This proves the statement of the theorem, because according to (8), the approximation u m given in (11) converges effectively to u. So (11) gives the algorithm to effectively construct the desired u ∈ U c from the given Zheng- V. NON-DECTABILITY OF NON-COMPUTABILITY OF u ′ Assume we want to use a digital computer to calculate u ′ (0) for arbitrary functions u ∈ U c . Since for some functions u ∈ U c , u ′ (0) is not computable (cf. Theorem IV.1), we have to verify beforehand whether the given u ∈ U c has the property that u ′ (0) is actually computable. Otherwise the algorithm might calculate something, but it will not be possible to guarantee a predefined error bound so that we can't be sure whether the obtained result is sufficiently close to the true value u ′ (0). Therefore, it is desirable to have an exit-flag functionality as sketched in Fig. 1 and which is able to detect whether a given u ∈ U c has the property that u ′ (0) is computable or not. If such a strong exit-flag functionality is not possible, we may ask for the weaker exit-flag functionality as shown in Fig. 2 or Fig. 3. They are only able to detect functions u ∈ U c for which u ′ (0) is computable or not computable, respectively (cf. also discussion in Section I).
Concentrating first on the strong exit-flag functionality of Fig. 1, we ask whether it is possible to algorithmically decide, for any given u ∈ U c , whether u ′ (0) ∈ R c or u ′ (0) / ∈ R c . More precisely, we consider the following detection problem.

Problem V.1 (Decision problem):
Does there exist a Turing machine TM D (u) with input set U c which halts for every u ∈ U c , and with two output states A Turing machine TM D as in Problem V.1 could be used to implement the strong exit-flag functionality sketched in Fig. 1.
If TM D (u) detects that u ′ (0) ∈ R c , then it will start the actual Turing machine TM u ′ for computing u ′ (0). Otherwise, if TM D (u) detects that u ′ (0) / ∈ R c , then it stops the calculation with a corresponding information for the user. From a mathematical point of view, the decision Problem V.1 is equivalent to the question whether the set is decidable (cf. Def. III.5). Equivalently, one may ask whether the complement set The following main result of this section shows that both sets, U comp and U nocomp are not only not decidable, but are also not semidecidable.
Theorem V.2: Both set U comp and U nocomp as defined in (12) and (13), respectively, are not semidecidable with respect to U c .
Remark 12: Note that if U comp is not semidecidable, then this does not imply that U nocomp is not semidecidable, and vice versa. This is different then for the decidability of the complementary sets U comp and U nocomp . So in the subsequent proof of Theorem V.2 we have to prove both statements separately.
Reformulating Theorem V.2 in terms of the existence of particular Turing machines as explained in Section III-C, we get the following statement.

Corollary V.3:
There exist no Turing machines TM 0 (u) and TM 1 (u) with inputs u ∈ U c both of which have only one output state, and so that • TM 0 (u) halts if and only if u ∈ U comp • TM 1 (u) halts if and only if u ∈ U nocomp . Corollary V.3 immediately implies that the weak exit-flag functionalities sketched in Fig. 2 and 3 cannot be implemented. This shows that U comp has indeed much stronger non-computability properties than the semi-decidable set {x ∈ R c : x = 0} shortly discussed in Example 1 at the beginning of this paper. Moreover, since U comp is not semidecidable, it is a fortiori not decidable. In particular, there exists no decider TM D (u) with input u ∈ U c which is able to decide after finitely many iterations whether the input u belongs to U comp or to U nocomp = U c comp = U c \U comp . The same conclusion can be drawn from the fact that U nocomp is not decidable.

Corollary V.4: There exists no Turing machine TM D (u) with input u ∈ U c which always halts after finitely many iterations and with the two output states
Instead of Theorem V.2, we prove the equivalent statement of Corollary V.3.

Proof of Corollary V.3: Part I:
We start with the statement for TM 0 . To this end, let u A be the function (6) from Theorem IV.1 and let u 0 be the zero function in U c , i.e. u 0 (t) = 0 for all t ∈ T. For any λ ∈ [0, 1] ∩ R c , we define the function Since u 0 ∈ U comp , and according to Theorem IV.1, we have u A,λ ∈ U comp for λ = 0 u A,λ ∈ U nocomp for all 0 < λ ≤ 1 .
After these preparations, we prove the statement of the corollary by contradiction and assume that there exists a Turing machine TM 0 (u) with the properties given in Corollary V.3. Moreover, TM >0 (λ) denotes a Turing machine with input λ ∈ [0, 1] ∩ R c , which halts if and only if λ > 0, and which calculates forever if λ = 0. Such a Turing machine does exist because the set {λ ∈ [0, 1] ∩ R c : λ > 0} is known to be semidecidable [39]. Now we construct a Turing machine TM D (λ) with input λ ∈ [0, 1] ∩ R c as follows: (i) For any input λ ∈ [0, 1] ∩ R c , TM D determines in a first step, u A,λ ∈ U c . This is possible, because of (15), i.e., because the sequence {u m,λ } m∈N converges effectively and uniformly to u A,λ , for all λ ∈ [0, 1] ∩ R c . (ii) Afterward, TM D starts the two Turing machines TM 0 (u A,λ ) and TM >0 (λ) in parallel. It halts if either TM 0 or TM >0 halts, and it gives the output Because of (14), the Turing machine TM 0 halts if and only if λ = 0, and by the definition of TM >0 , the Turing machine TM >0 halts exactly if λ > 0. So we constructed a Turing machine TM D : [0, 1] ∩ R c → {0, 1}, which always halts and which is able to decide whether the input λ ∈ [0, 1] ∩ R c is equal to zero or larger than zero. However, it is well known that such a Turing machine does not exist, because the set {λ ∈ [0, 1] ∩ R c : λ > 0} is not decidable, but is only semidecidable [39]. So we have obtained a contradiction. Therefore, the assumption that TM 0 (u) exists was wrong, which proves the first statement of the corollary. Part II: Also, the proof of the second statement, concerning the existence of TM 1 , is based on the function u A defined by (6) in Theorem IV.1. Then for any ρ ∈ [0, 1), we consider the Poisson integral u A (ρ, t) = (P ρ u A ) (t) of u A given by (29) for t ∈ T. By known properties of the Poisson integral [53], we have that u A (ρ, ·) ∈ C ∞ (0, 2π) for every ρ ∈ [0, 1) and From the definition in (6) and (7), we note that u A can be written as a sine series with a coefficient sequence {b k } ∞ k=2 whose concrete values are not important here. This representation of u A shows that the corresponding Poisson integral is given by Similarly as for u A , we write the partial sums (9) of u A as the sine series where the coefficients {b k (m)} m+1 k=2 depend now on the degree m. The corresponding Poisson integral of u m is then given by This shows that {u m (·, t)} ∞ m=2 is a computable sequence of polynomials for every fixed t ∈ T and that {u m (ρ, ·)} ∞ m=2 is a computable sequence of trigonometric polynomials for every fixed ρ ∈ [0, 1). By the maximum modulus principle (30) for harmonic functions, we get from (8) for all ρ ∈ [0, 1) ∩ R c , using that 2π 0 P ρ (τ ) dτ = 2π for every ρ ∈ [0, 1). Thus u m (ρ, t) effectively converges to u A (ρ, t) as m → ∞ uniformly for all t ∈ T and all ρ ∈ [0, 1) ∩ R c .
So from the previous definition of the functions u A (ρ, ·), we see that Property iii) is a consequence of the effective convergence noted in (17). Overall, we have shown that u A (ρ, ·) ∈ U c for all ρ ∈ [0, 1] ∩ R c and u A (ρ, ·) ∈ U comp for 0 ≤ ρ < 1 u A (ρ, ·) ∈ U nocomp for ρ = 1.
Now we proceed very similarly as in the first part of the proof and assume, in contradiction to the statement of the corollary, that there exists a Turing machine TM 1 with the properties claimed by the corollary. Moreover, let TM <1 (ρ) be a Turing machine with input ρ ∈ [0, 1] ∩ R c and which halts after finitely many iterations if and only if ρ < 1. Otherwise, if ρ = 1, the Turing machine will never halt. Such a Turing machine does exist because the subset {ρ ∈ [0, 1] ∩ R c : ρ < 1} of [0, 1] ∩ R c is known to be semidecidable [39]. Then we construct a Turing machine TM D (ρ) with input ρ ∈ [0, 1] ∩ R c as follows: (i) For any input ρ ∈ [0, 1] ∩ R c , the Turing machine TM D first determines the function u A (ρ, ·) ∈ U c . (ii) Afterward, TM D starts the Turing machines TM <1 (ρ) and TM 1 (u A (ρ, ·)) in parallel, and it halts if either TM <1 or TM 1 halts with the output TM <1 (ρ) halts if and only if ρ < 1 and because of (18), TM 1 halts if and only if ρ = 1. This way, we constructed a decider, i.e. the Turing machine TM D : [0, 1] ∩ R c → {0, 1} which always halts and which is able to decide whether a given ρ ∈ [0, 1] ∩ R c is smaller than 1 or equal to 1. However, it is known that such a Turing machine does not exist because the subset {ρ ∈ [0, 1] ∩ R c : ρ < 1} of [0, 1] ∩ R c is not decidable but only semidecidable [39]. So we arrive at a contradiction. Therefore our assumption that TM 1 exists was wrong, proving the statement of the corollary.
VI. NON-DETECTABILITY OF UPPER BOUNDS FOR u ′ ∞ As discussed in the introduction, there are many applications where it is not necessary to know u ′ (t) at a specific t ∈ R c , but it would be sufficient to know u ′ ∞ , or at least a good upper bound for u ′ ∞ . Nevertheless, it was shown in Section IV that for u ∈ U c , the maximum norm u ′ ∞ is generally not algorithmically computable. Therefore, we investigate now whether it is possible to detect at least an upper bound for u ′ ∞ . It will be shown that this is not possible and we discuss consequences for recent quantum based algorithms.
Assume u ∈ U c and a positive computable number λ is given. Is it possible to decide algorithmically (i.e. by a Turing machine) whether λ is an upper bound for u ′ ∞ ? More formally, we investigate the following problem. Definition VI.1: Let u ∈ U c be arbitrary. We say that the detection of an upper bound for u ′ ∞ is algorithmically solvable if there exists a Turing machine TM * whose input is a computable number λ > 0 and which stops if and only if λ > u ′ ∞ . Otherwise, it never halts. Note that even through TM * generally depends on u, it is not required that TM * depends recursively (i.e. algorithmically) on the given function u. So TM * might be a Turing machine which was specifically designed (by a human) for the particular but arbitrary u ∈ U c . Moreover, it is only required that TM * stops if the input is an upper bound for u ′ ∞ . For other inputs, it calculates forever. In other words, we ask whether for an arbitrary given u ∈ U c , the set The following theorem shows that it is not, and it precisely classifies those u ∈ U c for which R u is not semidecidable. Theorem VI.2: Let u ∈ U c with u ′ ∞ ∈ Σ 1 \∆ 1 , arbitrary. Then the problem of detecting an upper bound for u ′ ∞ , as described by Def. VI.1, is not algorithmically solvable.
Proof: Assume the opposite, namely that there exists an u ∈ U c with u ′ ∞ ∈ Σ 1 \∆ 1 , so that for this function the problem of detecting an upper bound for u ′ ∞ is algorithmically solvable. We denote by TM * the corresponding Turing machine, and we define for i ∈ N the dyadic rational numbers λ i,k = k · 2 −i , k = 1, . . . , 2 i − 1.
First we assume that u ′ ∞ < λ 0 = 1, and describe a procedure to find an upper bound for u ′ ∞ . We start the Turing machine TM * with input λ 1,1 = 1/2 and perform the first calculation step of TM * (λ 1,1 ). If, after this first step, TM * (λ 1 ) already stops, we have found an upper bound λ 1 = 1/2. Otherwise, if TM * (λ 1,1 ) does not stop after the first step, we calculate the second step of TM * (λ 1,1 ) = TM * (λ 2,2 ) and in parallel, we calculate the first steps of TM * (λ 2,1 ) and TM * (λ 2,3 ). If one of these three Turing machines stops after this step, we have found a corresponding upper bound λ 1 for u ′ ∞ , namely the smallest input λ 2,k among all Turing machines which stopped in this second step. If no Turing machine has stopped, we calculate the next step of the running Turing machines, and in parallel, we start Turing machines with inputs λ 3,1 , λ 3,3 , λ 3,5 , λ 3,7 . Again, if at least one of the Turing machines stops after this step, we have found an upper bound λ 1 for u ′ ∞ , otherwise we continue with step 4.
Since u ′ ∞ < 1 and TM * (λ) stops for all λ > u ′ ∞ , it is clear that the above procedure stops after finitely many steps with a dyadic rational number λ 1 < 1, as the upper bound for u ′ ∞ . So in particular, we found that u ′ ∞ < λ 1 . Next, we again apply the above procedure, but start now with the assumption u ′ ∞ < λ 1 . This yields another dyadic rational number λ 2 < λ 1 as an upper bound for u ′ ∞ , i.e we find u ′ ∞ < λ 2 . Now we apply this procedure iteratively to obtain a computable sequence {λ n } n∈N ⊂ [0, 1) of dyadic rational numbers, so that λ n+1 < λ n and u ′ ∞ < λ n for all n ∈ N. Consequently, there exists λ ∞ = lim n→∞ λ n which satisfies u ′ ∞ ≤ λ ∞ . Next we show that actually, u ′ ∞ = λ ∞ . Indeed, assume u ′ ∞ < λ ∞ . Then there exists a dyadic rational number λ * so that u ′ ∞ < λ * < λ ∞ . But this would imply that λ * = λ i,k was an input in the above described algorithm in step i and in all following steps. Consequently TM(λ * ) must have stopped in this previous algorithm, and so there exists an n 0 so that λ n < λ * for all n > n 0 . But this contradicts (19) and we necessarily have u ′ ∞ = λ ∞ = lim n→∞ λ n . So, u ′ ∞ is the limit of a monotone decreasing computable sequence {λ n } n∈N . However, since u ′ ∞ ∈ Σ 1 , it is also the limit of a monotone increasing computable sequence, i.e. there exists a computable sequence {r n } n∈N of rational numbers with r n ≤ r n+1 for all n ∈ N and with u ′ ∞ = lim n→∞ r n . Consequently, it follows that u ′ ∞ ∈ R c = ∆ 1 . However, this contradicts the assumption that u ′ ∞ ∈ Σ 1 \∆ 1 . So the Turing machine TM * does not exist. Theorem VI.2 has practical implications in the theory of quantum computing. There the so-called hidden subgroup problem plays an important role, and recently several quantum algorithms were proposed for solving this problem [41], [42], [43]. These algorithms are generalizations of Shor's famous algorithm [54] for breaking Rivest-Shamir-Adleman (RSA) and Diffie-Hellman-Merkle (DHM) cryptosystems, and generalizations of the Hallgren's algorithm [55] for solving Pell's equation, and therefore for breaking the Buchmann-Williams key-exchange cryptosystem. In particular, these algorithms are much more powerful than Shor's or Hallgren's algorithm and they even allow us to break several lattice-based cryptosystems. Therefore, they provide very interesting approaches to attack so-called post-quantum cryptography methods. However, in contrast to Shor's algorithm, the approaches in [41], [42], [43] explicitly need u ′ ∞ as an input. Without this input, no bounds on the complexity in form of the necessary quantum operations can be derived. Consequently, it would not be possible to claim an exponential speedup of these quantum algorithms compared to the best known classical algorithm. So Theorem VI.2 points to a limitation of these algorithms since it shows that even for a fixed u ∈ U c the problem of detecting an upper bound for u ′ ∞ is not algorithmically solvable. Consequently, such an upper bound can generally not be found algorithmically, but has to be determined explicitly by mathematical methods. Finally, it may be interesting to note that Shor's algorithm is basically an algorithm for finding the period of a function. Using the concrete structure of the prime factorization problem and properties of the quantum Fourier transform, Shor was able to obtain all necessary information about the variation of the function for which the period has to be determined. For more general problems, such a structure is not yet known [56], [57].

VII. NON-DETECTABILITY FOR THE WAVE EQUATION
This section investigates the detectability of the non-computability of solutions of the wave equation by observing the initial values. We start by giving a short review of the Cauchy problem for the wave equation in R 3 and recall the results showing that there exist initial values such that the solution is not computable at certain points. Afterward, it is proved that this non-computability is not detectable by a Turing machine.

A. The Cauchy problem of the wave equation
We write x = (x 1 , x 2 , x 3 ) ∈ R 3 for a vector in R 3 with its three Cartesian coordinates x 1 , x 2 , x 3 ∈ R and with its usual norm x = x 2 1 + x 2 2 + x 2 3 1/2 . For any twice partially differentiable function u : and u t = ∂u ∂t and u tt = ∂ 2 u ∂t 2 stand for the first and second partial derivative with respect to the time coordinate, respectively. Then we consider the following initial value problem of the three-dimensional wave equation Therein c ∈ R c , c > 0 characterizes the velocity of the wave described by this differential equation. Without loss of generality, we assume c = 1. The function f , i.e. the initial condition of the differential equation, describes the waveform at the initial time t = 0. Assuming f ∈ C 1 (R 3 ), the unique solution of (20) is known [13], [58] to be for t > 0 and every x ∈ R 3 . Therein, one has to integrate over the sphere ∂B(x, t) = ξ ∈ R 3 : ξ − x = t in R 3 with center x ∈ R 3 and radius t > 0. The surface measure on the three-dimensional sphere is denoted by dF and we write W : f → u for the operator mapping the initial conditions f ∈ C 1 (R 3 ) onto the corresponding solution u of (20).

B. Computability of solutions of the wave equation
As for the ordinary differential operator in Section IV, we ask whether it is true that every computable input f yields a solution u of (20) which is again computable. It is known that the answer is negative. In particular, [13] constructed a computable function f such that corresponding solution u of (20) is not computable. In this paper we use a significantly sharper version of this statement taken from [19]. To this end, we define first the set of all computable continuous functions, supported on a spherical shell in R 3 , which are continuously differentiable and for which the partial derivatives (considered as functions of one variable x n while the other two variables are kept fixed) are absolutely continuous. It was shown in [19] that the set V c contains functions f such that the corresponding solution u = W (f ) of the Cauchy problem (20) is not a computable function. More precisely, the following statement was proven.
Theorem VII.1 shows that there are computable initial conditions f ∈ C c (R 3 ) ∩ C 1 (R 3 ) with absolutely continuous first partial derivatives so that the solution u = Wf of the wave equation (20) is not computable at position x = (0, 0, 0) ∈ R 3 c and at time t = 2π ∈ R c .
Similarly as in Section IV, we decompose V c into two complementary subsets of all those initial values f ∈ V c , which yield a solution that is computable at x = (0, 0, 0) ∈ R 3 c and t = 2π ∈ R c , and all those that yield a solution which is not computable at this point, respectively. It is clear from (22) that V nocomp = V c comp = V c \V comp and we are going to show in the next subsection that both sets are not semidecidable. To this end, it will be important that the function f ∈ V c in Theorem VII.1 has a particular structure. Consider the set • q(t) = 0 for t < π and t > 3π The proof of Theorem VII.1 in [19] constructed a q ∈ M c such that the corresponding function f q ∈ V c (R 3 ), defined by has the properties claimed in Theorem VII.1. For any f q ∈ V c , constructed as in (24), the closed-form solution of the wave equation (21) is given for t > 0 by In particular, we have (Wf q ) (2π, 0) = q(2π) + 2π q ′ (2π). Since q ∈ M c and because 2π ∈ R c , we thus have .
This motivates us to define the following complementary subsets of M c , Therefore, the previous discussion can be summarize by the following statement: Lemma VII.2: Let f q ∈ V c be a function of the form (24) with q ∈ M c . Then f q ∈ V comp if and only if q ∈ M comp , and conversely f q ∈ V nocomp , if and only if q ∈ M nocomp .

C. Detection problems for the wave equation
Similarly as in Section IV, we are going to show that there exists no decider, i.e. no algorithm which can be implemented on a Turing machine and which is always able to decide after a finite number of iterations whether a given function f ∈ V c belongs to V comp or V nocomp . So there is no decider which can detect whether f ∈ V c yields a solution (21) of the Cauchy problem (20) which is computable at x = 0 and t = 2π or whether it yields a solution which is not computable at x = 0 and t = 2π. If such a decider would exist, this would imply that V comp and V nocomp are decidable sets. However, we can prove that both sets are not even semidecidable. Theorem VII.3: Both sets V comp and V nocomp , defined in (22), are not semidecidable.
Theorem VII.3 may be reformulated in terms of the existence of a Turing machine with only one output state as explained in Section III-C. This yields the following equivalent reformulation of Theorem VII.3. Corollary VII.4: There exist no Turing machines TM 0 (f ) and TM 1 (f ) with inputs f ∈ V c , in which each has only one output state, and so that Moreover, since both subsets V comp and V nocomp are not semidecidable they are a fortiori not decidable. Consequently, we immediately have the following observation. Corollary VII.5: There exists no Turing machine TM D with input f ∈ V c , which always halts after finitely many iterations, and with the two output states Similarly as in Section V, we prove Corollary VII.4 instead of the equivalent statement of Theorem VII.3. The idea of the proof is very similar to the proof of Corollary V.3. We mainly have to adapt it to the particular situation of the wave equation.
Proof of Corollary VII.4: Part I: We prove first the non-existence of the Turing machine TM 0 . To this end, we notice that there exists a q ∈ M nocomp ⊂ M c so that the function f q defined by (24) belongs to V nocomp (cf. Lemma VII.2). Based on this f q , we define for any λ ∈ [0, 1] ∩ R c the function with the zero function f 0 of V c , i.e. f 0 (x) = 0 for all x ∈ R 3 . By this definition, f λ ∈ V c for every λ ∈ [0, 1] ∩ R c and since Now we assume in contradiction to the statement of the corollary that there exists a Turing machine TM 0 (f ) with input f ∈ V c and which halts if and only if the input f belongs to V comp . Otherwise, if f ∈ V nocomp , it runs forever. Moreover, let TM >0 (λ) be the Turing machine with input λ ∈ [0, 1] ∩ R c which is defined as in Part I of the proof of Corollary V.3. Then we construct a Turing machine TM D (λ) with input λ ∈ [0, 1] ∩ R c as follows: (i) For the input λ, TM D determines first the function f λ . This is possible because f λ ∈ V c is a computable continuous function. [0, 1] ∩ R c is known to be not decidable [39]. So we arrived at a contradiction, proving that the Turing machine TM 0 does not exist. Thus the first statement of the corollary is verified.
Part II: To prove the second statement, let q ∈ M nocomp be arbitrary. Since q is a computable continuous function on [π, 3π], there exists (cf. Def. III.3) a sequence of trigonometric polynomials {p m } m∈N and a recursive function e : N → N, so that for every N ∈ N and for all t ∈ [π, 3π], Next we consider for ρ ∈ (0, 1] ∩ R c the Poisson integral on the upper half plain of q given by and similarly, p m (ρ, t) stands for the Poisson integral of the trigonometric polynomial p m . By properties of the Poisson integral [53], it follows that q(ρ, ·) ∈ C ∞ (R) for every ρ ∈ (0, 1], and since q ∈ C c (R), it follows that q (k) (ρ, ·) ∈ C c (R) for every k ∈ N. Moreover, for ρ = 0, we have q(0, t) = q(t) for all t ∈ R.
The functions q(ρ, ·) and p m (ρ, ·) are no longer concentrated on the interval [π, 3π]. Therefore, we multiply q(ρ, ·) and p m (ρ, ·) with a window function w ∈ C ∞ (R) which is constantly equal to 1 on an interval I ⊂ (π, 3π) containing 2π and which is equal to 0 outside the interval [π, 3π] (cf. Fig. 5 for an illustration of such a window function). The obtained functions g ρ (t) = w(t) q(ρ, t) and g ρ,m (t) = w(t) p m (ρ, t) are equal to zero outside the interval [π, 3π]. In particular, g ρ ∈ C ∞ (R) and satisfies g ′ ρ (2π) = ∂q ∂t (2π, ρ) ∈ R c . Moreover, similarly as in Part II of the proof of Corollary V.3, the computability of q and properties of the Poisson kernel imply that g ρ is a computable continuous function. Indeed by the maximum principle of harmonic functions and (27), we have for all m ≥ e(N ), using that there is a constant K 1 > 0 such that So the computable functions g ρ,m effectively converge to g ρ as m → ∞, uniformly for all t ∈ [π, 3π] and all ρ ∈ (0, 1] ∩ R c . This verifies that g ρ ∈ C c (R). Overall we thus have g ρ ∈ M comp for every ρ ∈ (0, 1] ∩ R c . However, for ρ = 0, we have g 0 (t) = w(t) q(0, t) = w(t) q(t). Consequently g ′ 0 (2π) = q ′ (2π) because q was chosen from M nocomp , showing that g 0 ∈ M nocomp .
Based on the so-defined function g ρ , we define as in (24) the functions f ρ (x) = g ρ ( x ) for all x ∈ R 3 , and Lemma VII.2 shows that The remainder of the proof follows almost exactly the lines in the proof of Corollary V.3. We assume that there exists a Turing machine TM 1 (f ) with input f ∈ V c and which halts if and only if the input f belongs to V nocomp . Then we consider the Turing machine TM >0 (λ) with input λ ∈ [0, 1] ∩ R c defined as in Part I of the proof of Corollary V.3. Similarly as in part one of this theorem, we can now construct a Turing machine TM D (λ) with λ ∈ [0, 1] ∩ R c and which always halts with the two output states Nevertheless, such a Turing machine does not exist because the subset {λ ∈ [0, 1] ∩ R c : λ > 0} is known to be not decidable [39]. So we obtained a contradiction, proving that the Turing machine TM 1 does not exist. At the moment, big technology companies are putting a lot of effort into building virtual representations of the real physical world on digital computers. With digital representations, they want to solve real world problems in areas like robotics, autonomous driving, autonomous flight systems, and network optimization for communication systems. "Metaverse" or "digital twins" are the most discussed approaches in this direction. These targeted applications have very critical performance parameters because the digital representation on the Turing machine must be a trustworthy image of the real world. For non-computable physical processes, this is generally not possible, as the results in Sections V-VIII show. Even for computable physical processes, a trustworthy digital approximation may be far too complex from a practical point of view [59].
We would like to come back to the two questions by Daniel Kahneman on human-machine interaction and artificial general intelligence (AGI) which were shortly mentioned at the end of Section II-B. According to Daniel Kahneman [44], it would be very interesting to find problems which can not be solved by machines (even on the basis of artificial intelligence), but which can be solved by humans. Moreover, it would be interesting to find algorithms which are able to autonomously detect such situations, i.e. problems which for some concrete parameters can only be solved by humans, but not by machines. Kahneman calls this "problematic situations". The results of Sections VI and VII answer these questions for all possible machines (including artificial intelligence or AGI machines) which are implemented on digital hardware, i.e. on Turing machines. Please note that at the moment, all commercially available AI applications are implemented on digital hardware. Concretely, the results of Sections VI and VII show that for certain simple, computable, continuously differentiable functions u, there exists no Turing machine with input n ∈ N and whose output is a computable number x n ∈ ( u ′ ∞ , u ′ ∞ + 1/2). Nevertheless, a human can certainly solve this problem by creative work. If, on the other hand, the function u is chosen such that u ′ ∞ ∈ R c , then there exists a Turing machine which can solve this problem. In other words, u ′ ∞ / ∈ R c is a problematic situation in the sense of Daniel Kahneman, and the results of Section V show that there exists no Turing machine which is able to recognize this problematic situation. These phenomena can also be shown for solutions of the wave equation (cf. Section VII). It is clear that the two questions by Daniel Kahneman address key functionality requirements of future robotic systems in critical environments. For instance, NASA is developing a vehicle system manager (VSM) for the lunar gateway space station. This robotic system needs to have the corresponding human-robotic collaboration functionality [60].
It should be emphasized that the previous discussion applies only to machine implementations on digital hardware. For other hardware platforms, like neuromorphic or quantum computing, the corresponding questions are open.

VIII. DISCUSSION AND FUTURE PROBLEMS
It is known that the first derivative of a computable continuously differentiable function is generally not computable. Using the framework of the Zheng-Weihrauch hierarchy, this paper classified precisely the non-computability of u ′ and u ′ ∞ for functions u ∈ U c . Then it was shown that there exists no Turing machine which is able to detect whether, for a given function u ∈ U c , it is possible to compute its first derivative at a certain point τ ∈ T under an effective control of the approximation error. In other words, there is no way that a digital machine can autonomously detect whether u ′ (τ ) is a computable number from observing the input u ∈ U c . Even modern machine learning algorithms will never be able to learn to distinguish between functions in U c with a computable first derivative and with a non-computable first derivative, respectively. Even further, it was shown that no Turing machine exists which is able to detect an upper bound for u ′ ∞ for all u ∈ U c . The paper also presented a similar negative result concerning the detectability of non-computability for solutions of the wave equation.
The results of this paper show fundamental limitations of digital computers for simulating continuous physical problems, in particular for simulating analog circuits and systems. We would like to discuss some ways to circumvent these problems. 1) Analog computing: Our results are based on the computing model of a Turing machine which is in fact a theoretical model for any algorithm which can be implemented on a digital computer. For analog computers, these restrictions do not apply. So analog computing might have advantages over digital signal processing for some computational problems (such as the detection problem discussed in this paper), which cannot be solved on digital computers. Additionally, analog computing is known to have potentially significant advantages in terms of energy consumption, computation time and bandwidth efficiency; active research in this field still exists (see, e.g., [61], [62], [63], [64], [65], [66]). Moreover, novel approaches and materials have recently stimulated new research on analog computing [67], [68]. With that said, we believe that it is a very interesting research area and would like to identify more problems which can, in principle, be solved by means of analog computers, but not with digital hardware, and vice versa.
2) Restriction of the input set: We might restrict the input to a certain subset U d ⊂ U c . Then Problem V.1 might be solvable for this subset. Results in this direction were already presented in [19]. There, two subsets U i ⊂ U c , i = 1, 2, defined by U 1 = v ∈ U c : v ′′ ∈ L 1 c (T) U 2 = {v ∈ U c : v ∈ H s c (T), s > 3/2} were given so that for any u ∈ U i , i = 1, 2, its first derivative u ′ is a computable continuous function. So in particular, for any u ∈ U i , i = 1, 2, one has u ′ (0) ∈ R c . Therein, the set H s c (T) stands for all functions which are computable in the usual Sobolov space H s (T) = W s,1 (T), and we refer to [19] for a precise definition of the subsets U 1 and U 2 . In view of these results, we think it is an interesting problem of future research, characterizing subsets of U c , so that for these subsets Problem V.1 will have a positive answer.
3) Dependence on the description of the argument: In Section VI, we investigated the problem of detecting upper bounds on u ′ ∞ . There, we considered only possible upper bounds λ(u) for functions u ′ ∞ , u ∈ U c , which are computable functions by themselves. As for any computable function λ, this implies that its value λ(u) does not depend on the actual description of its argument u. However, one could also omit the restriction of λ to be computable and consider instead computable mappings from descriptions of the input onto descriptions of the output. This approach might yield new insights but needs to be left for future research. 4) Computing models with real numbers: Turing machines can only compute with rational numbers. This is the reason why they can't exactly calculate the solution of even very simple differential equations (cf. Sec. III-A). However, there do exist computing models which are able to operate with arbitrary real numbers [50]. These models cannot be implemented with present-day digital technology, in contrast to Turing machines discussed before. Nevertheless, it is an interesting question whether these computing models allow in principle an exact simulation of arbitrary networks. Yet, based on the results in [50], it can easily be shown that this theoretical computing model (a so-called Blume-Shub-Smale (BBS) machine) is also too weak to allow for an exact calculation of solutions of very simple differential equations in finitely many computation steps. Indeed, it was shown in [50] that every BSS-machine which stops after finitely many iterations, always defines at its output a polynomial or rational function on certain subintervals of its domain. So the output of a BSS-machine can never be an exponential function. This shows that, similarly as for Turing machines (cf. Sec. III-A), solutions of arbitrary RLC-networks cannot be calculated exactly on BSS-machines. To put it differently, the output p of an BSS-machine always satisfies the differential equation p (n) (t) = 0 for all t ∈ I, where I is a sub-interval of the domain of the BSS-machine and n ∈ N is a certain integer. However, these simple differential equations are basically irrelevant for describing any non-trivial analog circuit. So even a much more powerful computing model, as the one in [50], does not allow us to compute solutions of simple differential equations exactly with finitely many iterations. Thus, even with such powerful computing models one has to rely on approximation procedures which allow for an effective control of the approximation error, i.e. one still has to investigate whether certain operations are computable (with respect to the actual computing model) or not. 5) General Purpose Analog Computer by Shannon: Yet another interesting approach to be investigated in further research is Shannon's famous General Purpose Analog Computer (GPAC) [69]. Even though it was recently found that this computing model is equivalent to the Turing machine as far as computability and complexity is concerned [66], [70], it would be interesting to investigate the detection problems of this paper within this framework. 6) Computable sets: There might be an other interesting way to look on the problems discussed in this paper, namely by using the notion of computable sets (see, e.g., [71]). Using this approach, one may consider the set A = {f ∈ U c : f ′ is computable from f } of all functions in U c for which the first derivative is again a computable function. Then the question whether the computability of f ′ is decidable can be reformulated as the question whether A is a computable set. Nevertheless, whereas [71] considers computable sets in R n , our sets belong to infinite dimensional spaces so that the above reformulation of our problem might not be that straight forward and left, therefore, for further research.
Moreover, it might be interesting to investigate how the results of this paper and of [59] imply limitations on the ability to build trustworthy digital representations of continuous real world problems based on metaverse and digital twin approaches.

A. The Poisson integral
Let f ∈ L 1 (T) be a function on T, then for any 0 ≤ r < 1 and t ∈ T, its Poisson integral is defined to be with the Poisson kernel P ρ (t) = 1 − ρ 2 1 − 2ρ cos(t) + ρ 2 .
It is well known (cf., e.g., [72,Theorem 11.8]) that for f ∈ C(T), P r f satisfies the maximum-modulus principle max t∈T |(P r f ) (t)| ≤ f ∞ , for all 0 ≤ r < 1 , and lim r→1 P r f − f ∞ = 0. The later implies in particular that lim r→1 P r f ∞ = f ∞ . If f is even continuously differentiable on T, i.e. f ∈ C 1 (T), one additionally has lim r→1 P r f ′ ∞ = f ′ ∞ and Lemma A.1: Let f ∈ C 1 (T) and let {f n } n∈N be a sequence in C 1 (T) so that lim n→∞ f − f n ∞ = 0. If there exists a g ∈ C(T) so that lim n→∞ g − f ′ n ∞ = 0, then f ′ = g. Proof: Since P r : C(T) → C(T) is bounded (cf. (30)) for every 0 ≤ r < 1, the assumptions of the lemma imply (P r g) (t) = lim n→∞ (P r f ′ n ) (t) = lim n→∞ d dt (P r f n ) (t) , t ∈ T , and lim n→∞ (P r f n ) (t) = (P r f ) (t) , t ∈ T .
By the properties of the Poisson integral, this also holds for the derivative, i.e. lim n→∞ d dt (P r f n ) (t) = d dt (P r f ) (t) = (P r f ′ ) (t) , t ∈ T , where the last equality follows from (31) because f ∈ C 1 (T). Consequently, we have (P r g) (t) = (P r f ′ ) (t) for all 0 ≤ r < 1 and t ∈ T. Since P r is linear, we therefore have , for all t ∈ T , proving that f ′ = g.
ACKNOWLEDGMENT H. Boche would like to thank Ignacio Cirac for hints and questions regarding the computability of physical theories, in particular, of physical parameters. He further thanks Eike Kiltz and Alexander May for discussions and questions about quantum algorithms for the computation of hidden subgroups of computable functions and related problems in cryptanalysis of "post-quantum cryptography", and he thanks Frank Fitzek for interesting discussions on metaverse and digital twin approaches.