Skip to main content

Smart Contracts

"A smart contract is an automatable and enforceable agreement. Automatable by computer, although some parts may require human input and control. Enforceable either by legal enforcement of rights and obligations or via tamper-proof execution of computer code." — Smart Contract Templates: foundations, design landscape and research directions, C.D.Clack, V.A.Bakshi and L.Braine. 2016. arXiv:1608.00771. [Link to arXiv repository][BibTeX]

Smart Contracts utilize computer technology to automate an agreement. However, the term "smart contract" is used in different ways according to context: as originally envisaged in the mid 1990s by Szabo [Link], the term "smart contract" embraced automation at many different levels during the lifecycle of an agreement; yet since 2013 it has also been used to describe computer code developed for a scripting functionality provided by some distributed ledger systems (e.g. Ethereum [Link]). Since much of our work is interdisciplinary, and brings together researchers from different groups who use the term "smart contract" in subtly different ways, we use the above (now widely cited) portmanteau definition

Further notes on terminology can be found here

Research interests are listed below and include (inter alia): legal drafting and legal specification languages ("computable contracts"), privacy, semantics and analysis, Smart Derivatives Contracts, Smart Contract Templates, smart contract code and associated system architectures.


Research interests are very broad and include interaction with a large number of other groups. Interests currently include:

  • Smart Contract Technology
    • languages and representations for Smart Contracts
    • privacy aspects of smart contracts and smart contract code
  • Smart Derivatives Contracts
    • Smart Contract Templates
    • Institutional workflow
    • ISDA legal document architacture and workflow
    • ISDA Common Domain Model CDM)
  • Smart legal contracts
    • computable contracts
    • legal specification languages
    • legal drafting languages
    • parameterised contracts
    • analysis (e.g. "what-if" analysis, and analysis of contract (in)consistency and coverage)
    • performance (i.e. the discharging of the rights and obligations defined in the smart legal contract)
    • blockchain-enabled contract negotiation
    • engineering smart financial products
    • semantics of smart legal contracts - to enable (i) validation and (ii) computable contracts
  • Validating smart contract code
    • semantics of smart contract code
    • manual validation: validation cases
    • automatic validation: checking semantic models
  • Regulation of smart contracts, and smart contracts to enable regulation (Compliance by Design)


Smart contracts research at UCL has involved staff and students at UCL and interaction with other researchers and practitioers both in academia and industry. Here are some of the people who have been or are currently engaged with this work (it is an incomplete list that will expand):

  • Lead: Christopher D. Clack
  • Vikram Bakshi
  • Lee Braine
  • Passawis Chaiyapattanaporn
  • Ansar Choudhury
  • John Cummins
  • Simon Fattal
  • Dominic Kloecker
  • Varun Mathur
  • Ciaran McGonagle
  • Hirsh Pithadia
  • Katie Sparks
  • Gabriel Vanca

Academic funding

Our work has been supported by the following academic funding:

  • EPSRC IAA 2017-20 Innovator-in-Residence (IiR), Grant Reference EP/R511638/1, 11-March-2019 to 31-December-2019. "Blockchain-Assisted Computable Contracting - Knowledge Exchange and Initial Prototype Development"
  • UCL-CBT DLT internal project, 22-July-2019 to 22-January-2020, "Next Generation Smart Contracts - Improving Temporal Specificity"

Smart & Computable Contract Research: Project Resources

The following pages are (or will be) provided to support individual research projects:

  • Smart Contract Templates
  • ISDA Master Agreement, CDM and Data Asset Definitions
    • Link to page contributed by Michael Berlingieri (pending)
    • Link to page contributed by Finn Casey Fierro (pending)
  • Controlled Natural Language Design: Ambiguity and Vagueness
    • Link to page contributed by Katie Sparks (pending)
  • Domain Specific Languages for Smart and Computable Contracts
    • Link to page contributed by Passawis Chaiyapattanaporn (pending)
    • Link to page contributed by Ponmile Femi-Sunmaila (pending)
    • Link to page contributed by Dominic Kloecker (pending)
    • Link to page contributed by Yoong Xin (pending)
  • Architectures for Smart Contract Code
    • Link to page contributed by Enes Krashi (pending)

Under Construction:


  • Law
  • Banking
  • Cryptocurrency
  • Blockchain
  • Linguistics
  • Ethereum
  • Other


  • smart derivatives contracts
  • tactical smart contracts
  • supply chain smart contracts
  • trade finance