0.00/0.59 YES 0.00/0.59 0.00/0.59 Problem 1: 0.00/0.59 0.00/0.59 (VAR h i u v x y) 0.00/0.59 (THEORY 0.00/0.59 (AC or) 0.00/0.59 (C eq)) 0.00/0.59 (RULES 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 ) 0.00/0.59 0.00/0.59 Problem 1: 0.00/0.59 0.00/0.59 Dependency Pairs Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 EQ(x6,x7) = EQ(x7,x6) 0.00/0.59 OR(or(x6,x7),x8) = OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) = OR(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 EQ(s(x),s(y)) -> EQ(x,y) 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 IF_REACH_1(true,x,y,edge(u,v,i),h) -> EQ(y,v) 0.00/0.59 IF_REACH_1(true,x,y,edge(u,v,i),h) -> IF_REACH_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> OR(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(v,y,union(i,h),empty) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,h) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> UNION(i,h) 0.00/0.59 OR(or(false,y),x6) -> OR(y,x6) 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> EQ(x,u) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 UNION(edge(x,y,i),h) -> UNION(i,h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 0.00/0.59 Problem 1: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 EQ(x6,x7) = EQ(x7,x6) 0.00/0.59 OR(or(x6,x7),x8) = OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) = OR(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 EQ(s(x),s(y)) -> EQ(x,y) 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 IF_REACH_1(true,x,y,edge(u,v,i),h) -> EQ(y,v) 0.00/0.59 IF_REACH_1(true,x,y,edge(u,v,i),h) -> IF_REACH_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> OR(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(v,y,union(i,h),empty) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,h) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> UNION(i,h) 0.00/0.59 OR(or(false,y),x6) -> OR(y,x6) 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> EQ(x,u) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 UNION(edge(x,y,i),h) -> UNION(i,h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 ->->Cycle: 0.00/0.59 ->->-> Pairs: 0.00/0.59 UNION(edge(x,y,i),h) -> UNION(i,h) 0.00/0.59 -> FAxioms: 0.00/0.59 eq(x6,x7) -> eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) -> or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) -> or(x7,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 ->->-> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->->Cycle: 0.00/0.59 ->->-> Pairs: 0.00/0.59 OR(or(false,y),x6) -> OR(y,x6) 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 -> FAxioms: 0.00/0.59 eq(x6,x7) -> eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) -> or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) -> or(x7,x6) 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) -> OR(x7,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 ->->-> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 ->->Cycle: 0.00/0.59 ->->-> Pairs: 0.00/0.59 EQ(s(x),s(y)) -> EQ(x,y) 0.00/0.59 -> FAxioms: 0.00/0.59 eq(x6,x7) -> eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) -> or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) -> or(x7,x6) 0.00/0.59 EQ(x6,x7) -> EQ(x7,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 ->->-> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->->Cycle: 0.00/0.59 ->->-> Pairs: 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 IF_REACH_1(true,x,y,edge(u,v,i),h) -> IF_REACH_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(v,y,union(i,h),empty) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,h) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 -> FAxioms: 0.00/0.59 eq(x6,x7) -> eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) -> or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) -> or(x7,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 ->->-> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 0.00/0.59 0.00/0.59 The problem is decomposed in 4 subproblems. 0.00/0.59 0.00/0.59 Problem 1.1: 0.00/0.59 0.00/0.59 Subterm Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 Empty 0.00/0.59 -> Pairs: 0.00/0.59 UNION(edge(x,y,i),h) -> UNION(i,h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Projection: 0.00/0.59 pi(UNION) = [1] 0.00/0.59 0.00/0.59 Problem 1.1: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 Empty 0.00/0.59 -> Pairs: 0.00/0.59 Empty 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 There is no strongly connected component 0.00/0.59 0.00/0.59 The problem is finite. 0.00/0.59 0.00/0.59 Problem 1.2: 0.00/0.59 0.00/0.59 Reduction Pairs Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 OR(or(x6,x7),x8) = OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) = OR(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 OR(or(false,y),x6) -> OR(y,x6) 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Usable Equations: 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> Usable Rules: 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 ->Interpretation type: 0.00/0.59 Linear 0.00/0.59 ->Coefficients: 0.00/0.59 Natural Numbers 0.00/0.59 ->Dimension: 0.00/0.59 1 0.00/0.59 ->Bound: 0.00/0.59 2 0.00/0.59 ->Interpretation: 0.00/0.59 0.00/0.59 [eq](X1,X2) = 0 0.00/0.59 [if_reach_1](X1,X2,X3,X4,X5) = 0 0.00/0.59 [if_reach_2](X1,X2,X3,X4,X5) = 0 0.00/0.59 [or](X1,X2) = X1 + X2 + 1 0.00/0.59 [reach](X1,X2,X3,X4) = 0 0.00/0.59 [union](X1,X2) = 0 0.00/0.59 [0] = 0 0.00/0.59 [edge](X1,X2,X3) = 0 0.00/0.59 [empty] = 0 0.00/0.59 [false] = 1 0.00/0.59 [s](X) = 0 0.00/0.59 [true] = 1 0.00/0.59 [EQ](X1,X2) = 0 0.00/0.59 [IF_REACH_1](X1,X2,X3,X4,X5) = 0 0.00/0.59 [IF_REACH_2](X1,X2,X3,X4,X5) = 0 0.00/0.59 [OR](X1,X2) = X1 + X2 0.00/0.59 [REACH](X1,X2,X3,X4) = 0 0.00/0.59 [UNION](X1,X2) = 0 0.00/0.59 0.00/0.59 Problem 1.2: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 OR(or(x6,x7),x8) = OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) = OR(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 ->->Cycle: 0.00/0.59 ->->-> Pairs: 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 -> FAxioms: 0.00/0.59 eq(x6,x7) -> eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) -> or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) -> or(x7,x6) 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) -> OR(x7,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 ->->-> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 0.00/0.59 Problem 1.2: 0.00/0.59 0.00/0.59 Reduction Pairs Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 OR(or(x6,x7),x8) = OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) = OR(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 OR(or(true,y),x6) -> OR(true,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Usable Equations: 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> Usable Rules: 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 ->Interpretation type: 0.00/0.59 Linear 0.00/0.59 ->Coefficients: 0.00/0.59 Natural Numbers 0.00/0.59 ->Dimension: 0.00/0.59 1 0.00/0.59 ->Bound: 0.00/0.59 2 0.00/0.59 ->Interpretation: 0.00/0.59 0.00/0.59 [eq](X1,X2) = 0 0.00/0.59 [if_reach_1](X1,X2,X3,X4,X5) = 0 0.00/0.59 [if_reach_2](X1,X2,X3,X4,X5) = 0 0.00/0.59 [or](X1,X2) = X1 + X2 + 1 0.00/0.59 [reach](X1,X2,X3,X4) = 0 0.00/0.59 [union](X1,X2) = 0 0.00/0.59 [0] = 0 0.00/0.59 [edge](X1,X2,X3) = 0 0.00/0.59 [empty] = 0 0.00/0.59 [false] = 0 0.00/0.59 [s](X) = 0 0.00/0.59 [true] = 2 0.00/0.59 [EQ](X1,X2) = 0 0.00/0.59 [IF_REACH_1](X1,X2,X3,X4,X5) = 0 0.00/0.59 [IF_REACH_2](X1,X2,X3,X4,X5) = 0 0.00/0.59 [OR](X1,X2) = 2.X1 + 2.X2 0.00/0.59 [REACH](X1,X2,X3,X4) = 0 0.00/0.59 [UNION](X1,X2) = 0 0.00/0.59 0.00/0.59 Problem 1.2: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 OR(or(x6,x7),x8) = OR(x6,or(x7,x8)) 0.00/0.59 OR(x6,x7) = OR(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 Empty 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 OR(or(x6,x7),x8) -> OR(x6,x7) 0.00/0.59 OR(x6,or(x7,x8)) -> OR(x7,x8) 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 There is no strongly connected component 0.00/0.59 0.00/0.59 The problem is finite. 0.00/0.59 0.00/0.59 Problem 1.3: 0.00/0.59 0.00/0.59 Subterm Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 EQ(x6,x7) = EQ(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 EQ(s(x),s(y)) -> EQ(x,y) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Projection: 0.00/0.59 pi(EQ) = [1,2] 0.00/0.59 0.00/0.59 Problem 1.3: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 EQ(x6,x7) = EQ(x7,x6) 0.00/0.59 -> Pairs: 0.00/0.59 Empty 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 There is no strongly connected component 0.00/0.59 0.00/0.59 The problem is finite. 0.00/0.59 0.00/0.59 Problem 1.4: 0.00/0.59 0.00/0.59 Reduction Pairs Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 Empty 0.00/0.59 -> Pairs: 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 IF_REACH_1(true,x,y,edge(u,v,i),h) -> IF_REACH_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(v,y,union(i,h),empty) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,h) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Usable Equations: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> Usable Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Interpretation type: 0.00/0.59 Linear 0.00/0.59 ->Coefficients: 0.00/0.59 Natural Numbers 0.00/0.59 ->Dimension: 0.00/0.59 1 0.00/0.59 ->Bound: 0.00/0.59 2 0.00/0.59 ->Interpretation: 0.00/0.59 0.00/0.59 [eq](X1,X2) = X1 + X2 + 2 0.00/0.59 [if_reach_1](X1,X2,X3,X4,X5) = 0 0.00/0.59 [if_reach_2](X1,X2,X3,X4,X5) = 0 0.00/0.59 [or](X1,X2) = 0 0.00/0.59 [reach](X1,X2,X3,X4) = 0 0.00/0.59 [union](X1,X2) = X1 + X2 0.00/0.59 [0] = 2 0.00/0.59 [edge](X1,X2,X3) = X2 + X3 + 2 0.00/0.59 [empty] = 1 0.00/0.59 [false] = 2 0.00/0.59 [s](X) = X + 2 0.00/0.59 [true] = 1 0.00/0.59 [EQ](X1,X2) = 0 0.00/0.59 [IF_REACH_1](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2.X5 + 2 0.00/0.59 [IF_REACH_2](X1,X2,X3,X4,X5) = 2.X2 + 2.X3 + 2.X4 + 2.X5 + 1 0.00/0.59 [OR](X1,X2) = 0 0.00/0.59 [REACH](X1,X2,X3,X4) = 2.X1 + 2.X2 + 2.X3 + 2.X4 + 2 0.00/0.59 [UNION](X1,X2) = 0 0.00/0.59 0.00/0.59 Problem 1.4: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 Empty 0.00/0.59 -> Pairs: 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(v,y,union(i,h),empty) 0.00/0.59 IF_REACH_2(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,h) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 ->->Cycle: 0.00/0.59 ->->-> Pairs: 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 -> FAxioms: 0.00/0.59 eq(x6,x7) -> eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) -> or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) -> or(x7,x6) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 ->->-> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 0.00/0.59 Problem 1.4: 0.00/0.59 0.00/0.59 Subterm Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 Empty 0.00/0.59 -> Pairs: 0.00/0.59 IF_REACH_1(false,x,y,edge(u,v,i),h) -> REACH(x,y,i,edge(u,v,h)) 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Projection: 0.00/0.59 pi(IF_REACH_1) = [4] 0.00/0.59 pi(REACH) = [3] 0.00/0.59 0.00/0.59 Problem 1.4: 0.00/0.59 0.00/0.59 SCC Processor: 0.00/0.59 -> FAxioms: 0.00/0.59 Empty 0.00/0.59 -> Pairs: 0.00/0.59 REACH(x,y,edge(u,v,i),h) -> IF_REACH_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 -> EAxioms: 0.00/0.59 eq(x6,x7) = eq(x7,x6) 0.00/0.59 or(or(x6,x7),x8) = or(x6,or(x7,x8)) 0.00/0.59 or(x6,x7) = or(x7,x6) 0.00/0.59 -> Rules: 0.00/0.59 eq(0,0) -> true 0.00/0.59 eq(0,s(x)) -> false 0.00/0.59 eq(s(x),0) -> false 0.00/0.59 eq(s(x),s(y)) -> eq(x,y) 0.00/0.59 if_reach_1(false,x,y,edge(u,v,i),h) -> reach(x,y,i,edge(u,v,h)) 0.00/0.59 if_reach_1(true,x,y,edge(u,v,i),h) -> if_reach_2(eq(y,v),x,y,edge(u,v,i),h) 0.00/0.59 if_reach_2(false,x,y,edge(u,v,i),h) -> or(reach(x,y,i,h),reach(v,y,union(i,h),empty)) 0.00/0.59 if_reach_2(true,x,y,edge(u,v,i),h) -> true 0.00/0.59 or(false,y) -> y 0.00/0.59 or(true,y) -> true 0.00/0.59 reach(x,y,edge(u,v,i),h) -> if_reach_1(eq(x,u),x,y,edge(u,v,i),h) 0.00/0.59 reach(x,y,empty,h) -> false 0.00/0.59 union(edge(x,y,i),h) -> edge(x,y,union(i,h)) 0.00/0.59 union(empty,h) -> h 0.00/0.59 -> SRules: 0.00/0.59 Empty 0.00/0.59 ->Strongly Connected Components: 0.00/0.59 There is no strongly connected component 0.00/0.59 0.00/0.59 The problem is finite. 0.00/0.59 EOF