How to Create Consciousness by Programming

How to Create Consciousness by Programming

What is the difference between programming for consciousness and that for unconsciousness?



How can we make computer to create consciousness?

How can we create consciousness by programming?

What is the difference between programming for consciousness and that for unconsciousness?


To answer these questions, we are going to briefly go through the difference between consciousness and unconsciousness.

For example, if you smack right under your kneecap, your leg will automatically go up.
This is called reflex.
An action initiated by unconsciousness.
You did not intend to raise your leg up.
Unconsciousness means literally actions without consciousness.
The main characteristic of unconsciousness is that its input and output are directly connected.
If it receives an input to smack the kneecap, it will bring an output that automatically raises the leg.

Next up, consciousness.
In consciousness, once you find an apple you can ponder “hey, there is an apple” or “should I eat the apple now, or later” in your head.
Hence, inside consciousness its input and output are not directly connected and it can maneuver its thoughts inside the head.  

Therefore, the main difference between consciousness and unconsciousness is, in unconsciousness, its input and output are directly connected; and in consciousness, it can maneuver entered data inside the head.


Let me explain another difference between consciousness and unconsciousness.
Now let’s think about traumatic experience for the example of unconsciousness.

When I was little, I had a horrible motion sickness on taxi.
Since then, every time I sense that particular smell of taxi, I feel sick.
Even not on taxi, I feel sick just smelling the smell.
This is the response of unconsciousness in which the smell of taxi, an input is directly connected to the motion sickness, output.

No matter how you try to think you are not on taxi so there’s no way you can get motion sickness in consciousness, you can’t oppose to that feeling.
This is another big characteristic of unconsciousness.
You can’t change unconsciousness.

Now let’s think about the case with consciousness.
For example, let’s imagine there is an uncle who you don’t see frequently, only on occasions such as New Year’s.
He doesn’t smile much, always grim, and you thought to your young self, that he was a scary person.
One day, you are stuck with homework and the uncle came to you and taught you very nicely. You found out that he in fact was a nice uncle.

Now in this case, the “scary” impression which had been associated with “the uncle” are now written over as “kind”.
You have written over the already identified data.
This is another big characteristic of consciousness.
You can change consciousness.


Then, how can we actualize these differences between consciousness and unconsciousness by computer programming?
Before we get into that, let me briefly explain about computer programming.

Programming is comprised of functions.
A function is a block of programming that does calculation to entered data and outputs results.

Well, according to the first characteristic of differences between consciousness and unconsciousness, in unconsciousness input and output are directly connected.
This, in terms of computer programming, is comprised of one function.
If it has any input, it will be automatically computed with the function, and an output is outputted.

In case of human beings, the source of input is the external world, and input comes
in from sensory organs.
The destination of output is also the external world, and it outputs from the body.
Such as speaking from the mouth and moving hands and legs.

In the case of reflex, the input is the smacking of the kneecap and the output is raising the leg.
To create unconsciousness on computer, all you need is to create a function that moves its hands and legs responding to the input from sensor.


Next, let’s think about the case of consciousness.
In consciousness, the input of looking at the apple, it recognizes “this is an apple”, it doesn’t output as an action to the external world.
It recognizes the apple and thinks “let’s eat the apple now” or “let’s eat the apple later”.
To be able to identify it as “this is an apple”, to be able to think “let’s eat the apple now” or let’s eat the apple later”, these are kinds of cognitive pattern.
Now if the destination of output of cognitive pattern is not external, where would that be?

This is consciousness.
Consciousness receives output from several cognitive patterns, it outputs to the next cognitive pattern or sometimes it outputs to the external world through the body.  
Hence, consciousness has the role as a controller to control cognitive pattern.

In terms of programming, cognitive pattern can be a function.
Consciousness by programming can be a controller that manages several functions.


Next, we are going to think about the second difference between consciousness and unconsciousness, the ability to change and how we can actualize it by computer programming.

There are two kinds of programming language.
One is the compiled language and another is the interpreted language.
C language is a compiled language, most of script languages such as JavaScript are the interpreted language.

Here are some differences between compiled and interpreted languages.
Computer programming is executed by CPU.
What CPU can interpret are orders of CPU and machine language written by register.
Contrary to this, programs written by programmers are text data that can be comprehended by us humans.
To convert text data program into the machine language (binary data) is called compiling.

Before executing it on computer, you first compile the compiled language.
When you execute program on computer, as it has already been converted to the machine language, it can be executed instantly. This is one characteristic of the language.

As for the interpreted language, upon execution on computer, you convert program into machine language and execute it.
Instead of compiling beforehand, it converts text program into the machine language as it executes one step at a time, the execution speed is slower than the compiled language.

The compiled language, as the language has already been compiled, it processes entered data to its output instantly.
This behavior is the same as unconsciousness.

On the other hand, the interpreted language executes it while interpreting it step by step.
This can be seen as the same behavior of consciousness, which executes each cognitive pattern based on the result of the previous cognitive pattern.

In the compiled language, the language is converted into the machine language that are comprised of 0 and 1 – once it has been compiled, it cannot change the contents of process later.

While in the interpreted language, as it interprets and executes text program as it is, it will know the content of programming and hence can change the content of programming which is comprised of text data.
So, that’s why we were able to change the data “scary” which had been associated with the uncle to the data “kind”.
After the data has been compiled and converted into binary data of 0s and 1s, there is no way of knowing which data is “scary” or “kind” – that is why you cannot change the contents in the compiled language.

Having said that, we can say that the compiled language corresponds to unconsciousness and the interpreted language corresponds to consciousness.


Program of consciousness is comprised of cognitive pattern written in programming and actualized by the interpreted language program which executes one step at a time.
As it is the interpreted language, based on its experience it can change the contents of program.
This is the computer programming of consciousness.

In ROBOmind-Project, as the interpreted language for consciousness, we have invented a new exclusive assembly language called “ROBOmind language”.
Each meaning of words will be written in ROBOmind language.
Consciousness, once it has been entered a new word, it will write its meaning in ROBOmind language.

Now that the system with consciousness can teach and be taught using words with humans.
It can communicate with humans naturally.


Now the difference in the structure of consciousness and unconsciousness is, corresponding to the computer architecture, as for consciousness it is the Neumann style architecture, and as for unconsciousness, it is non-Neumann architecture. We explored this topic in “How can we discover our mind by observing our brain”.



Leave a Reply

Your email address will not be published. Required fields are marked *