| # int2bytes(bytes2int(bytes)) < # bytes, # int2bytes(bytes2int(bytes)) < # fillsgn(# bytes, int2bytes(bytes2int(bytes))), # int2bytes(bytes2int(bytes)) < 2, 2 < # bytes, # bytes ≤ # fillsgn(# bytes, int2bytes(bytes2int(bytes))), 2 < # fillsgn(# bytes, int2bytes(bytes2int(bytes))), # int2bytes(bytes2int(bytes)) + 1 < # bytes, # int2bytes(bytes2int(bytes)) + 1 < # fillsgn(# bytes, int2bytes(bytes2int(bytes))) ⊦ fillsgn(# bytes, int2bytes(bytes2int(bytes))) = [], bytes = [], fillsgn(2, int2bytes(bytes2int(bytes))) = bytes ↔ int2bytes(bytes2int(bytes)) = bytes |
# int2bytes(bytes2int(bytes)) < # bytes, # int2bytes(bytes2int(bytes)) < # fillsgn(# bytes, int2bytes(bytes2int(bytes))), # int2bytes(bytes2int(bytes)) < 2, 2 < # bytes, # bytes ≤ # fillsgn(# bytes, int2bytes(bytes2int(bytes))), 2 < # fillsgn(# bytes, int2bytes(bytes2int(bytes))), # int2bytes(bytes2int(bytes)) + 1 < # bytes, # int2bytes(bytes2int(bytes)) + 1 < # fillsgn(# bytes, int2bytes(bytes2int(bytes))) ⊦ int2bytes(bytes2int(bytes)) = bytes, fillsgn(# bytes, int2bytes(bytes2int(bytes))) = [], bytes = [], fillsgn(2, int2bytes(bytes2int(bytes))) = bytes ↔ int2bytes(bytes2int(bytes)) = bytes
Used simplifier rules: ⊦ m < n → n ≠ 0; (forward)% ⊦ m < n ∧ n ≤ n0 → m < n0; (forward)% ⊦ n < n0 ∧ n0 < n1 → n +1 < n1; (forward)% ⊦ n < n0 ∧ n0 < n1 → n < n1; (forward) Used formulas: int2bytes(bytes2int(bytes)) = bytes