I have finished reading the bitcoin developer guide but still confused. Like you are a head first miner, and received a block inventory (broadcasted by its inventor), then you would reply a getheader to the peer, and he would response a sequence of headers. What if you find that sequence cannot match your own block chain, and judge whether the peer or yourself is wrong (by which i mean not on the longest chain)?