/export/starexec/sandbox/solver/bin/starexec_run_termcomp17 /export/starexec/sandbox/benchmark/theBenchmark.smt2 /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- NO Solver Timeout: 4 Global Timeout: 300 Maximum number of concurrent processes: 900 No parsing errors! Init Location: 0 Transitions: ~(1)) /\ (arg1 > 0) /\ (undef1 > 0), par{arg1 -> undef1, arg2 -> 0, arg3 -> 0, arg4 -> undef4, arg5 -> undef5}> = undef11) /\ (arg2 < undef11) /\ (undef11 > ~(1)) /\ (arg1 > 0), par{arg1 -> arg2, arg2 -> arg3, arg3 -> undef8, arg4 -> undef9, arg5 -> undef10}> ~(1)) /\ (undef17 > arg2) /\ (arg3 < undef17) /\ (undef18 > ~(1)) /\ (arg3 > ~(1)) /\ (arg1 > 0), par{arg1 -> arg2, arg2 -> (arg3 + 1), arg3 -> undef14, arg4 -> undef15, arg5 -> undef16}> 0), par{arg1 -> undef19, arg2 -> (arg1 + 1), arg3 -> arg2, arg4 -> undef22, arg5 -> undef23}> = undef30) /\ (arg3 <= undef30) /\ (arg1 > 0), par{arg1 -> 0, arg2 -> 0, arg3 -> undef27, arg4 -> undef28, arg5 -> undef29}> = undef36), par{arg1 -> (undef36 - 1), arg3 -> undef33, arg4 -> undef34, arg5 -> undef35}> 0), par{arg1 -> (arg1 + 1), arg2 -> undef38, arg3 -> undef39, arg4 -> undef40, arg5 -> undef41}> 0), par{arg1 -> undef43, arg2 -> arg1, arg3 -> arg2, arg4 -> undef46, arg5 -> undef47}> ~(1)) /\ (undef48 > 0) /\ (undef53 > 0), par{arg1 -> undef48, arg2 -> arg1, arg3 -> undef50, arg4 -> undef51, arg5 -> undef52}> 0) /\ (arg2 < undef59), par{arg1 -> (arg2 - 1), arg2 -> arg3, arg3 -> undef56, arg4 -> undef57, arg5 -> undef58}> 0), par{arg1 -> undef60, arg3 -> undef62, arg4 -> undef63, arg5 -> undef64}> = undef71) /\ (arg2 > 0) /\ (undef72 > undef71) /\ ((arg2 - 1) >= undef73) /\ (undef74 <= arg1) /\ (undef72 > undef73) /\ ((arg2 - 1) >= undef75) /\ (arg2 < undef72) /\ (arg2 > undef75), par{arg3 -> undef68, arg4 -> undef69, arg5 -> undef70}> = undef81) /\ (arg2 > 0) /\ (undef82 > undef81) /\ ((arg2 - 1) >= undef83) /\ (undef84 <= arg1) /\ (undef82 > undef83) /\ ((arg2 - 1) >= undef77) /\ (arg2 > undef77) /\ (arg2 < undef82) /\ (((arg2 - 1) - (2 * undef81)) >= 0) /\ (((arg2 - 1) - (2 * undef81)) < 2) /\ (((arg2 - 1) - (2 * undef83)) >= 0) /\ (((arg2 - 1) - (2 * undef83)) < 2) /\ (((arg2 - 1) - (2 * undef77)) < 2) /\ (((arg2 - 1) - (2 * undef77)) >= 0), par{arg2 -> undef77, arg3 -> undef78, arg4 -> undef79, arg5 -> undef80}> = undef90) /\ (arg2 > 0) /\ (undef91 > arg1) /\ (undef92 > 0) /\ (undef93 > undef90), par{arg3 -> undef87, arg4 -> undef88, arg5 -> undef89}> = undef99) /\ (arg2 > 0) /\ (undef100 > arg1) /\ (undef101 > undef99) /\ (undef94 > 0) /\ (((arg2 - 1) - (2 * undef99)) < 2) /\ (((arg2 - 1) - (2 * undef99)) >= 0), par{arg1 -> undef94, arg3 -> arg1, arg4 -> undef97, arg5 -> undef98}> = undef107) /\ (arg2 > 0) /\ (undef108 > undef107) /\ ((arg2 - 1) >= undef109) /\ (undef110 <= arg1) /\ (undef108 > undef109) /\ ((arg2 - 1) >= undef111) /\ (arg2 <= undef111) /\ (undef112 > 0) /\ (arg2 < undef108), par{arg3 -> undef104, arg4 -> undef105, arg5 -> undef106}> = undef118) /\ (arg2 > 0) /\ (undef119 > undef118) /\ ((arg2 - 1) >= undef120) /\ (undef121 <= arg1) /\ (undef119 > undef120) /\ ((arg2 - 1) >= undef122) /\ (arg2 <= undef122) /\ (arg2 < undef119) /\ (undef113 > 0) /\ (((arg2 - 1) - (2 * undef118)) >= 0) /\ (((arg2 - 1) - (2 * undef118)) < 2) /\ (((arg2 - 1) - (2 * undef120)) >= 0) /\ (((arg2 - 1) - (2 * undef120)) < 2) /\ (((arg2 - 1) - (2 * undef122)) < 2) /\ (((arg2 - 1) - (2 * undef122)) >= 0), par{arg1 -> undef113, arg3 -> arg1, arg4 -> undef116, arg5 -> undef117}> ~(1)) /\ ((arg2 - 1) < undef128) /\ (undef128 > 0), par{arg1 -> 0, arg2 -> undef124, arg3 -> 1, arg4 -> undef126, arg5 -> undef127}> = undef134) /\ (undef129 > 0), par{arg1 -> undef129, arg2 -> arg1, arg3 -> arg2, arg4 -> undef132, arg5 -> undef133}> = 0) /\ (undef137 > 0) /\ (arg3 < undef139), par{arg3 -> undef137, arg4 -> ((2 * arg1) + 1), arg5 -> undef139}> = undef145) /\ (arg4 < undef146) /\ (arg3 >= undef140) /\ (arg3 > 0) /\ (undef140 > 0), par{arg1 -> undef140, arg2 -> arg1, arg3 -> arg2, arg4 -> undef143, arg5 -> undef144}> = 0) /\ (undef151 > ((2 * arg1) + 2)) /\ (undef152 > ((2 * arg1) + 2)) /\ (undef153 <= undef154) /\ (undef149 > 0) /\ (undef152 > ((2 * arg1) + 1)), par{arg3 -> undef149, arg4 -> ((2 * arg1) + 1), arg5 -> undef151}> = 0) /\ (undef159 > ((2 * arg1) + 2)) /\ (undef160 > ((2 * arg1) + 2)) /\ (undef161 > undef162) /\ (undef157 > 0) /\ (undef160 > ((2 * arg1) + 1)), par{arg3 -> undef157, arg4 -> ((2 * arg1) + 2), arg5 -> undef159}> arg2) /\ ((2 * arg4) >= 0) /\ (arg1 < undef168) /\ (arg3 > 0), par{arg1 -> arg4, arg3 -> ((2 * arg4) + 1), arg4 -> undef166, arg5 -> undef167}> undef170, arg2 -> undef171, arg3 -> undef172, arg4 -> undef173, arg5 -> undef174}> Fresh variables: undef1, undef4, undef5, undef8, undef9, undef10, undef11, undef14, undef15, undef16, undef17, undef18, undef19, undef22, undef23, undef24, undef27, undef28, undef29, undef30, undef33, undef34, undef35, undef36, undef38, undef39, undef40, undef41, undef42, undef43, undef46, undef47, undef48, undef50, undef51, undef52, undef53, undef56, undef57, undef58, undef59, undef60, undef62, undef63, undef64, undef65, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef75, undef77, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef97, undef98, undef99, undef100, undef101, undef104, undef105, undef106, undef107, undef108, undef109, undef110, undef111, undef112, undef113, undef116, undef117, undef118, undef119, undef120, undef121, undef122, undef124, undef126, undef127, undef128, undef129, undef132, undef133, undef134, undef137, undef139, undef140, undef143, undef144, undef145, undef146, undef149, undef151, undef152, undef153, undef154, undef157, undef159, undef160, undef161, undef162, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, Undef variables: undef1, undef4, undef5, undef8, undef9, undef10, undef11, undef14, undef15, undef16, undef17, undef18, undef19, undef22, undef23, undef24, undef27, undef28, undef29, undef30, undef33, undef34, undef35, undef36, undef38, undef39, undef40, undef41, undef42, undef43, undef46, undef47, undef48, undef50, undef51, undef52, undef53, undef56, undef57, undef58, undef59, undef60, undef62, undef63, undef64, undef65, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef75, undef77, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef97, undef98, undef99, undef100, undef101, undef104, undef105, undef106, undef107, undef108, undef109, undef110, undef111, undef112, undef113, undef116, undef117, undef118, undef119, undef120, undef121, undef122, undef124, undef126, undef127, undef128, undef129, undef132, undef133, undef134, undef137, undef139, undef140, undef143, undef144, undef145, undef146, undef149, undef151, undef152, undef153, undef154, undef157, undef159, undef160, undef161, undef162, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: ~(1)) /\ (undef170 > 0) /\ (undef1 > 0)> = undef11) /\ (arg2 < undef11) /\ (undef11 > ~(1)) /\ (arg1 > 0) /\ (arg2 < undef24) /\ (undef19 > 0), par{arg1 -> undef19, arg2 -> (arg2 + 1), arg3 -> arg3}> ~(1)) /\ (undef17 > arg2) /\ (arg3 < undef17) /\ (undef18 > ~(1)) /\ (arg3 > ~(1)) /\ (arg1 > 0) /\ (arg2 < undef24) /\ (undef19 > 0), par{arg1 -> undef19, arg2 -> (arg2 + 1), arg3 -> (arg3 + 1)}> = undef30) /\ (arg3 <= undef30) /\ (arg1 > 0), par{arg1 -> 0, arg2 -> 0, arg3 -> undef27}> = undef36), par{arg1 -> (undef36 - 1), arg3 -> undef33}> 0), par{arg1 -> (arg1 + 1), arg2 -> undef38, arg3 -> undef39}> 0), par{arg1 -> undef60, arg3 -> undef62}> ~(1)) /\ (undef48 > 0) /\ (undef53 > 0) /\ (undef48 > 0) /\ (arg1 < undef59), par{arg1 -> (arg1 - 1), arg2 -> undef50, arg3 -> undef56}> ~(1)) /\ ((arg2 - 1) < undef128) /\ (undef128 > 0), par{arg1 -> 0, arg2 -> undef124, arg3 -> 1}> = undef71) /\ (arg2 > 0) /\ (undef72 > undef71) /\ ((arg2 - 1) >= undef73) /\ (undef74 <= arg1) /\ (undef72 > undef73) /\ ((arg2 - 1) >= undef75) /\ (arg2 < undef72) /\ (arg2 > undef75) /\ ((arg2 - 1) >= undef81) /\ (arg2 > 0) /\ (undef82 > undef81) /\ ((arg2 - 1) >= undef83) /\ (undef84 <= arg1) /\ (undef82 > undef83) /\ ((arg2 - 1) >= undef77) /\ (arg2 > undef77) /\ (arg2 < undef82) /\ (((arg2 - 1) - (2 * undef81)) >= 0) /\ (((arg2 - 1) - (2 * undef81)) < 2) /\ (((arg2 - 1) - (2 * undef83)) >= 0) /\ (((arg2 - 1) - (2 * undef83)) < 2) /\ (((arg2 - 1) - (2 * undef77)) < 2) /\ (((arg2 - 1) - (2 * undef77)) >= 0), par{arg2 -> undef77, arg3 -> undef78}> = undef71) /\ (arg2 > 0) /\ (undef72 > undef71) /\ ((arg2 - 1) >= undef73) /\ (undef74 <= arg1) /\ (undef72 > undef73) /\ ((arg2 - 1) >= undef75) /\ (arg2 < undef72) /\ (arg2 > undef75) /\ ((arg2 - 1) >= undef99) /\ (arg2 > 0) /\ (undef100 > arg1) /\ (undef101 > undef99) /\ (undef94 > 0) /\ (((arg2 - 1) - (2 * undef99)) < 2) /\ (((arg2 - 1) - (2 * undef99)) >= 0), par{arg1 -> undef94, arg3 -> arg1}> = undef90) /\ (arg2 > 0) /\ (undef91 > arg1) /\ (undef92 > 0) /\ (undef93 > undef90) /\ ((arg2 - 1) >= undef81) /\ (arg2 > 0) /\ (undef82 > undef81) /\ ((arg2 - 1) >= undef83) /\ (undef84 <= arg1) /\ (undef82 > undef83) /\ ((arg2 - 1) >= undef77) /\ (arg2 > undef77) /\ (arg2 < undef82) /\ (((arg2 - 1) - (2 * undef81)) >= 0) /\ (((arg2 - 1) - (2 * undef81)) < 2) /\ (((arg2 - 1) - (2 * undef83)) >= 0) /\ (((arg2 - 1) - (2 * undef83)) < 2) /\ (((arg2 - 1) - (2 * undef77)) < 2) /\ (((arg2 - 1) - (2 * undef77)) >= 0), par{arg2 -> undef77, arg3 -> undef78}> = undef90) /\ (arg2 > 0) /\ (undef91 > arg1) /\ (undef92 > 0) /\ (undef93 > undef90) /\ ((arg2 - 1) >= undef99) /\ (arg2 > 0) /\ (undef100 > arg1) /\ (undef101 > undef99) /\ (undef94 > 0) /\ (((arg2 - 1) - (2 * undef99)) < 2) /\ (((arg2 - 1) - (2 * undef99)) >= 0), par{arg1 -> undef94, arg3 -> arg1}> = undef134) /\ (undef129 > 0), par{arg1 -> undef129, arg2 -> arg1, arg3 -> arg2}> = 0) /\ (undef137 > 0) /\ (arg3 < undef139) /\ (arg2 >= undef145) /\ (((2 * arg1) + 1) < undef146) /\ (undef137 >= undef140) /\ (undef137 > 0) /\ (undef140 > 0), par{arg1 -> undef140, arg2 -> arg1, arg3 -> arg2}> = 0) /\ (undef137 > 0) /\ (arg3 < undef139) /\ (((2 * arg1) + 1) < undef168) /\ (undef169 > arg2) /\ ((2 * ((2 * arg1) + 1)) >= 0) /\ (arg1 < undef168) /\ (undef137 > 0), par{arg1 -> ((2 * arg1) + 1), arg3 -> ((2 * ((2 * arg1) + 1)) + 1)}> = 0) /\ (undef151 > ((2 * arg1) + 2)) /\ (undef152 > ((2 * arg1) + 2)) /\ (undef153 <= undef154) /\ (undef149 > 0) /\ (undef152 > ((2 * arg1) + 1)) /\ (arg2 >= undef145) /\ (((2 * arg1) + 1) < undef146) /\ (undef149 >= undef140) /\ (undef149 > 0) /\ (undef140 > 0), par{arg1 -> undef140, arg2 -> arg1, arg3 -> arg2}> = 0) /\ (undef151 > ((2 * arg1) + 2)) /\ (undef152 > ((2 * arg1) + 2)) /\ (undef153 <= undef154) /\ (undef149 > 0) /\ (undef152 > ((2 * arg1) + 1)) /\ (((2 * arg1) + 1) < undef168) /\ (undef169 > arg2) /\ ((2 * ((2 * arg1) + 1)) >= 0) /\ (arg1 < undef168) /\ (undef149 > 0), par{arg1 -> ((2 * arg1) + 1), arg3 -> ((2 * ((2 * arg1) + 1)) + 1)}> = 0) /\ (undef159 > ((2 * arg1) + 2)) /\ (undef160 > ((2 * arg1) + 2)) /\ (undef161 > undef162) /\ (undef157 > 0) /\ (undef160 > ((2 * arg1) + 1)) /\ (arg2 >= undef145) /\ (((2 * arg1) + 2) < undef146) /\ (undef157 >= undef140) /\ (undef157 > 0) /\ (undef140 > 0), par{arg1 -> undef140, arg2 -> arg1, arg3 -> arg2}> = 0) /\ (undef159 > ((2 * arg1) + 2)) /\ (undef160 > ((2 * arg1) + 2)) /\ (undef161 > undef162) /\ (undef157 > 0) /\ (undef160 > ((2 * arg1) + 1)) /\ (((2 * arg1) + 2) < undef168) /\ (undef169 > arg2) /\ ((2 * ((2 * arg1) + 2)) >= 0) /\ (arg1 < undef168) /\ (undef157 > 0), par{arg1 -> ((2 * arg1) + 2), arg3 -> ((2 * ((2 * arg1) + 2)) + 1)}> Fresh variables: undef1, undef4, undef5, undef8, undef9, undef10, undef11, undef14, undef15, undef16, undef17, undef18, undef19, undef22, undef23, undef24, undef27, undef28, undef29, undef30, undef33, undef34, undef35, undef36, undef38, undef39, undef40, undef41, undef42, undef43, undef46, undef47, undef48, undef50, undef51, undef52, undef53, undef56, undef57, undef58, undef59, undef60, undef62, undef63, undef64, undef65, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef75, undef77, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef97, undef98, undef99, undef100, undef101, undef104, undef105, undef106, undef107, undef108, undef109, undef110, undef111, undef112, undef113, undef116, undef117, undef118, undef119, undef120, undef121, undef122, undef124, undef126, undef127, undef128, undef129, undef132, undef133, undef134, undef137, undef139, undef140, undef143, undef144, undef145, undef146, undef149, undef151, undef152, undef153, undef154, undef157, undef159, undef160, undef161, undef162, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, Undef variables: undef1, undef4, undef5, undef8, undef9, undef10, undef11, undef14, undef15, undef16, undef17, undef18, undef19, undef22, undef23, undef24, undef27, undef28, undef29, undef30, undef33, undef34, undef35, undef36, undef38, undef39, undef40, undef41, undef42, undef43, undef46, undef47, undef48, undef50, undef51, undef52, undef53, undef56, undef57, undef58, undef59, undef60, undef62, undef63, undef64, undef65, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef75, undef77, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef97, undef98, undef99, undef100, undef101, undef104, undef105, undef106, undef107, undef108, undef109, undef110, undef111, undef112, undef113, undef116, undef117, undef118, undef119, undef120, undef121, undef122, undef124, undef126, undef127, undef128, undef129, undef132, undef133, undef134, undef137, undef139, undef140, undef143, undef144, undef145, undef146, undef149, undef151, undef152, undef153, undef154, undef157, undef159, undef160, undef161, undef162, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: undef19, arg2 -> 1 + arg2, rest remain the same}> undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Graph 2: Transitions: 1 + arg1, arg2 -> undef38, arg3 -> undef39, rest remain the same}> Variables: arg1, arg2, arg3 Graph 3: Transitions: undef77, arg3 -> undef78, rest remain the same}> undef77, arg3 -> undef78, rest remain the same}> Variables: arg1, arg2, arg3 Graph 4: Transitions: Variables: Graph 5: Transitions: -1 + arg1, arg2 -> undef50, arg3 -> undef56, rest remain the same}> Variables: arg1, arg2, arg3 Graph 6: Transitions: 1 + 2*arg1, arg3 -> 3 + 4*arg1, rest remain the same}> 1 + 2*arg1, arg3 -> 3 + 4*arg1, rest remain the same}> 2 + 2*arg1, arg3 -> 5 + 4*arg1, rest remain the same}> Variables: arg1, arg2, arg3 Graph 7: Transitions: Variables: Precedence: Graph 0 Graph 1 Graph 2 0, arg2 -> 0, arg3 -> undef27, rest remain the same}> Graph 3 undef60, arg3 -> undef62, rest remain the same}> Graph 4 undef94, arg3 -> arg1, rest remain the same}> undef94, arg3 -> arg1, rest remain the same}> Graph 5 -1 + undef36, arg3 -> undef33, rest remain the same}> Graph 6 0, arg2 -> undef124, arg3 -> 1, rest remain the same}> Graph 7 undef129, arg2 -> arg1, arg3 -> arg2, rest remain the same}> undef140, arg2 -> arg1, arg3 -> arg2, rest remain the same}> undef140, arg2 -> arg1, arg3 -> arg2, rest remain the same}> undef140, arg2 -> arg1, arg3 -> arg2, rest remain the same}> Map Locations to Subgraph: ( 0 , 0 ) ( 2 , 1 ) ( 4 , 2 ) ( 5 , 5 ) ( 8 , 3 ) ( 10 , 4 ) ( 11 , 6 ) ( 12 , 7 ) ******************************************************************************************* ******************************** CHECKING ASSERTIONS ******************************** ******************************************************************************************* Proving termination of subgraph 0 Proving termination of subgraph 1 Checking unfeasibility... Time used: 0.007111 Some transition disabled by a set of invariant(s): Invariant at l2: arg3 <= arg2 Strengthening and disabling transitions... > It's unfeasible. Removing transition: undef19, arg2 -> 1 + arg2, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Checking unfeasibility... Time used: 0.003071 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001220s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.005283s [2214 : 2215] [2214 : 2216] Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.012078s Time used: 0.011312 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000485s Time used: 1.00032 LOG: SAT solveNonLinear - Elapsed time: 1.012563s Cost: 1; Total time: 1.01163 Termination implied by a set of invariant(s): Invariant at l2: 0 <= 1 + arg3 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Quasi-ranking function: 50000 + arg2 - 2*arg3 New Graphs: Transitions: undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001275s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.006250s [2214 : 2220] [2214 : 2221] Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.017429s Time used: 0.016219 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000346s Time used: 1.00034 LOG: SAT solveNonLinear - Elapsed time: 1.017775s Cost: 1; Total time: 1.01656 Termination implied by a set of invariant(s): Invariant at l2: 1 <= arg1 + arg2 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - arg2 New Graphs: Transitions: undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001437s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.010858s [2214 : 2225] [2214 : 2226] Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.022929s Time used: 0.021493 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000458s Time used: 1.00043 LOG: SAT solveNonLinear - Elapsed time: 1.023386s Cost: 1; Total time: 1.02192 Termination implied by a set of invariant(s): Invariant at l2: 0 <= arg1 + arg2 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - arg3 New Graphs: Transitions: undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001476s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.011131s [2214 : 2230] [2214 : 2231] Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.018941s Time used: 0.017172 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000655s Time used: 1.00052 LOG: SAT solveNonLinear - Elapsed time: 1.019596s Cost: 1; Total time: 1.0177 Termination implied by a set of invariant(s): Invariant at l2: arg2 <= 1 + arg3 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - 2*arg2 + arg3 New Graphs: Transitions: undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001645s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.008280s [2214 : 2235] [2214 : 2236] Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.021446s Time used: 0.019598 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.000505s Time used: 1.00049 LOG: SAT solveNonLinear - Elapsed time: 1.021951s Cost: 1; Total time: 1.02008 Termination implied by a set of invariant(s): Invariant at l2: 0 <= arg2 + arg3 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Quasi-ranking function: 50000 - arg2 - arg3 New Graphs: Transitions: undef19, arg2 -> 1 + arg2, arg3 -> 1 + arg3, rest remain the same}> Variables: arg1, arg2, arg3 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001750s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.010503s [2214 : 2336] [2214 : 2337] Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.247825s Time used: 4.24592 Termination failed. Trying to show unreachability... Proving unreachability of entry: LOG: CALL check - Post:1 <= 0 - Process 1 * Exit transition: * Postcondition : 1 <= 0 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.034329s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.034477s Cannot prove unreachability [2214 : 2341] [2214 : 2345] Successful child: 2341 Program does NOT terminate