Tangle does not foresee bundles


Author
Message
Enis Olgac
E
IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)
Group: Forum Members
Posts: 40, Visits: 1.7K
While I was trying to understand the theory behind tangle, I read the Anatomy of a transaction. To my understanding tangle is using three transaction ids:
  1. hash; Id of the transaction
  2. branchTransaction; Id of first transaction being approved
  3. trunkTransaction; Id of the second transaction being approved
In the same document, a bundle is defined to be an ordered list of transactions. The description suggests that a bundle is implemented as individual transactions linked by trunkTransaction (a chain of transactions). An alternative implementation could have been an array of transactions as a single transaction (a block of transactions). It is also said that "A typical transfer in IOTA is a bundle consisting of 4 transactions", and this causes a problem.
According to whitepaper, tip selection is based on transactions having two degrees of freedom to approve previous transactions. But IOTA's implementation allows only the first transaction of a bundle to comply with this requirement. All other transactions of the bundle have only one degree of freedom, because trunkTransaction is reserved for the linkage within the bundle. Therefore, either IOTA does not reflect tangles requirements for a typical transfer, or tangle's theory is not applicable to a typical transfer in IOTA. Of course another possibility is that the document does not match the reality.
pauldouglas
pauldouglas
Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)Attaching to Tangle (22 reputation)
Group: Forum Members
Posts: 2, Visits: 3
Thanks for your post, Enis.

I believe that we'll go with the fourth option; the tangle whitepaper mentions that you cannot enforce any particular tip selection algorithm, but that the optimum strategy is to do MCMC if you can assume that some significant population of the rest of the network is doing so as well. The primary concern of the two degrees of freedom in edge count is to have equal powers for the 'narrowers' and the 'wideners' of the tangle.

For those who would widen the tangle, it takes N transactions to turn 1 tip into N tips, and for those who would narrow it, N-1 transactions to merge that back into one tip. IOTA still satisfies this equilibrium of powers. If we may explore these powers in unbounded-edge graphs, then it takes N transactions to diverge, and 1 transaction to merge; or if bounded, if the number of transactions required to diverge the graph is M, then the number of transactions required to merge it is proportional to M/(N-1), where N is the number of edges allowed.

So a bundle of N transactions which explicitly approves N+1 unique transactions, but only generates 1 tip. Naively, this is the same as any other operation in the tangle to merge subtangles, but where the desired trunk is already known at the time of bundle creation.

Enis Olgac
E
IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)IOTAn Pending (1.2K reputation)
Group: Forum Members
Posts: 40, Visits: 1.7K
Thanks for the clarification. Please also see Bundles in Tangle.

GO

Merge Selected

Merge into selected topic...



Merge into merge target...



Merge into a specific topic ID...




Reading This Topic

Login

Explore
Messages
Mentions
Search