| ⊦ (i0 + 1) >> 0 = i0 + 1 |
⊦ i >> j = bits2int(sublist(0, # int2bits(i), mklist(int2bits(i).first, i→n(j)) + int2bits(i)))
Used simplifier rules: ⊦ int2bits(j).first ↔ j < 0;% ⊦ i + (* j) < (* j0) ↔ i < j0 - j;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i + j = j + i;% ⊦ mklist(boolvar, 0) = [];% ⊦ [] + bits = bits;% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ sublist(0, # bits, bits) = bits;% ⊦ bits2int(int2bits(i)) = i;% ⊦ i + j = i + i0 ↔ j = i0; Used terms: 0, i0 + 1