In the last lecture I told you that the source engine was never implemented. Why is that? Why our modern computers are not implemented as numerous source engines? Why we choose to implement our computers in a different way? Here on the table I have two different computational systems, this and this. This you can still buy in a general store and this is not produced anymore. Why? It can store the same amount or approximately the same amount of information and I believe that this can store it better. Doesn't need batteries or light or anything like this, and you just to keep it from children. So, why humanity prefers this over this? It appears that computational processes are not all the same. They have some characteristics that differ from process to process, and some of these characteristics matter more than others. The most important characteristics are probably these. First, the information capacity of the system. How much states it has and how much information it can store. So, the bigger is the information capacity, the more significant tasks we can solve. Second is speed or the frequency of state switching. So, the faster we change the states, the faster we compute and the faster we obtain the result. The third but not the last and the least is universality. So, which tasks can be solved with a computational system? What repertoire does it have? Let's talk about this last one, the universality. I understand why I advise you to read some popular science books. For example, in the book of David Deutsch, The Beginning of Infinity, there was an example of a computational device which illustrates this notion very well. I mentioned a shepherd which doesn't know how to count. The main function of a shepherd is to maintain the same amount of sheep in the herd during the day. So, he invents very particular computing device to maintain this number of sheep. He uses a rope like this one. So, each morning when sheep leaves the stall, he unwinds the rope. For example, one piece of rope per sheep equal to the length of his hand. So, this is one sheep, this is the second sheep, et cetera. When the sheep return in the evening, he winds it back. So, here he takes the length of the rope according to his hand per each sheep and he winds up this piece of rope. At the end of this process if he has some rope left, he understands that he has to go and to search for the lost sheep. Now, the word sheep is very good choice for this example because it doesn't have a plural form. So, actually that means that in this case when a shepherd goes for his search for the lost sheep, he actually doesn't know how many sheep are lost. Maybe one or maybe more. Still this computing device, this computing system which contains two parts, the rope and the shepherd, it works and it even has some advantages. The main advantage is that the rope length is continuous. So, if the number of sheep in the herd grow dramatically and this length of the rope is not enough, the shepherd can choose to use the shorter pieces of rope per sheep when he counts them. Here he has no limit in doing this in the shortening the piece of rope per each sheep. The system which have some parameter which is continuous, I usually represent the analogous computing systems, and they have two main drawbacks which obscure this advantage of continuous parameter. These two drawbacks are, the first, error correction. Each time shepherd unwinds the rope, he makes a small mistake and it's a big number of sheep, these mistakes accumulate and they can produce one sheep either missing or extra erroneous sheep. Hence, there is no way the shepherd can fix his drawback to fix this error. The second drawback is universality. This rope for shepherd can maintain the same amount of sheep but he cannot subtract numbers, add numbers, multiply them. He can do better. He can make nodes on this rope, and now it should not represent one sheep. He loses the continuous parameter, the length of the rope, he digitizes it. Now, here all these drawbacks fade away because he does not have anymore of this errors. The small errors which accumulate and with this rope he can do more. He can add numbers, subtract numbers, multiply numbers and do many other things. This is actually the quality of digital systems. They have bigger universality. They have larger repertoires. We are going to discuss this notion of universality more formally later, but now we can get back to this two first characteristics we have not yet discussed. Now, if we put away universality, we have only two main characteristics left and these are the number of states which the system can accommodate and the speed of the state is switching. How fast the system can switch the states. The bureaus that both these characteristics depend on the base element that we choose to build our computational system on. If we take a look at the computer generations, we can see the evolution of these base element. For some reason engineers try to make this base element as small as possible, from vacuum tubes to transistors, then to even smaller transistors on an integrated circuits, et cetera. Why is that? Why we try to make the base element of computational process as small as possible? Well, the answer is obvious and there are three reasons. First, with smaller elements, we can pack them all in the same volume. So, we can have the bigger number of states in the same volume. The second, the smaller elements have smaller inertia. This electronic devices, this inertia is called inductance and the smaller, is conductor of the smaller inductance it has and the faster it can change the states, so the faster we can compute. Again, with smaller conductors, with smaller inductances, we can dissipate less energy which is also an important issue. So, now computer devices reach this limit, then nanometers base elements they're p-n junction and this is only 200 times bigger than a hydrogen atom. This means that this miniature organization has a limit. We can't implement the p-n junction on one atom or molecular. So, we have to choose something else if you want to grow our computer power, something else than a p-n junction, something else than transistor. This something else has to be as small as atom or even smaller, but at least scales we can disregard this quantum effects, which means that new generation computers must employ their quantum effects. It appears that the next generation of computers has no way but to be quantum.