One thing special in Libra/Virgo is that it supports many customized gates, particularly:
- a gate that sums 2^L values together.
- an expsum gate that computes the bit composition of 2^L values.
These gates have the potential to reduce the amount of computation---adding 2^L values together with the 2-input, 1-output addition gates would take about 2^{L}-1 gates and L layers.
Reducing the number of layers would have multiple benefits: (1) cut the rounds, so fewer sumchecks, fewer poly-commits and (2) in general fewer gates, so smaller FFT (in Virgo).