title: Is it possible to devise a subtraction algorithm that does not first compare the inputs?
body: <p>Obviously, any competent programming language has built-in subtraction. However, say you needed to implement a custom subtraction algorithm (say, to handle very large numbers). If you are using the borrowing method, you would have to first compare the inputs to determine if the result will be negative, and if so, you switch the order of the subtraction. I am curious if it is possible to write an algorithm that does not need this comparison/operand swapping?</p>
  
  <p>Further, could such an algorithm be more efficient than compare-first, which in the worst case would have to compare every place value?</p>
  
  <p>*I am aware that one could use complements, but this limits the size of permitted inputs (assuming finite representation size).</p>