fact: Fixpoint diag_block_mx_rec k (s : seq nat) (F : (forall n, nat -> 'M[R]_n.+1)) := if s is x :: l return 'M_((size_sum_rec k s).+1) then block_mx (F k 0%N) 0 0 (diag_block_mx_rec x l (fun n i => F n i.+1)) else F k 0%N.
imports: mathcomp(ssreflect ssrfun ssrbool eqtype ssrnat div seq path) mathcomp(ssralg fintype perm poly mxpoly finfun tuple) mathcomp(matrix bigop zmodp polydiv) ssrcomplements dvdring