(0) Obligation:

JBC Problem based on JBC Program:
package simple.whileNestedOffset;

public class Main {

/**
* @param args
*/
public static void main(String[] args) {
WhileNestedOffset.increase(args.length);

}

}


package simple.whileNestedOffset;

public class WhileNestedOffset {

public static void increase(int i) {
int j;
while (i < 10) {
j = i;
while (j > 5) {
j++;
}
i++;
}
}
}


(1) JBCNonTerm (EQUIVALENT transformation)

Reached a loop using the following run:
0:
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||0: load ADDR args||args: a179|| ->
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
1:
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||1: arraylength|| - ||a179>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
2:
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase(I)V|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
3:
<simple.whileNestedOffset.WhileNestedOffset.increase||0: load INT i||i: i186|| ->
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
4:
<simple.whileNestedOffset.WhileNestedOffset.increase||1: push 10||i: i186||i186>
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
5:
<simple.whileNestedOffset.WhileNestedOffset.increase||3: GE||i: i186||i186, iconst_10>
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
6:
<simple.whileNestedOffset.WhileNestedOffset.increase||6: load INT i||i: i186|| ->
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
7:
<simple.whileNestedOffset.WhileNestedOffset.increase||7: store INT to j||i: i186||i186>
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
8:
<simple.whileNestedOffset.WhileNestedOffset.increase||8: load INT j||i: i186, j: i186|| ->
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a179(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i186>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a181
	String.CASE_INSENSITIVE_ORDER: o92
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	i186: [0,9](4){0,9}
	a179([java.lang.String...]): length i186
	a181([java.io.ObjectStreamField|]): length iconst_0
	o92!: String$CaseInsensitiveComparator()
Relations: 
Start state of loop:
<simple.whileNestedOffset.WhileNestedOffset.increase||8: load INT j||i: i44, j: i97|| ->
java.lang.String = serialPersistentFields, CASE_INSENSITIVE_ORDER
[a60(lv_0_0)]
<simple.whileNestedOffset.Main.main||2: simple.whileNestedOffset.WhileNestedOffset.increase|| - ||i19>
	String.serialVersionUID: iconstLong_-6849794470754667710
	String.serialPersistentFields: a59
	String.CASE_INSENSITIVE_ORDER: o31
	String$CaseInsensitiveComparator.serialVersionUID: iconstLong_8575799808933029326
	RuntimeException.serialVersionUID: iconstLong_-7034897190745766939
	Exception.serialVersionUID: iconstLong_-3387516993124229948
	Throwable.serialVersionUID: iconstLong_-3042686055658047285
	a59([java.io.ObjectStreamField|]): length iconst_0
	o31!: String$CaseInsensitiveComparator()
	i44: [0,9](2){0,+inf}
	i97: [0,+inf)(4){0,+inf}
	i19: [0,+inf)(1){0,+inf}
	a60([java.lang.String...]): length i19
Relations: 

In the loop head node, references [i97] were interesting.
By SMT, we could prove
((0 <= initial_i44 and initial_i44 <= 9 and 0 <= initial_i97 and 0 <= initial_i19) and (((path1_i97 = path1_i113 and path1_i116 = (path1_i113 + 1) and path1_i44 = res_i44 and path1_i116 = res_i97 and path1_i19 = res_i19 and path1_i44 = initial_i44 and path1_i97 = initial_i97 and path1_i19 = initial_i19) and (T and path1_i113 > 5)) and ((res_i97 = res_i113 and res_i116 = (res_i113 + 1)) and !(T and res_i113 > 5))))
to be UNSAT. Consequently, the loop will not terminate.

(2) NO