Library prosa.util.subadditivity
We define and prove facts about subadditivity and subadditive functions. The
definition of subadditivity presented here slightly differs from the
standard one (f (a + b) ≤ f a + f b for any a and b), but it is proven
to be equivalent to it.
First, we define subadditivity as a point-wise property; i.e., f is
subadditive at h if standard subadditivity holds for any pair (a,b)
that sums to h.
Second, we define the concept of partial subadditivity until a certain
horizon h. This definition is useful when dealing with finite sequences.
Finally, give a definition of subadditive function: f is subadditive
when it is subadditive at any point h.
In the following, we show that the proposed definition of subadditivity is
equivalent to the standard one.
First, we give a standard definition of subadditivity.
Then, we prove that the two definitions are implied by each other.
Lemma subadditive_standard_equivalence :
∀ f,
subadditive f ↔ subadditive_standard f.
Proof.
split.
- move⇒ SUB a b.
by apply SUB.
- move⇒ SUB h a b AB.
rewrite -AB.
by apply SUB.
Qed.
∀ f,
subadditive f ↔ subadditive_standard f.
Proof.
split.
- move⇒ SUB a b.
by apply SUB.
- move⇒ SUB h a b AB.
rewrite -AB.
by apply SUB.
Qed.
In the following section, we prove some useful facts about subadditivity.
Consider a function f.
In this section, we show some of the properties of subadditive functions.
Assume that f is subadditive.
Then, we prove that moving any non-zero factor m outside of the arguments
of f leads to a bigger or equal number.