YES Solver Timeout: 4 Global Timeout: 300 No parsing errors! Init Location: 0 Transitions: 9) /\ (undef2 > 9) /\ ((arg7 + 3) <= arg2) /\ ((arg6 + 5) <= arg2), par{arg2 -> undef2, arg3 -> 0, arg4 -> 0, arg5 -> arg3, arg6 -> undef7, arg7 -> undef7, arg8 -> 0, arg9 -> 0, arg10 -> 0, arg11 -> undef11, arg12 -> undef12, arg13 -> undef13, arg14 -> undef14, arg15 -> arg3, arg16 -> arg4, arg17 -> arg4, arg18 -> undef18, arg19 -> arg5, arg20 -> arg6, arg21 -> arg7, arg22 -> undef22, arg23 -> undef23}> ~(1)) /\ (arg2 > 0) /\ (arg1 > 0) /\ (undef24 > 5), par{arg1 -> undef24, arg2 -> undef25, arg3 -> undef26, arg4 -> undef27, arg5 -> undef28, arg6 -> undef29, arg7 -> undef30, arg8 -> undef31, arg9 -> undef32, arg10 -> undef33, arg11 -> undef34, arg12 -> undef35, arg13 -> undef36, arg14 -> undef37, arg15 -> undef38, arg16 -> undef39, arg17 -> undef40, arg18 -> undef41, arg19 -> undef42, arg20 -> undef43, arg21 -> undef44, arg22 -> undef45, arg23 -> undef46}> 0) /\ (arg2 > 5) /\ (undef48 > 5) /\ ((arg6 + 7) <= arg2) /\ ((arg7 + 7) <= arg2) /\ ((arg9 + 3) <= arg2) /\ ((arg8 + 5) <= arg2), par{arg1 -> undef48, arg2 -> arg5, arg5 -> undef52, arg6 -> undef53, arg7 -> undef54, arg8 -> undef55, arg9 -> undef56, arg10 -> undef57, arg11 -> undef58, arg12 -> undef59, arg13 -> undef60, arg14 -> undef61, arg15 -> undef62, arg16 -> undef63, arg17 -> undef64, arg18 -> undef65, arg19 -> undef66, arg20 -> undef67, arg21 -> undef68, arg22 -> undef69, arg23 -> undef70}> ~(1)) /\ (arg2 > 0) /\ ((undef72 - 7) <= arg1) /\ (arg1 > 0) /\ (undef72 > 7), par{arg1 -> undef71, arg2 -> undef72, arg3 -> undef73, arg4 -> undef74, arg5 -> 1, arg6 -> 0, arg7 -> 0, arg8 -> undef78, arg9 -> undef79, arg10 -> undef80, arg11 -> undef81, arg12 -> undef82, arg13 -> undef83, arg14 -> undef84, arg15 -> undef85, arg16 -> undef86, arg17 -> undef87, arg18 -> undef88, arg19 -> undef89, arg20 -> undef90, arg21 -> undef91, arg22 -> undef92, arg23 -> undef93}> 11) /\ (undef94 > 11) /\ ((arg21 + 3) <= arg2) /\ ((arg20 + 5) <= arg2), par{arg1 -> undef94, arg2 -> arg1, arg3 -> arg13, arg4 -> arg11, arg5 -> arg7, arg6 -> arg12, arg7 -> arg6, arg8 -> undef101, arg9 -> arg3, arg10 -> arg14, arg11 -> arg5, arg12 -> 0, arg13 -> arg4, arg14 -> arg8, arg15 -> arg9, arg16 -> arg10, arg17 -> arg15, arg18 -> arg16, arg19 -> arg17, arg20 -> arg19, arg21 -> undef114, arg22 -> arg20, arg23 -> arg21}> 0) /\ (undef140 > ~(1)) /\ (arg6 > 0) /\ (arg3 > 0) /\ (arg20 > ~(1)) /\ (arg20 < undef140) /\ (arg10 > 0) /\ (arg4 > 0) /\ (arg13 > 0) /\ (arg11 > 0) /\ (arg12 > 0) /\ (undef141 > ~(1)) /\ (arg9 > 0) /\ (arg5 > 0) /\ (arg19 > 0) /\ (arg14 > 0) /\ (arg18 > 0) /\ (arg17 > 0) /\ (arg15 > 0) /\ (arg16 > 0) /\ (arg23 > ~(1)) /\ (arg22 > ~(1)) /\ (arg1 > 9) /\ (undef117 > 9) /\ ((arg21 + 9) <= arg1) /\ ((arg23 + 3) <= arg1) /\ ((arg22 + 5) <= arg1), par{arg1 -> undef117, arg2 -> (arg2 - 1), arg4 -> undef120, arg5 -> undef121, arg9 -> undef125, arg11 -> undef127, arg13 -> undef129, arg14 -> undef130, arg15 -> undef131, arg16 -> undef132, arg17 -> undef133, arg18 -> undef134, arg19 -> undef135, arg20 -> (arg20 + 1), arg21 -> undef137, arg22 -> (arg22 + 1), arg23 -> (arg23 + 1)}> 0) /\ (undef165 > ~(1)) /\ (arg6 > 0) /\ (arg3 > 0) /\ (arg20 > ~(1)) /\ (arg20 < undef165) /\ (arg10 > 0) /\ (arg12 > 0) /\ (undef166 > ~(1)) /\ (arg19 > 0) /\ (arg18 > 0) /\ (arg17 > 0) /\ (arg8 > 0) /\ (arg23 > ~(1)) /\ (arg22 > ~(1)) /\ (arg1 > 11) /\ (undef142 > 13) /\ ((arg21 + 9) <= arg1) /\ ((arg23 + 3) <= arg1) /\ ((arg22 + 5) <= arg1) /\ (arg8 = arg9) /\ (arg10 = arg11) /\ (arg12 = arg13) /\ (arg7 = arg16), par{arg1 -> undef142, arg2 -> (arg2 - 1), arg3 -> 0, arg4 -> 1, arg5 -> 1, arg6 -> undef147, arg7 -> undef148, arg9 -> undef150, arg11 -> undef152, arg13 -> 0, arg14 -> undef155, arg15 -> 2, arg16 -> undef157, arg17 -> undef158, arg18 -> undef159, arg19 -> undef160, arg20 -> (arg20 + 1), arg21 -> undef162, arg22 -> (arg22 + 1), arg23 -> (arg23 + 1)}> undef167, arg2 -> undef168, arg3 -> undef169, arg4 -> undef170, arg5 -> undef171, arg6 -> undef172, arg7 -> undef173, arg8 -> undef174, arg9 -> undef175, arg10 -> undef176, arg11 -> undef177, arg12 -> undef178, arg13 -> undef179, arg14 -> undef180, arg15 -> undef181, arg16 -> undef182, arg17 -> undef183, arg18 -> undef184, arg19 -> undef185, arg20 -> undef186, arg21 -> undef187, arg22 -> undef188, arg23 -> undef189}> Fresh variables: undef2, undef7, undef11, undef12, undef13, undef14, undef18, undef22, undef23, undef24, undef25, undef26, undef27, undef28, undef29, undef30, undef31, undef32, undef33, undef34, undef35, undef36, undef37, undef38, undef39, undef40, undef41, undef42, undef43, undef44, undef45, undef46, undef47, undef48, undef52, undef53, undef54, undef55, undef56, undef57, undef58, undef59, undef60, undef61, undef62, undef63, undef64, undef65, undef66, undef67, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef85, undef86, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef101, undef114, undef117, undef120, undef121, undef125, undef127, undef129, undef130, undef131, undef132, undef133, undef134, undef135, undef137, undef140, undef141, undef142, undef147, undef148, undef150, undef152, undef155, undef157, undef158, undef159, undef160, undef162, undef165, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, undef175, undef176, undef177, undef178, undef179, undef180, undef181, undef182, undef183, undef184, undef185, undef186, undef187, undef188, undef189, Undef variables: undef2, undef7, undef11, undef12, undef13, undef14, undef18, undef22, undef23, undef24, undef25, undef26, undef27, undef28, undef29, undef30, undef31, undef32, undef33, undef34, undef35, undef36, undef37, undef38, undef39, undef40, undef41, undef42, undef43, undef44, undef45, undef46, undef47, undef48, undef52, undef53, undef54, undef55, undef56, undef57, undef58, undef59, undef60, undef61, undef62, undef63, undef64, undef65, undef66, undef67, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef85, undef86, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef101, undef114, undef117, undef120, undef121, undef125, undef127, undef129, undef130, undef131, undef132, undef133, undef134, undef135, undef137, undef140, undef141, undef142, undef147, undef148, undef150, undef152, undef155, undef157, undef158, undef159, undef160, undef162, undef165, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, undef175, undef176, undef177, undef178, undef179, undef180, undef181, undef182, undef183, undef184, undef185, undef186, undef187, undef188, undef189, Abstraction variables: Exit nodes: Accepting locations: Asserts: Preprocessed LLVMGraph Init Location: 0 Transitions: ~(1)) /\ (undef168 > 0) /\ (undef167 > 0) /\ (undef24 > 5), par{arg1 -> undef24, arg2 -> undef25, arg3 -> undef26, arg4 -> undef27, arg5 -> undef28, arg6 -> undef29, arg7 -> undef30, arg8 -> undef31, arg9 -> undef32, arg10 -> undef33, arg11 -> undef34, arg12 -> undef35, arg13 -> undef36, arg14 -> undef37, arg15 -> undef38, arg16 -> undef39, arg17 -> undef40, arg18 -> undef41, arg19 -> undef42, arg20 -> undef43, arg21 -> undef44, arg22 -> undef45, arg23 -> undef46}> ~(1)) /\ (undef168 > 0) /\ ((undef72 - 7) <= undef167) /\ (undef167 > 0) /\ (undef72 > 7) /\ (undef2 <= undef72) /\ (undef72 > 9) /\ (undef2 > 9) /\ ((0 + 3) <= undef72) /\ ((0 + 5) <= undef72) /\ (undef2 > 11) /\ (undef94 > 11) /\ ((0 + 3) <= undef2) /\ ((0 + 5) <= undef2), par{arg1 -> undef94, arg2 -> undef71, arg3 -> undef13, arg4 -> undef11, arg5 -> undef7, arg6 -> undef12, arg7 -> undef7, arg8 -> undef101, arg9 -> 0, arg10 -> undef14, arg11 -> undef73, arg12 -> 0, arg13 -> 0, arg14 -> 0, arg15 -> 0, arg16 -> 0, arg17 -> undef73, arg18 -> undef74, arg19 -> undef74, arg20 -> 1, arg21 -> undef114, arg22 -> 0, arg23 -> 0}> 0) /\ (undef140 > ~(1)) /\ (arg6 > 0) /\ (arg3 > 0) /\ (arg20 > ~(1)) /\ (arg20 < undef140) /\ (arg10 > 0) /\ (arg4 > 0) /\ (arg13 > 0) /\ (arg11 > 0) /\ (arg12 > 0) /\ (undef141 > ~(1)) /\ (arg9 > 0) /\ (arg5 > 0) /\ (arg19 > 0) /\ (arg14 > 0) /\ (arg18 > 0) /\ (arg17 > 0) /\ (arg15 > 0) /\ (arg16 > 0) /\ (arg23 > ~(1)) /\ (arg22 > ~(1)) /\ (arg1 > 9) /\ (undef117 > 9) /\ ((arg21 + 9) <= arg1) /\ ((arg23 + 3) <= arg1) /\ ((arg22 + 5) <= arg1), par{arg1 -> undef117, arg2 -> (arg2 - 1), arg4 -> undef120, arg5 -> undef121, arg9 -> undef125, arg11 -> undef127, arg13 -> undef129, arg14 -> undef130, arg15 -> undef131, arg16 -> undef132, arg17 -> undef133, arg18 -> undef134, arg19 -> undef135, arg20 -> (arg20 + 1), arg21 -> undef137, arg22 -> (arg22 + 1), arg23 -> (arg23 + 1)}> 0) /\ (undef165 > ~(1)) /\ (arg6 > 0) /\ (arg3 > 0) /\ (arg20 > ~(1)) /\ (arg20 < undef165) /\ (arg10 > 0) /\ (arg12 > 0) /\ (undef166 > ~(1)) /\ (arg19 > 0) /\ (arg18 > 0) /\ (arg17 > 0) /\ (arg8 > 0) /\ (arg23 > ~(1)) /\ (arg22 > ~(1)) /\ (arg1 > 11) /\ (undef142 > 13) /\ ((arg21 + 9) <= arg1) /\ ((arg23 + 3) <= arg1) /\ ((arg22 + 5) <= arg1) /\ (arg8 = arg9) /\ (arg10 = arg11) /\ (arg12 = arg13) /\ (arg7 = arg16), par{arg1 -> undef142, arg2 -> (arg2 - 1), arg3 -> 0, arg4 -> 1, arg5 -> 1, arg6 -> undef147, arg7 -> undef148, arg9 -> undef150, arg11 -> undef152, arg13 -> 0, arg14 -> undef155, arg15 -> 2, arg16 -> undef157, arg17 -> undef158, arg18 -> undef159, arg19 -> undef160, arg20 -> (arg20 + 1), arg21 -> undef162, arg22 -> (arg22 + 1), arg23 -> (arg23 + 1)}> Fresh variables: undef2, undef7, undef11, undef12, undef13, undef14, undef18, undef22, undef23, undef24, undef25, undef26, undef27, undef28, undef29, undef30, undef31, undef32, undef33, undef34, undef35, undef36, undef37, undef38, undef39, undef40, undef41, undef42, undef43, undef44, undef45, undef46, undef47, undef48, undef52, undef53, undef54, undef55, undef56, undef57, undef58, undef59, undef60, undef61, undef62, undef63, undef64, undef65, undef66, undef67, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef85, undef86, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef101, undef114, undef117, undef120, undef121, undef125, undef127, undef129, undef130, undef131, undef132, undef133, undef134, undef135, undef137, undef140, undef141, undef142, undef147, undef148, undef150, undef152, undef155, undef157, undef158, undef159, undef160, undef162, undef165, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, undef175, undef176, undef177, undef178, undef179, undef180, undef181, undef182, undef183, undef184, undef185, undef186, undef187, undef188, undef189, Undef variables: undef2, undef7, undef11, undef12, undef13, undef14, undef18, undef22, undef23, undef24, undef25, undef26, undef27, undef28, undef29, undef30, undef31, undef32, undef33, undef34, undef35, undef36, undef37, undef38, undef39, undef40, undef41, undef42, undef43, undef44, undef45, undef46, undef47, undef48, undef52, undef53, undef54, undef55, undef56, undef57, undef58, undef59, undef60, undef61, undef62, undef63, undef64, undef65, undef66, undef67, undef68, undef69, undef70, undef71, undef72, undef73, undef74, undef78, undef79, undef80, undef81, undef82, undef83, undef84, undef85, undef86, undef87, undef88, undef89, undef90, undef91, undef92, undef93, undef94, undef101, undef114, undef117, undef120, undef121, undef125, undef127, undef129, undef130, undef131, undef132, undef133, undef134, undef135, undef137, undef140, undef141, undef142, undef147, undef148, undef150, undef152, undef155, undef157, undef158, undef159, undef160, undef162, undef165, undef166, undef167, undef168, undef169, undef170, undef171, undef172, undef173, undef174, undef175, undef176, undef177, undef178, undef179, undef180, undef181, undef182, undef183, undef184, undef185, undef186, undef187, undef188, undef189, Abstraction variables: Exit nodes: Accepting locations: Asserts: ************************************************************* ******************************************************************************************* *********************** WORKING TRANSITION SYSTEM (DAG) *********************** ******************************************************************************************* Init Location: 0 Graph 0: Transitions: Variables: Graph 1: Transitions: undef117, arg2 -> -1 + arg2, arg4 -> undef120, arg5 -> undef121, arg9 -> undef125, arg11 -> undef127, arg13 -> undef129, arg14 -> undef130, arg15 -> undef131, arg16 -> undef132, arg17 -> undef133, arg18 -> undef134, arg19 -> undef135, arg20 -> 1 + arg20, arg21 -> undef137, arg22 -> 1 + arg22, arg23 -> 1 + arg23, rest remain the same}> undef142, arg2 -> -1 + arg2, arg3 -> 0, arg4 -> 1, arg5 -> 1, arg6 -> undef147, arg7 -> undef148, arg9 -> undef150, arg11 -> undef152, arg13 -> 0, arg14 -> undef155, arg15 -> 2, arg16 -> undef157, arg17 -> undef158, arg18 -> undef159, arg19 -> undef160, arg20 -> 1 + arg20, arg21 -> undef162, arg22 -> 1 + arg22, arg23 -> 1 + arg23, rest remain the same}> Variables: arg1, arg2, arg3, arg4, arg5, arg6, arg9, arg10, arg11, arg12, arg13, arg14, arg15, arg16, arg17, arg18, arg19, arg20, arg21, arg22, arg23, arg7, arg8 Graph 2: Transitions: Variables: Precedence: Graph 0 Graph 1 undef94, arg2 -> undef71, arg3 -> undef13, arg4 -> undef11, arg5 -> undef7, arg6 -> undef12, arg7 -> undef7, arg8 -> undef101, arg9 -> 0, arg10 -> undef14, arg11 -> undef73, arg12 -> 0, arg13 -> 0, arg14 -> 0, arg15 -> 0, arg16 -> 0, arg17 -> undef73, arg18 -> undef74, arg19 -> undef74, arg20 -> 1, arg21 -> undef114, arg22 -> 0, arg23 -> 0, rest remain the same}> Graph 2 undef24, arg2 -> undef25, arg3 -> undef26, arg4 -> undef27, arg5 -> undef28, arg6 -> undef29, arg7 -> undef30, arg8 -> undef31, arg9 -> undef32, arg10 -> undef33, arg11 -> undef34, arg12 -> undef35, arg13 -> undef36, arg14 -> undef37, arg15 -> undef38, arg16 -> undef39, arg17 -> undef40, arg18 -> undef41, arg19 -> undef42, arg20 -> undef43, arg21 -> undef44, arg22 -> undef45, arg23 -> undef46, rest remain the same}> Map Locations to Subgraph: ( 0 , 0 ) ( 4 , 2 ) ( 6 , 1 ) ******************************************************************************************* ******************************** CHECKING ASSERTIONS ******************************** ******************************************************************************************* Proving termination of subgraph 0 Proving termination of subgraph 1 Checking unfeasibility... Time used: 0.034315 Some transition disabled by a set of invariant(s): Invariant at l6: arg13 <= 0 Strengthening and disabling transitions... > It's unfeasible. Removing transition: undef117, arg2 -> -1 + arg2, arg4 -> undef120, arg5 -> undef121, arg9 -> undef125, arg11 -> undef127, arg13 -> undef129, arg14 -> undef130, arg15 -> undef131, arg16 -> undef132, arg17 -> undef133, arg18 -> undef134, arg19 -> undef135, arg20 -> 1 + arg20, arg21 -> undef137, arg22 -> 1 + arg22, arg23 -> 1 + arg23, rest remain the same}> LOG: CALL solverLinear in Graph for feasibility LOG: RETURN solveLinear in Graph for feasibility It's unfeasible. Removing transition: undef142, arg2 -> -1 + arg2, arg3 -> 0, arg4 -> 1, arg5 -> 1, arg6 -> undef147, arg7 -> undef148, arg9 -> undef150, arg11 -> undef152, arg13 -> 0, arg14 -> undef155, arg15 -> 2, arg16 -> undef157, arg17 -> undef158, arg18 -> undef159, arg19 -> undef160, arg20 -> 1 + arg20, arg21 -> undef162, arg22 -> 1 + arg22, arg23 -> 1 + arg23, rest remain the same}> Checking unfeasibility... Time used: 2.3e-05 Analyzing SCC {l6}... No cycles found. Proving termination of subgraph 2 Analyzing SCC {l4}... No cycles found. Program Terminates