4.20/1.91 NO 4.20/1.91 proof of /export/starexec/sandbox/benchmark/theBenchmark.jar 4.20/1.91 # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty 4.20/1.91 4.20/1.91 4.20/1.91 termination of the given Bare JBC problem could be disproven: 4.20/1.91 4.20/1.91 (0) Bare JBC problem 4.20/1.91 (1) BareJBCToJBCProof [EQUIVALENT, 95 ms] 4.20/1.91 (2) JBC problem 4.20/1.91 (3) JBCNonTerm [COMPLETE, 210 ms] 4.20/1.91 (4) NO 4.20/1.91 4.20/1.91 4.20/1.91 ---------------------------------------- 4.20/1.91 4.20/1.91 (0) 4.20/1.91 Obligation: 4.20/1.91 need to prove termination of the following program: 4.20/1.91 package simple.ex04; 4.20/1.91 4.20/1.91 public class Ex04 { 4.20/1.91 4.20/1.91 public static void loop(int i) { 4.20/1.91 while (true) { 4.20/1.91 i--; 4.20/1.91 } 4.20/1.91 } 4.20/1.91 } 4.20/1.91 4.20/1.91 4.20/1.91 package simple.ex04; 4.20/1.91 4.20/1.91 public class Main { 4.20/1.91 4.20/1.91 /** 4.20/1.91 * @param args 4.20/1.91 */ 4.20/1.91 public static void main(String[] args) { 4.20/1.91 Ex04.loop(args.length); 4.20/1.91 } 4.20/1.91 4.20/1.91 } 4.20/1.91 4.20/1.91 4.20/1.91 4.20/1.91 ---------------------------------------- 4.20/1.91 4.20/1.91 (1) BareJBCToJBCProof (EQUIVALENT) 4.20/1.91 initialized classpath 4.20/1.91 ---------------------------------------- 4.20/1.91 4.20/1.91 (2) 4.20/1.91 Obligation: 4.20/1.91 need to prove termination of the following program: 4.20/1.91 package simple.ex04; 4.20/1.91 4.20/1.91 public class Ex04 { 4.20/1.91 4.20/1.91 public static void loop(int i) { 4.20/1.91 while (true) { 4.20/1.91 i--; 4.20/1.91 } 4.20/1.91 } 4.20/1.91 } 4.20/1.91 4.20/1.91 4.20/1.91 package simple.ex04; 4.20/1.91 4.20/1.91 public class Main { 4.20/1.91 4.20/1.91 /** 4.20/1.91 * @param args 4.20/1.91 */ 4.20/1.91 public static void main(String[] args) { 4.20/1.91 Ex04.loop(args.length); 4.20/1.91 } 4.20/1.91 4.20/1.91 } 4.20/1.91 4.20/1.91 4.20/1.91 4.20/1.91 ---------------------------------------- 4.20/1.91 4.20/1.91 (3) JBCNonTerm (COMPLETE) 4.20/1.91 Symbolic evaluation of method public static main([Ljava/lang/String;)V never reaches a method end (by explicit return or exception). 4.20/1.91 4.20/1.91 As this is the main method, we can conclude non-termination of the input program. 4.20/1.91 ---------------------------------------- 4.20/1.91 4.20/1.91 (4) 4.20/1.91 NO 4.41/2.61 EOF