Hi Jim, I build the matrix in a way that results in coefficients matching Linux RAID for the first two rows, and at the same time gives the guarantee that all the square submatrices are not singular, resulting in a MDS code. I start forming a Cauchy matrix setting each element to 1/(xi+yj) where all xi and yj are distinct elements. This is how a Cauchy matrix is usually defined in textbooks. For the first row with j=0, I use xi = 2^-i and y0 = 0, that results in: row j=0 -> 1/(xi+y0) = 1/(2^-i + 0) = 2^i (RAID-6 coefficients) For the next rows with j>0, I use yj = 2^j, resulting in: rows j>0 -> 1/(xi+yj) = 1/(2^-i + 2^j) with xi != yj for any i,j with i>=0,j>=1,i+j<255 Then I put at the top of the Cauchy matrix a row filled with 1, transforming it in an Extended Cauchy Matrix. This transformation maintains the property of having all the square submatrices not singular. I found this property mentioned in some papers/textbooks, like in the introduction of: Vinocha, On Generator Cauchy Matrices of GDRS/GTRS Codes, 2012 http://www.m-hikari.com/ijcms/ijcms-2012/45-48-2012/brarIJCMS45-48-2012.pdf Finally I adjust all the rows to have the first column filled with 1, with a multiplication of each row for an adjusting factor. Also this transformation maintains the property of having all the square submatrices not singular, and then we have a MDS code. Ciao, Andrea -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html