Big operators on a finset in ordered rings #
This file contains the results concerning the interaction of finset big operators with ordered rings.
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.
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.
If g, h ≤ f
and g i + h i ≤ f i
, then the product of f
over s
is at least the
sum of the products of g
and h
. This is the version for OrderedCommSemiring
.
Cauchy-Schwarz inequality for finsets.
Note that the name is to match CanonicallyOrderedCommSemiring.mul_pos
.
If g, h ≤ f
and g i + h i ≤ f i
, then the product of f
over s
is at least the
sum of the products of g
and h
. This is the version for CanonicallyOrderedCommSemiring
.
Alias of IsAbsoluteValue.abv_sum
.
The positivity
extension which proves that ∏ i ∈ s, f i
is nonnegative if f
is, and
positive if each f i
is.
TODO: The following example does not work
example (s : Finset ℕ) (f : ℕ → ℤ) (hf : ∀ n, 0 ≤ f n) : 0 ≤ s.prod f := by positivity
because compareHyp
can't look for assumptions behind binders.