I’m currently trying to further understand the FlyClient implementation in ZCash.
I understand the general functionality of FlyClient and how it is implemented in ZCash with additional inclusion of metadata, as described here.
The validity of the chain is proven through the MMR commitment (hashLightClientRoot field in the header), while the transaction inclusion proof is verified through the hashMerkleRoot field in the header and follows the protocol as described here.
My question is the following: As both header fields are at its core built as a merkle tree, has there been any research on yourend/that someone is aware of on the interoperability of MMR commitments and merkle trees with regard to light clients? I couldn’t find any but I guess it could be beneficial for performance if a high number of transactions needs to be verified.
What are your thoughts on that?