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