(0) Obligation:
JBC Problem based on JBC Program:
No human-readable program information known.
Manifest-Version: 1.0
Created-By: 1.6.0_16 (Sun Microsystems Inc.)
Main-Class: Samefringe
(1) JBC2FIG (SOUND transformation)
Constructed FIGraph.
(2) Obligation:
FIGraph based on JBC Program:
Graph of 1445 nodes with 4 SCCs.
(3) FIGtoITRSProof (SOUND transformation)
Transformed FIGraph to ITRS rules
(4) Complex Obligation (AND)
(5) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load31330(
o48160,
o48159,
o48157,
o48158) →
NULL31532(
o48160,
o48159,
o48157,
o48158,
o48157)
NULL31532(
o48592,
o48591,
java.lang.Object(
Tree(
o49086Field0,
o49086Field1,
o49086Field2)),
o48590,
java.lang.Object(
Tree(
o49086Field0,
o49086Field1,
o49086Field2))) →
Load31861(
o48592,
o48591,
java.lang.Object(
Tree(
o49086Field0,
o49086Field1,
o49086Field2)),
o48590)
Load31861(
o49481,
o49480,
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)),
java.lang.Object(
Tree(
o50362Field0,
o50362Field1,
o50362Field2))) →
Load36791(
o49481,
o49480,
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)),
java.lang.Object(
Tree(
o50362Field0,
o50362Field1,
o50362Field2)),
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)),
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)))
JMP43433(
o66388,
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68588,
java.lang.Object(
Tree(
o68589,
o66987,
NULL)),
NULL))) →
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68588,
java.lang.Object(
Tree(
o68589,
o66987,
NULL)),
NULL)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68588,
o68589,
o68590)),
o66987,
o66988))) →
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68588,
java.lang.Object(
Tree(
o68589,
o66987,
NULL)),
NULL)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993))) →
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993)),
java.lang.Object(
Tree(
o68614,
java.lang.Object(
Tree(
o68615,
o66992,
NULL)),
NULL)))
Load36791(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
o66387,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003))) →
Load36791(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
o66387,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
java.lang.Object(
Tree(
o68686,
java.lang.Object(
Tree(
o68687,
o67002,
NULL)),
NULL)))
Load36791(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68654,
o68655,
o68656)),
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68654,
o68655,
o68656)),
o66997,
o66998))) →
JMP43433(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68654,
o68655,
o68656)),
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68654,
java.lang.Object(
Tree(
o68655,
o66997,
NULL)),
NULL)))
JMP44585(
o97213,
o97212,
o97210,
o97249) →
Load31330(
o97213,
o97212,
o97210,
o97249)
Store44491(
o97213,
o97212,
o97210,
o97249) →
Load31330(
o97213,
o97212,
o97210,
o97249)
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
NULL,
o97249,
o97250))) →
Load31330(
o97213,
o97212,
o97210,
o97249)
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
NULL,
o97256,
o97257)),
java.lang.Object(
Tree(
NULL,
o97256,
o97257)),
java.lang.Object(
Tree(
NULL,
o97256,
o97257))) →
JMP44585(
o97213,
o97212,
o97210,
o97256)
Load44066(
o97213,
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
o97210,
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
java.lang.Object(
Tree(
NULL,
o97270,
o97271))) →
JMP44585(
o97213,
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
o97210,
o97270)
Load44066(
o97213,
java.lang.Object(
Tree(
NULL,
o97263,
o97264)),
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
NULL,
o97263,
o97264))) →
Store44491(
o97213,
java.lang.Object(
Tree(
NULL,
o97263,
o97264)),
o97210,
o97263)
Load37906(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2))) →
Load44066(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Store37702(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
o66987) →
Load44066(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
NULL,
o66987,
o66988))) →
Load44066(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
JMP46979(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99119,
java.lang.Object(
Tree(
o99120,
o97249,
NULL)),
NULL))) →
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99119,
java.lang.Object(
Tree(
o99120,
o97249,
NULL)),
NULL)))
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99119,
o99120,
o99121)),
o97249,
o97250))) →
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99119,
java.lang.Object(
Tree(
o99120,
o97249,
NULL)),
NULL)))
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257))) →
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257)),
java.lang.Object(
Tree(
o99165,
java.lang.Object(
Tree(
o99166,
o97256,
NULL)),
NULL)))
Load44066(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271))) →
Load44066(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
java.lang.Object(
Tree(
o99277,
java.lang.Object(
Tree(
o99278,
o97270,
NULL)),
NULL)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
NULL,
o66992,
o66993)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
NULL,
o66992,
o66993)),
java.lang.Object(
Tree(
NULL,
o66992,
o66993))) →
Load37906(
o66388,
o66387,
o66992,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Load36791(
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
o66387,
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
java.lang.Object(
Tree(
NULL,
o67002,
o67003))) →
Load37906(
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
o66387,
o67002,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Load36791(
java.lang.Object(
Tree(
NULL,
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
NULL,
o66997,
o66998))) →
Store37702(
java.lang.Object(
Tree(
NULL,
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
o66997)
Load44066(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99224,
o99225,
o99226)),
o97263,
o97264)),
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99224,
o99225,
o99226)),
o97263,
o97264))) →
JMP46979(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99224,
o99225,
o99226)),
o97263,
o97264)),
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99224,
java.lang.Object(
Tree(
o99225,
o97263,
NULL)),
NULL)))
The set Q consists of the following terms:
Load31330(
x0,
x1,
x2,
x3)
NULL31532(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
x5,
java.lang.Object(
Tree(
x2,
x3,
x4)))
Load31861(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)))
JMP43433(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x8,
java.lang.Object(
Tree(
x9,
x10,
NULL)),
NULL)))
Load36791(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x8,
x9,
x10)),
x11,
x12)))
JMP44585(
x0,
x1,
x2,
x3)
Store44491(
x0,
x1,
x2,
x3)
Load44066(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
NULL,
x6,
x7)))
Load37906(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)))
Store37702(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
x5)
Load36791(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
NULL,
x8,
x9)))
JMP46979(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
NULL)),
NULL)))
Load44066(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)))
(6) DuplicateArgsRemoverProof (EQUIVALENT transformation)
Some arguments are removed because they only appear as duplicates.
We removed arguments according to the following replacements:
JMP46979(x1, x2, x3, x4, x5, x6) → JMP46979(x1, x2, x3, x5, x6)
Load44066(x1, x2, x3, x4, x5, x6) → Load44066(x1, x2, x3, x5, x6)
Load36791(x1, x2, x3, x4, x5, x6) → Load36791(x1, x2, x4, x5, x6)
JMP43433(x1, x2, x3, x4, x5, x6) → JMP43433(x1, x2, x4, x5, x6)
NULL31532(x1, x2, x3, x4, x5) → NULL31532(x1, x2, x4, x5)
(7) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load31330(
o48160,
o48159,
o48157,
o48158) →
NULL31532(
o48160,
o48159,
o48158,
o48157)
NULL31532(
o48592,
o48591,
o48590,
java.lang.Object(
Tree(
o49086Field0,
o49086Field1,
o49086Field2))) →
Load31861(
o48592,
o48591,
java.lang.Object(
Tree(
o49086Field0,
o49086Field1,
o49086Field2)),
o48590)
Load31861(
o49481,
o49480,
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)),
java.lang.Object(
Tree(
o50362Field0,
o50362Field1,
o50362Field2))) →
Load36791(
o49481,
o49480,
java.lang.Object(
Tree(
o50362Field0,
o50362Field1,
o50362Field2)),
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)),
java.lang.Object(
Tree(
o49478Field0,
o49478Field1,
o49478Field2)))
JMP43433(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68588,
java.lang.Object(
Tree(
o68589,
o66987,
NULL)),
NULL))) →
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68588,
java.lang.Object(
Tree(
o68589,
o66987,
NULL)),
NULL)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68588,
o68589,
o68590)),
o66987,
o66988))) →
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68588,
java.lang.Object(
Tree(
o68589,
o66987,
NULL)),
NULL)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993))) →
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68614,
o68615,
o68616)),
o66992,
o66993)),
java.lang.Object(
Tree(
o68614,
java.lang.Object(
Tree(
o68615,
o66992,
NULL)),
NULL)))
Load36791(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003))) →
Load36791(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68686,
o68687,
o68688)),
o67002,
o67003)),
java.lang.Object(
Tree(
o68686,
java.lang.Object(
Tree(
o68687,
o67002,
NULL)),
NULL)))
Load36791(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68654,
o68655,
o68656)),
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68654,
o68655,
o68656)),
o66997,
o66998))) →
JMP43433(
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o68654,
o68655,
o68656)),
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
o68654,
java.lang.Object(
Tree(
o68655,
o66997,
NULL)),
NULL)))
JMP44585(
o97213,
o97212,
o97210,
o97249) →
Load31330(
o97213,
o97212,
o97210,
o97249)
Store44491(
o97213,
o97212,
o97210,
o97249) →
Load31330(
o97213,
o97212,
o97210,
o97249)
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
NULL,
o97249,
o97250))) →
Load31330(
o97213,
o97212,
o97210,
o97249)
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
NULL,
o97256,
o97257)),
java.lang.Object(
Tree(
NULL,
o97256,
o97257))) →
JMP44585(
o97213,
o97212,
o97210,
o97256)
Load44066(
o97213,
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
o97210,
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
java.lang.Object(
Tree(
NULL,
o97270,
o97271))) →
JMP44585(
o97213,
java.lang.Object(
Tree(
NULL,
o97270,
o97271)),
o97210,
o97270)
Load44066(
o97213,
java.lang.Object(
Tree(
NULL,
o97263,
o97264)),
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
NULL,
o97263,
o97264))) →
Store44491(
o97213,
java.lang.Object(
Tree(
NULL,
o97263,
o97264)),
o97210,
o97263)
Load37906(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2))) →
Load44066(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Store37702(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
o66987) →
Load44066(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
NULL,
o66987,
o66988))) →
Load44066(
o66388,
o66387,
o66987,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
JMP46979(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99119,
java.lang.Object(
Tree(
o99120,
o97249,
NULL)),
NULL))) →
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99119,
java.lang.Object(
Tree(
o99120,
o97249,
NULL)),
NULL)))
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99119,
o99120,
o99121)),
o97249,
o97250))) →
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99119,
java.lang.Object(
Tree(
o99120,
o97249,
NULL)),
NULL)))
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257))) →
Load44066(
o97213,
o97212,
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99165,
o99166,
o99167)),
o97256,
o97257)),
java.lang.Object(
Tree(
o99165,
java.lang.Object(
Tree(
o99166,
o97256,
NULL)),
NULL)))
Load44066(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271))) →
Load44066(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
o97210,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99277,
o99278,
o99279)),
o97270,
o97271)),
java.lang.Object(
Tree(
o99277,
java.lang.Object(
Tree(
o99278,
o97270,
NULL)),
NULL)))
Load36791(
o66388,
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
NULL,
o66992,
o66993)),
java.lang.Object(
Tree(
NULL,
o66992,
o66993))) →
Load37906(
o66388,
o66387,
o66992,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Load36791(
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
java.lang.Object(
Tree(
NULL,
o67002,
o67003))) →
Load37906(
java.lang.Object(
Tree(
NULL,
o67002,
o67003)),
o66387,
o67002,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)))
Load36791(
java.lang.Object(
Tree(
NULL,
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
java.lang.Object(
Tree(
o66385Field0,
o66385Field1,
o66385Field2)),
java.lang.Object(
Tree(
NULL,
o66997,
o66998))) →
Store37702(
java.lang.Object(
Tree(
NULL,
o66997,
o66998)),
o66387,
java.lang.Object(
Tree(
o66386Field0,
o66386Field1,
o66386Field2)),
o66997)
Load44066(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99224,
o99225,
o99226)),
o97263,
o97264)),
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99224,
o99225,
o99226)),
o97263,
o97264))) →
JMP46979(
o97213,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o99224,
o99225,
o99226)),
o97263,
o97264)),
o97210,
java.lang.Object(
Tree(
o97211Field0,
o97211Field1,
o97211Field2)),
java.lang.Object(
Tree(
o99224,
java.lang.Object(
Tree(
o99225,
o97263,
NULL)),
NULL)))
The set Q consists of the following terms:
Load31330(
x0,
x1,
x2,
x3)
NULL31532(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)))
Load31861(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)))
JMP43433(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
Tree(
x8,
java.lang.Object(
Tree(
x9,
x10,
NULL)),
NULL)))
Load36791(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x8,
x9,
x10)),
x11,
x12)))
JMP44585(
x0,
x1,
x2,
x3)
Store44491(
x0,
x1,
x2,
x3)
Load44066(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
NULL,
x6,
x7)))
Load37906(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)))
Store37702(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
x5)
Load36791(
x0,
x1,
java.lang.Object(
Tree(
x2,
x3,
x4)),
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
Tree(
NULL,
x8,
x9)))
JMP46979(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
NULL)),
NULL)))
Load44066(
x0,
x1,
x2,
java.lang.Object(
Tree(
x3,
x4,
x5)),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)))
(8) ITRStoQTRSProof (EQUIVALENT transformation)
Represented integers and predefined function symbols by Terms
(9) Obligation:
Q restricted rewrite system:
The TRS R consists of the following rules:
Load31330(o48160, o48159, o48157, o48158) → NULL31532(o48160, o48159, o48158, o48157)
NULL31532(o48592, o48591, o48590, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2))) → Load31861(o48592, o48591, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2)), o48590)
Load31861(o49481, o49480, java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2))) → Load36791(o49481, o49480, java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)))
JMP43433(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
Load36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → Load36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
Load36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP43433(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP44585(o97213, o97212, o97210, o97249) → Load31330(o97213, o97212, o97210, o97249)
Store44491(o97213, o97212, o97210, o97249) → Load31330(o97213, o97212, o97210, o97249)
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97249, o97250))) → Load31330(o97213, o97212, o97210, o97249)
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(NULL, o97256, o97257)), java.lang.Object(Tree(NULL, o97256, o97257))) → JMP44585(o97213, o97212, o97210, o97256)
Load44066(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, java.lang.Object(Tree(NULL, o97270, o97271)), java.lang.Object(Tree(NULL, o97270, o97271))) → JMP44585(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, o97270)
Load44066(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97263, o97264))) → Store44491(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, o97263)
Load37906(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2))) → Load44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Store37702(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66987) → Load44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66987, o66988))) → Load44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
JMP46979(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → Load44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
Load44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → Load44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o66992, o66993)), java.lang.Object(Tree(NULL, o66992, o66993))) → Load37906(o66388, o66387, o66992, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Load36791(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o67002, o67003)), java.lang.Object(Tree(NULL, o67002, o67003))) → Load37906(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, o67002, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Load36791(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66997, o66998))) → Store37702(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66997)
Load44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP46979(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
The set Q consists of the following terms:
Load31330(x0, x1, x2, x3)
NULL31532(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Load31861(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)))
JMP43433(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, NULL)), NULL)))
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
JMP44585(x0, x1, x2, x3)
Store44491(x0, x1, x2, x3)
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(NULL, x6, x7)))
Load37906(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Store37702(x0, x1, java.lang.Object(Tree(x2, x3, x4)), x5)
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
JMP46979(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(x6, java.lang.Object(Tree(x7, x8, NULL)), NULL)))
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(java.lang.Object(Tree(x6, x7, x8)), x9, x10)))
(10) DependencyPairsProof (EQUIVALENT transformation)
Using Dependency Pairs [AG00,LPAR04] we result in the following initial DP problem.
(11) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD31330(o48160, o48159, o48157, o48158) → NULL315321(o48160, o48159, o48158, o48157)
NULL315321(o48592, o48591, o48590, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2))) → LOAD31861(o48592, o48591, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2)), o48590)
LOAD31861(o49481, o49480, java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2))) → LOAD36791(o49481, o49480, java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)))
JMP434331(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP434331(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP445851(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
STORE44491(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97249, o97250))) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(NULL, o97256, o97257)), java.lang.Object(Tree(NULL, o97256, o97257))) → JMP445851(o97213, o97212, o97210, o97256)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, java.lang.Object(Tree(NULL, o97270, o97271)), java.lang.Object(Tree(NULL, o97270, o97271))) → JMP445851(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, o97270)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97263, o97264))) → STORE44491(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, o97263)
LOAD37906(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
STORE37702(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66987) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66987, o66988))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
JMP469791(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o66992, o66993)), java.lang.Object(Tree(NULL, o66992, o66993))) → LOAD37906(o66388, o66387, o66992, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o67002, o67003)), java.lang.Object(Tree(NULL, o67002, o67003))) → LOAD37906(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, o67002, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66997, o66998))) → STORE37702(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66997)
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP469791(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
The TRS R consists of the following rules:
Load31330(o48160, o48159, o48157, o48158) → NULL31532(o48160, o48159, o48158, o48157)
NULL31532(o48592, o48591, o48590, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2))) → Load31861(o48592, o48591, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2)), o48590)
Load31861(o49481, o49480, java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2))) → Load36791(o49481, o49480, java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)))
JMP43433(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
Load36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → Load36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
Load36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP43433(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP44585(o97213, o97212, o97210, o97249) → Load31330(o97213, o97212, o97210, o97249)
Store44491(o97213, o97212, o97210, o97249) → Load31330(o97213, o97212, o97210, o97249)
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97249, o97250))) → Load31330(o97213, o97212, o97210, o97249)
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(NULL, o97256, o97257)), java.lang.Object(Tree(NULL, o97256, o97257))) → JMP44585(o97213, o97212, o97210, o97256)
Load44066(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, java.lang.Object(Tree(NULL, o97270, o97271)), java.lang.Object(Tree(NULL, o97270, o97271))) → JMP44585(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, o97270)
Load44066(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97263, o97264))) → Store44491(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, o97263)
Load37906(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2))) → Load44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Store37702(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66987) → Load44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66987, o66988))) → Load44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
JMP46979(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → Load44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
Load44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → Load44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
Load44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → Load44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
Load36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o66992, o66993)), java.lang.Object(Tree(NULL, o66992, o66993))) → Load37906(o66388, o66387, o66992, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Load36791(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o67002, o67003)), java.lang.Object(Tree(NULL, o67002, o67003))) → Load37906(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, o67002, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
Load36791(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66997, o66998))) → Store37702(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66997)
Load44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP46979(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
The set Q consists of the following terms:
Load31330(x0, x1, x2, x3)
NULL31532(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Load31861(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)))
JMP43433(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, NULL)), NULL)))
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
JMP44585(x0, x1, x2, x3)
Store44491(x0, x1, x2, x3)
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(NULL, x6, x7)))
Load37906(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Store37702(x0, x1, java.lang.Object(Tree(x2, x3, x4)), x5)
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
JMP46979(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(x6, java.lang.Object(Tree(x7, x8, NULL)), NULL)))
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(java.lang.Object(Tree(x6, x7, x8)), x9, x10)))
We have to consider all minimal (P,Q,R)-chains.
(12) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(13) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD31330(o48160, o48159, o48157, o48158) → NULL315321(o48160, o48159, o48158, o48157)
NULL315321(o48592, o48591, o48590, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2))) → LOAD31861(o48592, o48591, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2)), o48590)
LOAD31861(o49481, o49480, java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2))) → LOAD36791(o49481, o49480, java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)))
JMP434331(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP434331(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP445851(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
STORE44491(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97249, o97250))) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(NULL, o97256, o97257)), java.lang.Object(Tree(NULL, o97256, o97257))) → JMP445851(o97213, o97212, o97210, o97256)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, java.lang.Object(Tree(NULL, o97270, o97271)), java.lang.Object(Tree(NULL, o97270, o97271))) → JMP445851(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, o97270)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97263, o97264))) → STORE44491(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, o97263)
LOAD37906(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
STORE37702(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66987) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66987, o66988))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
JMP469791(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o66992, o66993)), java.lang.Object(Tree(NULL, o66992, o66993))) → LOAD37906(o66388, o66387, o66992, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o67002, o67003)), java.lang.Object(Tree(NULL, o67002, o67003))) → LOAD37906(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, o67002, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66997, o66998))) → STORE37702(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66997)
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP469791(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
R is empty.
The set Q consists of the following terms:
Load31330(x0, x1, x2, x3)
NULL31532(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Load31861(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)))
JMP43433(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, NULL)), NULL)))
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
JMP44585(x0, x1, x2, x3)
Store44491(x0, x1, x2, x3)
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(NULL, x6, x7)))
Load37906(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Store37702(x0, x1, java.lang.Object(Tree(x2, x3, x4)), x5)
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
JMP46979(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(x6, java.lang.Object(Tree(x7, x8, NULL)), NULL)))
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(java.lang.Object(Tree(x6, x7, x8)), x9, x10)))
We have to consider all minimal (P,Q,R)-chains.
(14) QReductionProof (EQUIVALENT transformation)
We deleted the following terms from Q as each root-symbol of these terms does neither occur in P nor in R.[THIEMANN].
Load31330(x0, x1, x2, x3)
NULL31532(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Load31861(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)))
JMP43433(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(x8, java.lang.Object(Tree(x9, x10, NULL)), NULL)))
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(java.lang.Object(Tree(x8, x9, x10)), x11, x12)))
JMP44585(x0, x1, x2, x3)
Store44491(x0, x1, x2, x3)
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(NULL, x6, x7)))
Load37906(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)))
Store37702(x0, x1, java.lang.Object(Tree(x2, x3, x4)), x5)
Load36791(x0, x1, java.lang.Object(Tree(x2, x3, x4)), java.lang.Object(Tree(x5, x6, x7)), java.lang.Object(Tree(NULL, x8, x9)))
JMP46979(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(x6, java.lang.Object(Tree(x7, x8, NULL)), NULL)))
Load44066(x0, x1, x2, java.lang.Object(Tree(x3, x4, x5)), java.lang.Object(Tree(java.lang.Object(Tree(x6, x7, x8)), x9, x10)))
(15) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD31330(o48160, o48159, o48157, o48158) → NULL315321(o48160, o48159, o48158, o48157)
NULL315321(o48592, o48591, o48590, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2))) → LOAD31861(o48592, o48591, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2)), o48590)
LOAD31861(o49481, o49480, java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2))) → LOAD36791(o49481, o49480, java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)))
JMP434331(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP434331(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP445851(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
STORE44491(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97249, o97250))) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(NULL, o97256, o97257)), java.lang.Object(Tree(NULL, o97256, o97257))) → JMP445851(o97213, o97212, o97210, o97256)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, java.lang.Object(Tree(NULL, o97270, o97271)), java.lang.Object(Tree(NULL, o97270, o97271))) → JMP445851(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, o97270)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97263, o97264))) → STORE44491(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, o97263)
LOAD37906(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
STORE37702(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66987) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66987, o66988))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
JMP469791(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o66992, o66993)), java.lang.Object(Tree(NULL, o66992, o66993))) → LOAD37906(o66388, o66387, o66992, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o67002, o67003)), java.lang.Object(Tree(NULL, o67002, o67003))) → LOAD37906(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, o67002, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66997, o66998))) → STORE37702(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66997)
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP469791(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(16) QDPOrderProof (EQUIVALENT transformation)
We use the reduction pair processor [LPAR04].
The following pairs can be oriented strictly and are deleted.
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97249, o97250))) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(NULL, o97256, o97257)), java.lang.Object(Tree(NULL, o97256, o97257))) → JMP445851(o97213, o97212, o97210, o97256)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, java.lang.Object(Tree(NULL, o97270, o97271)), java.lang.Object(Tree(NULL, o97270, o97271))) → JMP445851(o97213, java.lang.Object(Tree(NULL, o97270, o97271)), o97210, o97270)
LOAD44066(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(NULL, o97263, o97264))) → STORE44491(o97213, java.lang.Object(Tree(NULL, o97263, o97264)), o97210, o97263)
The remaining pairs can at least be oriented weakly.
Used ordering: Polynomial interpretation [POLO]:
POL(JMP434331(x1, x2, x3, x4, x5)) = x2 + x3
POL(JMP445851(x1, x2, x3, x4)) = x2 + x4
POL(JMP469791(x1, x2, x3, x4, x5)) = x2 + x5
POL(LOAD31330(x1, x2, x3, x4)) = x2 + x4
POL(LOAD31861(x1, x2, x3, x4)) = x2 + x4
POL(LOAD36791(x1, x2, x3, x4, x5)) = x2 + x3
POL(LOAD37906(x1, x2, x3, x4)) = x2 + x4
POL(LOAD44066(x1, x2, x3, x4, x5)) = x2 + x5
POL(NULL) = 1
POL(NULL315321(x1, x2, x3, x4)) = x2 + x3
POL(STORE37702(x1, x2, x3, x4)) = x2 + x3
POL(STORE44491(x1, x2, x3, x4)) = x2 + x4
POL(Tree(x1, x2, x3)) = x1 + x2
POL(java.lang.Object(x1)) = x1
The following usable rules [FROCOS05] were oriented:
none
(17) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD31330(o48160, o48159, o48157, o48158) → NULL315321(o48160, o48159, o48158, o48157)
NULL315321(o48592, o48591, o48590, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2))) → LOAD31861(o48592, o48591, java.lang.Object(Tree(o49086Field0, o49086Field1, o49086Field2)), o48590)
LOAD31861(o49481, o49480, java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2))) → LOAD36791(o49481, o49480, java.lang.Object(Tree(o50362Field0, o50362Field1, o50362Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)), java.lang.Object(Tree(o49478Field0, o49478Field1, o49478Field2)))
JMP434331(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP434331(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP445851(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
STORE44491(o97213, o97212, o97210, o97249) → LOAD31330(o97213, o97212, o97210, o97249)
LOAD37906(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
STORE37702(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66987) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66987, o66988))) → LOAD44066(o66388, o66387, o66987, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
JMP469791(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o66992, o66993)), java.lang.Object(Tree(NULL, o66992, o66993))) → LOAD37906(o66388, o66387, o66992, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(NULL, o67002, o67003)), java.lang.Object(Tree(NULL, o67002, o67003))) → LOAD37906(java.lang.Object(Tree(NULL, o67002, o67003)), o66387, o67002, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)))
LOAD36791(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(NULL, o66997, o66998))) → STORE37702(java.lang.Object(Tree(NULL, o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), o66997)
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP469791(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(18) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 2 SCCs with 11 less nodes.
(19) Complex Obligation (AND)
(20) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP469791(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
JMP469791(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(21) MRRProof (EQUIVALENT transformation)
By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented.
Strictly oriented dependency pairs:
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99119, o99120, o99121)), o97249, o97250))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99165, o99166, o99167)), o97256, o97257)), java.lang.Object(Tree(o99165, java.lang.Object(Tree(o99166, o97256, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264))) → JMP469791(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99224, o99225, o99226)), o97263, o97264)), o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99224, java.lang.Object(Tree(o99225, o97263, NULL)), NULL)))
JMP469791(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL))) → LOAD44066(o97213, o97212, o97210, java.lang.Object(Tree(o97211Field0, o97211Field1, o97211Field2)), java.lang.Object(Tree(o99119, java.lang.Object(Tree(o99120, o97249, NULL)), NULL)))
LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271))) → LOAD44066(o97213, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), o97210, java.lang.Object(Tree(java.lang.Object(Tree(o99277, o99278, o99279)), o97270, o97271)), java.lang.Object(Tree(o99277, java.lang.Object(Tree(o99278, o97270, NULL)), NULL)))
Used ordering: Polynomial interpretation [POLO]:
POL(JMP469791(x1, x2, x3, x4, x5)) = 2 + x1 + x2 + x3 + 2·x4 + 2·x5
POL(LOAD44066(x1, x2, x3, x4, x5)) = x1 + x2 + x3 + 2·x4 + 2·x5
POL(NULL) = 0
POL(Tree(x1, x2, x3)) = 2·x1 + x2 + 2·x3
POL(java.lang.Object(x1)) = 2 + x1
(22) Obligation:
Q DP problem:
P is empty.
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(23) PisEmptyProof (EQUIVALENT transformation)
The TRS P is empty. Hence, there is no (P,Q,R) chain.
(24) TRUE
(25) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP434331(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
JMP434331(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(26) MRRProof (EQUIVALENT transformation)
By using the rule removal processor [LPAR04] with the following ordering, at least one Dependency Pair or term rewrite system rule of this QDP problem can be strictly oriented.
Strictly oriented dependency pairs:
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68588, o68589, o68590)), o66987, o66988))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68614, o68615, o68616)), o66992, o66993)), java.lang.Object(Tree(o68614, java.lang.Object(Tree(o68615, o66992, NULL)), NULL)))
JMP434331(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL))) → LOAD36791(o66388, o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68588, java.lang.Object(Tree(o68589, o66987, NULL)), NULL)))
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003))) → LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68686, o68687, o68688)), o67002, o67003)), java.lang.Object(Tree(o68686, java.lang.Object(Tree(o68687, o67002, NULL)), NULL)))
Used ordering: Polynomial interpretation [POLO]:
POL(JMP434331(x1, x2, x3, x4, x5)) = 2 + 2·x1 + x2 + 2·x3 + x4 + x5
POL(LOAD36791(x1, x2, x3, x4, x5)) = 2·x1 + x2 + 2·x3 + x4 + x5
POL(NULL) = 0
POL(Tree(x1, x2, x3)) = 2·x1 + x2 + 2·x3
POL(java.lang.Object(x1)) = 2 + x1
(27) Obligation:
Q DP problem:
The TRS P consists of the following rules:
LOAD36791(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998))) → JMP434331(java.lang.Object(Tree(java.lang.Object(Tree(o68654, o68655, o68656)), o66997, o66998)), o66387, java.lang.Object(Tree(o66386Field0, o66386Field1, o66386Field2)), java.lang.Object(Tree(o66385Field0, o66385Field1, o66385Field2)), java.lang.Object(Tree(o68654, java.lang.Object(Tree(o68655, o66997, NULL)), NULL)))
R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
(28) DependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 1 less node.
(29) TRUE
(30) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC)))) →
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR1(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)))
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059))) →
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR2(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)))
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982))) →
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR3(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)))
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC)))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
JMP42561(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC)))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
NULL,
o70982))) →
Load36231ARR4(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
NULL,
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR4(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR4(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR4(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC)))) →
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR5(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)))
JMP42611(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC)))) →
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o71058,
o71059))) →
Load36231ARR6(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR6(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR6(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR6(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC)))) →
Load36231ARR7(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR7(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR7(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR7(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
JMP42561(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC)))) →
Load36231ARR8(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR8(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR8(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR8(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP42611(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))))
The set Q consists of the following terms:
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
x7,
x8)))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)))
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)),
java.lang.Object(
java.lang.String(
x11,
x12,
x13,
x14)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)),
java.lang.Object(
java.lang.String(
x11,
x12,
x13,
x14)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
x7,
x8)))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
x9)),
x10)))
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
x9)),
x10)),
java.lang.Object(
java.lang.String(
0,
x11,
x12,
x13)))
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
x9)),
x10)),
java.lang.Object(
java.lang.String(
0,
x11,
x12,
x13)))
Inc42733(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))))
JMP42561(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
NULL,
x7)))
Load36231ARR4(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x7)),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
Cond_Load36231ARR4(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x7)),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x4,
x5,
x6)),
x7,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x4,
x5,
x6)),
x7,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x4,
x5,
x6)),
x7,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x4,
x5,
x6)),
x7,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
JMP42611(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
x6,
x7)))
Load36231ARR6(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x6,
x7)),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
Cond_Load36231ARR6(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x6,
x7)),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
Load36231ARR7(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x5,
x6,
x7)))
Cond_Load36231ARR7(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x5,
x6,
x7)))
Load36231ARR8(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x4,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x4,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x5,
x6,
x7,
x8)))
Cond_Load36231ARR8(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x4,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x4,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x5,
x6,
x7,
x8)))
(31) DuplicateArgsRemoverProof (EQUIVALENT transformation)
Some arguments are removed because they only appear as duplicates.
We removed arguments according to the following replacements:
JMP42611(x1, x2, x3, x4, x5) → JMP42611(x1, x2, x3, x5)
Cond_Load36231ARR8(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR8(x1, x2, x3, x4, x6, x7)
Load36231ARR8(x1, x2, x3, x4, x5, x6) → Load36231ARR8(x1, x2, x3, x5, x6)
JMP42561(x1, x2, x3, x4, x5) → JMP42561(x1, x2, x3, x5)
Cond_Load36231ARR7(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR7(x1, x2, x3, x4, x6, x7)
Load36231ARR7(x1, x2, x3, x4, x5, x6) → Load36231ARR7(x1, x2, x3, x5, x6)
Inc42733(x1, x2, x3, x4, x5) → Inc42733(x1, x2, x3, x5)
Cond_Load36231ARR5(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR5(x1, x2, x3, x4, x6, x7)
Load36231ARR5(x1, x2, x3, x4, x5, x6) → Load36231ARR5(x1, x2, x3, x5, x6)
Cond_Load36231ARR1(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR1(x1, x2, x3, x4, x6, x7)
Load36231ARR1(x1, x2, x3, x4, x5, x6) → Load36231ARR1(x1, x2, x3, x5, x6)
(32) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC)))) →
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR1(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o71512Field0,
o71512Field1,
o71512Field2)))
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059))) →
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR2(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72272Field0,
o72272Field1,
o72272Field2)))
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982))) →
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR3(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o72092Field0,
o72092Field1,
o72092Field2)))
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC)))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
JMP42561(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC)))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
NULL,
o70982))) →
Load36231ARR4(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
NULL,
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR4(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR4(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR4(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o70980,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o70982)),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC)))) →
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR5(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o71695Field0,
o71695Field1,
o71695Field2)))
JMP42611(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC)))) →
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o71058,
o71059))) →
Load36231ARR6(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR6(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR6(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR6(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o71058,
o71059)),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
o64336,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC)))) →
Load36231ARR7(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Load36231ARR7(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR7(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022)))
Cond_Load36231ARR7(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i20843,
i20845,
a49022))) →
JMP42561(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
o64335,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC)))) →
Load36231ARR8(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
NULL,
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR8(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR8(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR8(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP42611(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o64336,
java.lang.Object(
EOC))))
The set Q consists of the following terms:
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
x5,
x6,
x7)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
x7,
x8)))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)))
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)),
java.lang.Object(
java.lang.String(
x11,
x12,
x13,
x14)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x6,
x7,
x8)),
x9,
x10)),
java.lang.Object(
java.lang.String(
x11,
x12,
x13,
x14)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
x7,
x8)))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
x9)),
x10)))
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
x9)),
x10)),
java.lang.Object(
java.lang.String(
0,
x11,
x12,
x13)))
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
x7,
x8,
x9)),
x10)),
java.lang.Object(
java.lang.String(
0,
x11,
x12,
x13)))
Inc42733(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))))
JMP42561(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
NULL,
x7)))
Load36231ARR4(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x7)),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
Cond_Load36231ARR4(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
x6,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x7)),
java.lang.Object(
java.lang.String(
0,
x8,
x9,
x10)))
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x4,
x5,
x6)),
x7,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
x4,
x5,
x6)),
x7,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
JMP42611(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))))
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
x6,
x7)))
Load36231ARR6(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x6,
x7)),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
Cond_Load36231ARR6(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
x5,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x6,
x7)),
java.lang.Object(
java.lang.String(
x8,
x9,
x10,
x11)))
Load36231ARR7(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x5,
x6,
x7)))
Cond_Load36231ARR7(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
x4,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
x5,
x6,
x7)))
Load36231ARR8(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x4,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x5,
x6,
x7,
x8)))
Cond_Load36231ARR8(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
x4,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
x5,
x6,
x7,
x8)))
(33) ITRSFilterProcessorProof (SOUND transformation)
We filter according the heuristic IdpCand1ShapeHeuristic
We removed arguments according to the following replacements:
Load36231(x1, x2, x3, x4, x5) → Load36231(x1, x2, x3)
Tree(x1, x2, x3) → Tree
Load36231ARR1(x1, x2, x3, x4, x5) → Load36231ARR1(x1, x2, x3)
Cond_Load36231ARR1(x1, x2, x3, x4, x5, x6) → Cond_Load36231ARR1(x1, x2, x3, x4)
Inc40003(x1, x2, x3, x4, x5) → Inc40003(x1, x2, x3)
JMP40088(x1, x2, x3, x4, x5) → JMP40088(x1, x2, x3)
Load36231ARR2(x1, x2, x3, x4, x5, x6) → Load36231ARR2(x1, x2, x3, x6)
Cond_Load36231ARR2(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR2(x1, x2, x3, x4, x7)
Load36231ARR3(x1, x2, x3, x4, x5, x6) → Load36231ARR3(x1, x2, x3)
Cond_Load36231ARR3(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR3(x1, x2, x3, x4)
Inc42733(x1, x2, x3, x4) → Inc42733(x1, x2, x3)
JMP42561(x1, x2, x3, x4) → JMP42561(x1, x2, x3)
Load36231ARR4(x1, x2, x3, x4, x5, x6) → Load36231ARR4(x1, x2, x3)
Cond_Load36231ARR4(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR4(x1, x2, x3, x4)
Load36231ARR5(x1, x2, x3, x4, x5) → Load36231ARR5(x1, x2, x3, x5)
Cond_Load36231ARR5(x1, x2, x3, x4, x5, x6) → Cond_Load36231ARR5(x1, x2, x3, x4, x6)
JMP42611(x1, x2, x3, x4) → JMP42611(x1, x2, x3)
Load36231ARR6(x1, x2, x3, x4, x5, x6) → Load36231ARR6(x1, x2, x3, x6)
Cond_Load36231ARR6(x1, x2, x3, x4, x5, x6, x7) → Cond_Load36231ARR6(x1, x2, x3, x4, x7)
Load36231ARR7(x1, x2, x3, x4, x5) → Load36231ARR7(x1, x2, x3)
Cond_Load36231ARR7(x1, x2, x3, x4, x5, x6) → Cond_Load36231ARR7(x1, x2, x3, x4)
Load36231ARR8(x1, x2, x3, x4, x5) → Load36231ARR8(x1, x2, x3, x5)
Cond_Load36231ARR8(x1, x2, x3, x4, x5, x6) → Cond_Load36231ARR8(x1, x2, x3, x4, x6)
(34) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR1(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR2(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR3(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1)
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1)
JMP42561(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR4(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR4(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR4(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR4(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR5(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
JMP42611(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR6(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR6(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR6(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR6(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc42733(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR7(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR7(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR7(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR7(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
JMP42561(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR8(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR8(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR8(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR8(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP42611(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Inc42733(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP42561(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR4(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR4(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
JMP42611(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR6(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR6(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Load36231ARR7(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR7(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR8(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR8(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(35) ITRSFSMergerProof (SOUND transformation)
The following function symbols have been merged:
Load36231ARR1, Load36231ARR7 | > | Load36231ARR1_3 |
Load36231ARR3, Load36231ARR4 | > | Load36231ARR3_3 |
Cond_Load36231ARR1, Cond_Load36231ARR7 | > | Cond_Load36231ARR1_4 |
JMP40088, JMP42611 | > | JMP40088_3 |
Load36231ARR2, Load36231ARR6 | > | Load36231ARR2_4 |
Load36231ARR5, Load36231ARR8 | > | Load36231ARR5_4 |
Cond_Load36231ARR5, Cond_Load36231ARR8 | > | Cond_Load36231ARR5_5 |
Cond_Load36231ARR2, Cond_Load36231ARR6 | > | Cond_Load36231ARR2_5 |
Inc40003, Inc42733, JMP42561 | > | Inc40003_3 |
Cond_Load36231ARR3, Cond_Load36231ARR4 | > | Cond_Load36231ARR3_4 |
(36) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR1(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR2(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR3(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR5(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(37) ITRStoIDPProof (EQUIVALENT transformation)
Added dependency pairs
(38) Obligation:
IDP problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The following domains are used:
Boolean, Integer
The ITRS R consists of the following rules:
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR1(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR2(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
Inc40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Load36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Cond_Load36231ARR3(
i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355 + -1)
Load36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Load36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
Cond_Load36231ARR5(
i21156 > 0 && i20225 > 0 && i20225 < i2 && i20355 > 0 && i20225 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP40088(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225 + 1,
i20355)
The integer pair graph contains the following rules and edges:
(0):
LOAD36231(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0]) →
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0])
(1):
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[1],
a47355data[1])),
i20225[1],
i20355[1]) →
COND_LOAD36231ARR1(
i20225[1] > 0 && i20225[1] < i2[1] && i20355[1] > 0 && i20225[1] + 1 > 0,
java.lang.Object(
ARRAY(
i2[1],
a47355data[1])),
i20225[1],
i20355[1])
(2):
COND_LOAD36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2],
i20355[2]) →
INC40003(
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2] + 1,
i20355[2])
(3):
JMP40088'(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3]) →
INC40003(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3])
(4):
LOAD36231(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4]) →
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4],
java.lang.Object(
java.lang.String(
i21156[4],
i20843[4],
i20845[4],
a49022[4])))
(5):
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5]))) →
COND_LOAD36231ARR2(
i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0,
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5])))
(6):
COND_LOAD36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6],
i20355[6],
java.lang.Object(
java.lang.String(
i21156[6],
i20843[6],
i20845[6],
a49022[6]))) →
INC40003(
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6] + 1,
i20355[6])
(7):
INC40003(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7] + -1)
(8):
LOAD36231(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8]) →
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8])
(9):
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[9],
a47355data[9])),
i20225[9],
i20355[9]) →
COND_LOAD36231ARR3(
i20225[9] > 0 && i20225[9] < i2[9] && i20355[9] > 0 && i20225[9] + 1 > 0,
java.lang.Object(
ARRAY(
i2[9],
a47355data[9])),
i20225[9],
i20355[9])
(10):
COND_LOAD36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10],
i20355[10]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10] + 1,
i20355[10] + -1)
(11):
LOAD36231(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11]) →
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11],
java.lang.Object(
java.lang.String(
i21156[11],
i20843[11],
i20845[11],
a49022[11])))
(12):
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12]))) →
COND_LOAD36231ARR5(
i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0,
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12])))
(13):
COND_LOAD36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13],
i20355[13],
java.lang.Object(
java.lang.String(
i21156[13],
i20843[13],
i20845[13],
a49022[13]))) →
JMP40088'(
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13] + 1,
i20355[13])
(0) -> (1), if ((i20225[0] →* i20225[1])∧(i20355[0] →* i20355[1])∧(java.lang.Object(ARRAY(i2[0], a47355data[0])) →* java.lang.Object(ARRAY(i2[1], a47355data[1]))))
(1) -> (2), if ((i20225[1] > 0 && i20225[1] < i2[1] && i20355[1] > 0 && i20225[1] + 1 > 0 →* TRUE)∧(java.lang.Object(ARRAY(i2[1], a47355data[1])) →* java.lang.Object(ARRAY(i2[2], a47355data[2])))∧(i20355[1] →* i20355[2])∧(i20225[1] →* i20225[2]))
(2) -> (7), if ((i20225[2] + 1 →* i20581[7])∧(java.lang.Object(ARRAY(i2[2], a47355data[2])) →* java.lang.Object(ARRAY(i2[7], a47355data[7])))∧(i20355[2] →* i20355[7]))
(3) -> (7), if ((java.lang.Object(ARRAY(i2[3], a47355data[3])) →* java.lang.Object(ARRAY(i2[7], a47355data[7])))∧(i20581[3] →* i20581[7])∧(i20355[3] →* i20355[7]))
(4) -> (5), if ((java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])) →* java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))∧(i20355[4] →* i20355[5])∧(i20225[4] →* i20225[5])∧(java.lang.Object(ARRAY(i2[4], a47355data[4])) →* java.lang.Object(ARRAY(i2[5], a47355data[5]))))
(5) -> (6), if ((i20355[5] →* i20355[6])∧(i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0 →* TRUE)∧(i20225[5] →* i20225[6])∧(java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])) →* java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6])))∧(java.lang.Object(ARRAY(i2[5], a47355data[5])) →* java.lang.Object(ARRAY(i2[6], a47355data[6]))))
(6) -> (7), if ((i20355[6] →* i20355[7])∧(java.lang.Object(ARRAY(i2[6], a47355data[6])) →* java.lang.Object(ARRAY(i2[7], a47355data[7])))∧(i20225[6] + 1 →* i20581[7]))
(7) -> (0), if ((java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[0], a47355data[0])))∧(i20581[7] →* i20225[0])∧(i20355[7] + -1 →* i20355[0]))
(7) -> (4), if ((i20355[7] + -1 →* i20355[4])∧(java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[4], a47355data[4])))∧(i20581[7] →* i20225[4]))
(7) -> (8), if ((i20355[7] + -1 →* i20355[8])∧(i20581[7] →* i20225[8])∧(java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[8], a47355data[8]))))
(7) -> (11), if ((java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[11], a47355data[11])))∧(i20581[7] →* i20225[11])∧(i20355[7] + -1 →* i20355[11]))
(8) -> (9), if ((i20225[8] →* i20225[9])∧(java.lang.Object(ARRAY(i2[8], a47355data[8])) →* java.lang.Object(ARRAY(i2[9], a47355data[9])))∧(i20355[8] →* i20355[9]))
(9) -> (10), if ((i20225[9] > 0 && i20225[9] < i2[9] && i20355[9] > 0 && i20225[9] + 1 > 0 →* TRUE)∧(i20355[9] →* i20355[10])∧(java.lang.Object(ARRAY(i2[9], a47355data[9])) →* java.lang.Object(ARRAY(i2[10], a47355data[10])))∧(i20225[9] →* i20225[10]))
(10) -> (0), if ((java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[0], a47355data[0])))∧(i20355[10] + -1 →* i20355[0])∧(i20225[10] + 1 →* i20225[0]))
(10) -> (4), if ((i20225[10] + 1 →* i20225[4])∧(java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[4], a47355data[4])))∧(i20355[10] + -1 →* i20355[4]))
(10) -> (8), if ((i20355[10] + -1 →* i20355[8])∧(i20225[10] + 1 →* i20225[8])∧(java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[8], a47355data[8]))))
(10) -> (11), if ((i20355[10] + -1 →* i20355[11])∧(i20225[10] + 1 →* i20225[11])∧(java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[11], a47355data[11]))))
(11) -> (12), if ((i20355[11] →* i20355[12])∧(java.lang.Object(ARRAY(i2[11], a47355data[11])) →* java.lang.Object(ARRAY(i2[12], a47355data[12])))∧(java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])) →* java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))∧(i20225[11] →* i20225[12]))
(12) -> (13), if ((i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0 →* TRUE)∧(i20225[12] →* i20225[13])∧(java.lang.Object(ARRAY(i2[12], a47355data[12])) →* java.lang.Object(ARRAY(i2[13], a47355data[13])))∧(java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])) →* java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13])))∧(i20355[12] →* i20355[13]))
(13) -> (3), if ((i20355[13] →* i20355[3])∧(i20225[13] + 1 →* i20581[3])∧(java.lang.Object(ARRAY(i2[13], a47355data[13])) →* java.lang.Object(ARRAY(i2[3], a47355data[3]))))
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(39) UsableRulesProof (EQUIVALENT transformation)
As all Q-normal forms are R-normal forms we are in the innermost case. Hence, by the usable rules processor [LPAR04] we can delete all non-usable rules [FROCOS05] from R.
(40) Obligation:
IDP problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The following domains are used:
Boolean, Integer
R is empty.
The integer pair graph contains the following rules and edges:
(0):
LOAD36231(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0]) →
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0])
(1):
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[1],
a47355data[1])),
i20225[1],
i20355[1]) →
COND_LOAD36231ARR1(
i20225[1] > 0 && i20225[1] < i2[1] && i20355[1] > 0 && i20225[1] + 1 > 0,
java.lang.Object(
ARRAY(
i2[1],
a47355data[1])),
i20225[1],
i20355[1])
(2):
COND_LOAD36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2],
i20355[2]) →
INC40003(
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2] + 1,
i20355[2])
(3):
JMP40088'(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3]) →
INC40003(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3])
(4):
LOAD36231(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4]) →
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4],
java.lang.Object(
java.lang.String(
i21156[4],
i20843[4],
i20845[4],
a49022[4])))
(5):
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5]))) →
COND_LOAD36231ARR2(
i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0,
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5])))
(6):
COND_LOAD36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6],
i20355[6],
java.lang.Object(
java.lang.String(
i21156[6],
i20843[6],
i20845[6],
a49022[6]))) →
INC40003(
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6] + 1,
i20355[6])
(7):
INC40003(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7] + -1)
(8):
LOAD36231(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8]) →
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8])
(9):
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[9],
a47355data[9])),
i20225[9],
i20355[9]) →
COND_LOAD36231ARR3(
i20225[9] > 0 && i20225[9] < i2[9] && i20355[9] > 0 && i20225[9] + 1 > 0,
java.lang.Object(
ARRAY(
i2[9],
a47355data[9])),
i20225[9],
i20355[9])
(10):
COND_LOAD36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10],
i20355[10]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10] + 1,
i20355[10] + -1)
(11):
LOAD36231(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11]) →
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11],
java.lang.Object(
java.lang.String(
i21156[11],
i20843[11],
i20845[11],
a49022[11])))
(12):
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12]))) →
COND_LOAD36231ARR5(
i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0,
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12])))
(13):
COND_LOAD36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13],
i20355[13],
java.lang.Object(
java.lang.String(
i21156[13],
i20843[13],
i20845[13],
a49022[13]))) →
JMP40088'(
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13] + 1,
i20355[13])
(0) -> (1), if ((i20225[0] →* i20225[1])∧(i20355[0] →* i20355[1])∧(java.lang.Object(ARRAY(i2[0], a47355data[0])) →* java.lang.Object(ARRAY(i2[1], a47355data[1]))))
(1) -> (2), if ((i20225[1] > 0 && i20225[1] < i2[1] && i20355[1] > 0 && i20225[1] + 1 > 0 →* TRUE)∧(java.lang.Object(ARRAY(i2[1], a47355data[1])) →* java.lang.Object(ARRAY(i2[2], a47355data[2])))∧(i20355[1] →* i20355[2])∧(i20225[1] →* i20225[2]))
(2) -> (7), if ((i20225[2] + 1 →* i20581[7])∧(java.lang.Object(ARRAY(i2[2], a47355data[2])) →* java.lang.Object(ARRAY(i2[7], a47355data[7])))∧(i20355[2] →* i20355[7]))
(3) -> (7), if ((java.lang.Object(ARRAY(i2[3], a47355data[3])) →* java.lang.Object(ARRAY(i2[7], a47355data[7])))∧(i20581[3] →* i20581[7])∧(i20355[3] →* i20355[7]))
(4) -> (5), if ((java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])) →* java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))∧(i20355[4] →* i20355[5])∧(i20225[4] →* i20225[5])∧(java.lang.Object(ARRAY(i2[4], a47355data[4])) →* java.lang.Object(ARRAY(i2[5], a47355data[5]))))
(5) -> (6), if ((i20355[5] →* i20355[6])∧(i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0 →* TRUE)∧(i20225[5] →* i20225[6])∧(java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])) →* java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6])))∧(java.lang.Object(ARRAY(i2[5], a47355data[5])) →* java.lang.Object(ARRAY(i2[6], a47355data[6]))))
(6) -> (7), if ((i20355[6] →* i20355[7])∧(java.lang.Object(ARRAY(i2[6], a47355data[6])) →* java.lang.Object(ARRAY(i2[7], a47355data[7])))∧(i20225[6] + 1 →* i20581[7]))
(7) -> (0), if ((java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[0], a47355data[0])))∧(i20581[7] →* i20225[0])∧(i20355[7] + -1 →* i20355[0]))
(7) -> (4), if ((i20355[7] + -1 →* i20355[4])∧(java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[4], a47355data[4])))∧(i20581[7] →* i20225[4]))
(7) -> (8), if ((i20355[7] + -1 →* i20355[8])∧(i20581[7] →* i20225[8])∧(java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[8], a47355data[8]))))
(7) -> (11), if ((java.lang.Object(ARRAY(i2[7], a47355data[7])) →* java.lang.Object(ARRAY(i2[11], a47355data[11])))∧(i20581[7] →* i20225[11])∧(i20355[7] + -1 →* i20355[11]))
(8) -> (9), if ((i20225[8] →* i20225[9])∧(java.lang.Object(ARRAY(i2[8], a47355data[8])) →* java.lang.Object(ARRAY(i2[9], a47355data[9])))∧(i20355[8] →* i20355[9]))
(9) -> (10), if ((i20225[9] > 0 && i20225[9] < i2[9] && i20355[9] > 0 && i20225[9] + 1 > 0 →* TRUE)∧(i20355[9] →* i20355[10])∧(java.lang.Object(ARRAY(i2[9], a47355data[9])) →* java.lang.Object(ARRAY(i2[10], a47355data[10])))∧(i20225[9] →* i20225[10]))
(10) -> (0), if ((java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[0], a47355data[0])))∧(i20355[10] + -1 →* i20355[0])∧(i20225[10] + 1 →* i20225[0]))
(10) -> (4), if ((i20225[10] + 1 →* i20225[4])∧(java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[4], a47355data[4])))∧(i20355[10] + -1 →* i20355[4]))
(10) -> (8), if ((i20355[10] + -1 →* i20355[8])∧(i20225[10] + 1 →* i20225[8])∧(java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[8], a47355data[8]))))
(10) -> (11), if ((i20355[10] + -1 →* i20355[11])∧(i20225[10] + 1 →* i20225[11])∧(java.lang.Object(ARRAY(i2[10], a47355data[10])) →* java.lang.Object(ARRAY(i2[11], a47355data[11]))))
(11) -> (12), if ((i20355[11] →* i20355[12])∧(java.lang.Object(ARRAY(i2[11], a47355data[11])) →* java.lang.Object(ARRAY(i2[12], a47355data[12])))∧(java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])) →* java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))∧(i20225[11] →* i20225[12]))
(12) -> (13), if ((i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0 →* TRUE)∧(i20225[12] →* i20225[13])∧(java.lang.Object(ARRAY(i2[12], a47355data[12])) →* java.lang.Object(ARRAY(i2[13], a47355data[13])))∧(java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])) →* java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13])))∧(i20355[12] →* i20355[13]))
(13) -> (3), if ((i20355[13] →* i20355[3])∧(i20225[13] + 1 →* i20581[3])∧(java.lang.Object(ARRAY(i2[13], a47355data[13])) →* java.lang.Object(ARRAY(i2[3], a47355data[3]))))
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(41) ItpfGraphProof (EQUIVALENT transformation)
Applied rule ItpfICap [ICap]
(42) Obligation:
IDP problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The following domains are used:
Boolean, Integer
R is empty.
The integer pair graph contains the following rules and edges:
(0):
LOAD36231(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0]) →
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0])
(1):
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[1],
a47355data[1])),
i20225[1],
i20355[1]) →
COND_LOAD36231ARR1(
i20225[1] > 0 && i20225[1] < i2[1] && i20355[1] > 0 && i20225[1] + 1 > 0,
java.lang.Object(
ARRAY(
i2[1],
a47355data[1])),
i20225[1],
i20355[1])
(2):
COND_LOAD36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2],
i20355[2]) →
INC40003(
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2] + 1,
i20355[2])
(3):
JMP40088'(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3]) →
INC40003(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3])
(4):
LOAD36231(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4]) →
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4],
java.lang.Object(
java.lang.String(
i21156[4],
i20843[4],
i20845[4],
a49022[4])))
(5):
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5]))) →
COND_LOAD36231ARR2(
i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0,
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5])))
(6):
COND_LOAD36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6],
i20355[6],
java.lang.Object(
java.lang.String(
i21156[6],
i20843[6],
i20845[6],
a49022[6]))) →
INC40003(
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6] + 1,
i20355[6])
(7):
INC40003(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7] + -1)
(8):
LOAD36231(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8]) →
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8])
(9):
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[9],
a47355data[9])),
i20225[9],
i20355[9]) →
COND_LOAD36231ARR3(
i20225[9] > 0 && i20225[9] < i2[9] && i20355[9] > 0 && i20225[9] + 1 > 0,
java.lang.Object(
ARRAY(
i2[9],
a47355data[9])),
i20225[9],
i20355[9])
(10):
COND_LOAD36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10],
i20355[10]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10] + 1,
i20355[10] + -1)
(11):
LOAD36231(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11]) →
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11],
java.lang.Object(
java.lang.String(
i21156[11],
i20843[11],
i20845[11],
a49022[11])))
(12):
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12]))) →
COND_LOAD36231ARR5(
i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0,
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12])))
(13):
COND_LOAD36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13],
i20355[13],
java.lang.Object(
java.lang.String(
i21156[13],
i20843[13],
i20845[13],
a49022[13]))) →
JMP40088'(
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13] + 1,
i20355[13])
(0) -> (1), if ((i20225[0] →* i20225[1])∧(i20355[0] →* i20355[1])∧((i2[0] →* i2[1])∧(a47355data[0] →* a47355data[1])))
(1) -> (2), if ((i20225[1] > 0 && i20225[1] < i2[1] && i20355[1] > 0 && i20225[1] + 1 > 0 →* TRUE)∧((i2[1] →* i2[2])∧(a47355data[1] →* a47355data[2]))∧(i20355[1] →* i20355[2])∧(i20225[1] →* i20225[2]))
(2) -> (7), if ((i20225[2] + 1 →* i20581[7])∧((i2[2] →* i2[7])∧(a47355data[2] →* a47355data[7]))∧(i20355[2] →* i20355[7]))
(3) -> (7), if (((i2[3] →* i2[7])∧(a47355data[3] →* a47355data[7]))∧(i20581[3] →* i20581[7])∧(i20355[3] →* i20355[7]))
(4) -> (5), if (((i21156[4] →* i21156[5])∧(i20843[4] →* i20843[5])∧(i20845[4] →* i20845[5])∧(a49022[4] →* a49022[5]))∧(i20355[4] →* i20355[5])∧(i20225[4] →* i20225[5])∧((i2[4] →* i2[5])∧(a47355data[4] →* a47355data[5])))
(5) -> (6), if ((i20355[5] →* i20355[6])∧(i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0 →* TRUE)∧(i20225[5] →* i20225[6])∧((i21156[5] →* i21156[6])∧(i20843[5] →* i20843[6])∧(i20845[5] →* i20845[6])∧(a49022[5] →* a49022[6]))∧((i2[5] →* i2[6])∧(a47355data[5] →* a47355data[6])))
(6) -> (7), if ((i20355[6] →* i20355[7])∧((i2[6] →* i2[7])∧(a47355data[6] →* a47355data[7]))∧(i20225[6] + 1 →* i20581[7]))
(7) -> (0), if (((i2[7] →* i2[0])∧(a47355data[7] →* a47355data[0]))∧(i20581[7] →* i20225[0])∧(i20355[7] + -1 →* i20355[0]))
(7) -> (4), if ((i20355[7] + -1 →* i20355[4])∧((i2[7] →* i2[4])∧(a47355data[7] →* a47355data[4]))∧(i20581[7] →* i20225[4]))
(7) -> (8), if ((i20355[7] + -1 →* i20355[8])∧(i20581[7] →* i20225[8])∧((i2[7] →* i2[8])∧(a47355data[7] →* a47355data[8])))
(7) -> (11), if (((i2[7] →* i2[11])∧(a47355data[7] →* a47355data[11]))∧(i20581[7] →* i20225[11])∧(i20355[7] + -1 →* i20355[11]))
(8) -> (9), if ((i20225[8] →* i20225[9])∧((i2[8] →* i2[9])∧(a47355data[8] →* a47355data[9]))∧(i20355[8] →* i20355[9]))
(9) -> (10), if ((i20225[9] > 0 && i20225[9] < i2[9] && i20355[9] > 0 && i20225[9] + 1 > 0 →* TRUE)∧(i20355[9] →* i20355[10])∧((i2[9] →* i2[10])∧(a47355data[9] →* a47355data[10]))∧(i20225[9] →* i20225[10]))
(10) -> (0), if (((i2[10] →* i2[0])∧(a47355data[10] →* a47355data[0]))∧(i20355[10] + -1 →* i20355[0])∧(i20225[10] + 1 →* i20225[0]))
(10) -> (4), if ((i20225[10] + 1 →* i20225[4])∧((i2[10] →* i2[4])∧(a47355data[10] →* a47355data[4]))∧(i20355[10] + -1 →* i20355[4]))
(10) -> (8), if ((i20355[10] + -1 →* i20355[8])∧(i20225[10] + 1 →* i20225[8])∧((i2[10] →* i2[8])∧(a47355data[10] →* a47355data[8])))
(10) -> (11), if ((i20355[10] + -1 →* i20355[11])∧(i20225[10] + 1 →* i20225[11])∧((i2[10] →* i2[11])∧(a47355data[10] →* a47355data[11])))
(11) -> (12), if ((i20355[11] →* i20355[12])∧((i2[11] →* i2[12])∧(a47355data[11] →* a47355data[12]))∧((i21156[11] →* i21156[12])∧(i20843[11] →* i20843[12])∧(i20845[11] →* i20845[12])∧(a49022[11] →* a49022[12]))∧(i20225[11] →* i20225[12]))
(12) -> (13), if ((i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0 →* TRUE)∧(i20225[12] →* i20225[13])∧((i2[12] →* i2[13])∧(a47355data[12] →* a47355data[13]))∧((i21156[12] →* i21156[13])∧(i20843[12] →* i20843[13])∧(i20845[12] →* i20845[13])∧(a49022[12] →* a49022[13]))∧(i20355[12] →* i20355[13]))
(13) -> (3), if ((i20355[13] →* i20355[3])∧(i20225[13] + 1 →* i20581[3])∧((i2[13] →* i2[3])∧(a47355data[13] →* a47355data[3])))
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(43) IDPNonInfProof (SOUND transformation)
The constraints were generated the following way:
The DP Problem is simplified using the Induction Calculus [NONINF] with the following steps:
Note that
final constraints are written in
bold face.
For Pair
LOAD36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) the following chains were created:
- We consider the chain LOAD36231(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0]) → LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0]), LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1]) → COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1]) which results in the following constraint:
(1) (i20225[0]=i20225[1]∧i20355[0]=i20355[1]∧i2[0]=i2[1]∧a47355data[0]=a47355data[1] ⇒ LOAD36231(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])≥NonInfC∧LOAD36231(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])≥LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])∧(UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥))
We simplified constraint (1) using rule (IV) which results in the following new constraint:
(2) (LOAD36231(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])≥NonInfC∧LOAD36231(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])≥LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])∧(UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥))
We simplified constraint (2) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(3) ((UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥)∧[1 + (-1)bso_25] ≥ 0)
We simplified constraint (3) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(4) ((UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥)∧[1 + (-1)bso_25] ≥ 0)
We simplified constraint (4) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(5) ((UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥)∧[1 + (-1)bso_25] ≥ 0)
We simplified constraint (5) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(6) ((UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_25] ≥ 0)
For Pair
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
COND_LOAD36231ARR1(
&&(
&&(
&&(
>(
i20225,
0),
<(
i20225,
i2)),
>(
i20355,
0)),
>(
+(
i20225,
1),
0)),
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) the following chains were created:
- We consider the chain LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1]) → COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1]), COND_LOAD36231ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a47355data[2])), i20225[2], i20355[2]) → INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2]) which results in the following constraint:
(7) (&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0))=TRUE∧i2[1]=i2[2]∧a47355data[1]=a47355data[2]∧i20355[1]=i20355[2]∧i20225[1]=i20225[2] ⇒ LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])≥NonInfC∧LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])≥COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])∧(UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥))
We simplified constraint (7) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:
(8) (>(+(i20225[1], 1), 0)=TRUE∧>(i20355[1], 0)=TRUE∧>(i20225[1], 0)=TRUE∧<(i20225[1], i2[1])=TRUE ⇒ LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])≥NonInfC∧LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])≥COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])∧(UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥))
We simplified constraint (8) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(9) (i20225[1] ≥ 0∧i20355[1] + [-1] ≥ 0∧i20225[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i20225[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧[bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] + [(-1)bni_26]i20225[1] ≥ 0∧[1 + (-1)bso_27] ≥ 0)
We simplified constraint (9) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(10) (i20225[1] ≥ 0∧i20355[1] + [-1] ≥ 0∧i20225[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i20225[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧[bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] + [(-1)bni_26]i20225[1] ≥ 0∧[1 + (-1)bso_27] ≥ 0)
We simplified constraint (10) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(11) (i20225[1] ≥ 0∧i20355[1] + [-1] ≥ 0∧i20225[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i20225[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧[bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] + [(-1)bni_26]i20225[1] ≥ 0∧[1 + (-1)bso_27] ≥ 0)
We simplified constraint (11) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(12) (i20225[1] ≥ 0∧i20355[1] + [-1] ≥ 0∧i20225[1] + [-1] ≥ 0∧i2[1] + [-1] + [-1]i20225[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧0 = 0∧[bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] + [(-1)bni_26]i20225[1] ≥ 0∧0 = 0∧[1 + (-1)bso_27] ≥ 0)
We simplified constraint (12) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(13) ([1] + i20225[1] ≥ 0∧i20355[1] + [-1] ≥ 0∧i20225[1] ≥ 0∧i2[1] + [-2] + [-1]i20225[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧0 = 0∧[(-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] + [(-1)bni_26]i20225[1] ≥ 0∧0 = 0∧[1 + (-1)bso_27] ≥ 0)
We simplified constraint (13) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(14) ([1] + i20225[1] ≥ 0∧i20355[1] ≥ 0∧i20225[1] ≥ 0∧i2[1] + [-2] + [-1]i20225[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧0 = 0∧[(2)bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] + [(-1)bni_26]i20225[1] ≥ 0∧0 = 0∧[1 + (-1)bso_27] ≥ 0)
We simplified constraint (14) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(15) ([1] + i20225[1] ≥ 0∧i20355[1] ≥ 0∧i20225[1] ≥ 0∧i2[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧0 = 0∧[(4)bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] ≥ 0∧0 = 0∧[1 + (-1)bso_27] ≥ 0)
For Pair
COND_LOAD36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
INC40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
+(
i20225,
1),
i20355) the following chains were created:
- We consider the chain COND_LOAD36231ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a47355data[2])), i20225[2], i20355[2]) → INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2]) which results in the following constraint:
(16) (COND_LOAD36231ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a47355data[2])), i20225[2], i20355[2])≥NonInfC∧COND_LOAD36231ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a47355data[2])), i20225[2], i20355[2])≥INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])∧(UIncreasing(INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])), ≥))
We simplified constraint (16) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(17) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])), ≥)∧[1 + (-1)bso_29] ≥ 0)
We simplified constraint (17) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(18) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])), ≥)∧[1 + (-1)bso_29] ≥ 0)
We simplified constraint (18) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(19) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])), ≥)∧[1 + (-1)bso_29] ≥ 0)
We simplified constraint (19) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(20) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_29] ≥ 0)
For Pair
JMP40088'(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
INC40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) the following chains were created:
- We consider the chain JMP40088'(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3]) → INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3]), INC40003(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], i20355[7]) → LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1)) which results in the following constraint:
(21) (i2[3]=i2[7]∧a47355data[3]=a47355data[7]∧i20581[3]=i20581[7]∧i20355[3]=i20355[7] ⇒ JMP40088'(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])≥NonInfC∧JMP40088'(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])≥INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])∧(UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥))
We simplified constraint (21) using rule (IV) which results in the following new constraint:
(22) (JMP40088'(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])≥NonInfC∧JMP40088'(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])≥INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])∧(UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥))
We simplified constraint (22) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(23) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥)∧[(-1)bso_31] ≥ 0)
We simplified constraint (23) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(24) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥)∧[(-1)bso_31] ≥ 0)
We simplified constraint (24) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(25) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥)∧[(-1)bso_31] ≥ 0)
We simplified constraint (25) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(26) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_31] ≥ 0)
For Pair
LOAD36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) the following chains were created:
- We consider the chain LOAD36231(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4]) → LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4]))) which results in the following constraint:
(27) (LOAD36231(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4])≥NonInfC∧LOAD36231(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4])≥LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))∧(UIncreasing(LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))), ≥))
We simplified constraint (27) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(28) ((UIncreasing(LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))), ≥)∧[1 + (-1)bso_33] ≥ 0)
We simplified constraint (28) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(29) ((UIncreasing(LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))), ≥)∧[1 + (-1)bso_33] ≥ 0)
We simplified constraint (29) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(30) ((UIncreasing(LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))), ≥)∧[1 + (-1)bso_33] ≥ 0)
We simplified constraint (30) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(31) ((UIncreasing(LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_33] ≥ 0)
For Pair
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
COND_LOAD36231ARR2(
&&(
&&(
&&(
&&(
>(
i21156,
0),
>(
i20225,
0)),
<(
i20225,
i2)),
>(
i20355,
0)),
>(
+(
i20225,
1),
0)),
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) the following chains were created:
- We consider the chain LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5]))) → COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5]))), COND_LOAD36231ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a47355data[6])), i20225[6], i20355[6], java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6]))) → INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6]) which results in the following constraint:
(32) (i20355[5]=i20355[6]∧&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0))=TRUE∧i20225[5]=i20225[6]∧i21156[5]=i21156[6]∧i20843[5]=i20843[6]∧i20845[5]=i20845[6]∧a49022[5]=a49022[6]∧i2[5]=i2[6]∧a47355data[5]=a47355data[6] ⇒ LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))≥NonInfC∧LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))≥COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))∧(UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥))
We simplified constraint (32) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:
(33) (>(+(i20225[5], 1), 0)=TRUE∧>(i20355[5], 0)=TRUE∧<(i20225[5], i2[5])=TRUE∧>(i21156[5], 0)=TRUE∧>(i20225[5], 0)=TRUE ⇒ LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))≥NonInfC∧LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))≥COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))∧(UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥))
We simplified constraint (33) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(34) (i20225[5] ≥ 0∧i20355[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i20225[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧[bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] + [(-1)bni_34]i20225[5] ≥ 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (34) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(35) (i20225[5] ≥ 0∧i20355[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i20225[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧[bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] + [(-1)bni_34]i20225[5] ≥ 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (35) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(36) (i20225[5] ≥ 0∧i20355[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i20225[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧[bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] + [(-1)bni_34]i20225[5] ≥ 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (36) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(37) (i20225[5] ≥ 0∧i20355[5] + [-1] ≥ 0∧i2[5] + [-1] + [-1]i20225[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] + [(-1)bni_34]i20225[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (37) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(38) ([1] + i20225[5] ≥ 0∧i20355[5] + [-1] ≥ 0∧i2[5] + [-2] + [-1]i20225[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] + [(-1)bni_34]i20225[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (38) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(39) ([1] + i20225[5] ≥ 0∧i20355[5] ≥ 0∧i2[5] + [-2] + [-1]i20225[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(2)bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] + [(-1)bni_34]i20225[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (39) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(40) ([1] + i20225[5] ≥ 0∧i20355[5] ≥ 0∧i2[5] ≥ 0∧i21156[5] + [-1] ≥ 0∧i20225[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(4)bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_35] ≥ 0)
We simplified constraint (40) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(41) ([1] + i20225[5] ≥ 0∧i20355[5] ≥ 0∧i2[5] ≥ 0∧i21156[5] ≥ 0∧i20225[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(4)bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_35] ≥ 0)
For Pair
COND_LOAD36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
INC40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
+(
i20225,
1),
i20355) the following chains were created:
- We consider the chain COND_LOAD36231ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a47355data[6])), i20225[6], i20355[6], java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6]))) → INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6]) which results in the following constraint:
(42) (COND_LOAD36231ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a47355data[6])), i20225[6], i20355[6], java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6])))≥NonInfC∧COND_LOAD36231ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a47355data[6])), i20225[6], i20355[6], java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6])))≥INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])∧(UIncreasing(INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])), ≥))
We simplified constraint (42) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(43) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])), ≥)∧[2 + (-1)bso_37] ≥ 0)
We simplified constraint (43) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(44) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])), ≥)∧[2 + (-1)bso_37] ≥ 0)
We simplified constraint (44) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(45) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])), ≥)∧[2 + (-1)bso_37] ≥ 0)
We simplified constraint (45) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(46) ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_37] ≥ 0)
For Pair
INC40003(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
i20355) →
LOAD36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20581,
+(
i20355,
-1)) the following chains were created:
- We consider the chain INC40003(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], i20355[7]) → LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1)) which results in the following constraint:
(47) (INC40003(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], i20355[7])≥NonInfC∧INC40003(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], i20355[7])≥LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))∧(UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))), ≥))
We simplified constraint (47) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(48) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))), ≥)∧[(-1)bso_39] ≥ 0)
We simplified constraint (48) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(49) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))), ≥)∧[(-1)bso_39] ≥ 0)
We simplified constraint (49) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(50) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))), ≥)∧[(-1)bso_39] ≥ 0)
We simplified constraint (50) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(51) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_39] ≥ 0)
For Pair
LOAD36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) the following chains were created:
- We consider the chain LOAD36231(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8]) → LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8]), LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9]) → COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9]) which results in the following constraint:
(52) (i20225[8]=i20225[9]∧i2[8]=i2[9]∧a47355data[8]=a47355data[9]∧i20355[8]=i20355[9] ⇒ LOAD36231(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])≥NonInfC∧LOAD36231(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])≥LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])∧(UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥))
We simplified constraint (52) using rule (IV) which results in the following new constraint:
(53) (LOAD36231(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])≥NonInfC∧LOAD36231(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])≥LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])∧(UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥))
We simplified constraint (53) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(54) ((UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥)∧[(-1)bso_41] ≥ 0)
We simplified constraint (54) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(55) ((UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥)∧[(-1)bso_41] ≥ 0)
We simplified constraint (55) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(56) ((UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥)∧[(-1)bso_41] ≥ 0)
We simplified constraint (56) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(57) ((UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_41] ≥ 0)
For Pair
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
COND_LOAD36231ARR3(
&&(
&&(
&&(
>(
i20225,
0),
<(
i20225,
i2)),
>(
i20355,
0)),
>(
+(
i20225,
1),
0)),
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) the following chains were created:
- We consider the chain LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9]) → COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9]), COND_LOAD36231ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a47355data[10])), i20225[10], i20355[10]) → LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1)) which results in the following constraint:
(58) (&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0))=TRUE∧i20355[9]=i20355[10]∧i2[9]=i2[10]∧a47355data[9]=a47355data[10]∧i20225[9]=i20225[10] ⇒ LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])≥NonInfC∧LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])≥COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])∧(UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥))
We simplified constraint (58) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:
(59) (>(+(i20225[9], 1), 0)=TRUE∧>(i20355[9], 0)=TRUE∧>(i20225[9], 0)=TRUE∧<(i20225[9], i2[9])=TRUE ⇒ LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])≥NonInfC∧LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])≥COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])∧(UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥))
We simplified constraint (59) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(60) (i20225[9] ≥ 0∧i20355[9] + [-1] ≥ 0∧i20225[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i20225[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧[(2)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [(-1)bni_42]i20225[9] + [bni_42]i2[9] ≥ 0∧[2 + (-1)bso_43] ≥ 0)
We simplified constraint (60) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(61) (i20225[9] ≥ 0∧i20355[9] + [-1] ≥ 0∧i20225[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i20225[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧[(2)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [(-1)bni_42]i20225[9] + [bni_42]i2[9] ≥ 0∧[2 + (-1)bso_43] ≥ 0)
We simplified constraint (61) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(62) (i20225[9] ≥ 0∧i20355[9] + [-1] ≥ 0∧i20225[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i20225[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧[(2)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [(-1)bni_42]i20225[9] + [bni_42]i2[9] ≥ 0∧[2 + (-1)bso_43] ≥ 0)
We simplified constraint (62) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(63) (i20225[9] ≥ 0∧i20355[9] + [-1] ≥ 0∧i20225[9] + [-1] ≥ 0∧i2[9] + [-1] + [-1]i20225[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧0 = 0∧[(2)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [(-1)bni_42]i20225[9] + [bni_42]i2[9] ≥ 0∧0 = 0∧[2 + (-1)bso_43] ≥ 0)
We simplified constraint (63) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(64) ([1] + i20225[9] ≥ 0∧i20355[9] + [-1] ≥ 0∧i20225[9] ≥ 0∧i2[9] + [-2] + [-1]i20225[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧0 = 0∧[bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [(-1)bni_42]i20225[9] + [bni_42]i2[9] ≥ 0∧0 = 0∧[2 + (-1)bso_43] ≥ 0)
We simplified constraint (64) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(65) ([1] + i20225[9] ≥ 0∧i20355[9] ≥ 0∧i20225[9] ≥ 0∧i2[9] + [-2] + [-1]i20225[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧0 = 0∧[(3)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [(-1)bni_42]i20225[9] + [bni_42]i2[9] ≥ 0∧0 = 0∧[2 + (-1)bso_43] ≥ 0)
We simplified constraint (65) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(66) ([1] + i20225[9] ≥ 0∧i20355[9] ≥ 0∧i20225[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧0 = 0∧[(5)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [bni_42]i2[9] ≥ 0∧0 = 0∧[2 + (-1)bso_43] ≥ 0)
For Pair
COND_LOAD36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
LOAD36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
+(
i20225,
1),
+(
i20355,
-1)) the following chains were created:
- We consider the chain COND_LOAD36231ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a47355data[10])), i20225[10], i20355[10]) → LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1)) which results in the following constraint:
(67) (COND_LOAD36231ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a47355data[10])), i20225[10], i20355[10])≥NonInfC∧COND_LOAD36231ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a47355data[10])), i20225[10], i20355[10])≥LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))∧(UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))), ≥))
We simplified constraint (67) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(68) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))), ≥)∧[1 + (-1)bso_45] ≥ 0)
We simplified constraint (68) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(69) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))), ≥)∧[1 + (-1)bso_45] ≥ 0)
We simplified constraint (69) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(70) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))), ≥)∧[1 + (-1)bso_45] ≥ 0)
We simplified constraint (70) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(71) ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_45] ≥ 0)
For Pair
LOAD36231(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355) →
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) the following chains were created:
- We consider the chain LOAD36231(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11]) → LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11]))) which results in the following constraint:
(72) (LOAD36231(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11])≥NonInfC∧LOAD36231(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11])≥LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))∧(UIncreasing(LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))), ≥))
We simplified constraint (72) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(73) ((UIncreasing(LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))), ≥)∧[2 + (-1)bso_47] ≥ 0)
We simplified constraint (73) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(74) ((UIncreasing(LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))), ≥)∧[2 + (-1)bso_47] ≥ 0)
We simplified constraint (74) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(75) ((UIncreasing(LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))), ≥)∧[2 + (-1)bso_47] ≥ 0)
We simplified constraint (75) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(76) ((UIncreasing(LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_47] ≥ 0)
For Pair
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
COND_LOAD36231ARR5(
&&(
&&(
&&(
&&(
>(
i21156,
0),
>(
i20225,
0)),
<(
i20225,
i2)),
>(
i20355,
0)),
>(
+(
i20225,
1),
0)),
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) the following chains were created:
- We consider the chain LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12]))) → COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12]))), COND_LOAD36231ARR5(TRUE, java.lang.Object(ARRAY(i2[13], a47355data[13])), i20225[13], i20355[13], java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13]))) → JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13]) which results in the following constraint:
(77) (&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0))=TRUE∧i20225[12]=i20225[13]∧i2[12]=i2[13]∧a47355data[12]=a47355data[13]∧i21156[12]=i21156[13]∧i20843[12]=i20843[13]∧i20845[12]=i20845[13]∧a49022[12]=a49022[13]∧i20355[12]=i20355[13] ⇒ LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))≥NonInfC∧LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))≥COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))∧(UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥))
We simplified constraint (77) using rules (IV), (IDP_BOOLEAN) which results in the following new constraint:
(78) (>(+(i20225[12], 1), 0)=TRUE∧>(i20355[12], 0)=TRUE∧<(i20225[12], i2[12])=TRUE∧>(i21156[12], 0)=TRUE∧>(i20225[12], 0)=TRUE ⇒ LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))≥NonInfC∧LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))≥COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))∧(UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥))
We simplified constraint (78) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(79) (i20225[12] ≥ 0∧i20355[12] + [-1] ≥ 0∧i2[12] + [-1] + [-1]i20225[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧[(-1)Bound*bni_48] + [(2)bni_48]i20355[12] + [(-1)bni_48]i20225[12] + [bni_48]i2[12] ≥ 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (79) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(80) (i20225[12] ≥ 0∧i20355[12] + [-1] ≥ 0∧i2[12] + [-1] + [-1]i20225[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧[(-1)Bound*bni_48] + [(2)bni_48]i20355[12] + [(-1)bni_48]i20225[12] + [bni_48]i2[12] ≥ 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (80) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(81) (i20225[12] ≥ 0∧i20355[12] + [-1] ≥ 0∧i2[12] + [-1] + [-1]i20225[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧[(-1)Bound*bni_48] + [(2)bni_48]i20355[12] + [(-1)bni_48]i20225[12] + [bni_48]i2[12] ≥ 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (81) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(82) (i20225[12] ≥ 0∧i20355[12] + [-1] ≥ 0∧i2[12] + [-1] + [-1]i20225[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] + [-1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_48] + [(2)bni_48]i20355[12] + [(-1)bni_48]i20225[12] + [bni_48]i2[12] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (82) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(83) ([1] + i20225[12] ≥ 0∧i20355[12] + [-1] ≥ 0∧i2[12] + [-2] + [-1]i20225[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_48 + (-1)bni_48] + [(2)bni_48]i20355[12] + [(-1)bni_48]i20225[12] + [bni_48]i2[12] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (83) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(84) ([1] + i20225[12] ≥ 0∧i20355[12] ≥ 0∧i2[12] + [-2] + [-1]i20225[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_48 + bni_48] + [(2)bni_48]i20355[12] + [(-1)bni_48]i20225[12] + [bni_48]i2[12] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (84) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(85) ([1] + i20225[12] ≥ 0∧i20355[12] ≥ 0∧i2[12] ≥ 0∧i21156[12] + [-1] ≥ 0∧i20225[12] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_48 + (3)bni_48] + [(2)bni_48]i20355[12] + [bni_48]i2[12] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_49] ≥ 0)
We simplified constraint (85) using rule (IDP_SMT_SPLIT) which results in the following new constraint:
(86) ([1] + i20225[12] ≥ 0∧i20355[12] ≥ 0∧i2[12] ≥ 0∧i21156[12] ≥ 0∧i20225[12] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_48 + (3)bni_48] + [(2)bni_48]i20355[12] + [bni_48]i2[12] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_49] ≥ 0)
For Pair
COND_LOAD36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2,
a47355data)),
i20225,
i20355,
java.lang.Object(
java.lang.String(
i21156,
i20843,
i20845,
a49022))) →
JMP40088'(
java.lang.Object(
ARRAY(
i2,
a47355data)),
+(
i20225,
1),
i20355) the following chains were created:
- We consider the chain COND_LOAD36231ARR5(TRUE, java.lang.Object(ARRAY(i2[13], a47355data[13])), i20225[13], i20355[13], java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13]))) → JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13]) which results in the following constraint:
(87) (COND_LOAD36231ARR5(TRUE, java.lang.Object(ARRAY(i2[13], a47355data[13])), i20225[13], i20355[13], java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13])))≥NonInfC∧COND_LOAD36231ARR5(TRUE, java.lang.Object(ARRAY(i2[13], a47355data[13])), i20225[13], i20355[13], java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13])))≥JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])∧(UIncreasing(JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])), ≥))
We simplified constraint (87) using rule (POLY_CONSTRAINTS) which results in the following new constraint:
(88) ((UIncreasing(JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])), ≥)∧[1 + (-1)bso_51] ≥ 0)
We simplified constraint (88) using rule (IDP_POLY_SIMPLIFY) which results in the following new constraint:
(89) ((UIncreasing(JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])), ≥)∧[1 + (-1)bso_51] ≥ 0)
We simplified constraint (89) using rule (POLY_REMOVE_MIN_MAX) which results in the following new constraint:
(90) ((UIncreasing(JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])), ≥)∧[1 + (-1)bso_51] ≥ 0)
We simplified constraint (90) using rule (IDP_UNRESTRICTED_VARS) which results in the following new constraint:
(91) ((UIncreasing(JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_51] ≥ 0)
To summarize, we get the following constraints P
≥ for the following pairs.
- LOAD36231(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → LOAD36231ARR1(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355)
- ((UIncreasing(LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_25] ≥ 0)
- LOAD36231ARR1(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → COND_LOAD36231ARR1(&&(&&(&&(>(i20225, 0), <(i20225, i2)), >(i20355, 0)), >(+(i20225, 1), 0)), java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355)
- ([1] + i20225[1] ≥ 0∧i20355[1] ≥ 0∧i20225[1] ≥ 0∧i2[1] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])), ≥)∧0 = 0∧[(4)bni_26 + (-1)Bound*bni_26] + [(2)bni_26]i20355[1] + [bni_26]i2[1] ≥ 0∧0 = 0∧[1 + (-1)bso_27] ≥ 0)
- COND_LOAD36231ARR1(TRUE, java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → INC40003(java.lang.Object(ARRAY(i2, a47355data)), +(i20225, 1), i20355)
- ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_29] ≥ 0)
- JMP40088'(java.lang.Object(ARRAY(i2, a47355data)), i20581, i20355) → INC40003(java.lang.Object(ARRAY(i2, a47355data)), i20581, i20355)
- ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_31] ≥ 0)
- LOAD36231(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → LOAD36231ARR2(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022)))
- ((UIncreasing(LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_33] ≥ 0)
- LOAD36231ARR2(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022))) → COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156, 0), >(i20225, 0)), <(i20225, i2)), >(i20355, 0)), >(+(i20225, 1), 0)), java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022)))
- ([1] + i20225[5] ≥ 0∧i20355[5] ≥ 0∧i2[5] ≥ 0∧i21156[5] ≥ 0∧i20225[5] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(4)bni_34 + (-1)Bound*bni_34] + [(2)bni_34]i20355[5] + [bni_34]i2[5] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_35] ≥ 0)
- COND_LOAD36231ARR2(TRUE, java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022))) → INC40003(java.lang.Object(ARRAY(i2, a47355data)), +(i20225, 1), i20355)
- ((UIncreasing(INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_37] ≥ 0)
- INC40003(java.lang.Object(ARRAY(i2, a47355data)), i20581, i20355) → LOAD36231(java.lang.Object(ARRAY(i2, a47355data)), i20581, +(i20355, -1))
- ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_39] ≥ 0)
- LOAD36231(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → LOAD36231ARR3(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355)
- ((UIncreasing(LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_41] ≥ 0)
- LOAD36231ARR3(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → COND_LOAD36231ARR3(&&(&&(&&(>(i20225, 0), <(i20225, i2)), >(i20355, 0)), >(+(i20225, 1), 0)), java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355)
- ([1] + i20225[9] ≥ 0∧i20355[9] ≥ 0∧i20225[9] ≥ 0∧i2[9] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])), ≥)∧0 = 0∧[(5)bni_42 + (-1)Bound*bni_42] + [(2)bni_42]i20355[9] + [bni_42]i2[9] ≥ 0∧0 = 0∧[2 + (-1)bso_43] ≥ 0)
- COND_LOAD36231ARR3(TRUE, java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → LOAD36231(java.lang.Object(ARRAY(i2, a47355data)), +(i20225, 1), +(i20355, -1))
- ((UIncreasing(LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_45] ≥ 0)
- LOAD36231(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355) → LOAD36231ARR5(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022)))
- ((UIncreasing(LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[2 + (-1)bso_47] ≥ 0)
- LOAD36231ARR5(java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022))) → COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156, 0), >(i20225, 0)), <(i20225, i2)), >(i20355, 0)), >(+(i20225, 1), 0)), java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022)))
- ([1] + i20225[12] ≥ 0∧i20355[12] ≥ 0∧i2[12] ≥ 0∧i21156[12] ≥ 0∧i20225[12] ≥ 0 ⇒ (UIncreasing(COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)Bound*bni_48 + (3)bni_48] + [(2)bni_48]i20355[12] + [bni_48]i2[12] ≥ 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[(-1)bso_49] ≥ 0)
- COND_LOAD36231ARR5(TRUE, java.lang.Object(ARRAY(i2, a47355data)), i20225, i20355, java.lang.Object(java.lang.String(i21156, i20843, i20845, a49022))) → JMP40088'(java.lang.Object(ARRAY(i2, a47355data)), +(i20225, 1), i20355)
- ((UIncreasing(JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])), ≥)∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧0 = 0∧[1 + (-1)bso_51] ≥ 0)
The constraints for P
> respective P
bound are constructed from P
≥ where we just replace every occurence of "t ≥ s" in P
≥ by "t > s" respective "t ≥
c". Here
c stands for the fresh constant used for P
bound.
Using the following integer polynomial ordering the resulting constraints can be solved
Polynomial interpretation over integers[POLO]:
POL(TRUE) = 0
POL(FALSE) = 0
POL(LOAD36231(x1, x2, x3)) = [1] + [2]x3 + [-1]x1 + [-1]x2
POL(java.lang.Object(x1)) = x1
POL(ARRAY(x1, x2)) = [-1] + [-1]x1
POL(LOAD36231ARR1(x1, x2, x3)) = [2]x3 + [-1]x1 + [-1]x2
POL(COND_LOAD36231ARR1(x1, x2, x3, x4)) = [-1] + [2]x4 + [-1]x2 + [-1]x3
POL(&&(x1, x2)) = [-1]
POL(>(x1, x2)) = [-1]
POL(0) = 0
POL(<(x1, x2)) = [-1]
POL(+(x1, x2)) = x1 + x2
POL(1) = [1]
POL(INC40003(x1, x2, x3)) = [-1] + [2]x3 + [-1]x2 + [-1]x1
POL(JMP40088'(x1, x2, x3)) = [-1] + [2]x3 + [-1]x2 + [-1]x1
POL(LOAD36231ARR2(x1, x2, x3, x4)) = [2]x3 + [-1]x1 + [-1]x2
POL(java.lang.String(x1, x2, x3, x4)) = [-1] + [-1]x4 + [-1]x3 + [-1]x1
POL(COND_LOAD36231ARR2(x1, x2, x3, x4, x5)) = [2]x4 + [-1]x2 + [-1]x3
POL(-1) = [-1]
POL(LOAD36231ARR3(x1, x2, x3)) = [1] + [2]x3 + [-1]x2 + [-1]x1
POL(COND_LOAD36231ARR3(x1, x2, x3, x4)) = [-1] + [2]x4 + [-1]x3 + [-1]x2
POL(LOAD36231ARR5(x1, x2, x3, x4)) = [-1] + [2]x3 + [-1]x2 + [-1]x1
POL(COND_LOAD36231ARR5(x1, x2, x3, x4, x5)) = [-1] + [2]x4 + [-1]x3 + [-1]x2
The following pairs are in P
>:
LOAD36231(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0]) → LOAD36231ARR1(java.lang.Object(ARRAY(i2[0], a47355data[0])), i20225[0], i20355[0])
LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1]) → COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])
COND_LOAD36231ARR1(TRUE, java.lang.Object(ARRAY(i2[2], a47355data[2])), i20225[2], i20355[2]) → INC40003(java.lang.Object(ARRAY(i2[2], a47355data[2])), +(i20225[2], 1), i20355[2])
LOAD36231(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4]) → LOAD36231ARR2(java.lang.Object(ARRAY(i2[4], a47355data[4])), i20225[4], i20355[4], java.lang.Object(java.lang.String(i21156[4], i20843[4], i20845[4], a49022[4])))
COND_LOAD36231ARR2(TRUE, java.lang.Object(ARRAY(i2[6], a47355data[6])), i20225[6], i20355[6], java.lang.Object(java.lang.String(i21156[6], i20843[6], i20845[6], a49022[6]))) → INC40003(java.lang.Object(ARRAY(i2[6], a47355data[6])), +(i20225[6], 1), i20355[6])
LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9]) → COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])
COND_LOAD36231ARR3(TRUE, java.lang.Object(ARRAY(i2[10], a47355data[10])), i20225[10], i20355[10]) → LOAD36231(java.lang.Object(ARRAY(i2[10], a47355data[10])), +(i20225[10], 1), +(i20355[10], -1))
LOAD36231(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11]) → LOAD36231ARR5(java.lang.Object(ARRAY(i2[11], a47355data[11])), i20225[11], i20355[11], java.lang.Object(java.lang.String(i21156[11], i20843[11], i20845[11], a49022[11])))
COND_LOAD36231ARR5(TRUE, java.lang.Object(ARRAY(i2[13], a47355data[13])), i20225[13], i20355[13], java.lang.Object(java.lang.String(i21156[13], i20843[13], i20845[13], a49022[13]))) → JMP40088'(java.lang.Object(ARRAY(i2[13], a47355data[13])), +(i20225[13], 1), i20355[13])
The following pairs are in P
bound:
LOAD36231ARR1(java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1]) → COND_LOAD36231ARR1(&&(&&(&&(>(i20225[1], 0), <(i20225[1], i2[1])), >(i20355[1], 0)), >(+(i20225[1], 1), 0)), java.lang.Object(ARRAY(i2[1], a47355data[1])), i20225[1], i20355[1])
LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5]))) → COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))
LOAD36231ARR3(java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9]) → COND_LOAD36231ARR3(&&(&&(&&(>(i20225[9], 0), <(i20225[9], i2[9])), >(i20355[9], 0)), >(+(i20225[9], 1), 0)), java.lang.Object(ARRAY(i2[9], a47355data[9])), i20225[9], i20355[9])
LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12]))) → COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))
The following pairs are in P
≥:
JMP40088'(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3]) → INC40003(java.lang.Object(ARRAY(i2[3], a47355data[3])), i20581[3], i20355[3])
LOAD36231ARR2(java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5]))) → COND_LOAD36231ARR2(&&(&&(&&(&&(>(i21156[5], 0), >(i20225[5], 0)), <(i20225[5], i2[5])), >(i20355[5], 0)), >(+(i20225[5], 1), 0)), java.lang.Object(ARRAY(i2[5], a47355data[5])), i20225[5], i20355[5], java.lang.Object(java.lang.String(i21156[5], i20843[5], i20845[5], a49022[5])))
INC40003(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], i20355[7]) → LOAD36231(java.lang.Object(ARRAY(i2[7], a47355data[7])), i20581[7], +(i20355[7], -1))
LOAD36231(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8]) → LOAD36231ARR3(java.lang.Object(ARRAY(i2[8], a47355data[8])), i20225[8], i20355[8])
LOAD36231ARR5(java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12]))) → COND_LOAD36231ARR5(&&(&&(&&(&&(>(i21156[12], 0), >(i20225[12], 0)), <(i20225[12], i2[12])), >(i20355[12], 0)), >(+(i20225[12], 1), 0)), java.lang.Object(ARRAY(i2[12], a47355data[12])), i20225[12], i20355[12], java.lang.Object(java.lang.String(i21156[12], i20843[12], i20845[12], a49022[12])))
There are no usable rules.
(44) Complex Obligation (AND)
(45) Obligation:
IDP problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The following domains are used:
Boolean, Integer
R is empty.
The integer pair graph contains the following rules and edges:
(3):
JMP40088'(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3]) →
INC40003(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3])
(5):
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5]))) →
COND_LOAD36231ARR2(
i21156[5] > 0 && i20225[5] > 0 && i20225[5] < i2[5] && i20355[5] > 0 && i20225[5] + 1 > 0,
java.lang.Object(
ARRAY(
i2[5],
a47355data[5])),
i20225[5],
i20355[5],
java.lang.Object(
java.lang.String(
i21156[5],
i20843[5],
i20845[5],
a49022[5])))
(7):
INC40003(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7] + -1)
(8):
LOAD36231(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8]) →
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8])
(12):
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12]))) →
COND_LOAD36231ARR5(
i21156[12] > 0 && i20225[12] > 0 && i20225[12] < i2[12] && i20355[12] > 0 && i20225[12] + 1 > 0,
java.lang.Object(
ARRAY(
i2[12],
a47355data[12])),
i20225[12],
i20355[12],
java.lang.Object(
java.lang.String(
i21156[12],
i20843[12],
i20845[12],
a49022[12])))
(3) -> (7), if (((i2[3] →* i2[7])∧(a47355data[3] →* a47355data[7]))∧(i20581[3] →* i20581[7])∧(i20355[3] →* i20355[7]))
(7) -> (8), if ((i20355[7] + -1 →* i20355[8])∧(i20581[7] →* i20225[8])∧((i2[7] →* i2[8])∧(a47355data[7] →* a47355data[8])))
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(46) IDependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 5 less nodes.
(47) TRUE
(48) Obligation:
IDP problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The following domains are used:
Integer
R is empty.
The integer pair graph contains the following rules and edges:
(0):
LOAD36231(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0]) →
LOAD36231ARR1(
java.lang.Object(
ARRAY(
i2[0],
a47355data[0])),
i20225[0],
i20355[0])
(2):
COND_LOAD36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2],
i20355[2]) →
INC40003(
java.lang.Object(
ARRAY(
i2[2],
a47355data[2])),
i20225[2] + 1,
i20355[2])
(3):
JMP40088'(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3]) →
INC40003(
java.lang.Object(
ARRAY(
i2[3],
a47355data[3])),
i20581[3],
i20355[3])
(4):
LOAD36231(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4]) →
LOAD36231ARR2(
java.lang.Object(
ARRAY(
i2[4],
a47355data[4])),
i20225[4],
i20355[4],
java.lang.Object(
java.lang.String(
i21156[4],
i20843[4],
i20845[4],
a49022[4])))
(6):
COND_LOAD36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6],
i20355[6],
java.lang.Object(
java.lang.String(
i21156[6],
i20843[6],
i20845[6],
a49022[6]))) →
INC40003(
java.lang.Object(
ARRAY(
i2[6],
a47355data[6])),
i20225[6] + 1,
i20355[6])
(7):
INC40003(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[7],
a47355data[7])),
i20581[7],
i20355[7] + -1)
(8):
LOAD36231(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8]) →
LOAD36231ARR3(
java.lang.Object(
ARRAY(
i2[8],
a47355data[8])),
i20225[8],
i20355[8])
(10):
COND_LOAD36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10],
i20355[10]) →
LOAD36231(
java.lang.Object(
ARRAY(
i2[10],
a47355data[10])),
i20225[10] + 1,
i20355[10] + -1)
(11):
LOAD36231(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11]) →
LOAD36231ARR5(
java.lang.Object(
ARRAY(
i2[11],
a47355data[11])),
i20225[11],
i20355[11],
java.lang.Object(
java.lang.String(
i21156[11],
i20843[11],
i20845[11],
a49022[11])))
(13):
COND_LOAD36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13],
i20355[13],
java.lang.Object(
java.lang.String(
i21156[13],
i20843[13],
i20845[13],
a49022[13]))) →
JMP40088'(
java.lang.Object(
ARRAY(
i2[13],
a47355data[13])),
i20225[13] + 1,
i20355[13])
(7) -> (0), if (((i2[7] →* i2[0])∧(a47355data[7] →* a47355data[0]))∧(i20581[7] →* i20225[0])∧(i20355[7] + -1 →* i20355[0]))
(10) -> (0), if (((i2[10] →* i2[0])∧(a47355data[10] →* a47355data[0]))∧(i20355[10] + -1 →* i20355[0])∧(i20225[10] + 1 →* i20225[0]))
(13) -> (3), if ((i20355[13] →* i20355[3])∧(i20225[13] + 1 →* i20581[3])∧((i2[13] →* i2[3])∧(a47355data[13] →* a47355data[3])))
(7) -> (4), if ((i20355[7] + -1 →* i20355[4])∧((i2[7] →* i2[4])∧(a47355data[7] →* a47355data[4]))∧(i20581[7] →* i20225[4]))
(10) -> (4), if ((i20225[10] + 1 →* i20225[4])∧((i2[10] →* i2[4])∧(a47355data[10] →* a47355data[4]))∧(i20355[10] + -1 →* i20355[4]))
(2) -> (7), if ((i20225[2] + 1 →* i20581[7])∧((i2[2] →* i2[7])∧(a47355data[2] →* a47355data[7]))∧(i20355[2] →* i20355[7]))
(3) -> (7), if (((i2[3] →* i2[7])∧(a47355data[3] →* a47355data[7]))∧(i20581[3] →* i20581[7])∧(i20355[3] →* i20355[7]))
(6) -> (7), if ((i20355[6] →* i20355[7])∧((i2[6] →* i2[7])∧(a47355data[6] →* a47355data[7]))∧(i20225[6] + 1 →* i20581[7]))
(7) -> (8), if ((i20355[7] + -1 →* i20355[8])∧(i20581[7] →* i20225[8])∧((i2[7] →* i2[8])∧(a47355data[7] →* a47355data[8])))
(10) -> (8), if ((i20355[10] + -1 →* i20355[8])∧(i20225[10] + 1 →* i20225[8])∧((i2[10] →* i2[8])∧(a47355data[10] →* a47355data[8])))
(7) -> (11), if (((i2[7] →* i2[11])∧(a47355data[7] →* a47355data[11]))∧(i20581[7] →* i20225[11])∧(i20355[7] + -1 →* i20355[11]))
(10) -> (11), if ((i20355[10] + -1 →* i20355[11])∧(i20225[10] + 1 →* i20225[11])∧((i2[10] →* i2[11])∧(a47355data[10] →* a47355data[11])))
The set Q consists of the following terms:
Load36231(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR1(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR1(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
JMP40088(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR2(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR2(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Inc40003(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR3(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Cond_Load36231ARR3(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3)
Load36231ARR5(
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
Cond_Load36231ARR5(
TRUE,
java.lang.Object(
ARRAY(
x0,
x1)),
x2,
x3,
java.lang.Object(
java.lang.String(
x4,
x5,
x6,
x7)))
(49) IDependencyGraphProof (EQUIVALENT transformation)
The approximation of the Dependency Graph [LPAR04,FROCOS05,EDGSTAR] contains 0 SCCs with 10 less nodes.
(50) TRUE
(51) Obligation:
ITRS problem:
The following function symbols are pre-defined:
!= | ~ | 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 |
The TRS R consists of the following rules:
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC)))) →
Load18769ARR9(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251)))
Load18769ARR9(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251))) →
Cond_Load18769ARR9(
i6103 > 0 && i6103 < i2 && i6174 > 0 && i6103 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251)))
Cond_Load18769ARR9(
TRUE,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251))) →
Inc24121(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103 + 1,
i6174,
java.lang.Object(
Tree(
o20364,
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)),
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25822Field0,
o25822Field1,
o25822Field2)))
JMP24198(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2))) →
Inc24121(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)))
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)),
o25612,
o25613))) →
Load18769ARR10(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)),
o25612,
o25613)),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251)))
Load18769ARR10(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)),
o25612,
o25613)),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251))) →
Cond_Load18769ARR10(
i7456 > 0 && i6103 > 0 && i6103 < i2 && i6174 > 0 && i6103 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)),
o25612,
o25613)),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251)))
Cond_Load18769ARR10(
TRUE,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)),
o25612,
o25613)),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251))) →
Inc24121(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103 + 1,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o26179Field0,
o26179Field1,
o26179Field2)))
Inc24121(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2))) →
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174 + -1,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)))
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)),
o25573))) →
Load18769ARR11(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251)))
Load18769ARR11(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251))) →
Cond_Load18769ARR11(
i6103 > 0 && i6103 < i2 && i6174 > 0 && i6103 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251)))
Cond_Load18769ARR11(
TRUE,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251))) →
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103 + 1,
i6174 + -1,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o26084Field0,
o26084Field1,
o26084Field2)))
Inc26621(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC)))) →
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174 + -1,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))))
JMP26504(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC)))) →
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174 + -1,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))))
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
NULL,
o25573))) →
Load18769ARR12(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
NULL,
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251)))
Load18769ARR12(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251))) →
Cond_Load18769ARR12(
i6103 > 0 && i6103 < i2 && i6174 > 0 && i6103 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251)))
Cond_Load18769ARR12(
TRUE,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25571,
java.lang.Object(
Tree(
NULL,
NULL,
java.lang.Object(
EOC))),
o25573)),
java.lang.Object(
java.lang.String(
0,
i7089,
i7091,
a23251))) →
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103 + 1,
i6174 + -1,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))))
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC)))) →
Load18769ARR13(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251)))
Load18769ARR13(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251))) →
Cond_Load18769ARR13(
i7456 > 0 && i6103 > 0 && i6103 < i2 && i6174 > 0 && i6103 + 1 > 0,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251)))
Cond_Load18769ARR13(
TRUE,
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
java.lang.String(
i7456,
i7089,
i7091,
a23251))) →
JMP24198(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103 + 1,
i6174,
java.lang.Object(
Tree(
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)),
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o25926Field0,
o25926Field1,
o25926Field2)))
JMP26541(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC)))) →
Inc26621(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6668,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))))
Load18769(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o25612,
o25613))) →
Load18769ARR14(
java.lang.Object(
ARRAY(
i2,
a20441data)),
i6103,
i6174,
java.lang.Object(
Tree(
o20364,
o20365,
java.lang.Object(
EOC))),
java.lang.Object(
Tree(
NULL,
o25612,
o25613)),
java.lang.Object(
java.lang.String(
i7456,
i7089, <