Join Nostr
2026-06-10 17:12:35 UTC
in reply to

brunswick on Nostr: Right now bitcoin arithmetic uses fixed point arithmetic so that decimals are never ...

Right now bitcoin arithmetic uses fixed point arithmetic so that decimals are never rounded up or down, which would destroy or add bitcoin. The base unit is sats, not bitcoin. The unit of bitcoin is a convenience abstraction, not sats. The base layer does not work in fractions for a good reason. It is fine to round up and down on layer 2, like cashu or lightning, because eventually it will settle in whole-sats. To "fractionalize" bitcoin onchain could be argued as an expansion of the supply, only if you continue to use fixed point arithmetic. Honestly at this point, we need to dive into the details of how bitcoin calculates balances and the rationale behind choosing 21 with 14 zeroes as the base-unit. It has to do with how javascript performs math, IEEE standards, and signed v.s. unsigned addition. Until you understand those tradeoffs, you both are probably wasting your breath on this topic. It's better to just accept 21x10^14 sats because it was chosen for a very good reason. A simple alternative could be to double the size of the integers/floats, but then to avoid rounding-inflation (which is a real hack) you'd need to increase the supply by about 18.4x10^18, and at this point the sat can be divided to ridiculously small amounts and it increases the transactiom size by a nontrivial amount.