endIndex</code> that is the successor of its <code>startIndex</code>; and an empty
range has <code>startIndex == endIndex</code>.</p>

<p>Axiom: for any <code>Range</code> <code>r</code>, <code>r[i] == i</code>.</p>

<p>Therefore, if <code>Element</code> has a maximal value, it can serve as an
<code>endIndex</code>, but can never be contained in a <code>Range&lt;Element&gt;</code>.</p>

<p>It also follows from the axiom above that <code>(-99..&lt;100)[0] == 0</code>.
To prevent confusion (because some expec