@@ -566,6 +566,22 @@ lemma pos_of_smul_pos_left [PosSMulReflectLT α β] (h : 0 < a • b) (ha : 0
566566lemma neg_of_smul_neg_left [PosSMulReflectLT α β] (h : a • b < 0 ) (ha : 0 ≤ a) : b < 0 :=
567567 lt_of_smul_lt_smul_left (by rwa [smul_zero]) ha
568568
569+ lemma nonneg_of_smul_nonneg_of_pos_left [PosSMulReflectLE α β] (h : 0 ≤ a • b) (ha : 0 < a) :
570+ 0 ≤ b :=
571+ le_of_smul_le_smul_of_pos_left (by simpa) ha
572+
573+ lemma nonpos_of_smul_nonpos_of_pos_left [PosSMulReflectLE α β] (h : a • b ≤ 0 ) (ha : 0 < a) :
574+ b ≤ 0 :=
575+ le_of_smul_le_smul_of_pos_left (by simpa) ha
576+
577+ lemma smul_nonneg_iff_nonneg_of_pos_left [PosSMulMono α β] [PosSMulReflectLE α β] (ha : 0 < a) :
578+ 0 ≤ a • b ↔ 0 ≤ b :=
579+ ⟨(nonneg_of_smul_nonneg_of_pos_left · ha), smul_nonneg ha.le⟩
580+
581+ lemma smul_nonpos_iff_nonpos_of_pos_left [PosSMulMono α β] [PosSMulReflectLE α β] (ha : 0 < a) :
582+ a • b ≤ 0 ↔ b ≤ 0 :=
583+ ⟨(nonpos_of_smul_nonpos_of_pos_left · ha), smul_nonpos_of_nonneg_of_nonpos ha.le⟩
584+
569585end Preorder
570586end SMulZeroClass
571587
@@ -602,6 +618,22 @@ lemma pos_iff_pos_of_smul_pos [PosSMulReflectLT α β] [SMulPosReflectLT α β]
602618 0 < a ↔ 0 < b :=
603619 ⟨pos_of_smul_pos_left hab ∘ le_of_lt, pos_of_smul_pos_right hab ∘ le_of_lt⟩
604620
621+ lemma nonneg_of_smul_nonneg_of_pos_right [SMulPosReflectLE α β] (h : 0 ≤ a • b) (hb : 0 < b) :
622+ 0 ≤ a :=
623+ le_of_smul_le_smul_of_pos_right (by simpa) hb
624+
625+ lemma nonpos_of_smul_nonpos_of_pos_right [SMulPosReflectLE α β] (h : a • b ≤ 0 ) (hb : 0 < b) :
626+ a ≤ 0 :=
627+ le_of_smul_le_smul_of_pos_right (by simpa) hb
628+
629+ lemma smul_nonneg_iff_nonneg_of_pos_right [SMulPosMono α β] [SMulPosReflectLE α β] (hb : 0 < b) :
630+ 0 ≤ a • b ↔ 0 ≤ a :=
631+ ⟨(nonneg_of_smul_nonneg_of_pos_right · hb), (smul_nonneg' · hb.le)⟩
632+
633+ lemma smul_nonpos_iff_nonpos_of_pos_right [SMulPosMono α β] [SMulPosReflectLE α β] (hb : 0 < b) :
634+ a • b ≤ 0 ↔ a ≤ 0 :=
635+ ⟨(nonpos_of_smul_nonpos_of_pos_right · hb), (smul_nonpos_of_nonpos_of_nonneg · hb.le)⟩
636+
605637lemma IsOrderedModule.of_smul_one_mono
606638 [MulOneClass β] [PosMulMono β] [MulPosMono β] [IsScalarTower α β β]
607639 (h : Monotone (fun x : α ↦ x • (1 : β))) : IsOrderedModule α β where
0 commit comments