0 JBC
↳1 JBC2FIG (⇐)
↳2 FIGraph
↳3 FIGtoITRSProof (⇐)
↳4 ITRS
↳5 ITRStoIDPProof (⇔)
↳6 IDP
↳7 UsableRulesProof (⇔)
↳8 IDP
↳9 IDPNonInfProof (⇐)
↳10 AND
↳11 IDP
↳12 IDependencyGraphProof (⇔)
↳13 TRUE
↳14 IDP
↳15 IDependencyGraphProof (⇔)
↳16 TRUE
No human-readable program information known.
!= | ~ | Neq: (Integer, Integer) -> Boolean |
* | ~ | Mul: (Integer, Integer) -> Integer |
>= | ~ | Ge: (Integer, Integer) -> Boolean |
-1 | ~ | UnaryMinus: (Integer) -> Integer |
| | ~ | Bwor: (Integer, Integer) -> Integer |
/ | ~ | Div: (Integer, Integer) -> Integer |
= | ~ | Eq: (Integer, Integer) -> Boolean |
~ | Bwxor: (Integer, Integer) -> Integer | |
|| | ~ | Lor: (Boolean, Boolean) -> Boolean |
! | ~ | Lnot: (Boolean) -> Boolean |
< | ~ | Lt: (Integer, Integer) -> Boolean |
- | ~ | Sub: (Integer, Integer) -> Integer |
<= | ~ | Le: (Integer, Integer) -> Boolean |
> | ~ | Gt: (Integer, Integer) -> Boolean |
~ | ~ | Bwnot: (Integer) -> Integer |
% | ~ | Mod: (Integer, Integer) -> Integer |
& | ~ | Bwand: (Integer, Integer) -> Integer |
+ | ~ | Add: (Integer, Integer) -> Integer |
&& | ~ | Land: (Boolean, Boolean) -> Boolean |
!= | ~ | Neq: (Integer, Integer) -> Boolean |
* | ~ | Mul: (Integer, Integer) -> Integer |
>= | ~ | Ge: (Integer, Integer) -> Boolean |
-1 | ~ | UnaryMinus: (Integer) -> Integer |
| | ~ | Bwor: (Integer, Integer) -> Integer |
/ | ~ | Div: (Integer, Integer) -> Integer |
= | ~ | Eq: (Integer, Integer) -> Boolean |
~ | Bwxor: (Integer, Integer) -> Integer | |
|| | ~ | Lor: (Boolean, Boolean) -> Boolean |
! | ~ | Lnot: (Boolean) -> Boolean |
< | ~ | Lt: (Integer, Integer) -> Boolean |
- | ~ | Sub: (Integer, Integer) -> Integer |
<= | ~ | Le: (Integer, Integer) -> Boolean |
> | ~ | Gt: (Integer, Integer) -> Boolean |
~ | ~ | Bwnot: (Integer) -> Integer |
% | ~ | Mod: (Integer, Integer) -> Integer |
& | ~ | Bwand: (Integer, Integer) -> Integer |
+ | ~ | Add: (Integer, Integer) -> Integer |
&& | ~ | Land: (Boolean, Boolean) -> Boolean |
Boolean, Integer
(0) -> (1), if ((i44[0] →* i44[1])∧(i12[0] →* i12[1])∧(i12[0] >= 0 && i12[0] < i44[0] && i12[0] + 1 > 0 →* TRUE))
(1) -> (0), if ((i44[1] →* i44[0])∧(i12[1] + 1 →* i12[0]))
(1) -> (2), if ((i12[1] + 1 →* i12[2])∧(i44[1] →* i44[2]))
(2) -> (3), if ((i44[2] →* i44[3])∧(i12[2] →* i12[3])∧(i44[2] >= 0 && i12[2] > i44[2] →* TRUE))
(3) -> (0), if ((i44[3] + 1 →* i44[0])∧(i12[3] →* i12[0]))
(3) -> (2), if ((i44[3] + 1 →* i44[2])∧(i12[3] →* i12[2]))
!= | ~ | Neq: (Integer, Integer) -> Boolean |
* | ~ | Mul: (Integer, Integer) -> Integer |
>= | ~ | Ge: (Integer, Integer) -> Boolean |
-1 | ~ | UnaryMinus: (Integer) -> Integer |
| | ~ | Bwor: (Integer, Integer) -> Integer |
/ | ~ | Div: (Integer, Integer) -> Integer |
= | ~ | Eq: (Integer, Integer) -> Boolean |
~ | Bwxor: (Integer, Integer) -> Integer | |
|| | ~ | Lor: (Boolean, Boolean) -> Boolean |
! | ~ | Lnot: (Boolean) -> Boolean |
< | ~ | Lt: (Integer, Integer) -> Boolean |
- | ~ | Sub: (Integer, Integer) -> Integer |
<= | ~ | Le: (Integer, Integer) -> Boolean |
> | ~ | Gt: (Integer, Integer) -> Boolean |
~ | ~ | Bwnot: (Integer) -> Integer |
% | ~ | Mod: (Integer, Integer) -> Integer |
& | ~ | Bwand: (Integer, Integer) -> Integer |
+ | ~ | Add: (Integer, Integer) -> Integer |
&& | ~ | Land: (Boolean, Boolean) -> Boolean |
Boolean, Integer
(0) -> (1), if ((i44[0] →* i44[1])∧(i12[0] →* i12[1])∧(i12[0] >= 0 && i12[0] < i44[0] && i12[0] + 1 > 0 →* TRUE))
(1) -> (0), if ((i44[1] →* i44[0])∧(i12[1] + 1 →* i12[0]))
(1) -> (2), if ((i12[1] + 1 →* i12[2])∧(i44[1] →* i44[2]))
(2) -> (3), if ((i44[2] →* i44[3])∧(i12[2] →* i12[3])∧(i44[2] >= 0 && i12[2] > i44[2] →* TRUE))
(3) -> (0), if ((i44[3] + 1 →* i44[0])∧(i12[3] →* i12[0]))
(3) -> (2), if ((i44[3] + 1 →* i44[2])∧(i12[3] →* i12[2]))
(1) (i44[0]=i44[1]∧i12[0]=i12[1]∧&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0))=TRUE ⇒ LOAD524(i12[0], i44[0])≥NonInfC∧LOAD524(i12[0], i44[0])≥COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])∧(UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥))
(2) (>(+(i12[0], 1), 0)=TRUE∧>=(i12[0], 0)=TRUE∧<(i12[0], i44[0])=TRUE ⇒ LOAD524(i12[0], i44[0])≥NonInfC∧LOAD524(i12[0], i44[0])≥COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])∧(UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥))
(3) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[0] + [-1] + [-1]i12[0] ≥ 0 ⇒ (UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥)∧[(-1)bni_15 + (-1)Bound*bni_15] + [bni_15]max{i12[0] + [-1]i44[0], [-1]i12[0] + i44[0]} ≥ 0∧[(-1)bso_16] + max{i12[0] + [-1]i44[0], [-1]i12[0] + i44[0]} + [-1]max{i12[0] + [-1]i44[0], [-1]i12[0] + i44[0]} ≥ 0)
(4) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[0] + [-1] + [-1]i12[0] ≥ 0 ⇒ (UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥)∧[(-1)bni_15 + (-1)Bound*bni_15] + [bni_15]max{i12[0] + [-1]i44[0], [-1]i12[0] + i44[0]} ≥ 0∧[(-1)bso_16] + max{i12[0] + [-1]i44[0], [-1]i12[0] + i44[0]} + [-1]max{i12[0] + [-1]i44[0], [-1]i12[0] + i44[0]} ≥ 0)
(5) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[0] + [-1] + [-1]i12[0] ≥ 0∧[-1] + [-2]i12[0] + [2]i44[0] ≥ 0 ⇒ (UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥)∧[(-1)bni_15 + (-1)Bound*bni_15] + [(-1)bni_15]i12[0] + [bni_15]i44[0] ≥ 0∧[(-1)bso_16] ≥ 0)
(6) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[0] ≥ 0∧[1] + [2]i44[0] ≥ 0 ⇒ (UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥)∧[(-1)Bound*bni_15] + [bni_15]i44[0] ≥ 0∧[(-1)bso_16] ≥ 0)
(7) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[0] ≥ 0∧i44[0] ≥ 0 ⇒ (UIncreasing(COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])), ≥)∧[(-1)Bound*bni_15] + [bni_15]i44[0] ≥ 0∧[(-1)bso_16] ≥ 0)
(8) (i44[1]=i44[0]∧+(i12[1], 1)=i12[0]∧i44[0]=i44[1]1∧i12[0]=i12[1]1∧&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0))=TRUE ⇒ COND_LOAD524(TRUE, i12[1]1, i44[1]1)≥NonInfC∧COND_LOAD524(TRUE, i12[1]1, i44[1]1)≥LOAD524(+(i12[1]1, 1), i44[1]1)∧(UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥))
(9) (>(+(+(i12[1], 1), 1), 0)=TRUE∧>=(+(i12[1], 1), 0)=TRUE∧<(+(i12[1], 1), i44[0])=TRUE ⇒ COND_LOAD524(TRUE, +(i12[1], 1), i44[0])≥NonInfC∧COND_LOAD524(TRUE, +(i12[1], 1), i44[0])≥LOAD524(+(+(i12[1], 1), 1), i44[0])∧(UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥))
(10) (i12[1] + [1] ≥ 0∧i12[1] + [1] ≥ 0∧i44[0] + [-2] + [-1]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)bni_17 + (-1)Bound*bni_17] + [bni_17]max{[1] + i12[1] + [-1]i44[0], [-1] + [-1]i12[1] + i44[0]} ≥ 0∧[(-1)bso_18] + max{[1] + i12[1] + [-1]i44[0], [-1] + [-1]i12[1] + i44[0]} + [-1]max{[2] + i12[1] + [-1]i44[0], [-2] + [-1]i12[1] + i44[0]} ≥ 0)
(11) (i12[1] + [1] ≥ 0∧i12[1] + [1] ≥ 0∧i44[0] + [-2] + [-1]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)bni_17 + (-1)Bound*bni_17] + [bni_17]max{[1] + i12[1] + [-1]i44[0], [-1] + [-1]i12[1] + i44[0]} ≥ 0∧[(-1)bso_18] + max{[1] + i12[1] + [-1]i44[0], [-1] + [-1]i12[1] + i44[0]} + [-1]max{[2] + i12[1] + [-1]i44[0], [-2] + [-1]i12[1] + i44[0]} ≥ 0)
(12) (i12[1] + [1] ≥ 0∧i12[1] + [1] ≥ 0∧i44[0] + [-2] + [-1]i12[1] ≥ 0∧[-3] + [-2]i12[1] + [2]i44[0] ≥ 0∧[4] + [2]i12[1] + [-2]i44[0] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-2)bni_17 + (-1)Bound*bni_17] + [(-1)bni_17]i12[1] + [bni_17]i44[0] ≥ 0∧[-3 + (-1)bso_18] + [-2]i12[1] + [2]i44[0] ≥ 0)
(13) (i12[1] + [1] ≥ 0∧i12[1] + [1] ≥ 0∧i44[0] + [-2] + [-1]i12[1] ≥ 0∧[-3] + [-2]i12[1] + [2]i44[0] ≥ 0∧[-5] + [-2]i12[1] + [2]i44[0] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-2)bni_17 + (-1)Bound*bni_17] + [(-1)bni_17]i12[1] + [bni_17]i44[0] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(14) (i44[0] + [-1] + [-1]i12[1] ≥ 0∧i44[0] + [-1] + [-1]i12[1] ≥ 0∧i12[1] ≥ 0∧[1] + [2]i12[1] ≥ 0∧[-2]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)Bound*bni_17] + [bni_17]i12[1] ≥ 0∧[1 + (-1)bso_18] + [2]i12[1] ≥ 0)
(15) (i44[0] + [-1] + [-1]i12[1] ≥ 0∧i44[0] + [-1] + [-1]i12[1] ≥ 0∧i12[1] ≥ 0∧[1] + [2]i12[1] ≥ 0∧[-1] + [2]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)Bound*bni_17] + [bni_17]i12[1] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(16) (i44[0] + [-1]i12[1] ≥ 0∧i44[0] + [-1]i12[1] ≥ 0∧i12[1] ≥ 0∧[1] + [2]i12[1] ≥ 0∧[-2]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)Bound*bni_17] + [bni_17]i12[1] ≥ 0∧[1 + (-1)bso_18] + [2]i12[1] ≥ 0)
(17) (i44[0] ≥ 0∧i44[0] ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)Bound*bni_17] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(18) (i44[0] ≥ 0∧i44[0] ≥ 0∧i12[1] ≥ 0∧[1] + [2]i12[1] ≥ 0∧[-1] + [2]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)Bound*bni_17] + [bni_17]i12[1] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(19) (i44[0] ≥ 0∧i44[0] ≥ 0∧i12[1] ≥ 0∧i12[1] ≥ 0∧i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1]1, 1), i44[1]1)), ≥)∧[(-1)Bound*bni_17] + [bni_17]i12[1] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(20) (+(i44[3], 1)=i44[0]∧i12[3]=i12[0]∧i44[0]=i44[1]∧i12[0]=i12[1]∧&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0))=TRUE ⇒ COND_LOAD524(TRUE, i12[1], i44[1])≥NonInfC∧COND_LOAD524(TRUE, i12[1], i44[1])≥LOAD524(+(i12[1], 1), i44[1])∧(UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥))
(21) (>(+(i12[0], 1), 0)=TRUE∧>=(i12[0], 0)=TRUE∧<(i12[0], +(i44[3], 1))=TRUE ⇒ COND_LOAD524(TRUE, i12[0], +(i44[3], 1))≥NonInfC∧COND_LOAD524(TRUE, i12[0], +(i44[3], 1))≥LOAD524(+(i12[0], 1), +(i44[3], 1))∧(UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥))
(22) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[3] + [-1]i12[0] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)bni_17 + (-1)Bound*bni_17] + [bni_17]max{[-1] + i12[0] + [-1]i44[3], [1] + [-1]i12[0] + i44[3]} ≥ 0∧[(-1)bso_18] + max{[-1] + i12[0] + [-1]i44[3], [1] + [-1]i12[0] + i44[3]} + [-1]max{i12[0] + [-1]i44[3], [-1]i12[0] + i44[3]} ≥ 0)
(23) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[3] + [-1]i12[0] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)bni_17 + (-1)Bound*bni_17] + [bni_17]max{[-1] + i12[0] + [-1]i44[3], [1] + [-1]i12[0] + i44[3]} ≥ 0∧[(-1)bso_18] + max{[-1] + i12[0] + [-1]i44[3], [1] + [-1]i12[0] + i44[3]} + [-1]max{i12[0] + [-1]i44[3], [-1]i12[0] + i44[3]} ≥ 0)
(24) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[3] + [-1]i12[0] ≥ 0∧[1] + [-2]i12[0] + [2]i44[3] ≥ 0∧[2]i12[0] + [-2]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)Bound*bni_17] + [(-1)bni_17]i12[0] + [bni_17]i44[3] ≥ 0∧[1 + (-1)bso_18] + [-2]i12[0] + [2]i44[3] ≥ 0)
(25) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[3] + [-1]i12[0] ≥ 0∧[1] + [-2]i12[0] + [2]i44[3] ≥ 0∧[-1] + [-2]i12[0] + [2]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)Bound*bni_17] + [(-1)bni_17]i12[0] + [bni_17]i44[3] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(26) (i44[3] + i12[0] ≥ 0∧i44[3] + i12[0] ≥ 0∧[-1]i12[0] ≥ 0∧[1] + [-2]i12[0] ≥ 0∧[2]i12[0] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)Bound*bni_17] + [(-1)bni_17]i12[0] ≥ 0∧[1 + (-1)bso_18] + [-2]i12[0] ≥ 0)
(27) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[3] ≥ 0∧[1] + [2]i44[3] ≥ 0∧[-1] + [2]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)Bound*bni_17] + [bni_17]i44[3] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(28) (i44[3] ≥ 0∧i44[3] ≥ 0∧0 ≥ 0∧[1] ≥ 0∧0 ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)Bound*bni_17] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(29) (i12[0] ≥ 0∧i12[0] ≥ 0∧i44[3] ≥ 0∧i44[3] ≥ 0∧i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(+(i12[1], 1), i44[1])), ≥)∧[(-1)Bound*bni_17] + [bni_17]i44[3] ≥ 0∧[1 + (-1)bso_18] ≥ 0)
(30) (i44[2]=i44[3]∧i12[2]=i12[3]∧&&(>=(i44[2], 0), >(i12[2], i44[2]))=TRUE ⇒ LOAD524(i12[2], i44[2])≥NonInfC∧LOAD524(i12[2], i44[2])≥COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])∧(UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥))
(31) (>=(i44[2], 0)=TRUE∧>(i12[2], i44[2])=TRUE ⇒ LOAD524(i12[2], i44[2])≥NonInfC∧LOAD524(i12[2], i44[2])≥COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])∧(UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥))
(32) (i44[2] ≥ 0∧i12[2] + [-1] + [-1]i44[2] ≥ 0 ⇒ (UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥)∧[(-1)bni_19 + (-1)Bound*bni_19] + [bni_19]max{i12[2] + [-1]i44[2], [-1]i12[2] + i44[2]} ≥ 0∧[(-1)bso_20] + max{i12[2] + [-1]i44[2], [-1]i12[2] + i44[2]} + [-1]max{i12[2] + [-1]i44[2], [-1]i12[2] + i44[2]} ≥ 0)
(33) (i44[2] ≥ 0∧i12[2] + [-1] + [-1]i44[2] ≥ 0 ⇒ (UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥)∧[(-1)bni_19 + (-1)Bound*bni_19] + [bni_19]max{i12[2] + [-1]i44[2], [-1]i12[2] + i44[2]} ≥ 0∧[(-1)bso_20] + max{i12[2] + [-1]i44[2], [-1]i12[2] + i44[2]} + [-1]max{i12[2] + [-1]i44[2], [-1]i12[2] + i44[2]} ≥ 0)
(34) (i44[2] ≥ 0∧i12[2] + [-1] + [-1]i44[2] ≥ 0∧[2]i12[2] + [-2]i44[2] ≥ 0 ⇒ (UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥)∧[(-1)bni_19 + (-1)Bound*bni_19] + [bni_19]i12[2] + [(-1)bni_19]i44[2] ≥ 0∧[(-1)bso_20] ≥ 0)
(35) (i44[2] ≥ 0∧i12[2] ≥ 0∧[2] + [2]i12[2] ≥ 0 ⇒ (UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥)∧[(-1)Bound*bni_19] + [bni_19]i12[2] ≥ 0∧[(-1)bso_20] ≥ 0)
(36) (i44[2] ≥ 0∧i12[2] ≥ 0∧[1] + i12[2] ≥ 0 ⇒ (UIncreasing(COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])), ≥)∧[(-1)Bound*bni_19] + [bni_19]i12[2] ≥ 0∧[(-1)bso_20] ≥ 0)
(37) (+(i12[1], 1)=i12[2]∧i44[1]=i44[2]∧i44[2]=i44[3]∧i12[2]=i12[3]∧&&(>=(i44[2], 0), >(i12[2], i44[2]))=TRUE ⇒ COND_LOAD5241(TRUE, i12[3], i44[3])≥NonInfC∧COND_LOAD5241(TRUE, i12[3], i44[3])≥LOAD524(i12[3], +(i44[3], 1))∧(UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥))
(38) (>=(i44[2], 0)=TRUE∧>(+(i12[1], 1), i44[2])=TRUE ⇒ COND_LOAD5241(TRUE, +(i12[1], 1), i44[2])≥NonInfC∧COND_LOAD5241(TRUE, +(i12[1], 1), i44[2])≥LOAD524(+(i12[1], 1), +(i44[2], 1))∧(UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥))
(39) (i44[2] ≥ 0∧i12[1] + [-1]i44[2] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥)∧[(-1)bni_21 + (-1)Bound*bni_21] + [bni_21]max{[1] + i12[1] + [-1]i44[2], [-1] + [-1]i12[1] + i44[2]} ≥ 0∧[(-1)bso_22] + max{[1] + i12[1] + [-1]i44[2], [-1] + [-1]i12[1] + i44[2]} + [-1]max{i12[1] + [-1]i44[2], [-1]i12[1] + i44[2]} ≥ 0)
(40) (i44[2] ≥ 0∧i12[1] + [-1]i44[2] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥)∧[(-1)bni_21 + (-1)Bound*bni_21] + [bni_21]max{[1] + i12[1] + [-1]i44[2], [-1] + [-1]i12[1] + i44[2]} ≥ 0∧[(-1)bso_22] + max{[1] + i12[1] + [-1]i44[2], [-1] + [-1]i12[1] + i44[2]} + [-1]max{i12[1] + [-1]i44[2], [-1]i12[1] + i44[2]} ≥ 0)
(41) (i44[2] ≥ 0∧i12[1] + [-1]i44[2] ≥ 0∧[2] + [2]i12[1] + [-2]i44[2] ≥ 0∧[2]i12[1] + [-2]i44[2] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥)∧[(-1)Bound*bni_21] + [bni_21]i12[1] + [(-1)bni_21]i44[2] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
(42) (i44[2] ≥ 0∧i12[1] ≥ 0∧[2] + [2]i12[1] ≥ 0∧[2]i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥)∧[(-1)Bound*bni_21] + [bni_21]i12[1] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
(43) (i44[2] ≥ 0∧i12[1] ≥ 0∧[1] + i12[1] ≥ 0∧i12[1] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3], +(i44[3], 1))), ≥)∧[(-1)Bound*bni_21] + [bni_21]i12[1] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
(44) (+(i44[3], 1)=i44[2]∧i12[3]=i12[2]∧i44[2]=i44[3]1∧i12[2]=i12[3]1∧&&(>=(i44[2], 0), >(i12[2], i44[2]))=TRUE ⇒ COND_LOAD5241(TRUE, i12[3]1, i44[3]1)≥NonInfC∧COND_LOAD5241(TRUE, i12[3]1, i44[3]1)≥LOAD524(i12[3]1, +(i44[3]1, 1))∧(UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥))
(45) (>=(+(i44[3], 1), 0)=TRUE∧>(i12[2], +(i44[3], 1))=TRUE ⇒ COND_LOAD5241(TRUE, i12[2], +(i44[3], 1))≥NonInfC∧COND_LOAD5241(TRUE, i12[2], +(i44[3], 1))≥LOAD524(i12[2], +(+(i44[3], 1), 1))∧(UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥))
(46) (i44[3] + [1] ≥ 0∧i12[2] + [-2] + [-1]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥)∧[(-1)bni_21 + (-1)Bound*bni_21] + [bni_21]max{[-1] + i12[2] + [-1]i44[3], [1] + [-1]i12[2] + i44[3]} ≥ 0∧[(-1)bso_22] + max{[-1] + i12[2] + [-1]i44[3], [1] + [-1]i12[2] + i44[3]} + [-1]max{[-2] + i12[2] + [-1]i44[3], [2] + [-1]i12[2] + i44[3]} ≥ 0)
(47) (i44[3] + [1] ≥ 0∧i12[2] + [-2] + [-1]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥)∧[(-1)bni_21 + (-1)Bound*bni_21] + [bni_21]max{[-1] + i12[2] + [-1]i44[3], [1] + [-1]i12[2] + i44[3]} ≥ 0∧[(-1)bso_22] + max{[-1] + i12[2] + [-1]i44[3], [1] + [-1]i12[2] + i44[3]} + [-1]max{[-2] + i12[2] + [-1]i44[3], [2] + [-1]i12[2] + i44[3]} ≥ 0)
(48) (i44[3] + [1] ≥ 0∧i12[2] + [-2] + [-1]i44[3] ≥ 0∧[-2] + [2]i12[2] + [-2]i44[3] ≥ 0∧[-4] + [2]i12[2] + [-2]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥)∧[(-2)bni_21 + (-1)Bound*bni_21] + [bni_21]i12[2] + [(-1)bni_21]i44[3] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
(49) (i12[2] + [-1] + [-1]i44[3] ≥ 0∧i44[3] ≥ 0∧[2] + [2]i44[3] ≥ 0∧[2]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥)∧[(-1)Bound*bni_21] + [bni_21]i44[3] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
(50) (i12[2] ≥ 0∧i44[3] ≥ 0∧[2] + [2]i44[3] ≥ 0∧[2]i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥)∧[(-1)Bound*bni_21] + [bni_21]i44[3] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
(51) (i12[2] ≥ 0∧i44[3] ≥ 0∧[1] + i44[3] ≥ 0∧i44[3] ≥ 0 ⇒ (UIncreasing(LOAD524(i12[3]1, +(i44[3]1, 1))), ≥)∧[(-1)Bound*bni_21] + [bni_21]i44[3] ≥ 0∧[1 + (-1)bso_22] ≥ 0)
POL(TRUE) = 0
POL(FALSE) = 0
POL(LOAD524(x1, x2)) = [-1] + max{x1 + [-1]x2, [-1]x1 + x2}
POL(COND_LOAD524(x1, x2, x3)) = [-1] + max{x2 + [-1]x3, [-1]x2 + x3}
POL(&&(x1, x2)) = [-1]
POL(>=(x1, x2)) = [-1]
POL(0) = 0
POL(<(x1, x2)) = [-1]
POL(>(x1, x2)) = [-1]
POL(+(x1, x2)) = x1 + x2
POL(1) = [1]
POL(COND_LOAD5241(x1, x2, x3)) = [-1] + max{x2 + [-1]x3, [-1]x2 + x3}
COND_LOAD524(TRUE, i12[1], i44[1]) → LOAD524(+(i12[1], 1), i44[1])
COND_LOAD5241(TRUE, i12[3], i44[3]) → LOAD524(i12[3], +(i44[3], 1))
LOAD524(i12[0], i44[0]) → COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])
COND_LOAD524(TRUE, i12[1], i44[1]) → LOAD524(+(i12[1], 1), i44[1])
LOAD524(i12[2], i44[2]) → COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])
COND_LOAD5241(TRUE, i12[3], i44[3]) → LOAD524(i12[3], +(i44[3], 1))
LOAD524(i12[0], i44[0]) → COND_LOAD524(&&(&&(>=(i12[0], 0), <(i12[0], i44[0])), >(+(i12[0], 1), 0)), i12[0], i44[0])
LOAD524(i12[2], i44[2]) → COND_LOAD5241(&&(>=(i44[2], 0), >(i12[2], i44[2])), i12[2], i44[2])
!= | ~ | Neq: (Integer, Integer) -> Boolean |
* | ~ | Mul: (Integer, Integer) -> Integer |
>= | ~ | Ge: (Integer, Integer) -> Boolean |
-1 | ~ | UnaryMinus: (Integer) -> Integer |
| | ~ | Bwor: (Integer, Integer) -> Integer |
/ | ~ | Div: (Integer, Integer) -> Integer |
= | ~ | Eq: (Integer, Integer) -> Boolean |
~ | Bwxor: (Integer, Integer) -> Integer | |
|| | ~ | Lor: (Boolean, Boolean) -> Boolean |
! | ~ | Lnot: (Boolean) -> Boolean |
< | ~ | Lt: (Integer, Integer) -> Boolean |
- | ~ | Sub: (Integer, Integer) -> Integer |
<= | ~ | Le: (Integer, Integer) -> Boolean |
> | ~ | Gt: (Integer, Integer) -> Boolean |
~ | ~ | Bwnot: (Integer) -> Integer |
% | ~ | Mod: (Integer, Integer) -> Integer |
& | ~ | Bwand: (Integer, Integer) -> Integer |
+ | ~ | Add: (Integer, Integer) -> Integer |
&& | ~ | Land: (Boolean, Boolean) -> Boolean |
Boolean, Integer
!= | ~ | Neq: (Integer, Integer) -> Boolean |
* | ~ | Mul: (Integer, Integer) -> Integer |
>= | ~ | Ge: (Integer, Integer) -> Boolean |
-1 | ~ | UnaryMinus: (Integer) -> Integer |
| | ~ | Bwor: (Integer, Integer) -> Integer |
/ | ~ | Div: (Integer, Integer) -> Integer |
= | ~ | Eq: (Integer, Integer) -> Boolean |
~ | Bwxor: (Integer, Integer) -> Integer | |
|| | ~ | Lor: (Boolean, Boolean) -> Boolean |
! | ~ | Lnot: (Boolean) -> Boolean |
< | ~ | Lt: (Integer, Integer) -> Boolean |
- | ~ | Sub: (Integer, Integer) -> Integer |
<= | ~ | Le: (Integer, Integer) -> Boolean |
> | ~ | Gt: (Integer, Integer) -> Boolean |
~ | ~ | Bwnot: (Integer) -> Integer |
% | ~ | Mod: (Integer, Integer) -> Integer |
& | ~ | Bwand: (Integer, Integer) -> Integer |
+ | ~ | Add: (Integer, Integer) -> Integer |
&& | ~ | Land: (Boolean, Boolean) -> Boolean |