We can define an equivalence class of irrational numbers based on whether two irrational numbers are rational multiples of one another. For example, given an irrational number $x$, we have the equivalence class $\{rx|r \in \mathbb{Q}\}$. These equivalence classes are cosets of the subgroup $\mathbb{Q} \setminus \{0\}$ of the multiplicative group $\mathbb{R} \setminus \{0\}$. The idea of "dividing reals into equivalent classes based on rational multiplication" is useful in many situations - for example, in the context of the Lonely Runner Conjecture, it is clear that two runners will come arbitrarily close if their speeds are not in the same equivalence class, and by narrowing down the problem to the case where all runners have speeds in the same equivalence class, we may reduce the problem, WLOG, to the case where their speeds are all rational, and then further reduce it to the case where their speeds are all integers.
An irrational number can generate a class of numbers that are rational multiples of it (and therefore "relatively rational" to it). I wonder whether this idea of "relatively rational" can be generalized to the context of computable numbers. Roughly speaking, a computable number is a number that can be produced up to any desired degree of precision (e.g. any desired number of decimal places) by a Turing machine. A non-computable number is one that cannot be produced by a Turing machine.
I would like to experiment with the idea of giving a Turing machine to use some non-computable numbers to generate other non-computable numbers. For instance, when the Turing machine is allowed to use an non-computable number $x$, it is able to compute, up to any desired degree of precision, many otherwise non-computable numbers, including $cx$ where $c$ is computable, and $x^c$. This produces a class of "relatively computable" numbers with respect to the set of inputs it is allowed to use. Just like how the equivalence class of irrationals is meaningful and has certain algebraic properties, I am interested in exploring the properties of the class of (non-computable) numbers that can be computed from a certain set of non-computable numbers.
Specifically, my question is as such:
Let $S$ be a subset of the reals. We have a Turing-complete programming language with the additional capability of directly loading, storing, comparing, and performing basic arithmetic operations (add, subtract, multiply, divide) on arbitrarily close approximations of elements of $S$ (i.e. such elements loaded to any desired number of decimal digits). Let $f(S)$ be the set of real numbers that are computable using this language. What are the characteristics of the function $f$?
In particular, if $f(S)$ is the set of all reals, what are the possible values of $S$? In other words, what kind of set can "generate" every real number, including numbers otherwise non-computable?
(Edit: I suppose the concepts of "loading", "storing", etc, are dependent on what kind of programming language we are using. To make this problem more concrete, imagine the C language but without memory constraints. I think that most other standard languages have equivalent processes of "loading", "storing", etc, anyway - or at least operations that can simulate these processes.)