NO Solver Timeout: 4 Global Timeout: 300 No parsing errors! Init Location: 0 Transitions: ~(1)) /\ (arg2 > 1) /\ ((undef4 - (2 * undef5)) = 0) /\ (undef4 > ~(1)) /\ (arg1 > 0)> ~(1)) /\ (arg2 > 1) /\ ((undef9 - (2 * undef10)) = 0) /\ (undef9 > ~(1)) /\ (arg1 > 0) /\ ((undef9 - (2 * undef10)) < 2) /\ ((undef9 - (2 * undef10)) >= 0), par{arg1 -> (0 - undef8), arg2 -> undef7}> ~(5), arg2 -> undef12}> (arg1 + 1), arg2 -> undef14}> ~(5)), par{arg1 -> (arg1 + 1), arg2 -> undef16}> undef17, arg2 -> undef18}> Fresh variables: undef3, undef4, undef5, undef7, undef8, undef9, undef10, undef12, undef14, undef16, undef17, undef18, Undef variables: undef3, undef4, undef5, undef7, undef8, undef9, undef10, undef12, undef14, undef16, undef17, undef18, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: ~(1)) /\ (undef18 > 1) /\ ((undef4 - (2 * undef5)) = 0) /\ (undef4 > ~(1)) /\ (undef17 > 0) /\ (undef8 > ~(1)) /\ (undef18 > 1) /\ ((undef9 - (2 * undef10)) = 0) /\ (undef9 > ~(1)) /\ (undef17 > 0) /\ ((undef9 - (2 * undef10)) < 2) /\ ((undef9 - (2 * undef10)) >= 0)> ~(5)}> (arg1 + 1)}> ~(5)), par{arg1 -> (arg1 + 1)}> Fresh variables: undef3, undef4, undef5, undef7, undef8, undef9, undef10, undef12, undef14, undef16, undef17, undef18, Undef variables: undef3, undef4, undef5, undef7, undef8, undef9, undef10, undef12, undef14, undef16, undef17, undef18, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: -5, rest remain the same}> 1 + arg1, rest remain the same}> 1 + arg1, rest remain the same}> Variables: arg1 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.004686 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001031s Ranking function: -6 - arg1 New Graphs: Transitions: -5, rest remain the same}> 1 + arg1, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000479s Ranking function: -1 - arg1 New Graphs: Transitions: -5, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000216s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000599s Trying to remove transition: -5, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.299082s Time used: 0.299 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.005140s Time used: 0.003823 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.009676s Time used: 0.009674 LOG: SAT solveNonLinear - Elapsed time: 0.014816s Cost: 1; Total time: 0.013497 Failed at location 3: 0 <= 1 + arg1 Before Improving: Quasi-invariant at l3: 0 <= 1 + arg1 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.002228s Quasi-invariant improved LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000635s Remaining time after improvement: 0.998573 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l3: 0 <= 4 + arg1 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -5, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 1 + arg1, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: -5, rest remain the same}> New Graphs: Calling Safety with literal 0 <= 4 + arg1 and entry LOG: CALL check - Post:0 <= 4 + arg1 - Process 1 * Exit transition: * Postcondition : 0 <= 4 + arg1 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000277s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000340s INVARIANTS: 3: Quasi-INVARIANTS to narrow Graph: 3: 0 <= 4 + arg1 , Narrowing transition: -5, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: 1 + arg1, rest remain the same}> LOG: Narrow transition size 1 It's unfeasible. Removing transition: 1 + arg1, rest remain the same}> invGraph after Narrowing: Transitions: -5, rest remain the same}> 1 + arg1, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000367s Ranking function: -5 - arg1 New Graphs: Transitions: -5, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l3}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000174s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000479s Trying to remove transition: -5, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.295843s Time used: 0.295776 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.001975s Time used: 4.00082 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.003970s Time used: 4.00066 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.005869s Time used: 1.00036 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.196873s Time used: 0.19233 Proving non-termination of subgraph 1 Transitions: -5, rest remain the same}> 1 + arg1, rest remain the same}> Variables: arg1 Checking conditional non-termination of SCC {l3}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.007817s Time used: 0.00769 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.003958s Time used: 0.003953 LOG: SAT solveNonLinear - Elapsed time: 0.011775s Cost: 1; Total time: 0.011643 Failed at location 3: 5 + arg1 <= 0 Before Improving: Quasi-invariant at l3: 5 + arg1 <= 0 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001194s Remaining time after improvement: 0.999524 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l3: 5 + arg1 <= 0 Strengthening and disabling EXIT transitions... Closed exits from l3: 1 Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): -5, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 1 + arg1, rest remain the same}> Calling reachability with... Transition: Conditions: 5 + arg1 <= 0, OPEN EXITS: --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: Conditions: 5 + arg1 <= 0, OPEN EXITS: > Conditions are reachable! Program does NOT terminate