proposition: Lemma congr_cat u1 u2 v1 v2 : r u1 u2 -> r v1 v2 -> r (u1 ++ v1) (u2 ++ v2).
proof: Proof. Proof using Hcongr Hequiv. move: Hequiv => /equivalence_relP[Hrefl Htrans]. move=> Hu Hv; rewrite (Htrans _ (u1 ++ v2)). - exact: congr_catl. - exact: congr_catr. Qed.
imports: HB(structures) mathcomp(all_ssreflect) Recdef permcomp permuted multinomial vectNK