Okay. Here's our arguments subspace of the system state space. We have the desired vector Omega here, on the vertical axis. The horizontal axis represents all other vectors, all other basis vectors of this subspace. So, there are many vectors here on this hyperplane. Vector S, the initial state of the system, is somewhere here. It's very close to this horizontal axis. The higher dimensionality of the space is the closer to this horizontal axis will be this vector S. Well, let's denote this angle as Alpha. We know that scalar product of S and Omega in this case will be cosine Alpha. This small angle here we'll denote Theta and it is over the sine of Theta. Now, this dot-product, since only one component of S is Omega and other components are double Omega, let's rewrite it like this. It is sum divided by square root of N, sum of all the vectors or the state space, y multiplied by Omega. Only one of these vectors is Omega. So, we have only one term in this sum equal to one, others will be equal to zero. So, all this dot product is one divided by square root of N. Then, as you remember, is very big. So, this sine is going to be very small. For small angles, for small sines, we can estimate this sine as its angle. So, this is approximately the angle Theta. So, we can see that this angle Theta here is going to be very small. We are ready now to perform the iteration. Let's apply Grover's iteration here to this vector S, the initial state of our system. First, we need to amply U omega, which reflects this vector S over the hyperplane orthogonal to Omega because it changes only omega component by minus Omega. So, Omega applied to S we have here. Here's our angle Theta and the same angle we have here. After that, we have to apply operator U_S. Let's recall how it looks like. So U_S is 2S. So, it looks like this or it does. For any vector which is orthogonal to S, U_S of X would be minus X. This vector S, this 2S minus S which is just S. So, it is reflection over this vector S. Now we have angle two Theta. This vector S and this reflection places us here. The angle is again two Theta. So, we have made a small step towards the desired state Omega. The size of this step is angle two Theta. Now, if we repeat this iteration, so we have this value after the first iteration, this vector, which has the angle three Theta to this horizontal hyperplane. Again, we have this three Theta angle here after application of the oracle. With vector S, it would be four Theta. We go here. We have four Theta here, this vector S after this reflection. Each iteration of Grover's algorithm makes us closer to the state Omega while the angle two Theta. Now we can compute how many iterations do we need to get here. Suppose that we have made big T iterations. So, the angle equals to Theta two, plus two Theta multiplied by T, that angle with the horizontal plane. We need it to be, Pie divided by two to get a good probability of measuring Omega. Now, we remember that angle Theta is near one divided by square root of N. So, we have to put it here. We have one divided by square root of N, one plus 2T equals to Pie divided by two. Now we have to solve this equation to get T. Luckily, it does not take an extremely fault. So, we just multiply this by square root of N. Now we can remove this braces. This one goes here, and we divide everything by two. Our four is here. I'm going to forget about this minus one half because it doesn't really changes the number of iterations. So, what we have here is this. This is the number of iterations that we need to get close to Omega, and to measure omega in the quantum case. Behold, this approximately Pie divided by four is approximately, I will say, one. So, it's square root of N instead of N in classical case. So, we have N entries in the phone book. In classical case, we would need an average, this amount of iterations, amount of queries to the phone book. In quantum case, we need only the square root of N, N big. If N big equals to, for example four, then sign Theta would be one square root of four which is one half. That means that Theta equals to Pie divided by six. On this diagram there, we have Omega be divided by six Theta and after one iteration, because Theta plus two Theta, which in this case is Pie divided by two. So, in this case when N equals to four we get into Omega just in one Grover's iteration. If N big equals to 256, for example, we will need something like 12 operations. Let's see it here. So, it's Pie divided by four, multiplied by 16. This four Pie, since Pie is approximately three, this is approximately 12. You can see this now on the simulation of Glover's algorithm. For these parameters when N big is 256, we get to the state Omega in 12 iterations. Very soon we will ask ourselves if we can do better. For those who knew, the spoiler, no we can't. Here on this slide, you can see the implementation of Grover's algorithm on the quantum computer simulator. N big here is four, so we need to only one iteration, one operator, U Omega. Omega here is this, and one application of operator U_S. You can see the implementation of vector U_S here. Finally, we get this value of vector Omega.