| bitsinvert(int2bits(j)) = boolvar + bits ∧ bitsinvert(int2bits(j)) ≠ [], 0 ≤ j ⊦ boolvar |
int2bits(j) = true ' + bitsinvert(bits), 0 < j ⊦ j = 0
Used simplifier rules: int2bits-not-empty: ⊦ int2bits(j) ≠ [];%int2bits-truein: ⊦ true ∈ int2bits(j) ↔ j ≠ 0;% ⊦ i ≠ j → (i ≤ j ↔ i < j);% ⊦ boolvar ' + bits = bits0 → boolvar ∈ bits0; (forward)% ⊦ bitsinvert(bits) = [] ↔ bits = [];% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;%⊦ bitsinvert(bits) = false ' + bits0 ↔ bits = true ' + bitsinvert(bits0);% ⊦ boolvar + bits = boolvar ' + bits;