CatWifCrypto / desheshai-kadena-analysis

2 stars 0 forks source link

Using random regular graphs for chainweb #1

Open larskuhtz opened 7 months ago

larskuhtz commented 7 months ago

https://github.com/CatWifCrypto/desheshai-kadena-analysis/blob/6ceb9e98000b1eb52c60d9ab0247c1488360f070/README.md?plain=1#L171C1-L174C76

This remark is not completely accurate. Here some background on obtaining suitable chainweb graphs:

In fact, asymptotically (i.e. for larger numbers of chains), uniformly picking a random regular graph (for a desired order and degree) almost surely results in a "good" chainweb graph. "Good" here means that the diameter won't be optimal but it would be sufficiently close. (cf. this paper from Bollobás and Vega, more generally, random regular graphs are good expanders)

This is important, because for large chainwebs optimal degree-diameter graphs are not known. Random generation allows to obtain suitable graphs even for very large numbers of chains. (cf. this paper from Bollobás for a method to uniformly generate random regular graphs for small degrees. An implementation of the approach is available here)

Generally, known (constructed) graphs (like the Hoffmann-Singleton) should be preferred, because in addition to a low diameter, they also usually have nice symmetry properties or are even symmetric graphs. However, if such graphs are not available, it is possible to randomly generate a regular graph and check if it meets the desired properties. In the (unlikely) event that it does not meet the requirements one can just regenerate another instance until a suitable graph is found.