#238 Dr. Amrit Kumar & Dr. Ilya Sergey: Scilla – A Formal Verification Oriented Contract Language
Channel: Epicenter Podcast
Date: 2018-06-05

Support the show, consider donating: 
BTC: 1CD83r9EzFinDNWwmRW4ssgCbhsM5bxXwg (https://epicenter.tv/tipbtc)
BCC: 1M4dvWxjL5N9WniNtatKtxW7RcGV73TQTd (http://epicenter.tv/tipbch)
ETH: 0x8cdb49ca5103Ce06717C4daBBFD4857183f50935 (https://epicenter.tv/tipeth)

With the rise of smart contract technology, we've become acutely aware of the need for smart contract code to accurately reflect the intentions of its author; and for the code to have certain (safe) behaviors in all circumstances. Creating the languages and software tools to enable ordinary developers to write safe contracts has become an intense research endeavor in the cryptocurrency space.

Scilla is a Turing incomplete intermediate level language; inspired from the paradigms of functional programming and formal verification; that makes it easy for smart contract developers to automatically prove statements about smart contract behavior. For example, Scilla could allow a future multi-signature smart contract author to mathematically prove that funds in that contract would always be retrievable by certain addresses (and never get stuck like the Parity incident). The ability to mathematically prove such safety properties of the smart contract has the potential to be an enabling invention prior to widescale use of this technology.

In this episode, we are joined by Dr. Amrit Kumar and Dr. Ilya Sergey to discuss Scilla, the smart contract language of the upcoming Zilliqa blockchain. In a previous episode, we've already covered the vision and technical approach of Zilliqa to solve the transaction scalability problem of permissionless blockchains. This episode focuses specifically on their smart contract language development efforts.

Topics discussed in this episode:
- Updated on Zilliqa's progress since our last episode
- The technology of mechanised proofs
- Dr. Ilya Serger's effort to mechanically prove safety properties of a blockchain consensus network
- Aims of the Scilla language
- Future capabilities enabled by the Scilla language
- Developer experience and perspective using formal verification tools
- How Scilla compares to Michelson, Tezos' approach to smart contract languages with a similar end goal
- Current state of development of Scilla, and next milestones

Links mentioned in this episode: 
- Our previous episode on the Zilliqa platform: https://www.youtube.com/watch?v=Dppk6n9LHBk
- Ilya Sergey's paper on mechanising blockchain consensus: http://ilyasergey.net/papers/toychain-accepted.pdf
- Scilla whitepaper: https://arxiv.org/abs/1801.00687
- Michelson, Tezos platform's smart contract language: https://www.michelson-lang.com/
- Zilliqa blog for updates on platform development: https://blog.zilliqa.com/
- Coq, a formal proof management system: https://coq.inria.fr/

Sponsors: 
- Gnosis X: Build a revolutionary prediction market dApp on Gnosis & win up to $100,000 in GNO tokens - http://epicenter.tv/gnosisx

This episode is also available on :
- Epicenter.tv: https://epicenter.tv/238
- YouTube: http://youtu.be/tPqnK2iNGZo
- Souncloud: http://soundcloud.com/epicenterbitcoin/eb-238

Watch or listen, Epicenter is available wherever you get your podcasts.

Epicenter is hosted by Brian Fabian Crain, Sébastien Couture & Meher Roy.