- A merge block if it is final, it must be final in all the things it touches. If it is finally excluded, if it cannot be in 1 of the chains, it cannot be in any of the chains. Greg - the name groups are just a hierarchy coming out of the groups of names.
- In Casper - you always need to be thinking about the view and whether a block is final or not in your view.
- In order to validate a merge block you have to take on the transactions of A, and then you can revert back to your own shard.
- Mike given that A is listening and B is sending, who proposes? Either
- Each trust each other on the state of A and B, while they are trying to construct the merge block.
- MIke what does the structure of the merge block look like? Does A have to query B?
- Kent - consists of all the transactions in A and B and the last finalized blocks for each.
- The post states for each get included in the merge block independently.
- Mike - sounding to him like the A's and B's therefore do not need a separate set of validators to handle inter A, B blocks. They get together and then split apart.
- This only works if the set is the union of the 2 - Otherwise it doesn't work. Greg and Kyle agrees. Kyle needs to think more - and he believes it has to include all of A and B.
- In this case, all validators are a validator in the top name
- Michael - We don't want to think of an individual name and an individual entity. Greg - the power set is going to be ridiculously large. there is homomorphism and we are restricting the view by carving out a chunk from either side.
- Still hung up on, how we decide on the name side, the sparse chunk of the powerset we are thinking of, what do the leaves of the tree look like.
- They do need to be defined in advance of wrting contracts. The contracts have to have annotations of which name groups they belong to in advance.
- Greg- name groups are ephemeral - we can change the algorithm to give a principled name grouping for any given contract. You can check if the name groups exist in the chain, if not add it?
- Greg - this is done by the contracts we serve. Problem is the number of validators in the set. There is a lot more fringe than there is interior. a cartel could buy off a section of the fringe.
- You can declare leaf shards ad hoc and everything is built up from referencing these shards. If I write a contract and says it belongs in Shard 1 and someone else does the same thing in another shard. Same name on both.
- How does this work with the asycnroniticyt works - if there are 2 names that are the same in different shards, how does that work? Second contract gets rejected?
Check in with Mike and Kyle: Concerns - What is drawn in Kent's diagram, if you can only deploy contracts into leaf nodes? Looks good. Can we deploy contracts into the other namespaces? If Rev isn't living in one of the leaf nodes? It ought to run in all of them. Greg- it has too, has to live in all shards. Mike - I don't understand how Rev can be in all of them. Only understand how contracts can be in the leaves. Next meeting scheduled this week to continue discussion. |