Formal Reasoning about Financial Systems Workshop

September 1st. Gates 403, Stanford Computer Science



Formal methods is a mature field in computer science with excellent tools, including static program analyzers, fuzzers, formal verification tools, Satisfiability Modulo Theories checkers, and more.

Recently, these techniques have been integrated into the industry by companies including Amazon, Certora, Consensys, Facebook, Imandra, Runtime Verification, and Trails of Bits.

This one-day workshop brings together researchers developing tools for reasoning about financial systems and smart contracts. We are particularly interested in DeFi, an emerging suite of applications for decentralized asset management over blockchain technology. DeFi is becoming a major economic vehicle in modern society. The Ethereum blockchain alone already manages more than 235 billion USD worth of assets. One of the basic principles behind DeFi is that the code is law, and computer programs called smart contracts that run on the blockchain dictate the conditions and the effects of asset transactions. This groundbreaking idea has many desirable benefits that originate from trust-minimizing and immutable aspects of decentralized public blockchains. 

However, vulnerabilities in smart contracts and in their applications may be exploited to steal or deny access to assets managed by them. Mitigation and prevention of such damages are challenging and require new software development and security design methodologies. Hundreds of millions in USD value have already been lost due to vulnerabilities in smart contracts. Therefore, smart contract security is a significant concern for DeFi applications. 


08:30-08:55 Yannis Smaragdakis, Symvalic Analysis: Overcoming State Explosion in Smart Contracts (remote talk) [PDF]

08:55-9:20 Leo Alt, Formally Verifying Ethereum Smart Contracts by Overwhelming Horn Solvers (remote talk) [PDF]

09:20-9:45 Gustavo Grieco, Digging Deeper into Smart Contracts with Echidna [PDF]

09:45-10:00 Break

10:00-10:25 Martin Neuhäußer, Challenges in Smart Contract Verification [PDF]

10:25-10:50 John Toman, Pointer Analysis of Bytecode Programs for Effective Formal Verification of Smart Contracts

10:50-11:15 Grigore Rosu, From fast execution to formal verification of smart contracts using the K Framework [PDF]

11:15-11:40 Dimitar Bounov, Property Specification and Instrumentation with Scribble [PDF]

11:40-12:40 Lunch


12:40-1:05 Arie Gurfinkel, Compositional Verification of Smart Contracts Through Communication Abstraction [PDF]

1:05-1:30 Xiaodong Lin, SODA: A Generic Online Detection Framework for Smart Contracts [PDF]

1:30-1:45 Coffee Break

1:45-2:10 Yoni Zohar, Int-Blasting [PDF]

2:10-2:35 Jakob Rath, PolySAT: A Word-Level Solver For Large Bitvectors   [PDF]

2:35 – 3:00 Sam Blackshear, Move: A Cross-Platform Language for Safe Programming with Assets

3:00 – 3:15 Break

3:15-3:40 Marco Eilers, Rich Specifications for Ethereum Smart Contract Verification [PDF]

3:40-4:05 George Pîrlea, Practical Smart Contract Shardingwith Ownership and Commutativity Analysis [PDF]

4:05 – 4:30  Chaofan Shou, Chainsaw: Breaking Blockchains via Coverage-Guided Fuzzing [PDF}

4:30 Closing


Clark Barrett, Stanford

Orna Grumberg, Technion

Mooly Sagiv, Certora and Tel Aviv University

Registration Closed

We have reached capacity for this summit.

Thank you to our sponsor