If Consistency is weakened to eventual, then either you have no defined Consistency (i.e. no Consistency ever) or you have an equation for probability of Consistency. If there exists such an equation, then you have to explain how and the probability of either Availability of Partition tolerance is lost when the probability of Consistency is attained. The onus is on your to justify these claims analytically, including convincing arguments about the game theory. Else you can just put it into the wild and observe (and who knows what will happen).
I don't agree with the red part, it's impossible to have an equation for probability (has anyone ever had it?) because it depends on network topology which is infeasible to measure (it even changes every minute).
Consistency in our case is the probability of a double-spend (and the inability to reverse a record of a completed transaction, which is involved in the same probability), since that is the only consistency that we need. Consistency of topology seems to be irrelevant as a direct metric of any consistency that concerns the goal of the consensus.
Your white paper provides an equation for that probability with examples on page 14.
But afaik, you have not yet characterized how A or P declines as the probability of a double-spend declines. Additionally it is not clear if the equation is proven and one potential path towards validating it is to be able to relate analytically how A and P are affected as that probability changes.
Consistency in Bitcoin is the fact that the objectivity is the longest chain. There only state of inconsistency is the probability of an orphaned chain, which declines over time except if the adversary has greater than 50% of the sustained network proof-of-work hashrate.
Bitcoin has eventual consistency, probability of an orphaned chain has nothing to do with it unless you consider the case of spherical Bitcoin in vacuum.
The probability of a double-spend is given by the probability of a chain being orphaned.
It seems the difference in our thinking is you have not yet formulated a metric of consistency relevant to our application of network consensus (a.k.a. Byzantine fault tolerance and coherence). It is all about the double-spending prevention, and
not the bass.
Availability in Bitcoin is given by even if there are no other active nodes, then sender and/or recipient of the transaction can extended the longest chain and the Consistency remains valid (except for the caveat of the 51% attack).
Availability in Bitcoin is nine nines, ability to extend the longest chain is irrelevant there.
Ah I am a conceptual (abstract) thinker. You are thinking as a low-level network engineer, thus you miss the generative essence of how CAP applies. The availability of the P2P network is really irrelevant conceptually to how CAP relates to the goal of the consensus network— to order transactions in time and prevent (or record and blacklist) double-spends. Thus availability in the relevant conceptual context is the ability to extend the chain AUTONOMOUSLY. If for example in any alternative design the chain could only be extended after tallying a quorum, then availability would require a quorum to be present. The reason that proof-of-work is such an elegant solution to the Byzantine Generals issue, is because the solution is generated by autonomous actors (and thus the entropy of the system is open and not closed).
Until you understand conceptually, you can't begin to understand block chain scaling holistically.
And now I am giving away too much of my expertise for free to a potential competitor to my work. So I will need to stop. I had suggested we work together, because I had been thinking about these issues for a long time and I thought your DAG might offer some unique aspects towards formulating a holistic design for various CAP tradeoff scenarios. But now I need to see more analytical justification of your design before applying any more of my effort. The ball is now in your court. Knowing how people react to my statements, apologies in advance if this seems egotistical to any one, then they need
to read this (meaning it would their ego and not mine, I am just stating objectively what I think...no ego involved).
Partition tolerance is lost in Bitcoin because if there is network partitioning then double-spends can occur on each chain without being detected until these chains are merged. Bitcoin can't tolerate multiple chains, and only allows the longest chain. There is no way to merge these chains, because double-spends can infect other downstream transactions, combined with inputs from legitimate transaction graphs.
Partition tolerance in Bitcoin is pretty high, this is achieved with the help of coinbase maturity parameter, if it was set to zero we would see more transactions not reincluded into the longest chain after a reorg.
Agreed.
So what we can say is Bitcoin fulfills the CAP theorem, except it has theoretically unnecessary caveats in Consistency due to 51% attack and delay due to probability of orphaned chains. The Consistency delay also causes transaction confirmation to be significantly delayed. The goals of my Sync (or BlocSync) block chain overhauled design has been to eliminate those caveats, while relaxing the Consistency and/or Availability during partitioning of the network in order to provide some Partition tolerance.
51% attack is an attack for another case of spherical Bitcoin in vacuum. Ittay Eyal and Emin Gun Sirer
showed that Bitcoin can be successfully attacked even with 33%/25% of hashing power.
I
already showed mathematically how to defeat the selfish mining attack.
PS: Looks like we are NOT on the same page. I suggest to spend one day to come to a common denominator of our points of view and after that continue discussion about tangle and CAP.
My stance (unless something shatters my perspective) is that it is now up to you all to formulate more compelling holistic explanation/characterization of your DAG within the context of the CAP theorem, and also provide analytical models.
I don't think I am being paid nor am I a team member, so therefor I shouldn't be trying to dig into the details of that. I have provided what I believe to be the relevant conceptual framework (you may disagree). And I have work to do on my own block chain scaling technology.
Good luck. I'll check back sometimes on progress.