This soft fork proposal extends the range of numeric operands in Script from -2^31+1 to 2^31-1, to -2^63+1 to 2^63-1. It further expands the result range for arithmetic operations from -2^63 to 2^63-1, to -2^127 to 2^127- 1.
All existing opcodes[1] that interpret stack elements as numbers are upgraded to support 64-bit parameters.
The existing number encoding format[2] and arithmetic semantics[3] from the original Bitcoin implementation are preserved, while enhancing the supported precision.
https://github.com/Christewart/bips/blob/2025-03-17-64bit-pt2/bip-XXXX.mediawiki
The purpose for this BIP is to lay the groundwork for introducing amounts into Script. This document takes no opinion on how this is done.
I've prototyped a few different proposals now introducing amount locks into Script[0][1] and feel like this proposal is stable enough for serious review.
-Chris
[0] - https://delvingbitcoin.org/t/op-inout-amount/549/4?u=chris_stewart_5
[1] - https://delvingbitcoin.org/t/op-inout-amount/549/5?u=chris_stewart_5