positivity core extensions #
This file sets up the basic positivity extensions tagged with the @[positivity] attribute.
The positivity extension which identifies expressions of the form ite p a b,
such that positivity successfully recognises both a and b.
Equations
Instances For
The positivity extension which identifies expressions of the form min a b,
such that positivity successfully recognises both a and b.
Equations
Instances For
Extension for the max operator. The max of two numbers is nonnegative if at least one
is nonnegative, strictly positive if at least one is positive, and nonzero if both are nonzero.
Equations
Instances For
The positivity extension which identifies expressions of the form a + b,
such that positivity successfully recognises both a and b.
Equations
Instances For
The positivity extension which identifies expressions of the form a * b,
such that positivity successfully recognises both a and b.
Equations
Instances For
The positivity extension which identifies expressions of the form a / b,
where a and b are integers.
Equations
Instances For
The positivity extension which identifies expressions of the form a ^ (0 : ℕ).
This extension is run in addition to the general a ^ b extension (they are overlapping).
Equations
Instances For
The positivity extension which identifies expressions of the form a ^ (b : ℕ),
such that positivity successfully recognises both a and b.
Equations
Instances For
Extension for the positivity tactic: Int.natAbs is positive when its input is.
Since the output type of Int.natAbs is ℕ, the nonnegative case is handled by the default
positivity tactic.
Equations
Instances For
Extension for the positivity tactic: Nat.cast is always non-negative,
and positive when its input is.
Equations
Instances For
Extension for the positivity tactic: Int.cast is positive (resp. non-negative)
if its input is.
Equations
Instances For
The positivity extension which identifies expressions of the form NNRat.num q,
such that positivity successfully recognises q.
Equations
Instances For
The positivity extension which identifies expressions of the form Rat.num a,
such that positivity successfully recognises a.
Equations
Instances For
Extension for posPart. a⁺ is always nonegative, and positive if a is.
Equations
Instances For
Extension for negPart. a⁻ is always nonegative.
Equations
Instances For
Extension for the positivity tactic: nonnegative maps take nonnegative values.