proposition: Lemma lee_nemull x y : y <= 0 -> 1 <= x -> x * y <= y.
proof: Proof. move: x y => [x| |] [y| |] //; last by rewrite mulyNy. - by rewrite -EFinM 3!lee_fin; exact: ler_neMl. - move=> _; rewrite lee_fin => x1. by rewrite mulr_infty gtr0_sg ?mul1e// (lt_le_trans _ x1). - rewrite lee_fin le_eqVlt => /predU1P[-> _|y0 _]; first by rewrite mule0. by rewrite mulr_infty ltr0_sg// mulN1e leNye. Qed.
imports: HB(structures) mathcomp(all_ssreflect all_algebra finmap) mathcomp(mathcomp_extra) signed