Big operators on a finset in ordered rings #
This file contains the results concerning the interaction of finset big operators with ordered rings.
In particular, this file contains the standard form of the Cauchy-Schwarz inequality, as well as some of its immediate consequences.
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.
Note that the name is to match CanonicallyOrderedAdd.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 CanonicallyOrderedAdd.
Named inequalities #
Cauchy-Schwarz inequality for finsets.
This is written in terms of sequences f, g, and r, where r is a stand-in for
√(f i * g i). See sum_mul_sq_le_sq_mul_sq for the more usual form in terms of squared
sequences.
Cauchy-Schwarz inequality for finsets, squared version.
Sedrakyan's lemma, aka Titu's lemma or Engel's form.
This is a specialization of the Cauchy-Schwarz inequality with the sequences f n / √(g n) and
√(g n), though here it is proven without relying on square roots.
Absolute values #
Positivity extension #
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.