1. Introduction
In classical computability, computation is described with formalisms such as
-calculus (cf., e.g., Rogers, 1988, Ch. 1, [
1]) and the Turing Machine (cf., e.g., Davis et al., 1994 [
2], Ch. 6) that do not place memory limitations on physical or abstract computers on which the formalized computation is performed and confine computation to natural numbers. Yet, memory limitations are fundamental in distinguishing what is theoretically possible from what is computationally feasible, because scientific computation on real numbers is routinely performed on devices with finite amounts of memory. A theory of signifiable computability proposed in our investigation aims to distinguish what is computable without any memory limitations from what is computable on a finite amount of memory available for computation and to characterize the computability of functions on real numbers with and without memory limitations. To that end, data types and instances, programs, and program states are treated as finite texts constructed with formalisms (e.g., the standard decimal notation on
Unicode). The texts are formed to
signify or, equivalently,
designate intuitive objects such as numbers, data types and structures, programs, and program states in a given universe of discourse. When the formed texts are stored within the available memory units, they signify or designate the corresponding objects on finite memory, or, equivalently, the texts finite memory-signify (
FM-signify) or finite memory-designate (
FM-designate) those objects. No finite memory device (FMD) can mechanically manipulate or, equivalently,
transform texts unless the latter are stored in its memory cells.
We introduce the concepts of discretely finite and discretely infinite numbers. A discretely finite number is signified completely by a text constructed with a formalism on an alphabet in that the signs (i.e., elements of the alphabet) of the designating text completely coincide with the elements of the number they signify. A discretely infinite number is a number for which no such signification is possible. E.g., texts such as "2.7182818284" and "3.1415926535" in the standard decimal notation on Unicode signify the numbers 2.7182818284 and 3.1415926535. However, when constructed to approximate the transcendental numbers e and , respectively, these texts only reference these discretely infinite numbers.
In Part I, we show that signification and FM-signification extend to number tuples (i.e., finite sequences of numbers), data types, and instances and show that data structures representable as tuples of discretely finite numbers are signifiable. Consequently, all standard data structures of computer science (e.g., lists, arrays, tuples, queues, stacks, hash tables, priority queues, and heaps) whose elements are discretely finite numbers are signifiable. We also show that any data structure representable as a multidimensional matrix of discretely finite numbers (e.g., trees and graphs) is signifiable. We conclude Part I by defining a Gödel numbering of texts to map texts to unique positive integers. A principal objective of Part I of our investigation is to lay a foundation for a subsequent axiomatization of signifiable computability.
2. Prolegomena
This section briefly introduces the basic conceptual and formal apparatus used in this article. The reader may skip this section on first reading and return to it as necessary. The statements
and
mean that
is a proper subset and a subset of the set
, respectively. The symbol
∅ denotes the empty set.
and
are
equivalent if there is a one-to-one (1–1) correspondence between them, or, in symbols,
, whereby each element of
is uniquely paired with an element of
, and vice versa.
denotes the cardinality of
S. If
S is finite,
.
,
,
,
,
denote the sets of whole numbers (
), negative whole numbers (
), positive whole numbers (
), rational numbers, and real numbers, respectively.
S is
enumerably finite if
∧
, where ∧ designates the logical
and.
S is
enumerably infinite if
.
S is
enumerable if it is enumerably finite or enumerably infinite. Per Cantor’s diagonalization (cf., e.g., Kleene, 1952, [
3], Ch. I, § 2),
is not enumerable. If
,
are sets, then
where
is called a
k-tuple, i.e., a finite sequence of
k elements.
A finite memory device (FMD) is a computer with an enumerably finite set of memory units or, equivalently, memory cells. Let denote the set of all FMDs, then the function maps each FMD to the number of its memory cells. is a FMD if and only if . An elementary sign is that which can be written in exactly one memory cell. We enclose elementary signs in double quotation marks, e.g., "0", "1", "+", etc. The elementary sign "" is the empty sign.
An
alphabet is an enumerably finite, non-empty set of non-empty elementary signs. A
text is a finite sequences of elementary signs of
. An alphabet
is
decimal sufficient if and only if
contains the signs of the standard decimal notation or the unique equivalents thereof, e.g.,
Unicode. A
formalism on an alphabet
is a finite set of formal rules to
form or, equivalently, to construct texts on
.
is
decimal notation sufficient if and only if it allows for the mechanical formation of texts on a decimal sufficient alphabet
in the characteristic-mantissa form of the standard decimal notation or an equivalent thereof. E.g.,
on
can be the floating-point notation of
Lisp on
Unicode (cf., e.g., Steele, 1990 [
4], Ch. 2, Section 2.1.3) or the numerical notation of
Perl on
Unicode (cf., e.g., Lee, 2010 [
5], Ch. 2, Section 1). We will hereafter assume that any
on
is decimal notation sufficient. We call an alphabet
decimal notation sufficient if and only if there exists a decimal notation sufficient formalism
on
.
A basic text formation operation in
on
is
concatenation, denoted as
. In the base case,
maps two elementary signs
and
from
to the sign
. The concatenation of the empty sign to any other sign
s results in
s. In the recursive case, the concatenation of the elementary signs
, is formed by concatenating
and
to obtain
, and then concatenating
to the right of
to obtain
, and so on until all
n signs are concatenated to form
. A
complex sign in
on
is a concatenation of at least two elementary signs from
in
. The order of the sign concatenation in the formation of a text is arbitrarily assumed to be left to right, i.e.,
Two enumerably infinite sets are defined with respect to
on
:
and
.
includes the elements of
and all texts on
constructed according to the rules of
, while
. We say that
t is a text in
on
when
. A
numeral is a text
that designates a real number. E.g., if
is the standard decimal notation on the subset of
Unicodethen, omitting the subscripts
and
for brevity, we can form the numerals "
+12.7" and "
-31.05" as
Since the concatenation is left to right, the parenthesization can be omitted and (
2) rewritten as
For
,
,
, we let
If , is the number of the elementary signs from in t. If , and . If , then , , designate the elementary signs of t from left to right. E.g., if , , and , , , , .
If
f is a function,
and
denote the domain and the range of
f, respectively. A statement
abbreviates
. If
and
, then
f is
defined on or, in symbols,
if and only if there exists
such that
or, in symbols,
, where ∃ designates the logical
existential quantifier. If
, where ¬ designates the logical
not, then
f is
undefined on or, in symbols,
. If
and
where ∀ designates the logical
universal quantifier,
f is
total on
. If
then
f is
partial on
.
3. Data Types and Instances
A data
type is a set of objects constructable with a finite set of rules. A data
instance or
structure is a member of a data type. Informally, data types are sets of intuitively conceivable objects that are generated with performable processes (cf. Kleene, 1952 [
3], Ch. III, § 15). E.g.,
is the natural number data type generatable (or, equivalently,
formable or
constructable) with three rules: (1) 0 is a natural number; (2) any number generated by a finite number of compositions of the successor function
with itself beginning at 0, i.e.,
, is a natural number; (3) no other object is a natural number.
is the negative whole number data type whose objects are formable with three rules: (1) −1 is a negative whole number; (2) any number obtained by a finite number of compositions of the predecessor function
with itself beginning at −1 is a negative whole number; (3) no other object is a negative whole number.
is the positive whole number data type whose objects are constructable with three rules: (1) 1 is a positive whole number; (2) any number number generated by a finite number of compositions of
with itself beginning at 1 is a positive whole number; (3) no other object is a positive whole number.
is the whole number data type formable by combining the rules for
,
, and
and the rule that no other object is a whole number. Other examples include the rational number, the binary tree, the hash table, the undirected unweighted graph, and the directed unweighted graph.
A data type is discrete if each instance of the type consists of an enumerable set of intuitively conceivable objects. E.g., a natural number consists of finitely many applications of and a whole number consists of finitely many applications of or . We can analogously generate the numerator of a rational number and its non-zero denominator. The binary tree type is discrete insomuch as a binary tree structure consists of an enumerable set of nodes constructed by first generating the root node and subsequently, if the desired number of levels is greater than 0, producing finitely many nodes at each level and connecting each node to the unique parent node at the previous level as its left or right descendant so that the number of nodes at each level l is at most .
A discrete data type is finite if each instance of the type consists of an enumerably finite set of objects. E.g., the natural number, the whole number, the rational number, the binary tree, the hash table, and the undirected or directed unweighted graph are discrete and finite. We refer to such data types and their instances as discretely finite. E.g., 3 is a discretely finite natural number (i.e., ) because ; is a discretely finite negative whole number (i.e., ) because ; is discretely finite rational number (i.e., ) because . A data type is discretely infinite if each instance of the data type consists of an enumerably infinite set of objects.
4. Signification and Reference of Real Numbers
One can define
as an infinite set of sets, each of which represents a real number so that the sets representing individual whole or rational numbers are singletons, whereas the sets representing individual irrational numbers are infinite sets of rational numbers (cf., e.g., Kleene, 1952 [
3], Ch. II, § 9). A real number can, therefore, be an infinite set of numbers conceived as the completed infinite. Under this interpretation, such statements as
,
,
require one to allow for the left- or right-hand side of the equality to be the completed infinite or to add or subtract 1 to and from the completed infinite, which, albeit theoretically possible and insightful, may not be constructable with performable processes, especially when the latter are restricted to finite amounts of memory available for computation.
To the extent that each individual member of the set representing one specific real number is discretely representable, e.g., in the characteristic–mantissa form in the standard decimal notation, to that extent only do we construe that set to be a discrete subtype of . For, once so represented, the individual elements of each representation’s characteristic, the period that separates the characteristic from the mantissa, and the individual elements of the mantissa can be enumerated. Under this interpretation, some instances of are discretely finite, while others are not. E.g., the singletons representing individual whole or rational numbers whose sole elements have finite characteristics and mantissas are discretely finite, but the transcendental numbers and e are not. It is with the aim to distinguish discretely finite and discretely infinite numbers that we introduce the following definitions.
Definition 1. Let . Then, r is discretely finite in on if and only if there exists the set , where each t signifies or, equivalently, designates r and no other number, or, in symbols, If , then t signifies or, equivalently, designates r in on , or, in symbols, If there is no text that designates r in on , then r is not signifiable or, equivalently, not designatable in on and, hence, not discretely finite in on , or, in symbols, and are symmetric.
The signification of real numbers, as implied by Definition (1), is always defined with respect to a given
on
. E.g., if
is given in (
1) and
on
is the standard decimal notation where, as we assume henceforth, the leading or trailing zero signs in the characteristic–mantissa form do not change numbers designated by numerals, then
Definition 2. Let such that . Then, r is FM-signifiable or, equivalently, FM-designatable in on on a FMD if and only if there exist , , in which case,holds. If , then t FM-signifies or, equivalently, FM-designates r in on on , or, in symbols, If there is no text that FM-signifies or FM-designates r in on on , then r is not FM-signifiable or, equivalently, not FM-designatable in on on , or, in symbols, and are symmetric.
A direct consequence of Definitions (1) and (2) is
Lemma 1. If , then .
Definition 3. Let . Then, t is a signifying or designating numeral of r in on . If , then t is an FM-signifying or FM-designating numeral of r in on on .
We prove
Lemma 2. Let , , . Then .
Proof. If , . Let . Then, so that , . □
Signification, in the sense explicated in the above definitions and lemmas, is possible only with discretely finite numbers. E.g., 13 is signifiable as "13" in a decimal notation sufficient
on
in (
1). Concatenating "0" any number of times to the left of "13" does not change the signification of 13, because the resultant texts still designate 13 and no other number in
on
, which one can verify by eliminating the leading zero signs to obtain "13" and then obtaining the number 13 through the 13 applications of
starting at 0.
No text in
on
signifies a discretely infinite number so that its signs completely coincide with the individual elements of the number. E.g., let us consider the list of the first 13 approximations of the transcendental numbers
e and
in (
13) from the published sequences OEIS:A001113 and OEIS:A000796 in the standard decimal notation.
Since the mantissas of
e and
are infinite and non-repeating, there is no finite concatenation of the elementary signs from
in (
1) that allows one to construct texts to signify
e or
in a decimal notation sufficient
on
. One can only state that texts in the infinite sets
referencee and
, respectfully, without ever signifying them. While one can construct individual real numbers signified by the numerals in
and
with performable processes such as Euler’s method of continued fractions for
e (cf., e.g., Abelson and Sussman, 1996 [
6], Ch. 1, Section 1.3.3) and the Chudnovsky algorithm for
(cf., e.g., Chudnovsky and Chudnovsky, 1988 [
7] or Lorenz, 2018 [
8]), the signifying numerals never completely coincide with
e or
.
Definition 4. Let be discretely infinite and let be an infinite set of numerals such that each numeral references r and no other number. Then,holds and states that r is referenceable in on . If , then t references r in on , or, in symbols, If there is no numeral that references r in on , then r is not referenceable in on , or, in symbols, and are symmetric.
E.g., let
be a numeral in a decimal notation sufficient
on
in (
1). If
in (
14), then
. However, if
, where
then
. We generalize these observations by proving
Lemma 3. There exists such that, for , Proof. Let
. Let
be defined in (
14) and let
□
Definition 5. Let such that . Then, r can be FM-referenced in on on a FMD if and only if there exists , , in which case,holds. If , then t FM-references r in on on , or, in symbols, If there is no text that FM-references r in on on , then r cannot be FM-referenced in on on , or, in symbols, and are symmetric.
We elaborate on Lemma (3) by showing
Lemma 4. There exists such that, for some and a FMD , Proof. Let and . Then, since , we have and . □
E.g., let be an Ubuntu 18.04 LTS computer with a CPU @ 2.40GHz x 4 and 8 GB of RAM and 127 GB of hard disk space. Let be Unicode and be Lisp as implemented in GNU CLISP 2.49.60+. Then, on this computer, signifies 3.1415926535897932385 and references in Lisp on Unicode because .
The next theorem shows a consequence of , for a FMD .
Theorem 1. The set of real numbers FM-signifiable in on on a FMD is enumerably finite.
Proof. Let
and let
be an enumeration such that
Let
. By Lemma (2),
. Let
Then, , since . □
can be reduced to such that if , then FM-signifies a unique on in on . To effect this reduction, we prove
Lemma 5. There exists such that .
Proof. Omitting for brevity the subscripts , we observe that if , then . Let and let be a a non-descending sorting of by length so that , . Let and . Let . If , let . If , let . When we reach , , we have the sets , …, , , constructed thus far. Let . If , , . If , then . We reduce every non-singleton set in , …, , if there are any, to a singleton by retaining a numeral shortest in length. Thus, and . □
5. Signification of Data Types and Instances
Definition 6. A data type is signifiable or, equivalently, designatable in on if and only if there is that signifies or, equivalently, designates in on only and no other data type, or, in symbols,If there is no such t, then is not signifiable or, equivalently, not designatable in on , or, in symbols, is symmetric. Definition 7. A data type is FM-signifiable or, equivalently, FM-designatable in on if and only if there exists a FMD such that there is a , , that signifies or, equivalently, designates in on on only and no other data type, or, in symbols,If there is no such t, then is not signifiable or, equivalently, not designatable in on on , or, in symbols,The relation is symmetric. Let us extend the alphabet
in (
1) to the alphabet
so that
Let the array data type
be a set of objects, each of which is a finite sequence of discretely finite numbers, and let
If
, then
Formal symbolic systems utilize finite sets of syntactic rules to separate legal and illegal texts (cf., e.g., Kleene, 1952 [
3], Ch. IV; Genesereth and Nilsson, 1987 [
9], Ch. 2, Section 2.2). To that end, we can introduce the following rules to distinguish legal type significations from illegal ones in
on
:
"
", "
", "
", "
", "
", "
" in (
26) designate
,
,
,
,
, and
, respectively;
"" and " designate the beginning and end, respectively, of a finite sequence of discretely finite numbers, i.e., a tuple;
";" designates a separator of numerals in signified tuples;
The signs formed by concatenating a finite number of the signs from {"1", "2", "3", "4", "5", "6", "7", "8", "9"} to the right of "▿" designate variables, e.g., "", "", "", "";
"□" designates a white space symbol; the addition of any number of "□" to the left or right of does not change the object designated or referenced by t;
"⊛" designates the end of a statement;
If consists of a variable name followed by "◂ " followed by another sign followed by "⊛" with arbitrarily many "□" inserted left or right of each sign in t, then t is interpreted to mean that the variable designated by the sign to the left of "◂" is assigned the value designated or referenced by the sign to the right of "◂".
E.g., consists of two statements: and . The first statement is interpreted to mean that the variable designated by "" is of the type designated by "", i.e., . The second statement is interpreted to mean that the variable designated by "" is assigned the value designated by"", i.e., the 3-tuple .
We assume from now on that any decimal sufficient alphabet
includes the unique signs ⊴, ⊵, ∓ designating the beginning of a tuple, the end of a tuple, and a number separator inside a tuple, respectively. E.g., in
in (
25), ⊴ = "
", ⊵ =
", and ∓ = ";". We call a formalism
on
that contains these signs
tuple sufficient and, hereafter, assume that
on
is tuple sufficient. We call an alphabet
tuple sufficient if and only if there exists a tuple sufficient
on
.
Definition 8. Let , , . , , . Then,is the unmarked concatenation of in on andis the marked concatenation of in on . E.g., in on , "1;2;3" is the unmarked concatenation of "1", "2", and "3", whereas "1;2;|" is the marked concatenation of "1", "2", and "3".
Definition 9. A k-tuple , , is signifiable or, equivalently, designatable in on if and only if (a) is of type and ; and (b) , , . If (a) and (b) hold, then is signifiable or, equivalently, designatable in on byor, in symbols, . If is not signifiable or, equivalently, not designatable in on , then
"
"
. The relation is symmetric. Definition 10. A k-tuple , , is FM-signifiable or, equivalently, FM-designatable in on on a FMD if and only if (a) and (b) . If (a) and (b) hold, then . If is not FM-signifiable or, equivalently, not FM-designatable in on on , then "". The relation is symmetric.
We prove
Theorem 2. Let and let be a FMD with . Let Let and , . Then,if and only if Proof. Let and , where , . If , then . Conversely, if , then , because . □
8. Discussion
If a real number can be written as a text on a sufficiently expressive alphabet, the individual elements of the number can be enumerated. E.g., the number’s characteristic, the period that separates the characteristic from the mantissa in the standard decimal notation, and the individual elements of the mantissa can be enumerated by defining a 1–1 correspondence between these elements of the number and a finite subset of natural numbers. In this sense, some real numbers are discretely finite, while others are not. Discretely finite numbers can be signified completely by texts on sufficiently expressive alphabets in such a way that the signs of the designating texts completely coincide with the elements of the numbers they signify, whereas no such coincidence is possible with discretely infinite numbers, e.g.,
,
e,
, on a sufficiently expressive alphabet. E.g., the texts "2.7182818284" and "3.1415926535" in the standard decimal notation either signify two concrete discretely finite numbers (i.e., the number 2.7182818284 and the number 3.1415926535) or, if they are elements of
or
(cf. Equation (
14)), only reference the discretely infinite numbers
e and
, respectively. The concepts of signifiability and referenceability were introduced to distinguish designating and referencing texts. A consequence of the set of real numbers signifiable on a FMD on a sufficiently expressive alphabet being enumerably finite is that the quantity of real numbers so signifiable is a natural number. The set of real numbers referenceable on a FMD on a sufficiently expressive alphabet is also enumerably finite.
We extended the concepts of signifiability to real number tuples, data types, and instances and showed (cf. Theorem 2) that a discretely finite data structure representable as a tuple of discretely finite numbers is signifiable on a FMD on a sufficiently expressive alphabet so long the finite amount of memory of the FMD suffices to hold a designating text. Consequently, standard data structures such as lists, arrays, tuples, queues, stacks, hash tables, priority queues, and heaps (cf., e.g., Cormen et al. 1990 [
10], Chapters 11–15, 19–22, 23) whose elements are discretely finite numbers are signifiable on a sufficiently expressive alphabet. Furthermore, only a finite quantity of these data structures are signifiable on a FMD on that alphabet. Theorem 3 shows that a discretely finite data structure representable as a multidimensional matrix of discretely finite numbers is signifiable on a sufficiently expressive alphabet and signifiable on a FMD on the same alphabet so long as the designating text fits into the FMD’s memory units. Since any text can be uniquely mapped to a positive whole number, an instance of a data type representable as a text on some alphabet corresponds to a unique positive integer. E.g., since a tree data structure of discretely finite numbers is a graph (cf., e.g., a binary tree
T in
Figure 3), it is also representable as a matrix. Hence, it is signifiable in a sufficiently expressive formalism and FM-signifiable on a FMD capable of holding the designating text in its finite memory. The same argument would hold if, instead of 0’s and 1’s, the matrices in
Figure 3 had discretely finite real numbers in their cells indicating the weights of the corresponding edges or if the labels of the nodes were changed to discretely finite real numbers.
Our approach to types as data structures may be seen as partially based on the approach proposed by Church (1940) [
11]. However, our aim is not a complete or partial integration of
-calculus (or any other formalism) into the hierarchical theory of logical types offered by Russell (1908) [
12], Whitehead and Russell (1910, 1912, 1913) [
13,
14,
15] (cf. more recent summaries in, e.g., Kammareddine et al. (2002) [
16] or Urquhart (2003) [
17]). Rather, our aim in formulating a theory of signifiable computability is to characterize, in a formal way, what is computable in principle and what is computable with performable processes on computational devices with finite amounts of memory available for computation. In our previous investigation (Kulyukin, 2023 [
18]), we formulated this aim as the separation of computability into two intersecting categories—general and actual. The former puts no limitations on memory, whereas the latter does.
In using logically quantified variables in our definitions, lemmas, and theorems, we make no ontological commitment that assertions containing variables carry with them the ontological commitment that the ranges of the variables exist (Church, 1958 [
19]) or that designating texts, whenever they are quantified, can serve as senses of names (Church, 1993 [
20]). The statements in this article or implications thereof should not be construed as arguments for or against replacing the Zermelo–Fraenkel set theory with the axiom of choice with the modern type theory as the foundation of mathematics (cf., e.g., Altenkirch, 2023 [
21]). Alternative foundations of mathematics are beyond the scope of our article.