In a tournament game, what should a player do if he find that his opponent's position is impossible, which was caused by an earlier illegal move? For example, if a player realises that his opponent has two bishops of the same colour after a certain legal move (and assuming that it is clearly not caused by any pawn promotion), which implies that his opponent has made at least one illegal move earlier (but it was recognised until much later in the game), what should this player do?


If there is a record, can he trace back the illegal move and declare that he wins the game because an illegal move was made earlier?
Even without a record, can he still win the game because he can theoretically prove the existence of at least one illegal move made by his opponent?
Or should the game continue as it is now, even though the position is impossible?
Section 7.5.1 of the FIDE Laws of Chess has the answer:


  7.5.1 An illegal move is completed once the player has pressed his clock. If during a game it is found that an illegal move has been completed, the position immediately before the irregularity shall be reinstated. If the position immediately before the irregularity cannot be determined, the game shall continue from the last identifiable position prior to the irregularity. Articles 4.3 and 4.7 apply to the move replacing the illegal move. The game shall then continue from this reinstated position.


The player found guilty is not penalised for the illegal move, provided their opponent has intended to play a move:


  4.7.1 A player forfeits his right to claim against his opponent’s violation of Articles 4.1 – 4.7 once the player touches a piece with the intention of moving or capturing it.