The Core of Philosophy

In a way (that I am going to explore in some articles on Creativistic Philosophy), one could say that computability theory (which could be called “formalizability theory”), as one can find it in the works of Post, Kleene, Turing, Church and Gödel, forms the very core of philosophy. From here, one can investigate why philosophy still exists, why it will not go away and what is the nature of the analytic/continental divide and the science/humanities divide.

Advertisements

Estimating the Complexity of Innate Knowledge

File:GeneticCode21-version-2.svg

The following is a very crude estimate of the informational complexity of the innate knowledge of human beings. To be more exact, it is a crude estimate of an upper limit to the information content of this knowledge. It might be off by an order of magnitude or so. So this is a “back of an envelope” or “back of a napkin” kind of calculation. It just gives a direction into which to try to get a more accurate calculation.

According to the human proteome  project (http://www.proteinatlas.org/humanproteome/brain), about 67 % of the human genes are expressed in the brain. Most of these genes are also expressed in other parts of the body, so they probably form part of the general biochemical machinery of all cells. However, 1223 genes have an elevated level of expression in the brain. In one way or the other, the brain-specific structures must be encoded in these genes, or mainly in these genes.

There are about 20.000 genes in the human genome. So the 1223 genes. So about 6.115 % of our genes are brain specific. Probably, we share many of these with primates and other animals, like rodents, so the really human-specific part of the brain-specific genes might be much smaller. However, I am only interested here in an order-of-magnitude-result for an upper limit.

I have no information about the total length of these brain-specific genes, so I can only assume that they have average length.

According to https://en.wikipedia.org/wiki/Human_genome, the human genome has  3,095,693,981 base paris (of course, there is variation here).  Only about 2 % of this is coding DNA. There is also some non-coding DNA that has a function (in regulation, or in production of some types of RNA) but let us assume that the functional part of the genome is maybe 3%. That makes something in the order of 92 – 93 million base pares with a function (probably less). That makes 30 million to 31 million triplets. If the brain genes have average length, 6.115 % of this would be brain specific. That makes that is something like 1.89 million triplets.

The triplets code for 20 amino acids. There are also start- and stop-signals. The exact information content of a triplet would depend on how often it appears, and they are definitely not equally distributed, but let us assume that each of them codes for one out of 20 possibilities (calculating the exact information content of a triplet will require much more sophisticated reasoning and specific information, but for our purposes, this is enough). The information content of a triplet can then be estimated as the dual logarithm of 20 (you need 4 bits to encode 16 possibilities and 5 bits to encode 32 possibilites, so this should be between 4 and 5 bits). The dual logarithm of 20 is 4.322. So we multiply this with the number of triplets and get  8.200.549 bits. This is  1.025.069 bytes, or roughly a megabyte (something like 200 – 300 times the length of this blog article).

So the information content of the brain coding genes that determine the structure of the brain is in the order of a megabyte (smaller than many pieces of commercial software). The structure of the brain is generated by the information contained in these genes. This is probably an overestimate because many of these genes might not be involved in the encoding of the connective pattern of the neurons, but, for example, in the glial immune system of the brain or other brain specific, “non-neuronal” stuff.

If the brain’s structure is encoded in these genes, the information content of these structures cannot be larger than the information content of these genes. Since there are many more neurons, a lot of their connectivity must be repetitive. Indeed, the cortex consists of neuronal columns that show a lot of repetitive structure. If one would describe the innate brain circuitry, i.e. that found in a newborn (or developing in the small child in processes of ripening), and you compress that information to the smallest possible size, determining its information content, that information content cannot be larger than the information content of the genes involved in its generation. The process of transcribing those genes and building the brain structures as a result can be viewed as a process of informtion transformation, but it cannot create new information not contained in those genes. The brain structure might contain random elements (i.e. new information created by random processes) and information taken up from the environment through processes of perception, experimentation and learning, but this additional information is, by definition, not part of the innate structures. So the complexity of the innate structures or the innate knowledge, i.e. the complexity of the innate developmental core of cognition, must be limited by the information content of the genes involved in generating the brain.

The above calculation shows that this should be in the order of magnitude of a megabyte or so.

This means also that the minimum complexity of an artificial intelligent system capable of reaching human-type general intelligence cannot be larger than that.

We should note, however, that human beings who learn and develop their intelligence are embedded in a world they can interact with through their bodies and senses and that they are embedded into societies. These societies are the carriers of cultures whose information content is larger by many orders of magnitude. The question would be if it is possible to embed an artificial intelligent system into a world and a culture or society in a way to enable it to reach human-like intelligence. (This also raises ethical questions.)

In other words, the total complexity of innate knowledge of humans can hardly extend the amount of information contained in an average book, and is probably much smaller. It cannot be very sophisticated or complex.

(The picture, displaying the genetic code, is from https://commons.wikimedia.org/wiki/File:GeneticCode21-version-2.svg)

Thoughts about Intelligence and Creativity

Some unordered notes (to be worked out further) on some general principles and limits of intelligence.

Reality has more features that we can perceive. What we perceive is more than what we understand. And our understanding has several levels, from perceiving shapes to conceptual interpretation and deep analysis. On each level, we can capture only a fraction of the information of the level before it. (See also https://creativisticphilosophy.wordpress.com/2015/02/19/dividing-the-stream-of-perceptions/)

The primary sense data are processed quickly, by neuronal systems having a high degree of parallelism. However, the level of analysis is rather shallow. To process large amounts of data quickly, you have to have an algorithm, a fixed way of processing the data. Such an algorithm can only recognize a limited range of structures. An algorithm limits the ways in which the bits of data are combined. An algorithm is a restriction. It prevents universality. The data could be combined in so many ways that you would get what is known as a combinatorial explosion if you would not limit it somehow. The system, having only a limited processing capacity, would be overwhelmed by the hyper-astronomically growing number of possibilities. Therefore a system processing a large amount of data must restrict the way it combines the data. As a result, it can process large amounts of data quickly but will be blind to a lot of the regularity that is contained in the data and could theoretically be discovered.

In order to discover such hidden features, you cannot process large amounts of information at once because this would lead to a combinatorial explosion. You would, instead, have to process small amounts of information at any given time, trying to find some pattern. Only when you discover a pattern, you can try to scan large amounts of data for it, essentially applying a newly found algorithm to the data. But that algorithm will in turn be blind to other regularity the data might contain. Each algorithm you may use to analyze data is incomplete, because it has to limit the way data is combined, or it will not be efficient, leading to combinatorial explosions again.

Intelligence could be defined as the ability to find new instances of regularity in data, regularity that was not known before. It can therefore be defined as the ability to construct new knowledge (new algorithms). This is only possible, in principle, by analyzing small amounts of data at any given time. Any algorithm you may use to analyze larger amounts of data will be limited and may be missing some of the structure that is there (i.e. it will restrict the generality of the intelligence). (See also https://creativisticphilosophy.wordpress.com/2015/05/16/how-intelligent-can-artificial-intelligence-systems-become/ and https://denkblasen.wordpress.com/2015/05/25/a-note-on-cognitive-limits/).

This limit to intelligence should be valid for single human beings but also for groups of human beings, like scientific communities or cultures. It would also hold for any artificial intelligent system. Such systems cannot be made arbitrarily intelligent. One could try to do so by putting many small intelligent systems in parallel (something like an artificial intelligent community) but since such systems would not be limited by any algorithm (or formal theory), they could develop into totally different directions, disagree with each other and suffer from misunderstandings if one would try to connect them together. If you connect them in a way that limits the possibility of misunderstandings in their communication or that stops them from disagreeing or from developing into totally different directions, you end up with a parallel algorithm again that can harmoniously analyze large amounts of data but is limited in what it can do.

You either get shallow processing of large amounts of data or deep analysis of small amounts of data with the potential of new discoveries, but you cannot have both at once. As a result, there is a limit to how intelligent a system can become.

There is no limit to what can be discovered by an intelligent system: if a structure is present in a set of data, it can be found if the system doing the analysis is not an algorithm (i.e. a system describable in terms of a finite formal theory – an algorithmic system, on the other hand, will necessarily be systematically blind to some structures). On the other hand, an artificial superintelligence is not possible. Processes of intelligent data analysis in such a system might be faster than they are in a human being, but they will not be much more sophisticated. Higher sophistication by adding of smart algorithms leads to limitations, i.e. to systematic blind spots. Higher sophistication by attempting to process more data at a time leads to combinatorial explosions which cannot be managed by whatever additional speed or processing power one would add. (See also http://asifoscope.org/2013/01/18/on-algorithmic-and-creative-animals/ and also http://asifoscope.org/2015/01/20/turning-the-other-way/)

For shallow analysis you need algorithms. Speed in terms of amount of data (bits) processed per time (seconds) may be high, but the depth of processing is limited. If the goal of cognition is to find regularity (and thus compress data), the algorithmic system will not find all regularity that is there. It cannot compress data optimally in all instances. Such a system will have blind spots.

Finding all regularity may be viewed as the ability to find the smallest self-expanding program that can produce the data (i.e. an optimal compression of the data). If an algorithm analyzes a stream of data, i.e. it parses the data, and the stream of data is longer than the algorithm itself, the algorithm may be seen as a compression of the data. If the compression is loss-free, i.e. the algorithm can reproduce the original data then the data must contain some redundancy if it is longer than the algorithm. The data will then not exhaust the information carrying capacity of the information channel. Therefore, it must be possible to add some information to that channel that is not parsed by the given algorithm. Hence the algorithm must be incomplete since there is data it cannot parse. It systematically has a blind spot.

Therefore, an intelligent system able to find arbitrary regularity cannot itself be an algorithm. Instead it must be a system that can produce new knowledge (and thus does not have a fixed representation as a finite text, and does not have a Goedel number). It must be changing over time, incorporating information that enters it from the analyzed information stream. This information reprograms the system, so it changes the way the system works. The system cannot have a fixed way in which it is working because then it would be an algorithm and would have a blind spot.

The possibility that the system self-destructs (becomes mad) cannot be excluded. That is a risk involved in intelligence/creativity.

Sophisticated knowledge has a high efficiency but a low universality. It is special and will “miss” many features of the data it processes (i.e. it has blind spots). On the other hand, it is efficient, which means that it allows large amounts of data to be processed. The processing of large amounts of data in a short time means that only a limited subset of the properties of that data can be considered, making analysis shallow.

Simple knowledge, on the other hand, has a high universality but a low efficiency. It allows for new features of data to be discovered. It therefore has the potential of a deep analysis that does not miss properties, but it has a low efficiency and can only process small amounts of data at a time, since applying it to large sets of data leads to combinatorial explosions.

The simple knowledge is what is called “reflection basis” in K. Ammon’s dissertation. (see Ammon, Kurt: “The Automatic Development of Concepts and Methods“, Doctoral Dissertation, University of Hamburg, 1987).

New knowledge forms by incorporating information from data into the knowledge base. This might occasionally happen through the application of sophisticated knowledge but most of the time is the result of applying simple knowledge to small amounts of data, leading to the discovery novel (from the system’s point of view) properties of the data. As a result, new more sophisticated knowledge forms. This knowledge is special and more efficient.

The small amounts of data that are processed by simple knowledge might be input data from the input stream, but might also be chunks of knowledge that are experimentally plugged together in different ways and then experimentally applied to the input stream (perhaps in its entirety). This might occasionally lead to sudden changes of perception (e.g. changing from two-dimensional vision to three-dimensional vision). Successful (i.e. efficient) structures are then retained. This is a way of incorporating information from the environment into the system.

The total universality of a creative system lies in the emptiness of its core (i.e. there is no fixed, i.e. unchangeable, special knowledge restricting what it can do).

The trade-of between efficiency and generality is a special case of (or another way of expressing) the trade of between explicitness/exactness and generality described in https://creativisticphilosophy.wordpress.com/2013/10/12/the-trade-off-between-explicitness-and-generality/. A result of it is that there is a fundamental limit to how intelligent a system can become.

Sophisticated knowledge can be used to filter out expected components from the data stream, leaving the surprising parts that can then be analyzed by less sophisticated knowledge. The end result might be more comprehensive sophisticated knowledge where the previously surprising data becomes expected data.

(A lot of this is already contained in K. Ammon’s dissertation in one form or another).

Internal Observers

I call a system (natural or artificial, organic or not) that can store information about itself or about another system an observer. Such a system might have a layered structure with several layers of implementation, so there are several layers of description. The observing system defines an ontology or phenomenology of the observed system. The entities defined by it are real from its point of view. If such a system can observe itself in terms of a higher layer of implementation, then the system on that level of description exists from its own point of view. My hypothesis (if I can call it so) is that consciousness is the reality thus established. There is no higher or bird’s eye view from which one level of description or of reality has precedence over another.

Viewed from the outside, such an observer might not exist, but just a lower-level description of the system is real (e.g. an electronic or neuronal outside-view). From its own point of view, such an observer would be real, however. I call this an internal observer.

See also https://creativisticphilosophy.wordpress.com/2015/05/03/homo-in-machina-ethics-of-the-ai-soul-a-response/ and the discussions following that article, https://creativisticphilosophy.wordpress.com/2014/07/02/generating-objects-towards-a-procedural-ontology/, and https://creativisticphilosophy.wordpress.com/2013/04/08/an-open-letter-to-the-human-brain-project/.

(I don’t expect anybody to understand this rather cryptic and half-backed stuff, more work is needed to make it clearer, just a note for myself).

A note on Cognitive Limits

In https://creativisticphilosophy.wordpress.com/2015/05/16/how-intelligent-can-artificial-intelligence-systems-become/ I have argued that there is a limit to intelligence since a creative system can only process a very limited amount of information at any time without running into a combinatorial explosion. Large amounts of data require pre-existing knowledge on how to process them, i.e. algorithms, but if such knowledge does not exist yet and the system is trying to find out how to process some novel data, only small amounts of information can be processed.

Since our senses produce large amounts of data that tend to contain some novel information, we can only analyze small parts of that information. Automatic processing of the primary sense data using known algorithms (or neuronal networks that can be modelled as algorithms) can only provide a limited depth of analysis. As a result, only a small fraction of the information can be analyzed deeply at any given time, so the phenomenal overflow discussed, for example in https://scientiasalon.wordpress.com/2015/05/18/ned-block-on-phenomenal-consciousness-part-i/ and https://scientiasalon.wordpress.com/2015/05/20/ned-block-on-phenomenal-consciousness-part-ii/ might be inevitable for any such system, natural or artificial. A mechanism of attention might be necessary.

See also https://creativisticphilosophy.wordpress.com/2015/02/19/dividing-the-stream-of-perceptions/