This work is the summary of the blog post: https://blog.subspace.network/combining-kzg-and-erasure-coding-fc903dc78f1a

Stacking data into a matrix instead of simply concatenating records mitigate a flat scheme’s size and complexity growth. There are two methods for this:

Stacked encode-commit: apply coding and commitment in the same direction

Stacked encode-commit.webp

Stacked with crosswise encode-commit: choose coding and commitment orthogonal

Stacked with crosswise encode-commit.webp

"Stacked encode-commit" method focuses on ensuring correctness through a structured approach of commitment to the same polynomials used for erasure coding, leading to a straightforward way of proving data integrity. However, it has higher storage and proof complexity overhead.

"Stacked with crosswise encode-commit" method introduces flexibility and potentially more efficient verification through the use of homomorphic properties but at the cost of a less direct method for proving piece inclusion and the correctness of erasure coding.

Existing Constructions

1D: Erasure Coding Proof system has only one direction for both encoding and commitment

1.5D: In this method, encode in one direction and commit in the other

2D: This scheme encodes in two directions and commits in one. Ethereum Danksharding