Honestly, I am going to make a guess.
'a' is the name of table generated through the inner query. Look closely, 'a' is defined after the parentheses close of inner query.
1,2,3 are no defined. But there refer to columns 1,2 and 3. It wasn't covered earlier in the chapter. I learnt about it by just playing around with the code.