Equivalence between flow graphs

Almost bisimulation is almost the equivalence we would like between graphs. For example:
=       =
Unfortunately, it is too coarse, and fails to be a congruence:
=      
A simulation between G1 and G2 is an almost simulation which is a function on incoming edges of G1.