Cylinder seals were invented in Mesopotamia around 3500 BC. They are small cylinders, often made from stone, about one inch in length, engraved with figurative scenes or written characters, or both. They were used to roll an impression on a surface, typically clay.
When the seal is rolled over a clay surface, an impression is formed. If the seal is going through more than one full rotation, the image printed into the clay will show a partial or complete repetition. As soon as the printed image is longer than the circumference of the seal, there must be repetition.
Repetition is a simple instance of order. If an image, or more generally a piece of data, contains some order, it must be possible to compress that data into a more compact form. And indeed, the cylinder seal may be viewed as a compressed form of any image produced by it that is longer than its circumference. If the seal can generate the picture and the picture contains a higher amount of data than the seal itself, the seal can be viewed as a compressed form of that data and the generated data must contain order or repetition. The only information added on top is the information of how many times the seal was turned and at which point of the seal the image started.
We can view the seal as a simple special purpose printing engine. It can produces stripes of different length with one or more repetitions of a pattern. It is a material embodiment, or implementation, of a very simple algorithm that contains a constant data structure and a loop to repeat that structure. There are two input parameters: a starting point (which side of the seal is pressed into the clay first) and a number of rotations (or angle). The result is a stripe of pictures and/or signs.
The cylinder seal does not yet have the expressive power of a full programming language. Constant and repetition are just two elements of such languages, and to be able to program any type of computable function, you need a lot more. But it may be viewed as the first step into this direction.
Some modern printers, e.g. laser printers, still contain a rotating cylinder, but the image printed by the cylinder can be changed on the fly. While the engraver making a cylinder seal was using a medium that he could write to only once, the cylinder of a laser printer can be “engraved” with different images again and again. We might still use a constant content, like an image file. Such a file can be viewed as a special purpose program that can produce just that image on the print surface (the clay of Sumerian cuneiform script and cylinder seals has now been replaced by paper and toner). But we can also use a program written in a programming language to print some image.
But something has remained the same: just as the cylinder seal can be viewed as a data-compressed form of the printed stripes it is used to generate, the program producing printed output can be viewed as a data-compressed form of the printed output. There might be some input parameters influencing what the program does. If you take an output that is longer (in terms of bits or bytes) than the generating program plus its input (again in terms of bits or bytes) than necessarily that output must contain some regularity or pattern because it could be generated by the shorter program. The program (together with its input) may be viewed as a description of that regularity.
We may think of programming languages coupled to printers as some kind of universal cylinder seal, something like a generalization of the seals used by the Sumerians. And just like a stripe unwound from a seal contains some repetition if it is longer than the circumference of the seal, the output of an algorithm contains some regularity (not necessarily a simple repetition, but some kind of order) as long as it is longer than the program generating it. The program can then be viewed as a compressed form of it into which the output can be zipped. The simple rotating seal is a simple special case of this general fact.
We may look at some film of somebody rolling the seal over a clay surface. If we watch that film backwards, we see the picture or character stripe being “parsed” by the seal. The seal now appears as something like a sense organ checking if the stripe is written in the right kind of language or grammar. We could, while rolling the seal over the existing stripe, count the number of revolutions and thus regenerate the compressed version of the information of which the stripe is the decompressed form.
In a similar way, if we replace the special purpose program of the particular cylinder seal by any algorithm written in a general purpose programming language, we see that, just like the surface of the seal, the program only contains a limited amount of information. As a result, any output generated by it will show just one particular pattern. If you operate it in reverse mode, it will only be able to parse or accept data fitting into that pattern.
So no single algorithm, called with particular input parameters, can be universal, being able to produce or accept arbitrary data. Just like every cylinder seal is unique and only produces a limited set of patterns (print stripes of various length with different numbers of complete or partial repetitions), every particular algorithm is also unique and only produces a limited set of patterns, all belonging to a certain type of order.
If we follow theories of the human mind like they are being proposed in the field of “artificial intelligence”, there would be a particular “intelligent algorithm” implemented in the form of human beings. But such an algorithm could only recognize certain patterns. It would lack universality. Its ability to discover arbitrary patterns existing in reality would be limited.
Likewise, if the method of science could be described in terms of a specific algorithm, science would be limited in its ability to capture the structure of reality to just those patterns that are pre-formed in this algorithm. Science would, in the end, only discover its own structure, not the structure of reality.
If human cognition and human science are universal, on the other hand, they cannot be describable in terms of a single formal theory or algorithm. While knowledge contained in them and produced by them can take the form of algorithms, the description of the human mind must contain mechanisms that enable it to get out of the limits of any particular single formal description. If a part of the mind is describable as an algorithm, this algorithm-changing part of the mind cannot be part of that algorithm itself since what can be calculated inside an algorithm and what can be derived in a formal theory cannot change. The cylinder seal cannot carve or change its own engraving. It looks like the material system we call the human brain has no problem performing such extensions but they cannot be captures in pure computational models.
The cylinder seals of the Sumerians did not have the computational power of a full-fledged programming language. They could only do one thing and they were used for special purposes like signing documents or signifying ownership. For general writing, a stylus was being used. Through a series of technical innovations, we have replaced the cylinder seal with a computer that can do a lot of things automatically, but we have to understand the limits imposed on this tool by the mathematical theory of computability. There is no such thing as an intelligent algorithm because, just like those old seals, each algorithm only produces a limited set of patterns. The world, including our minds and our cultures, has more properties than what can be captured in a single formal theory. There is no universal cylinder seal. Each one is special.
The greek philosopher Plato envisioned a world of eternal forms of which the material world was only an impression, created by means of the forms by a deity called the demiurge. Maybe this idea was inspired by cylindrical seals that where used in many middle eastern and mediterranian cultures. According to Sumerian mythology, however, the god Enki created human beings from clay, but did not print them with a cylinder seal. He formed them by hand instead. In our current understanding of how we came about, a creator god is no longer needed, but we should understand that a formalizable, algorithmic process – unrolling the world from the eternal forms of a finite theory containing a finite amount of information – is also not sufficient. Formal theories and eternal forms are not sufficient, the world is richer than that.
(The pictures are from https://commons.wikimedia.org/wiki/File:Cylinder_Seal,_Old_Babylonian,_formerly_in_the_Charterhouse_Collection_03.jpg and https://commons.wikimedia.org/wiki/File:Flickr_-_Nic%27s_events_-_British_Museum_with_Cory_and_Mary,_6_Sep_2007_-_194.jpg. The second picture shows a cylinder seal and prints made with it, with a mythological scene involving the god Enki (recognizable from the streams flowing out of his shoulders).)