NO Solver Timeout: 4 Global Timeout: 60 No parsing errors! Init Location: 0 Transitions: (~(1) * arg2)) /\ (arg2 > ~(1)) /\ (arg1 > 0), par{arg1 -> (~(1) * arg2), arg2 -> undef2}> (arg1 - 1), arg2 -> undef4}> undef5, arg2 -> undef6}> Fresh variables: undef2, undef4, undef5, undef6, Undef variables: undef2, undef4, undef5, undef6, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: (~(1) * undef6)) /\ (undef6 > ~(1)) /\ (undef5 > 0)> (arg1 - 1)}> Fresh variables: undef2, undef4, undef5, undef6, Undef variables: undef2, undef4, undef5, undef6, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: -1 + arg1, rest remain the same}> Variables: arg1 Precedence: Graph 0 Graph 1 Map Locations to Subgraph: ( 0 , 0 ) ( 2 , 1 ) ******************************************************************************************* ******************************** CHECKING ASSERTIONS ******************************** ******************************************************************************************* Proving termination of subgraph 0 Proving termination of subgraph 1 Checking unfeasibility... Time used: 0.00175 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000422s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001130s Trying to remove transition: -1 + arg1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.003846s Time used: 0.003726 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.005123s Time used: 0.004857 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.012003s Time used: 0.011998 LOG: SAT solveNonLinear - Elapsed time: 0.017126s Cost: 1; Total time: 0.016855 Failed at location 2: 0 <= arg1 Before Improving: Quasi-invariant at l2: 0 <= arg1 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001489s Remaining time after improvement: 0.999257 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 0 <= 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: -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: -1 + arg1, rest remain the same}> New Graphs: Calling Safety with literal 0 <= arg1 and entry LOG: CALL check - Post:0 <= arg1 - Process 1 * Exit transition: * Postcondition : 0 <= arg1 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000393s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000498s INVARIANTS: 2: Quasi-INVARIANTS to narrow Graph: 2: 0 <= arg1 , Narrowing transition: -1 + arg1, rest remain the same}> LOG: Narrow transition size 1 invGraph after Narrowing: Transitions: -1 + arg1, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000380s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001111s Trying to remove transition: -1 + arg1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.003451s Time used: 0.00332 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.003828s Time used: 4.00348 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.006791s Time used: 4.00075 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.005911s Time used: 1.00073 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.008606s Time used: 0.005117 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.011806s Time used: 0.011802 LOG: SAT solveNonLinear - Elapsed time: 0.020412s Cost: 1; Total time: 0.016919 Quasi-ranking function: 50000 + arg1 New Graphs: Transitions: -1 + arg1, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000403s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001224s Trying to remove transition: -1 + arg1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.003553s Time used: 0.003427 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.023302s Time used: 4.02303 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.006252s Time used: 4.00097 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.005904s Time used: 1.00096 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.007646s Time used: 0.004788 Proving non-termination of subgraph 1 Transitions: -1 + arg1, rest remain the same}> Variables: arg1 Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.003660s Time used: 0.003505 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.004561s Time used: 0.004556 LOG: SAT solveNonLinear - Elapsed time: 0.008222s Cost: 1; Total time: 0.008061 Failed at location 2: 1 + arg1 <= 0 Before Improving: Quasi-invariant at l2: 1 + arg1 <= 0 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001719s Remaining time after improvement: 0.999148 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 1 + arg1 <= 0 Strengthening and disabling EXIT transitions... Closed exits from l2: 1 Strengthening and disabling transitions... 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: 1 + arg1 <= 0, OPEN EXITS: --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: Conditions: 1 + arg1 <= 0, OPEN EXITS: > Conditions are reachable! Program does NOT terminate