Home
Scholarly Works
A Formal Language for Writing Contracts
Conference

A Formal Language for Writing Contracts

Abstract

A contract is an artifact that records an agreement made by the parties of the contract. Although contracts are considered to be legally binding and can be very complex, they are usually expressed in an informal language that does not have a precise semantics. As a result, it is often not clear what a contract is intended to say. This is particularly true for contracts, like financial derivatives, that express agreements that depend on certain things that can be observed over time such as actions taken of the parties, events that happen, and values (like a stock price) that fluctuate with respect to time. As the complexity of the world and human interaction grows, contracts are naturally becoming more complex. Continuing to write complex contracts in natural language is not sustainable if we want the contracts to be understandable and analyzable. A better approach is to write contracts in a formal language with a precise semantics. Contracts expressed in such a language have a mathematically precise meaning and can be manipulated by software. The formal language thus provides a basis for integrating formal methods into contracts. This paper outlines a formal language with a precise semantics for expressing general contracts that may depend on temporally based conditions. We argue that the language is more effective for writing and analyzing contracts than previously proposed formal contract languages.

Authors

Farmer WM; Hu Q

Pagination

pp. 134-141

Publisher

Institute of Electrical and Electronics Engineers (IEEE)

Publication Date

July 1, 2016

DOI

10.1109/iri.2016.25

Name of conference

2016 IEEE 17th International Conference on Information Reuse and Integration (IRI)
View published work (Non-McMaster Users)

Contact the Experts team