YES proof of prog.inttrs # AProVE Commit ID: 48fb2092695e11cc9f56e44b17a92a5f88ffb256 marcel 20180622 unpublished dirty Termination of the given IRSwT could be proven: (0) IRSwT (1) IRSFormatTransformerProof [EQUIVALENT, 0 ms] (2) IRSwT (3) IRSwTTerminationDigraphProof [EQUIVALENT, 83 ms] (4) TRUE ---------------------------------------- (0) Obligation: Rules: l0(aHAT0, ret_incr3HAT0, x2HAT0) -> l1(aHATpost, ret_incr3HATpost, x2HATpost) :|: aHAT1 = -1 && x2HATpost = aHAT1 && ret_incr3HATpost = x2HATpost && aHATpost = ret_incr3HATpost l2(x, x1, x2) -> l0(x3, x4, x5) :|: x2 = x5 && x1 = x4 && x = x3 Start term: l2(aHAT0, ret_incr3HAT0, x2HAT0) ---------------------------------------- (1) IRSFormatTransformerProof (EQUIVALENT) Reformatted IRS to match normalized format (transformed away non-linear left-hand sides, !=, / and %). ---------------------------------------- (2) Obligation: Rules: l0(aHAT0, ret_incr3HAT0, x2HAT0) -> l1(aHATpost, ret_incr3HATpost, x2HATpost) :|: aHAT1 = -1 && x2HATpost = aHAT1 && ret_incr3HATpost = x2HATpost && aHATpost = ret_incr3HATpost l2(x, x1, x2) -> l0(x3, x4, x5) :|: x2 = x5 && x1 = x4 && x = x3 Start term: l2(aHAT0, ret_incr3HAT0, x2HAT0) ---------------------------------------- (3) IRSwTTerminationDigraphProof (EQUIVALENT) Constructed termination digraph! Nodes: (1) l0(aHAT0, ret_incr3HAT0, x2HAT0) -> l1(aHATpost, ret_incr3HATpost, x2HATpost) :|: aHAT1 = -1 && x2HATpost = aHAT1 && ret_incr3HATpost = x2HATpost && aHATpost = ret_incr3HATpost (2) l2(x, x1, x2) -> l0(x3, x4, x5) :|: x2 = x5 && x1 = x4 && x = x3 Arcs: (2) -> (1) This digraph is fully evaluated! ---------------------------------------- (4) TRUE