Semantics of Software Versioning ~(tilde) & ^(caret)

Given a version number MAJOR.MINOR.PATCH, increment the: