I'm confusing with the S^S. Does it mean S*S in set theory? I need a detailed explain.
S^S is not S*S.
S^S is the set of all functions from S to S. S^(S\cup\{\phi\}) is the set of all functions from S\cup{\phi} to S.
See https://en.wikipedia.org/wiki/Power_set#Representing_subsets_as_functions .
To me, a genesis block is an invalid block which maps the invalid state \phi to a valid state. The valid blocks are blocks whose domains are restricted to the valid states S. Correct me if my understanding is wrong.
(In any case, I believe you can safely skip this part to understand the later discussions.)