refl_trans_gen r: reflexive transitive closure of r
refl_gen r: reflexive closure of r
trans_gen r: transitive closure of r