What is the purpose of Block classes?

I see that there are BlockCTArray, BlockPTArray, BlockFHETensor classes in the Git repo. The classes don’t seem to have an implementation. I was wondering if what the purpose of these classes will be?

I’m working on a project that uses a series of large matrix multiplications. Since CTArray requires the number of elements in a matrix to be less than or equal to slot_count, I would have to increase slot count to at least the largest matrix dimension squared. With a matrix of size 1024x768, I would need slot_count=2^20. This would use up an extraordinary amount of memory.

I’ve been working on ways to split up matrices into smaller ciphertexts to avoid needing such a high slot count. If this is the intended direction for the Block classes, I’d be happy to contribute.