/export/starexec/sandbox/solver/bin/starexec_run_termcomp17 /export/starexec/sandbox/benchmark/theBenchmark.smt2 /export/starexec/sandbox/output/output_files -------------------------------------------------------------------------------- YES Solver Timeout: 4 Global Timeout: 300 Maximum number of concurrent processes: 900 No parsing errors! Init Location: 0 Transitions: 0) /\ (arg2 > ~(1)), par{arg3 -> undef3, arg4 -> undef4}> 0) /\ (arg2 > ~(1)) /\ ((arg2 - (5 * undef9)) >= 0) /\ ((arg2 - (5 * undef9)) < 5) /\ ((arg2 - (4 * undef10)) >= 0) /\ ((arg2 - (4 * undef10)) < 4) /\ ((arg2 - (5 * undef11)) >= 0) /\ ((arg2 - (5 * undef11)) < 5) /\ ((arg2 - (4 * undef12)) < 4) /\ ((arg2 - (4 * undef12)) >= 0), par{arg1 -> arg2, arg2 -> (arg2 - (5 * undef9)), arg3 -> (arg2 - (4 * undef10)), arg4 -> ((arg2 + (arg2 - (5 * undef11))) + ((3 * arg2) - (12 * undef12)))}> ~(1)) /\ ((arg1 - 1) < arg1), par{arg1 -> (arg1 - 1), arg4 -> (((arg1 - 1) + arg2) + (3 * arg3))}> ~(1)) /\ (arg2 >= arg1) /\ ((arg3 - 1) < arg3) /\ (arg3 >= arg2), par{arg3 -> (arg3 - 1), arg4 -> ((arg1 + arg2) + ((3 * arg3) - 3))}> ~(1)) /\ (arg2 >= arg1) /\ ((arg2 - 2) < arg2) /\ (arg3 < arg2), par{arg2 -> (arg2 - 2), arg4 -> ((arg1 + (arg2 - 2)) + (3 * arg3))}> undef25, arg2 -> undef26, arg3 -> undef27, arg4 -> undef28}> Fresh variables: undef3, undef4, undef9, undef10, undef11, undef12, undef25, undef26, undef27, undef28, Undef variables: undef3, undef4, undef9, undef10, undef11, undef12, undef25, undef26, undef27, undef28, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: 0) /\ (undef26 > ~(1)) /\ (undef25 > 0) /\ (undef26 > ~(1)) /\ ((undef26 - (5 * undef9)) >= 0) /\ ((undef26 - (5 * undef9)) < 5) /\ ((undef26 - (4 * undef10)) >= 0) /\ ((undef26 - (4 * undef10)) < 4) /\ ((undef26 - (5 * undef11)) >= 0) /\ ((undef26 - (5 * undef11)) < 5) /\ ((undef26 - (4 * undef12)) < 4) /\ ((undef26 - (4 * undef12)) >= 0)> ~(1)) /\ ((arg1 - 1) < arg1), par{arg1 -> (arg1 - 1), arg4 -> (((arg1 - 1) + arg2) + (3 * arg3))}> ~(1)) /\ (arg2 >= arg1) /\ ((arg3 - 1) < arg3) /\ (arg3 >= arg2), par{arg3 -> (arg3 - 1), arg4 -> ((arg1 + arg2) + ((3 * arg3) - 3))}> ~(1)) /\ (arg2 >= arg1) /\ ((arg2 - 2) < arg2) /\ (arg3 < arg2), par{arg2 -> (arg2 - 2), arg4 -> ((arg1 + (arg2 - 2)) + (3 * arg3))}> Fresh variables: undef3, undef4, undef9, undef10, undef11, undef12, undef25, undef26, undef27, undef28, Undef variables: undef3, undef4, undef9, undef10, undef11, undef12, undef25, undef26, undef27, undef28, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Precedence: Graph 0 Graph 1 Map Locations to Subgraph: ( 0 , 0 ) ( 3 , 1 ) ******************************************************************************************* ******************************** CHECKING ASSERTIONS ******************************** ******************************************************************************************* Proving termination of subgraph 0 Proving termination of subgraph 1 Checking unfeasibility... Time used: 0.066564 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.002941s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.048098s [56454 : 56455] [56454 : 56456] Successful child: 56455 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*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): -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Ranking function: 1 + arg1 - arg2 New Graphs: Transitions: -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001374s Ranking function: arg1 - arg2 + arg3 New Graphs: [56454 : 56463] [56454 : 56464] INVARIANTS: 3: Quasi-INVARIANTS to narrow Graph: 3: arg2 + arg4 <= arg1 + arg3 , arg2 + arg3 <= 0 , Narrowing transition: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 2 Narrowing transition: -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 2 Narrowing transition: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 2 invGraph after Narrowing: Transitions: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.005718s Ranking function: -6 + 3*arg1 + 3*arg3 New Graphs: Transitions: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.004386s Ranking function: -3 + 6*arg3 New Graphs: Transitions: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.003773s Ranking function: (5 / 2) + arg1 + (1 / 2)*arg2 + arg3 New Graphs: Transitions: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.002186s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.857205s [56454 : 56465] [56454 : 56466] Successful child: 56465 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*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): -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Ranking function: 1 + arg1 - arg2 + 3*arg4 New Graphs: Transitions: -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.002922s Ranking function: 2 - 10*arg1 - 5*arg2 - 19*arg3 + 10*arg4 New Graphs: Transitions: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001433s Ranking function: arg4 New Graphs: LOG: CALL check - Post:arg2 + arg3 <= 1 - Process 1 * Exit transition: * Postcondition : arg2 + arg3 <= 1 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000956s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.001194s INVARIANTS: 3: Quasi-INVARIANTS to narrow Graph: 3: arg2 + arg3 <= 1 , Narrowing transition: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> LOG: Narrow transition size 1 invGraph after Narrowing: Transitions: -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg1, arg4 -> -1 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.011095s Ranking function: -3 + arg1 + arg3 New Graphs: Transitions: -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -1 + arg3, arg4 -> -3 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.004280s Ranking function: -4*arg1 + 4*arg3 New Graphs: Transitions: -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> -2 + arg2, arg4 -> -2 + arg1 + arg2 + 3*arg3, rest remain the same}> Variables: arg1, arg2, arg3, arg4 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.002800s Ranking function: (~(1) / 2) + (1 / 2)*arg2 + (~(1) / 2)*arg3 New Graphs: Program Terminates