Simulate: add SimValueKey

The class treat f and ~f symmetrically, that is, SimValueKey(f) ==
SimValueKey(~f)