I have some questions about LibraBFT v2.0, I am not sure if I understand correctly?
In the safety module, it says “a block becomes committed when it becomes the head of a contiguous 3-chain (three descendants with contiguous rounds)” How to understand “the head of a contiguous 3-chain”? If there is a chain like，B1 <- QC1 <- B2 <-QC2 <-B3 <- TC <- B4 <-QC4 <-B5 <-QC5 <-B6 <- QC6
1⃣️ Can B1 be committed? If can, it is committed with the form of QC6 ?
2⃣️ Should B4 contains QC2?
3⃣️Why LibraBFT v2.0 abandoned the VRF in leader selection?
4⃣️About the forking described in the paper, why a leader can propose a block on the basis of the previous two-block, but not limited to the latest block (with QC)? The paper says forking has no impact on safety. But will forking comprise the liveness?
Thanks for your attention!