Symboleo: Towards a Specification Language for Legal Contracts
Sharifi, S., Parvizimosaed, A., Amyot, D., Logrippo, L., Mylopoulos, J. (2020) « Symboleo: Towards a Specification Language for Smart Contracts.» 28th IEEE Int. Requirements Engineering Conf. (RE’20), RE@Next! track, Zurich, Switzerland, September. IEEE CS
Legal contracts specify the terms and conditions (in essence, requirements) that apply to business transactions. Smart contracts are software systems that monitor and control the execution of contracts to ensure compliance. This paper proposes a formal specification language for contracts, called Symboleo, where contracts consist of collections of obligations and powers that define the legal contract’s compliant executions. The formal semantics of Symboleo is based on an extension of an ontology for Law and is described in terms of logical axioms on statecharts that describe the lifetimes of contracts, obligations and powers. Our proposal includes a preliminary evaluation through the specification of a real life-inspired Sale-of-Goods contract, with a prototype execution engine. We envision this language to enable formally verifying contracts to detect requirements-level issues and to generate executable smart contracts (e.g., on blockchain technology).