Now think of counting something else, namely lines in a space of dimension n over the field of q elements. There are q^n choices for a point in the space. q^n-1 if you want it to be a nonzero vector. But there are q-1 of them along that line, so there are (q^n-1)/(q-1)=1+q+...+q^(n-1) lines in n dimensional q space. If you set q=1, you just get n.
Let's do something with this now. Take the flag of F^n describing points on lines inside planes.... and so on. How many points are there in this flag when F is of size q? (This gives a non-stupid way to work with a field of size 1.) Well we first pick a line L in F^n, then we pick a line in F^n/L and keep going. This will be nq for the first step [n-1]q for the next step and so on. That means it is the q-factorial, where you just replace each number by its q deformed self.
What's cool about this is when we want to do manifolds instead over R or C instead, we can do the same trick. Of course now instead of getting numbers of points we are going to get the number of k-cells in the manifold. For the flag manifold of C^4 we have 4! q version which is
1 + 3q + 5q2 + 6q3 + 5q4 + 3q5 + q6That tells us there are 1 0-cells, 3 complex dimension 1-cells, 5 complex dimension 2-cells and so on. This tells us the chain complex but not the differentials. However in this case the differentials have to be 0 because there are no odd real dimensional cells. There are a bunch of holes in the chain complex. Now we know the complex and differentials so we can just read off homology from the coefficients of the polynomial. For example, the sixth homology group would just be from reading the q^3 coefficient 6. Therefore the answer is Z^6 to describe combinations of those 6 6-cells. 6 6-cells try that again. Of course we see the symmetry between coefficients as is required by Poincare. We just calculated the homologies without having any idea what those cells looked like thanks to the commonalities between projective geometry over finite fields and complex numbers.