In Rich Hickey's talk ["The Value of Values"](http://www.youtube.com/watch?v=-6BsiVyC1kM), he contends that to have true information, we should not replace old facts with new facts, but keep both with a timestamp.

For instance, if a user changes their email address, we shouldn't overwrite the old address with a new one, but instead remember "the address was user5@example.com as of [timestamp], and then it was user5new@example.com as of [timestamp]".

This makes sense as a principle of data integrity, and I believe it's the principle upon which Datomic is built. However, if that's true, **how does Datomic handle mistakes?** For example, if the user mistyped their email address, we don't want to report that it used to be "luser5@example.com"; we want to forget that incorrect info.

How is this done?