cpp/experimental/ranges/iterator/WeaklyIncrementable

The concept specifies the requirements on a type that can be incremented (with the pre- and post-increment operators). The increment operations need not be equality-preserving, and the type need not be.

Let be an object of type. is said to be incrementable if it is in the domain of both pre- and post-increment. is satisfied only if:
 * and have the same domain;
 * If is incrementable, then:
 * and both advance  to the next element; and
 * refers to the same object as.