| ¬(¬ firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i)).first ∧ firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i)) ≠ []), i < 0 ⊦ j = 0, bits2int(firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i))) = bits2uint(firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i))) |
i < 0, firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i)).first ⊦ j = 0, bits2int(firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i))) = bits2uint(firstn(# int2bits(i), mklist(false, i→n(j)) + int2bits(i)))
Used simplifier rules: ⊦ int2bits(j) ≠ [];% ⊦ # bits = 0 ↔ bits = [];% ⊦ firstn(n, bits) = [] ↔ n = 0;