CPC G06Q 20/3827 (2013.01) [G06Q 20/065 (2013.01); G06Q 20/38215 (2013.01); G06Q 20/3825 (2013.01)] | 16 Claims |
1. A transaction system that includes a plurality of computing nodes that are mutually interconnected via a data communication network to exchange encrypted data representative of consideration therebetween, wherein, when in operation, the transaction system employs a blockchain whose entries are recorded in a ledger, wherein a directed acyclic graph, DAG, is utilized for defining relationships between blocks of the blockchain, wherein:
(a) the ledger is implemented as a distributed ledger that stores references to a start and an end of the directed acyclic graph (DAG), as well as references to one or more smart contracts employed in operation of the transaction system, wherein the one or more smart contracts define the consideration that is to be exchanged in response to provision of proof of completion of work;
(b) the directed acyclic graph (DAG), comprises a plurality of proposed solutions to problems posed in the one or more smart contracts, wherein each node in the directed acyclic graph (DAG) includes one solution of the plurality of proposed solutions;
(c) each of the one or more smart contracts includes machine-readable elements including a data specification, an initial mining algorithm, an objective function for scoring the plurality of proposed solutions-including a test-set generator to generate a unique and random test set for each of the proposed solutions, wherein the system is configured to publish the test set at a block time greater than the block time for publication of the proposed solutions in the directed acyclic graph by initializing a pseudo-random number generator that selects a subset of data for evaluation of the proposed solutions;
(d) the transaction system operates to cause the directed acyclic graph (DAG) to store temporary data and/or extended algorithm code used during an execution of a given transaction, wherein the transaction system is configured to remove temporary data and/or extended algorithm code stored in the directed acyclic graph (DAG) once the execution of the given transaction is complete, and further wherein the temporary data and/or extended algorithm code stored in the directed acyclic graph (DAG) is modified in response to new solutions arising during operation of the transaction system,
wherein the directed acyclic graph (DAG) further includes parts of the initial mining algorithm that are added after machine-readable elements of a given smart contract are defined and stored in the blockchain, such that the transaction system allows participants of the given transaction to make changes in the given smart contract during the execution of the given transaction,
wherein the directed acyclic graph (DAG) is configured to grow between two consecutive blocks as the number of solutions to the problem posed in smart contract increase,
wherein the objective function is configured to specify a performance level in form of a score beyond which proposed solutions are sub-optimal,
wherein the transaction system is configured to terminate computing of sub-optimal proposed solutions and to terminate a block-time for a block based on an indication given by the end of the directed acyclic graph (DAG), when an optimized solution is achieved or when an optimized solution is not required by a transacting party associated with a computing node.
|