A computable expression of closure to efficient causation

In this paper, we propose a mathematical expression of closure to efficient causation in terms of λ -calculus; we argue that this opens up the perspective of developing principled computer simulations of systems closed to efficient causation in an appropriate programming language. An important implication of our formulation is that, by exhibiting an expression in λ -calculus, which is a paradigmatic formalism for computability and programming, we show that there are no conceptual or principled problems in realizing a computer simulation or model of closure to efficient causation. We conclude with a brief discussion of the question whether closure to efficient causation captures all relevant properties of living systems. We suggest that it might not be the case, and that more complex definitions could indeed create some obstacles to computability


Introduction
All fully-fledged scientific objects, from atoms to black holes, are constituted in theory.
If contemporary biology is excessively focussed on genes, as a number of critical commentators have suggested (Fox-Keller, 2000; Oyama, 1985;Lewontin, 1984), this is nothing but a logical consequence of the fact that genes are indeed constituted in theory (Jacob, 1970), whereas (to date) living organisms as such are not. Consequently, it is common to adopt a merely common-sense definition of life, and then to develop models of specific aspects of living organisms. According to an increasing number of researchers, however, this scientific approach to biological systems is missing the point This is a key issue, both theoretically and operationally. As a matter of fact, one of Rosen's best known theses, supported with a mathematical demonstration, is that closure to efficient causation has no computable models (Rosen, 1991 p. 235-243). We may call this "Rosen's conjecture" (Stewart & Mossio, 2007). At present, the status of this conjecture is uncertain and controversial. Whereas some studies have claimed that  (Louie, 2007 and2006), and the logic underlying Rosen's conjecture has been restated and defended (Chemero & Turvey, 2007;Kercel, 2007).
In addition, it should be noted that some studies have recently tried to spell out some relevant implications of the (supposed) non-computability of closure to efficient causation, as if Rosen's demonstration were correct. In particular, Letelier and coworkers have recently argued that autopoietic systems are a subset of (M,R)-systems and that therefore they inherit the property of being non-computable (Letelier et al., 2003). During the last thirty years, a specific line of research in field of Artificial Life has developed computational simulations of autopoietic systems (see McMullin, 2004 for a recent review). If Letelier's thesis is correct, this would have a major impact on the relevance of these studies: we should conclude that, whatever organization they simulate, they are not (and could not) properly simulating autopoïesis.The expression of closure to efficient causation in terms of lambda-calculus proposed in this paper may constitute a useful contribution to this debate, since it shows that there are no conceptual problems in realizing computational simulations of closure on the basis of the classical definition of computability. We consider that this result revitalizes Rosen's proposal by opening up a whole new vista of possible expressions through principled computer simulations, going beyond mere ad hoc tinkering to capture (at least some) relevant properties of "life itself", at least as defined by Rosen's formalism.
At this point, it may be useful to interject a clarification that we have discussed at greater length in (Stewart & Mossio, 2007). Rosen (1991) makes a clear and important distinction between a modelling relationship and a simulation. In the modelling relationship (p.60), a natural system N is put in relation with a formal system F. In order for this to succeed, F must itself have a structure of efficient causes that is potentially congruent with that of the natural system. In a Turing machine (or any formal equivalent thereof), there is only one efficient cause: the reading-head. Since there is not a human-built Turing machine such that its operation actually produces its own readinghead, nothing in the operation of a computer can be adequate to authentically model CTEC. In this sense, "life itself" is definitely not computable.
This does not, however, foreclose the discussion; because the question remains open as to whether it may not be possible to simulate CTEC. Rosen (1991, pp. 191-193) gives a very clear discussion and definition of "simulation". In causal terms, simulation involves the conversion of efficient cause, the hardware of that which is being simulated, into material cause in the simulator. In such a computational universe, the most that can be done is to set up a system of structures that construct and maintain each other in the circular fashion exemplified by CTEC. Even this remains a far from trivial exercise; but we claim that our lambda-calculus formulation shows that it is indeed possible.
The structure of this article is the following. We will first recall (section 2) the conceptual framework necessary for qualitative expression of the notion of closure to efficient causation. We next discuss (sections 3 and 4) the question of which mathematical tools are most adequate and fruitful for expressing this concept. This leads us (section 5) to our central proposition, a formulation of closure to efficient causation in terms of lambda-calculus. Since our formulation implies, in contrast with Rosen's own claim, the computability of closure to efficient causation, we next try to spell out (section 6) the reasons for the divergence with respect to Rosen's conclusions, as well as (section 7) other authors' interpretations. We then provide some preliminary guidelines (section 8) on how the closure to efficient causation expressed in terms of λcalculus could be implemented as a computer simulation preserving the essential properties of the formal model. Finally (section 9), we conclude with a brief discussion of the question whether closure to efficient causation captures all relevant properties of living systems. We suggest that this it might not be the case, and that more complex definitions could indeed create some obstacles to computability.

Closure to efficient causation
Aristotelian categories of causality: material cause, efficient cause, and (under certain conditions, but we will not discuss this point here) final cause. Rosen presents the Aristotelian categories as different ways of answering the question "why?" Given a mathematical function, b = f(a), there are two answers to the question "why b?": (i) "because a", i.e. the argument of the function, which Rosen interprets as the "material cause"; and (ii) "because f" where the function f is interpreted as the "efficient cause".
In set-theoretical terms, if a and b are in the domain and co-domain of f, respectively, then f maps a to b. Applied to the case of state-determined dynamic systems (SDDS), the mapping is an endomorphism from x(t), the state-vector at time t, to the "next state" x(t+dt). The whole art of finding a mathematical expression of SDDS is to choose the state variables in such a way that the state x(t+dt) is a function only of the state x(t) (Rosen, 1991, pp. 89-98).
This formulation enables Rosen to express what is, in his view, the difference between physics and biology. In physics, we can ask questions about the state of a dynamic system. "Why x(t)?" -(i) "because x(t 0 )", the state at any reference time t 0 ; this is the "material cause"; and (ii) "because f", the dynamic law; this is the "efficient cause" (in more common terms: f is the evolution function of the dynamics). But if we ask the question "why f?", within physics there is not really any answer, other than that this just is a natural law. Rosen's proposition is that this is where biology is different: for a living organism, the question "why f?" has a non-trivial answer from within the functioning of the system itself. Let us look at this a little closer.
There is fairly wide agreement that metabolism is at the core of living organisms. In Rosen's formulation (Rosen, 1991, p. 249), this is expressed by the equation: where A is the "material cause" of the metabolism, f is the "efficient cause" of the metabolism, and B is the result. To give a rough-and-ready interpretation, A corresponds to the input materials and energy; f may be associated with the set of enzymes which are necessary to catalyze the biochemical reactions, but also the cell membrane, necessary to avoid loss of reactants by diffusion, and probably other features of cell organization as well; and B corresponds to the total resulting biochemical network. We will return later to the question of biological interpretations of these formulae.
What characterizes living organisms is that the maintenance, and indeed the ongoing production of this "metabolism" function, are themselves ensured by the functioning of the organism. In Rosen's formalism, this is expressed by a second function, Φ, which takes B as material cause and which produces f; Rosen (1991, p. 250) calls this function repair: Now by an iteration of the same argument, we must now ask: "why Φ?" As before, we can introduce a new function, b, which Rosen (1991, p. 250) calls replication: The point is that we now see clearly the threat of an incipient infinite regress. On the face of it we will require another function for the production of β, and then yet another function for the production of this function, and so on indefinitely. We come now to the key point: Rosen makes the crucial observation that the infinite regress can be avoided by introducing a circularity: β can be identified with B, which is already produced by the system (Equation [E1]). Thus (E3') becomes: We thus arrive at the situation which Rosen (1991, p. 251) calls « closure to efficient causation », in which each efficient cause is materially produced within the system, as illustrated in Figure 1. The three efficient causes -f, the metabolism function; Φ, the repair function; and B, the replication function -are all produced by the operation of the system itself. Rosen considers that "closure to efficient causation" -hereafter "CTEC" -is the essential defining property of "life itself" (Rosen, 1991, p. 244). In the following section we will see how CTEC can be easily related to Cartesian Closed Categories (CCC), which are suitable structures to deal at once with mathematical objects and transformations on these objects, a key point in Rosen's approach, as extensively explained in Letelier et al. (2006). We will interpret Rosen's formalism in CCC by relying on the strong relations existing between CCC and lambdacalculus.
Note that the interpretation of Rosen's formalism is far from obvious (and is not necessarily unique). In Life Itself, Φ and f appear to be morphisms. Yet, and this is the challenge, in the diagrams they are also objects, that is they are also sources and targets of morphisms, while B, an object, may act as a morphism on f, say, as expressed in the equational writing above. As shown below, the λ-calculus makes it possible to deal with such an apparent type-theoretic mismatch; in particular, by constructing the CCC of "finitary projections" (Amadio et al., 1986) out of a type-free model. In this category, both types (as objects) and morphisms are "elements" of the type-free universe, thus they can freely act one on the other. We will not spell out the finitary projection interpretation in full detail, as this would require a lengthy and highly technical exposition. We restrict ourselves here to noting that the free use of B, Φ and f both as morphisms and as objects may be fully mathematically justified (see Amadio et al., 1986).

Lambda calculus
In order to formulate the theoretical concept of CTEC, Rosen employed the mathematical formalism of mappings and abstract block diagrams (Rosen 1991, p. 123ff). This formalism is perfectly adequate for its primary purpose, which is to express the qualitative concept of CTEC as such. However, as we have already mentioned in the introduction, it would seem that in practice theoretical biologists have not been able to actually use this formalism to generate detailed models of living organisms and/or testable predictions (see also Letelier et al., 2006 on this point). This raises the question of a possible alternative formalism, in order to give Rosen's proposal a more operationally fruitful mathematical expression. It seems to us that the essential requirement to attain this objective is the following: given a mathematical function, b = f(a), we need a formalism in which the same entity can occupy the three roles of argument (a), function (f) and result (b); moreover, the notation must also be such that it is perfectly clear at each point which role is being played. As clearly pointed out by Fontana & Buss (1994) in a related context, λ-calculus meets these requirements exactly.
Type-free λ-calculus (Church, 1932(Church, /1933Barendregt, 1984) is a formal theory of functional abstraction and application. In Equality of λ-terms is handled by the usual congruence rules. λ-calculus is a paradigmatic "rewriting system": all that it does is to replace strings by strings.
Nevertheless, it has the same expressive power as Turing Machines or any other complete formalism for computability (Gödel's Recursion in Arithmetic, Kleene's equations... see Barendregt, 1984;Hindley & Seldin, 1986). Actual computer languages compute at most these computable functions. LISP is an implemented version of typefree λ-calculus.
The expressive power of type-free λ-calculus is due to the fixed-point operator: By applying several times the (β) axiom above, it is easy to show that for any term M, embedding I to interpret functions as arguments. The isomorphic embedding (or, also, in some cases, an isomorphism, i.e. with also I(J(d)) = d) is not an identity: this will be relevant for the discussion below. This work started the broad areas of the mathematical semantics of programming languages, (Stoy, 1977;Amadio, & Curien, 1993), and it has been already applied in a discussion of Rosen's approach (see Letelier et al., 2006).

CTEC, Cartesian Closed Categories and Differential Dynamical Systems
Before developing an expression of CTEC in terms of λ-calculus, a relevant mathematical implication should be clarified. By solving Rosen's equations in (typefree) λ-calculus, we will interpret CTEC as the constructability of a suitable reflexive object ii in a Closed Cartesian Category (CCC) iii . We will then discuss some of the relations of these categories with the usual mathematical modelling of physics in smooth manifolds, an issue raised by many authors (quoted on place) concerning Rosen's approach.
A category C is a CCC if it has all finite products (and hence has a terminal object); and for every pair of objects, say A and B, there exists an exponential or map object A→B, which represents, within the category, the collection of all maps from A to B, C(A,B).
The relevance of CCCs for representing CTEC consists in the fact that they allow the introduction of maps acting on maps (more precisely, maps' objects), which is a key feature of Rosen's proposal. In particular, they provide a suitable formalism for modelling typed and type-free λ-calculus and, more specifically, "reflexive objects". As a matter of fact, given a reflexive object in any category, one can construct out of the object a (non trivial) CCC, as a (full) subcategory of the given category (Longo & Moggi, 1990 Wolkenhauer & Hofmeyr (2007) make several interesting remarks concerning the "difficult" interplay between purely mathematical modelling using (partial) differential equations on one hand, and computability structures (such as the λ-calculus models we present here) on the other. In particular, they mention the fact that there is in principle no way to have CCCs over smooth manifolds, the latter being the natural frame for differential equations. The λ-calculus solutions to CTEC we present below necessarily involve reflexive objects and hence yield CCCs; it follows that they are not compatible with smooth manifolds.
It may be useful to further elaborate on the remarks in Wolkenhauer & Hofmeyr (2007).
In a CCC D, by definition, one has a (natural) isomorphism between D(AxB, C), the morphisms from AxB to C, and D(A, B→C), where B→C is the exponent object representing D(B,C) within the category D. An immediate consequence of this isomorphism over topological spaces is that any component-wise continuous function is globally continuous. This is false, in general, over smooth manifolds. Finally (and even more crucially), in a reflexive object A, the embedding of A→A into A also implies that AxA can be isomorphically embedded into A (Longo & Moggi, 1990). This is strictly in contrast with the notion of "dimension as a topological invariant" v , which holds in smooth manifolds with the "natural" or interval topology. This notion of dimension is crucial in Physics; and these smooth manifolds are the mathematical structures typically used to model physical processes in general, and SDDS in particular vi .

The expression of closure in lambda calculus
We are now in a position to address the core of this article: an expression of closure to efficient causation in λ-calculus terms. In type-free λ-calculus notation, Rosen's equations (E1, E2 and E3) become: Thus, by replacing B in (L2) and (L3) and then Φ in (L2), one has: How can such an f be constructed in type-free λ-calculus, once A is given? Let now: and Y = λy.(λx.y(xx))(λx.y(xx)) (the fixed point operator).
As shown above, for any term M, one has M(YM) = YM, that is, Y produces a fixed point for M. In this particular case then, G(YG) = YG, that is for: one has: and then: or also: Hence, given A and once defined G = λx.((xA)x)(xA), one has the result that f, B and Φ are all defined in terms of A and of the fixed point operator Y vii .
Self-application is a crucial "circularity feature" of type-free λ-calculus: it makes it possible to define recursion by a strong form of fixed point, the Y operator above (this operator is definable thanks to the "xx" occurrence, a key type-free term). As we showed, it is then possible to encode Rosen's diagram in the formalism of λ-calculus by generating terms, which can work alternatively as functions or arguments. Note though that the λ-calculus algebra is non-commutative, which means xy ≠ yx, in general.
Accordingly, x on the left has not the same role as the x on the right, and this clearly shows up both in the operational and in the mathematical semantics. In xx, for instance, the first x is interpreted as a function acting on the argument x (or, the "same" x is words, there is an interpretation of the formalism we gave above which is consistent with the diagram depicted in Figure 1. The crucial implication of our demonstration is that, to the extent that λ-calculus is a canonical formalism for computability and programming, there are no conceptual or principled problems in realizing (programming) our formalism in a physical machine. In particular, as we will discuss in more detail in section 8, there are no conceptual problems in writing an application in which i) the three terms f, B and Φ work as programs; ii) each of them is a result produced by one of the other programs. Overall, this creates a situation where Rosen's "closure to efficient causation" is deployed as a computer program f which writes a program B which writes a program Φ which writes the program f…. a quite ordinary circularity in functional programming. As a matter of fact, this is just the functional core of general recursion (Barendregt, 1984).

Rosen's conjecture revisited
According to Rosen (1991), no model of closure to efficient causation (CTEC) could be Turing-computable: in a previous publication (Stewart & Mossio 2007) this is what we have called "Rosen's conjecture". Since the expression of closure to efficient causation in terms of λ-calculus implies that CTEC is computable, in a mathematically welldefined sense, it follows immediately that there is a conceptual divergence between our proposal and Rosen's conjecture, which clearly calls for comment. In order to identify the possible reasons for this difference, let us recapitulate the logic of Rosen's demonstration.
Rosen's analysis of the computability of life phenomena may be split into two main aspects. Firstly, Rosen makes a fully general (and fundamental) remark: "The assertion that formalizations suffice in the expression of Natural Law, and hence, that causal entailment is to be reflected entirely in algorithms, is a form of Church's Thesis... If it were true, the consequences that follow from its truth would clearly have the most staggering implications for all aspects of human thought. For good or ill, however, it is not true, not even in mathematics itself." (Rosen, 1991, p. 191).
The form of Church's Thesis mentioned here by Rosen is usually called the "physical Church Thesis", and we entirely agree with Rosen's claim about its failure ix . The second aspect arises when Rosen continues, on the next page: "If f is simulable, then there is a Turing machine T such that, for any word w in the domain of f, suitably inscribed on an input tape to T, and for a suitably chosen initial state of T, the machine will halt after a finite number of steps, with f(w) in its output tape" (Rosen, 1991, p. 192 Moreover, thanks to the richness of the formalism, in λ-calculus the (potentially infinite) operational nature of λ−terms is fully displayed (and explained) by the notion of the Böhm-tree of a λ-term (a rather complex definition, see Barendregt, 1984). A Böhm-tree may be an infinite tree. In particular, when λ-terms encode general recursion, which includes partial functions, the corresponding Böhm-trees may be infinite, as they display the operationally infinite behaviour of the intended computations. Yet, infinite Böhm-trees associated to λ-terms are recursively enumerable and effectively generated, i.e. the regression is effectively given (by a program if desired). In particular, one may have finitely branching infinite trees, which implement Rosen's fractionability xii . Böhm-trees have been used in the semantic analysis of programs, precisely because they display their computational behaviour as being possibly circularly infinite (Barendregt & Longo, 1980). Thus, one obtains:

Recursion vs. Impredicativity
In recent years, several contributions have tried to restate and justify the claim of the With respect to this claim, we would develop two arguments. The first one is that Rosen's closed path of efficient causation is not an impredicative cycle. The second one is that, even if it were the case, an impredicative cycle would still be computable. Let us briefly discuss the two issues.
An impredicative definition defines sets or types or elements of a set (or of a type) in terms of the set (or type), which is being defined xv . Accordingly The second point is that impredicative structures may be perfectly computable, as is the paradigmatic example, the Impredicative Second Order Type Theory, system F (see Girard et al., 1989). System F is the most relevant example of an impredicative logical frame. Far from being incompatible with computability, it has actually been a rigorous formal tool for characterizing a large class of computable functions, the recursive functions that are provably total in Second Order Peano Arithmetic (PA 2 ). This class, as defined in system F, provided an effective logical frame for the design of typed (polymorphic) programming languages (Cardelli & Longo, 1991). As further hinted in the note, system F is impredicative to the extent that some terms and types, as collections of terms, are defined by using a universal quantification over the very collection of types that is being defined. The terms in the impredicatively defined types, in particular, are defined by using the type to which they belong and, even, the collection of all types xvii . In conclusion, the argument, "since this is impredicative, then it is not computable", is incorrect.
Nevertheless, the xx and (x∈x) circularities, which are at the core of type-free recursion and non-well-founded Set Theory, are very expressive; and in fact they do have a nonobvious mathematical connection with impredicativity. Within type-free λ-calculus and its "models", such as Scott's D ∞ models (see Barendregt, 1984), one can construct an Impredicative Theory of Types. This can be done in a relatively "simple" way, based on the "finitary projections" model in (Amadio et al, 1986). It can also be done in a much more complex way, which preserves the II order logical structure of Girard's impredicative system. That is, within a type-free model, one can "isolate" types (as partial equivalence relations), which forms an impredicative type-structure and satisfies Lawvere  (Giannini & Longo, 1984). This completes our second argument according to which even if closure to efficient causation did involve impredicativity (which is not the case, in Rosen's formalization), this would still not prove that it is not computable, since also Domain Theoretic solutions of recursive domain equations (typically, Scott's D ∞ models) are perfectly computable and, over them, one may construct models of (effective and) impredicative Type Theories. Their computer implementations are at the core of a large area of functional programming and its applications.

Towards a computer simulation of closure to efficient causation
The motivation for this article, as stated in the introduction, is to work towards a mathematical formulation of Rosen's concept of "closure to efficient causation" that would be intuitively understandable, biologically interpretable, and operationally generative. Rosen himself employed Category Theory, an extension of standard Set Theory in which mappings can themselves form objects. The type-free λ−calculus, at the syntactic level, and its categorical models, as mathematical/semantic interpretation, do indeed fulfil the key requirement that the same entity be able to occupy the three roles of argument (i.e. a set which is the input to an application or mapping), result (i.e. the set which is the end-point of the mapping) and function (i.e. the mapping itself).
However, from the working theoretical biologist's point of view, this formalism has a severe limitation. It is, in a way, too general; once written down, either in categorytheoretical terms or as one of Rosen's "relational diagrams", it just "sits there" and doesn't actually do anything. Rosen himself commented that the absence of explicit dynamics in these diagrams was no accident, because the diagrams represent the organizational features of living organisms that, as long as the organism stays alive, This is of course extremely frustrating from the perspective of the traditional models of mathematical biology, which are almost entirely framed in terms of dynamical systems. Rosen (1973) did make an explicit attempt to articulate the relational theory of (M,R)systems with traditional differential equations. Unfortunately, this proposal has not showing that closure is both mathematically possible but non-trivial; but Letelier and colleagues recognize that this example is of little biological interest. These authors also make a most interesting attempt to make this formalism "work" in the case of a simple metabolic system; but unfortunately this attempt fails, on their own admission.
In this sort of situation, where there are strong qualitative intuitions but conventional dynamic systems theory is not able to express them, a most notable resource that has become increasingly available over the last 40 years is that of computer simulation. For example, the concept of autopoïesis (Maturana & Varela, 1980) -which, as we mentioned, has been compared to that of closure under efficient cause -has received several computational implementations (McMullin, 2004). The work of Fontana & Buss (1994), to which we have already referred xix , is also explicitly inspired by the work on autopoïesis. To date, there have been virtually no attempts to provide an illustration of interpretable as doing justice to their biological inspiration, i.e. "metabolism", "repair" and "replication".
As we have already indicated at greater length (Stewart & Mossio, 2007), we consider that a computational implementation of closure to efficient causation could best take the form of three computer programs, each of which writes the next one xx . The program "metabolism" -in barest outline, (fA) = B -takes a suitable input A: the material and energetic resources, which every living organism needs, as a thermodynamically open system functioning far from equilibrium. This function produces B -in the first instance, simply the whole network of biochemical reactions (but we will come back to the requirements on f). Working backwards, as it were, the second task is to write a program "repair" which, taking suitable input, will write the "metabolism" programme.
Rosen writes (ΦB) = f, suggesting that B (in its role as an argument) may be a suitable input; but while this is not implausible we do not ourselves see a need to impose this as a constraint. We could, if necessary for plausible biological interpretation, write where X is any plausible resource (including A and B but possibly also further environmental resources). Relaxing the constraints in this way only multiplies the number of solutions to the three equations; but of course we now have to satisfy a new sort of constraint, i.e. biological plausibility.
Working backwards again, the third step is to produce Φ by the « replication » function.
Rosen writes: (Bf) = Φ, implying that the replication program takes f as input argument.
This seems to us not only unnecessary, but also biologically quite implausible. To a first approximation we may consider that the metabolism function f includes enzymes (even if it is not reduced to that). Φ, as "replication" function, may be associated with nucleic acids. While the synthesis of nucleic acids clearly requires enzymes (as a part of the efficient cause of the process), it does not take enzymes (nor indeed proteins) as its substrate. We therefore prefer to write where Z is again the sum of all plausible resources (including A, B, indeed f if that should be a good idea, and again possibly also further environmental resources). As before, relaxing the constraints formally multiplies possible solutions -but with the cost that now they should be biologically plausible.
We are not yet finished, however, because now that B is a program in its own right, the "metabolism" function (fA) = B has a much heavier task than initially envisaged. B, produced by f acting on A, must now represent not only the full network of biochemical reactions which occur in the cell; B must also be a program which, given the right input, will produce Φ. This is, of course, a new constraint on f; and in turn this becomes also a new constraint on Φ which must produced the new f. Thus, the set of three programs impose mutual constraints on each other, in a cyclical fashion. This does not, however, involve a vicious infinite regress, as we have shown; on the contrary, it is just a nice challenge for theoretical biologists with programming capabilities. The guidelines we propose are to follow the structure of the λ-calculus formulation, and to translate our terms into LISP programs (which are identical to the λ-calculus up to some added "syntactic sugar", as computer scientists say), or into any preferred (type-free) programming language.

Conclusions
As a final remark, we wish to note that although most workers in the field would probably agree that "closure to efficient causation" is a necessary condition for a living organism, as Rosen himself noted in his last work (Rosen, 2000) (Rogers, 1967, p. 5). Nevertheless, divergence is essential for computability, since not every partial computable function may be extended to a total computable function (a key result, see Rogers, 1967).
There is one more fundamental reason for Computability Theory to deal with partial recursive functions in an essential way (Rogers, 1967;Barendregt, 1984). The reason is that the class of partial functions is effectively enumerable, whereas the class of total computable functions is not. Moreover, and this is crucial, the enumeration of the class of partial functions gives the Universal Turing Machine, which enumerates and computes all of them. More precisely, partiality is essential to obtain a set of indexes, which is effectively recursively enumerable (r.e.). By contrast, any non-empty sub-set of the total computable functions has a non r.e. set of indexes, as shown by the Rice-Shapiro Theorem (Rogers, 1967, p. 324 xi In the Appendix, we discuss an alternative explanation of the divergence between our results and Rosen's ones. xii A paradigmatic example is the tree of the recursion operator Y above, a finite term, of course, whose Böhm-tree is infinite. Böhm-trees thus express the infinite regress mentioned by Rosen in a perfectly computational fashion (apply f = YG that generates B which writes Φ which generates f..., the intended metabolic cycle). For example, fractionability, in some cases, boils down to the effective transformation from x to (xx), where the first and the second x are distinct and play different roles in the computation (see sect. 5 on non-commutativity).
xiii This variant facilitates the demonstration of infinite regress; but it is not necessary, either for CTEC or for infinite regress. It might have been preferable for Rosen to demonstrate his theorem on the diagram representing canonical (M,R) systems; but in the event, nothing hangs on this.
xiv In their most recent paper on the subject, Chemero and Turvey claim to have learned that "there is no necessary connection between impredicative definitions and non-Turing-computability" (Chemero & Turvey, 2008, p. 327).
xv As a matter of fact, in 1902, there was some confusion between impredicative definitions and the predicate (x∈x), that is x belongs to x, which belongs to x... a circularity in Frege's formalization of Cantor's Set Theory which lead to Russell's paradox (or, better, inconsistency) in type-free theories with unrestricted negation. The issue of impredicativity was later clarified by Poincaré (1906) and H. Weyl (1918). Since Russell's work in the Theory of Types, in the early 1900's, after his paradox, the mathematical setting where impredicativity has been rigorously analyzed is Type Theory, in particular in the modern sense of Church (1940). The work by Martin-Löf and Girard, since the '70s, represented the branching of Type Theory into a predicative frame (Martin-Löf, 1975) and an impredicative one, (Girard, 1986). It resulted that "non-well-foundedness" of Frege-Cantor Set Theory is not an impredicativity as it corresponds to (xx) of type-free l calculus, x applied to x, applied to x.... xvi Hypersets were invented, under different names, by Finsler in the '30s and, later by D.S. Scott in the '60s. They were rigorously treated first in (Forti & Honsell, 1983), to which (Aczel, 1988) extensively refers.
xvii The type-theoretic notion of impredicativity is fully general, that is, this definition yields also the settheoretic one, by changing, roughly, types into sets (and t:T, that is t has type T, into t∈T) . Second order types are defined by a universal quantification (for all X, that is ∀X) referring to the very collection of types, Type, that is being defined (formally: (∀X:Type.A) is in Type). Moreover the terms in these types, also use, in their definition, a universal quantification over the collection of all types. The relative consistency of this theory was first assured by a difficult consistency (normalization) theorem, see (Girard et al., 1989). xviii The delicate logical issue, here, is that the step of "isolating" an impredicative fragment within a typefree model (which may live in predicative Theory of Types) is a highly impredicative conceptual construction. xix We are not able to do justice here to the relation between the present article, and the work of Fontana & Buss which is also centred on l-calculus; this relation would require an entire article in itself, as they claim that the key circularities of life phenomena are suitably representable in l-calculus (we do not go so far and just analyse some equations derived from Rosen's approach). xx We retained here the l-calculus formulation because it is perfectly concise and precise for identifying argument, result and function.
xxi Here, Rosen makes a sound distinction. In section 4D, and in particular equation [4D.2], he defines what he calls recursive functions. In the standard terminology (see Rogers, 1967), these are called primitive recursive functions. As Rosen writes, they satisfy the condition: " f(n) entails f(n+1) for every n". These functions are all total functions, and they form a (proper) subset of the class of total computable functions. Later, Rosen observes (p. 192): "it is perfectly possible to define mappings f in terms of algorithms, which do not satisfy this condition". Thus, there exist total algorithmic functions that are not (primitive) recursive, as it is well-known.
xxii A function is total if it always associates to an (finite) input a (finite) output; it is partial otherwise (it may diverge on some or all inputs).
xxiii Quite pragmatically, we may observe that operating systems (OS) and compilers are just programs, yet they act on programs (they are components of a Universal Turing Machine!); the key point being that in sequential computers which are never turned off, the OS and compilers are computable functions which run indefinitely. The same may be said of most network processes, which are not studied as inputoutput halting functions: they are ongoing computational processes, not input-output halting relations.