There is a more powerful but still simple function isKnownViaSimpleReasoning that
does constant range check and few more additional checks. We use it some places (e.g.
when proving implications) and in some other places we only check constant ranges.
Currently, indvar simplifier fails to remove the check in following loop:
int inc = ...; for (int i = inc, j = inc - 1; i < 200; ++i, ++j) if (i > j) { ... }
This patch replaces all usages of isKnownPredicateViaConstantRanges with
isKnownViaSimpleReasoning to have smarter proofs. In particular, it fixes the
case above.
I think it is better to call this isKnownViaNonRecursiveReasoning since "simple" is not very descriptive (if you agree can you please directly land that in a subsequent change?).