A class or pointer type
X
meets the requirements of a bidirectional iterator if,
in addition to meeting the Cpp17ForwardIterator requirements,
the following expressions are valid as shown in Table 88.
Table 88: Cpp17BidirectionalIterator requirements (in addition to Cpp17ForwardIterator) [tab:bidirectionaliterator]