NO Solver Timeout: 4 Global Timeout: 60 No parsing errors! Init Location: 0 Transitions: arg2) /\ (arg2 > ~(1)) /\ (arg1 > 0), par{arg1 -> (arg2 + 20), arg2 -> undef2}> 10), par{arg1 -> (arg1 - 1), arg2 -> undef4}> 25) /\ (arg1 < 31), par{arg1 -> (arg1 - 1), arg2 -> undef6}> 30), par{arg1 -> 20, arg2 -> undef8}> 29, arg2 -> undef10}> undef11, arg2 -> undef12}> Fresh variables: undef2, undef4, undef6, undef8, undef10, undef11, undef12, Undef variables: undef2, undef4, undef6, undef8, undef10, undef11, undef12, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: undef12) /\ (undef12 > ~(1)) /\ (undef11 > 0)> 10), par{arg1 -> (arg1 - 1)}> 25) /\ (arg1 < 31), par{arg1 -> (arg1 - 1)}> 30), par{arg1 -> 20}> 29}> Fresh variables: undef2, undef4, undef6, undef8, undef10, undef11, undef12, Undef variables: undef2, undef4, undef6, undef8, undef10, undef11, undef12, 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}> -1 + arg1, rest remain the same}> 20, rest remain the same}> 29, 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: 4.00164 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.006164s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.007775s Piecewise ranking function: min(-418 + 38*arg1,532) New Graphs: Transitions: -1 + arg1, rest remain the same}> 29, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000705s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.010380s Trying to remove transition: 29, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.001658s Time used: 4.00111 Trying to remove transition: -1 + arg1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.057110s Time used: 4.00192 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.862557s Time used: 0.857388 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.017998s Time used: 1.0179 LOG: SAT solveNonLinear - Elapsed time: 1.880555s Cost: 1; Total time: 1.87529 Failed at location 2: arg1 <= 22 Before Improving: Quasi-invariant at l2: arg1 <= 22 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.032947s Remaining time after improvement: 0.997876 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg1 <= 22 [ 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, 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 It's unfeasible. Removing transition: 20, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 29, 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}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: 29, rest remain the same}> New Graphs: Calling Safety with literal arg1 <= 22 and entry LOG: CALL check - Post:arg1 <= 22 - Process 1 * Exit transition: * Postcondition : arg1 <= 22 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000558s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000656s INVARIANTS: 2: Quasi-INVARIANTS to narrow Graph: 2: arg1 <= 22 , Narrowing transition: -1 + arg1, 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: 20, rest remain the same}> Narrowing transition: 29, rest remain the same}> LOG: Narrow transition size 1 invGraph after Narrowing: Transitions: -1 + arg1, rest remain the same}> -1 + arg1, rest remain the same}> 29, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001027s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.006494s Piecewise ranking function: min(31,-713 + 31*arg1) New Graphs: Transitions: -1 + arg1, rest remain the same}> 29, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000781s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.010483s Trying to remove transition: 29, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.002290s Time used: 4.00179 Trying to remove transition: -1 + arg1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.051757s Time used: 4.00272 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.237843s Time used: 1.23238 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001468s Time used: 1.00139 LOG: SAT solveNonLinear - Elapsed time: 2.239311s Cost: 1; Total time: 2.23376 Failed at location 2: arg1 <= 24 Before Improving: Quasi-invariant at l2: arg1 <= 24 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.029277s Remaining time after improvement: 0.997783 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg1 <= 24 [ 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, 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 It's unfeasible. Removing transition: 29, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... > It's unfeasible. Removing transition: 29, 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}> New Graphs: Calling Safety with literal arg1 <= 24 and entry LOG: CALL check - Post:arg1 <= 24 - Process 2 * Exit transition: * Postcondition : arg1 <= 24 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000643s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000757s INVARIANTS: 2: Quasi-INVARIANTS to narrow Graph: 2: arg1 <= 24 , It's unfeasible. Removing transition: -1 + arg1, rest remain the same}> Narrowing transition: -1 + arg1, rest remain the same}> LOG: Narrow transition size 1 Narrowing transition: 29, rest remain the same}> LOG: Narrow transition size 1 invGraph after Narrowing: Transitions: -1 + arg1, rest remain the same}> 29, rest remain the same}> Variables: arg1 Checking conditional termination of SCC {l2}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000825s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.010730s Trying to remove transition: 29, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.002710s Time used: 4.00222 Trying to remove transition: -1 + arg1, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.624975s Time used: 1.57562 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.994807s Time used: 0.96578 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.958237s Time used: 0.948686 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.994970s Time used: 0.986983 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.997389s Time used: 0.989658 Proving non-termination of subgraph 1 Transitions: -1 + arg1, rest remain the same}> 29, 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.072578s Time used: 0.072377 Improving Solution with cost 2 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001550s Time used: 1.00145 LOG: SAT solveNonLinear - Elapsed time: 1.074128s Cost: 2; Total time: 1.07383 Failed at location 2: arg1 <= 30 Before Improving: Quasi-invariant at l2: arg1 <= 30 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.035355s Remaining time after improvement: 0.998212 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: arg1 <= 30 Strengthening and disabling EXIT transitions... Closed exits from l2: 1 Strengthening exit transition (result): 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}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 29, rest remain the same}> Checking conditional non-termination of SCC {l2}... EXIT TRANSITIONS: Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.025420s Time used: 0.025231 Improving Solution with cost 1 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 1.001094s Time used: 1.00103 LOG: SAT solveNonLinear - Elapsed time: 1.026515s Cost: 1; Total time: 1.02626 Failed at location 2: 25 <= arg1 Before Improving: Quasi-invariant at l2: 25 <= arg1 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.031276s Remaining time after improvement: 0.998238 Non-termination implied by a set of quasi-invariant(s): Quasi-invariant at l2: 25 <= arg1 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}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): 29, rest remain the same}> Calling reachability with... Transition: Conditions: arg1 <= 30, 25 <= arg1, OPEN EXITS: --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: Conditions: 25 <= arg1, arg1 <= 30, OPEN EXITS: > Conditions are reachable! Program does NOT terminate