Bitcoin Orphan blocks - short question about the "time lag" factor and proof-of-work "size"
What is this "time lag" ?


When a miner finds a block, they will broadcast it to the network. As with all real-world networks, there is a latency (“lag time”) for this information to be received by the other nodes in the network. Specifically, there will be some amount of latency between the miner that found the block, and other miners on the network. Even if the latency is small (milliseconds), there is still some chance that another miner will find a block within that “lag time”.


  What is the "size of the proof of work" exactly?


Nodes will follow what is colloquially referred to as the “longest chain”, but in reality they are following the “chain with the most work” (the difference is subtle, but important). Each valid block is equally valid, so for there to be “more proof of work” on one chain is to say that chain is “longer”, and thus the valid chain. 

If two miners find valid blocks at the same block height, it will not be clear which block will become a part of the eventual longest chain, until a miner finds a new block that builds upon one of those two blocks. At that point, the longer chain will become clear, and the network’s nodes will follow it. 


  Above mentioned protocol rules: When exactly are the nodes (or the network) checking for them


The consensus rules are defined by the source code itself, there is no formal specification.

When a node on the network hears about any new transaction or block, it will run a series of checks to determine that transaction/block’s validity. If it is invalid, it is discarded. 

When a miner assembles a block template, they will choose only transactions they have determined to be valid, and carefully craft the block to be valid also. So this is done before they start hashing, otherwise they would be wasting hashpower by creating an invalid block.