Smart Contracts Terminology

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 following definitions:

  • Smart Contract.
    "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].
  • Smart Contract Code,
    Where computer code (such as a script developed for a distributed ledger) is used directly to automate some aspect of an agreement between counterparties (such that the counterparties of the agreement associated with that script can be identified), we call it "smart contract code"
  • Technical Smart Contract.
    Where such computer code is used indirectly in automating some aspect of agreements (where the code is not solely associated with one particular agreement), we currently call it a "technical smart contract" or sometimes a "tactical smart contract"
  • Smart Legal Contract.
    Where necessary to avoid ambiguity, we use the term "smart legal contract" to refer to a legal agreement that is the subject of automation (e.g. whose performance is automated through the running of smart contract code).
  • Computable Contract.
    A "computable contract" is a legal contract that is understandable by both humans and computers.


Christopher D. Clack
Department of Computer Science
Gower Street