Post
Topic
Board Development & Technical Discussion
Merits 1 from 1 user
Re: TLA+ for the design of BitCoin
by
jungly
on 13/10/2023, 10:57:34 UTC
⭐ Merited by NotATether (1)
Started work on specifying layer two bitcoin contracts using TLA+. The first goal is of course LN. However, writing LN contracts first requires specifying a bitcoin transactions module.

Repo: https://github.com/pool2win/bitcoin-contracts-tlaplus
BitcoinTransactions module: https://github.com/pool2win/bitcoin-contracts-tlaplus/blob/main/BitcoinTransactions.pdf
LNContracts module (soon to start using BitcoinTransactions module): https://github.com/pool2win/bitcoin-contracts-tlaplus/blob/main/LNContracts.pdf

I'll keep you posted on the progress. We already have the commitment transactions speced and next step is to spec the HTLC outputs in the commitment transactions.

I recently learned about TLA+ and are asking myself if Satoshi used this for the design of concurrent and distributed systems like BitCoin?

http://lamport.azurewebsites.net/tla/tla.html

http://lamport.azurewebsites.net/tla/hyperbook.html

http://research.microsoft.com/en-us/um/people/lamport/pubs/lamport-spec-tla-plus.pdf