Big operators on a finset in groups with zero involving order #
This file contains the results concerning the interaction of finset big operators with groups with zero, where order is involved.
theorem
Finset.prod_nonneg
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
{s : Finset ι}
(h0 : ∀ i ∈ s, 0 ≤ f i)
:
theorem
Finset.prod_le_prod
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f g : ι → R}
{s : Finset ι}
(h0 : ∀ i ∈ s, 0 ≤ f i)
(h1 : ∀ i ∈ s, f i ≤ g i)
:
If all f i, i ∈ s, are nonnegative and each f i is less than or equal to g i, then the
product of f i is less than or equal to the product of g i. See also Finset.prod_le_prod' for
the case of an ordered commutative multiplicative monoid.
theorem
Finset.prod_le_one
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
{s : Finset ι}
(h0 : ∀ i ∈ s, 0 ≤ f i)
(h1 : ∀ i ∈ s, f i ≤ 1)
:
If each f i, i ∈ s belongs to [0, 1], then their product is less than or equal to one.
See also Finset.prod_le_one' for the case of an ordered commutative multiplicative monoid.
theorem
Finset.one_le_prod
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
{s : Finset ι}
(hf : ∀ i ∈ s, 1 ≤ f i)
:
A version of Finset.one_le_prod' for PosMulMono in place of MulLeftMono.
theorem
Finset.le_prod_max_one
{ι : Type u_1}
{s : Finset ι}
{M : Type u_4}
[CommMonoidWithZero M]
[LinearOrder M]
[ZeroLEOneClass M]
[PosMulMono M]
{i : ι}
(hi : i ∈ s)
(f : ι → M)
:
theorem
Finset.prod_le_prod_of_subset_of_one_le
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
{s t : Finset ι}
(h : s ⊆ t)
(hf0 : ∀ i ∈ s, 0 ≤ f i)
(hf : ∀ i ∈ t, i ∉ s → 1 ≤ f i)
:
theorem
Finset.prod_le_prod_of_subset_of_le_one
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
{s t : Finset ι}
(h : s ⊆ t)
(hf0 : ∀ i ∈ t, 0 ≤ f i)
(hf : ∀ i ∈ t, i ∉ s → f i ≤ 1)
:
theorem
Finset.prod_mono_set_of_one_le
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
(hf : ∀ (x : ι), 1 ≤ f x)
:
theorem
Finset.prod_anti_set_of_le_one
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[Preorder R]
[ZeroLEOneClass R]
[PosMulMono R]
{f : ι → R}
(hf0 : ∀ (x : ι), 0 ≤ f x)
(hf : ∀ (x : ι), f x ≤ 1)
:
theorem
Finset.prod_pos
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[PartialOrder R]
[ZeroLEOneClass R]
[PosMulStrictMono R]
[Nontrivial R]
{f : ι → R}
{s : Finset ι}
(h0 : ∀ i ∈ s, 0 < f i)
:
theorem
Finset.prod_lt_prod
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[PartialOrder R]
[ZeroLEOneClass R]
[PosMulStrictMono R]
[Nontrivial R]
{f g : ι → R}
{s : Finset ι}
(hf : ∀ i ∈ s, 0 < f i)
(hfg : ∀ i ∈ s, f i ≤ g i)
(hlt : ∃ i ∈ s, f i < g i)
:
theorem
Finset.prod_lt_prod_of_nonempty
{ι : Type u_1}
{R : Type u_2}
[CommMonoidWithZero R]
[PartialOrder R]
[ZeroLEOneClass R]
[PosMulStrictMono R]
[Nontrivial R]
{f g : ι → R}
{s : Finset ι}
(hf : ∀ i ∈ s, 0 < f i)
(hfg : ∀ i ∈ s, f i < g i)
(h_ne : s.Nonempty)
: