If you're interested in a short introduction to Hashgraphs, you should check out this presentation:
https://www.youtube.com/watch?v=rhHfjOqlUv4The guy seems to really know what he's talking about. Just look at his list of publications:
http://leemon.com/papers/pubsTopic.html.
However, there's one thing that appears like an issue to me. An that is the importance of the number n of all the nodes, which is a fundamental variable in the calculations done by the algorithm.
Do all nodes need to be online for system to function? Number of current nodes?
Over 2/3 of the nodes need to be online for consensus. If fewer are online, the transactions are still communicated to everyone online very quickly, and everyone will immediately know for certain that those transactions are guaranteed to be part of the immutable ledger. They just won't know the consensus order until more than 2/3 come online.
Especially in a non-permissioned system, the number of nodes will vary considerably over time. How will n be determined in such a system so that it not only allows for communicating existing transactions but also for consensus on new ones?
It's not easy to determine (or even estimate) the number of nodes in a p2p nework that are online at a given time. And even if you could guess that number, what would be the effect of a highly varying n on the hashgraph itself? Or would you first need to reach consensus about the size of the community?
This is what Leemon seems to imply and according to him, this would work out nicely (
https://www.youtube.com/watch?v=NI6sQHfIPbk, starting from 29.15). But isn't that rather circular reasoning? Or maybe you could just include the fact that a node isn't reachable anymore in your gossip. If more than 2/3 of the nodes gossips that node x is down, n would be reduced by 1 by all nodes as per the consensus achieved by them.