NO Solver Timeout: 4 Global Timeout: 60 No parsing errors! Init Location: 0 Transitions: undef5}> undef10}> undef15}> undef20}> Fresh variables: undef5, undef10, undef15, undef20, Undef variables: undef5, undef10, undef15, undef20, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: undef15}> undef10}> undef10}> Fresh variables: undef5, undef10, undef15, undef20, Undef variables: undef5, undef10, undef15, undef20, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: undef10, rest remain the same}> Variables: __const_100^0, __const_300^0, __const_400^0, x^0 Precedence: Graph 0 Graph 1 undef15, rest remain the same}> undef10, rest remain the same}> Map Locations to Subgraph: ( 0 , 0 ) ( 1 , 1 ) ******************************************************************************************* ******************************** CHECKING ASSERTIONS ******************************** ******************************************************************************************* Proving termination of subgraph 0 Proving termination of subgraph 1 Checking unfeasibility... Time used: 0.003565 Checking conditional termination of SCC {l1}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000846s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.003436s Trying to remove transition: undef10, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.008526s Time used: 0.008278 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.012806s Time used: 0.012179 Improving Solution with cost 2 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.018762s Time used: 0.01874 LOG: SAT solveNonLinear - Elapsed time: 0.031568s Cost: 2; Total time: 0.030919 Failed at location 1: __const_300^0 + x^0 <= __const_100^0 Failed at location 1: __const_300^0 + x^0 <= __const_100^0 Before Improving: Quasi-invariant at l1: __const_300^0 + x^0 <= __const_100^0 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.003569s Remaining time after improvement: 0.998316 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l1: __const_300^0 + x^0 <= __const_100^0 [ 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: undef10, rest remain the same}> [ Termination Graph ] Strengthening and disabling transitions... > It's unfeasible. Removing transition: undef10, rest remain the same}> New Graphs: Calling Safety with literal __const_300^0 + x^0 <= __const_100^0 and entry undef15, rest remain the same}> LOG: CALL check - Post:__const_300^0 + x^0 <= __const_100^0 - Process 1 * Exit transition: undef15, rest remain the same}> * Postcondition : __const_300^0 + x^0 <= __const_100^0 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000546s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000651s Calling Safety with literal __const_300^0 + x^0 <= __const_100^0 and entry undef10, rest remain the same}> LOG: CALL check - Post:__const_300^0 + x^0 <= __const_100^0 - Process 2 * Exit transition: undef10, rest remain the same}> * Postcondition : __const_300^0 + x^0 <= __const_100^0 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000572s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000692s INVARIANTS: 1: Quasi-INVARIANTS to narrow Graph: 1: __const_300^0 + x^0 <= __const_100^0 , Narrowing transition: undef10, rest remain the same}> LOG: Narrow transition size 1 invGraph after Narrowing: Transitions: undef10, rest remain the same}> Variables: __const_100^0, __const_300^0, __const_400^0, x^0 Checking conditional termination of SCC {l1}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000854s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.003584s Trying to remove transition: undef10, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.007443s Time used: 0.007143 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.015030s Time used: 0.01431 Improving Solution with cost 2 ... LOG: CALL solveNonLinearGetNextSolution LOG: RETURN solveNonLinearGetNextSolution - Elapsed time: 0.013471s Time used: 0.013465 LOG: SAT solveNonLinear - Elapsed time: 0.028501s Cost: 2; Total time: 0.027775 Failed at location 1: 1 + __const_300^0 + __const_400^0 <= 0 Failed at location 1: 1 + __const_300^0 + __const_400^0 <= 0 Before Improving: Quasi-invariant at l1: 1 + __const_300^0 + __const_400^0 <= 0 Optimizing invariants... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.003805s Remaining time after improvement: 0.998049 Termination implied by a set of quasi-invariant(s): Quasi-invariant at l1: 1 + __const_300^0 + __const_400^0 <= 0 [ Invariant Graph ] Strengthening and disabling transitions... LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility Strengthening transition (result): undef10, 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): undef10, rest remain the same}> Ranking function: -__const_100^0 + __const_300^0 + x^0 New Graphs: Calling Safety with literal 1 + __const_300^0 + __const_400^0 <= 0 and entry undef15, rest remain the same}> LOG: CALL check - Post:1 + __const_300^0 + __const_400^0 <= 0 - Process 3 * Exit transition: undef15, rest remain the same}> * Postcondition : 1 + __const_300^0 + __const_400^0 <= 0 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000513s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000616s Calling Safety with literal 1 + __const_300^0 + __const_400^0 <= 0 and entry undef10, rest remain the same}> LOG: CALL check - Post:1 + __const_300^0 + __const_400^0 <= 0 - Process 4 * Exit transition: undef10, rest remain the same}> * Postcondition : 1 + __const_300^0 + __const_400^0 <= 0 LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000546s > Postcondition is not implied! LOG: RETURN check - Elapsed time: 0.000668s INVARIANTS: 1: Quasi-INVARIANTS to narrow Graph: 1: 1 + __const_300^0 + __const_400^0 <= 0 , Narrowing transition: undef10, rest remain the same}> LOG: Narrow transition size 1 invGraph after Narrowing: Transitions: undef10, rest remain the same}> Variables: __const_100^0, __const_300^0, __const_400^0, x^0 Checking conditional termination of SCC {l1}... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.000941s LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.003843s Trying to remove transition: undef10, rest remain the same}> Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.008244s Time used: 0.007918 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.018547s Time used: 0.017959 Solving with 2 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 4.001883s Time used: 4.00055 Solving with 3 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 1.003108s Time used: 1.00007 Solving with 1 template(s). LOG: CALL solveNonLinearGetFirstSolution LOG: RETURN solveNonLinearGetFirstSolution - Elapsed time: 0.021414s Time used: 0.009968 Proving non-termination of subgraph 1 Transitions: undef10, rest remain the same}> Variables: __const_100^0, __const_300^0, __const_400^0, x^0 Checking that every undef value has an assignment... LOG: CALL solveLinear LOG: RETURN solveLinear - Elapsed time: 0.001538s Checking conditional non-termination of SCC {l1}... > No assignment for some undef value. > Checking if the negation of the conditions of every pending exit is quasi-invariant... YES Calling reachability with... Transition: Conditions: 1 + __const_100^0 <= __const_300^0 + x^0, 0 <= __const_300^0 + __const_400^0, Transition: Conditions: 1 + __const_100^0 <= __const_300^0 + x^0, 0 <= __const_300^0 + __const_400^0, OPEN EXITS: (condsUp: 0 <= __const_300^0 + __const_400^0) (condsUp: 0 <= __const_300^0 + __const_400^0) --- Reachability graph --- > Graph without transitions. Calling reachability with... Transition: undef15, rest remain the same}> Conditions: 1 + __const_100^0 <= __const_300^0 + x^0, 0 <= __const_300^0 + __const_400^0, Transition: undef10, rest remain the same}> Conditions: 1 + __const_100^0 <= __const_300^0 + x^0, 0 <= __const_300^0 + __const_400^0, Transition: undef15, rest remain the same}> Conditions: 1 + __const_100^0 <= __const_300^0 + x^0, 0 <= __const_300^0 + __const_400^0, Transition: undef10, rest remain the same}> Conditions: 1 + __const_100^0 <= __const_300^0 + x^0, 0 <= __const_300^0 + __const_400^0, OPEN EXITS: undef15, rest remain the same}> undef10, rest remain the same}> undef15, rest remain the same}> undef10, rest remain the same}> > Conditions are reachable! Program does NOT terminate