System and method for generating and performing a smart contract
AssigneeThomson Reuters Enterprise Centre GmbH
InventorsJoel M. Hron, II, Nicholas E. Vandivere, Michael B. Kuykendall
Life of this patent
Estimating the term…
Abstract
A semantic parser can process natural language of a traditional contract to generate variables and rules which can be implemented in a smart contract. The smart contract can be provided to a distributed ledger, such as a blockchain network, to execute the smart contract. Execution of the smart contract can be documented in the distributed ledger and in association with the smart contract.
Claims20
A system for converting a natural language contract into a computer-executable smart contract, the system comprising:
- a hardware processor;
- and
- a memory storing instructions that, when executed by the hardware processor, cause the hardware processor to:
- parse a natural language text to generate a parsed variable and a parsed instruction code based on a semantic content included in the natural language text;
- generate a data object and a new instruction code based on one of the parsed variable and the parsed instruction code;
- nest the data object within a subject data object, the subject data object comprising a plurality of corresponding data objects each comprising a related parsed variable of the natural language text;
- generate a smart contract comprising the parsed variable, the parsed instruction code, and the one of the new variable and new instruction code, the smart contract structured in a sequentially ordered manner for machine execution based on the subject data object comprising the nested data object;
- receive concurrently occurring data from a plurality of data producing sources and corresponding to an event associated with the smart contract, each of the data producing sources transmitting a stream of operational data to a recorder;
- generate a first blockchain wherein each block of the first blockchain comprises a group of concurrently occurring data from the plurality of data producing sources;
- generate a block in a second blockchain comprising a new event record comprising concurrently occurring data obtained from a block of the first blockchain corresponding to a date variable of the smart contract and an output of the smart contract based on processing the concurrently occurring data based on the smart contract, the output comprising an internal state change of the smart contract in relation to the obtained concurrently occurring data;
- and
- update the smart contract with the internal state change based on the obtained concurrently occurring data.
A non-transitory computer readable medium which, when executed by one or more processors, causes the one or more processors to:
- parse a natural language text to generate a parsed variable and a parsed instruction code based on a semantic content included in the natural language text;
- generate a data object and a new instruction code based on one of the parsed variable and the parsed instruction code;
- nest the data object within a subject data object, the subject data object comprising a plurality of corresponding data objects each comprising a related parsed variable of the natural language text;
- generate a smart contract comprising the parsed variable, the parsed instruction code, and the one of the new variable and new instruction code, the smart contract structured in a sequentially ordered manner for machine execution based on the subject data object comprising the nested data object;
- receive concurrently occurring data from a plurality of data producing sources and corresponding to an event associated with the smart contract, each of the data producing sources transmitting a stream of operational data to a recorder;
- generate a first blockchain wherein each block of the first blockchain comprises a group of concurrently occurring data from the plurality of data producing sources;
- generate a block in a second blockchain comprising a new event record comprising concurrently occurring data obtained from a block of the first blockchain corresponding to a date variable of the smart contract and an output of the smart contract based on processing the concurrently occurring data based on the smart contract, the output comprising an internal state change of the smart contract in relation to the obtained concurrently occurring data;
- and
- update the smart contract with the internal state change based on the obtained concurrently occurring data.
A method for converting a natural language contract into a computer-executable smart contract, the method comprising:
- parsing a natural language text to generate a parsed variable and a parsed instruction code based on a semantic content included in the natural language text;
- generating a data object and a new instruction code based on one of the parsed variable and the parsed instruction code;
- nesting the data object within a subject data object, the subject data object comprising a plurality of corresponding data objects each comprising a related parsed variable of the natural language text;
- generating a smart contract comprising the parsed variable, the parsed instruction code, and the one of the new variable and new instruction code, the smart contract structured a sequentially ordered manner for machine execution based on the subject data object comprising the nested data object;
- receiving concurrently occurring data from a plurality of data producing sources and corresponding to an event associated with the smart contract, each of the data producing sources transmitting a stream of operational data to a recorder;
- generate a first blockchain wherein each block of the first blockchain comprises a group of concurrently occurring data from the plurality of data producing sources;
- generating a second block in a blockchain comprising a new event record comprising concurrently occurring data obtained from a block of the first blockchain corresponding to a date variable of the smart contract and an output of the smart contract based on processing the concurrently occurring data based on the smart contract, the output comprising an internal state change of the smart contract in relation to the obtained concurrently occurring data;
- and
- updating the smart contract with the internal state change based on the obtained concurrently occurring data.
Dependencies are inferred from the claim text.