0.70/1.08 YES 0.70/1.08 0.70/1.08 Problem 1: 0.70/1.08 0.70/1.08 (VAR m n x y) 0.70/1.08 (THEORY 0.70/1.08 (C eq)) 0.70/1.08 (RULES 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 ) 0.70/1.08 0.70/1.08 Problem 1: 0.70/1.08 0.70/1.08 Dependency Pairs Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 EQ(x4,x5) = EQ(x5,x4) 0.70/1.08 -> Pairs: 0.70/1.08 APP(add(n,x),y) -> APP(x,y) 0.70/1.08 EQ(s(x),s(y)) -> EQ(x,y) 0.70/1.08 IF_MIN(false,add(n,add(m,x))) -> MIN(add(m,x)) 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> APP(rm(n,x),y) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> MINSORT(app(rm(n,x),y),nil) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> RM(n,x) 0.70/1.08 IF_RM(false,n,add(m,x)) -> RM(n,x) 0.70/1.08 IF_RM(true,n,add(m,x)) -> RM(n,x) 0.70/1.08 LE(s(x),s(y)) -> LE(x,y) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 MIN(add(n,add(m,x))) -> LE(n,m) 0.70/1.08 MINSORT(add(n,x),y) -> EQ(n,min(add(n,x))) 0.70/1.08 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 MINSORT(add(n,x),y) -> MIN(add(n,x)) 0.70/1.08 RM(n,add(m,x)) -> EQ(n,m) 0.70/1.08 RM(n,add(m,x)) -> IF_RM(eq(n,m),n,add(m,x)) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 0.70/1.08 Problem 1: 0.70/1.08 0.70/1.08 SCC Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 EQ(x4,x5) = EQ(x5,x4) 0.70/1.08 -> Pairs: 0.70/1.08 APP(add(n,x),y) -> APP(x,y) 0.70/1.08 EQ(s(x),s(y)) -> EQ(x,y) 0.70/1.08 IF_MIN(false,add(n,add(m,x))) -> MIN(add(m,x)) 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> APP(rm(n,x),y) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> MINSORT(app(rm(n,x),y),nil) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> RM(n,x) 0.70/1.08 IF_RM(false,n,add(m,x)) -> RM(n,x) 0.70/1.08 IF_RM(true,n,add(m,x)) -> RM(n,x) 0.70/1.08 LE(s(x),s(y)) -> LE(x,y) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 MIN(add(n,add(m,x))) -> LE(n,m) 0.70/1.08 MINSORT(add(n,x),y) -> EQ(n,min(add(n,x))) 0.70/1.08 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 MINSORT(add(n,x),y) -> MIN(add(n,x)) 0.70/1.08 RM(n,add(m,x)) -> EQ(n,m) 0.70/1.08 RM(n,add(m,x)) -> IF_RM(eq(n,m),n,add(m,x)) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Strongly Connected Components: 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 LE(s(x),s(y)) -> LE(x,y) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 IF_MIN(false,add(n,add(m,x))) -> MIN(add(m,x)) 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 EQ(s(x),s(y)) -> EQ(x,y) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 EQ(x4,x5) -> EQ(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 IF_RM(false,n,add(m,x)) -> RM(n,x) 0.70/1.08 IF_RM(true,n,add(m,x)) -> RM(n,x) 0.70/1.08 RM(n,add(m,x)) -> IF_RM(eq(n,m),n,add(m,x)) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 APP(add(n,x),y) -> APP(x,y) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.70/1.08 IF_MINSORT(true,add(n,x),y) -> MINSORT(app(rm(n,x),y),nil) 0.70/1.08 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 0.70/1.08 0.70/1.08 The problem is decomposed in 6 subproblems. 0.70/1.08 0.70/1.08 Problem 1.1: 0.70/1.08 0.70/1.08 Subterm Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 LE(s(x),s(y)) -> LE(x,y) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Projection: 0.70/1.08 pi(LE) = [1] 0.70/1.08 0.70/1.08 Problem 1.1: 0.70/1.08 0.70/1.08 SCC Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 Empty 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Strongly Connected Components: 0.70/1.08 There is no strongly connected component 0.70/1.08 0.70/1.08 The problem is finite. 0.70/1.08 0.70/1.08 Problem 1.2: 0.70/1.08 0.70/1.08 Reduction Pairs Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 IF_MIN(false,add(n,add(m,x))) -> MIN(add(m,x)) 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Usable Equations: 0.70/1.08 Empty 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> Usable Rules: 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Interpretation type: 0.70/1.08 Linear 0.70/1.08 ->Coefficients: 0.70/1.08 Natural Numbers 0.70/1.08 ->Dimension: 0.70/1.08 1 0.70/1.08 ->Bound: 0.70/1.08 2 0.70/1.08 ->Interpretation: 0.70/1.08 0.70/1.08 [app](X1,X2) = 0 0.70/1.08 [eq](X1,X2) = 0 0.70/1.08 [if_min](X1,X2) = 0 0.70/1.08 [if_minsort](X1,X2,X3) = 0 0.70/1.08 [if_rm](X1,X2,X3) = 0 0.70/1.08 [le](X1,X2) = 2 0.70/1.08 [min](X) = 0 0.70/1.08 [minsort](X1,X2) = 0 0.70/1.08 [rm](X1,X2) = 0 0.70/1.08 [0] = 1 0.70/1.08 [add](X1,X2) = 2.X1 + 2.X2 + 2 0.70/1.08 [false] = 2 0.70/1.08 [nil] = 0 0.70/1.08 [s](X) = 0 0.70/1.08 [true] = 0 0.70/1.08 [APP](X1,X2) = 0 0.70/1.08 [EQ](X1,X2) = 0 0.70/1.08 [IF_MIN](X1,X2) = X1 + 2.X2 0.70/1.08 [IF_MINSORT](X1,X2,X3) = 0 0.70/1.08 [IF_RM](X1,X2,X3) = 0 0.70/1.08 [LE](X1,X2) = 0 0.70/1.08 [MIN](X) = 2.X + 2 0.70/1.08 [MINSORT](X1,X2) = 0 0.70/1.08 [RM](X1,X2) = 0 0.70/1.08 0.70/1.08 Problem 1.2: 0.70/1.08 0.70/1.08 SCC Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Strongly Connected Components: 0.70/1.08 ->->Cycle: 0.70/1.08 ->->-> Pairs: 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 -> FAxioms: 0.70/1.08 eq(x4,x5) -> eq(x5,x4) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 ->->-> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 0.70/1.08 Problem 1.2: 0.70/1.08 0.70/1.08 Reduction Pairs Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 IF_MIN(true,add(n,add(m,x))) -> MIN(add(n,x)) 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Usable Equations: 0.70/1.08 Empty 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> Usable Rules: 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Interpretation type: 0.70/1.08 Linear 0.70/1.08 ->Coefficients: 0.70/1.08 Natural Numbers 0.70/1.08 ->Dimension: 0.70/1.08 1 0.70/1.08 ->Bound: 0.70/1.08 2 0.70/1.08 ->Interpretation: 0.70/1.08 0.70/1.08 [app](X1,X2) = 0 0.70/1.08 [eq](X1,X2) = 0 0.70/1.08 [if_min](X1,X2) = 0 0.70/1.08 [if_minsort](X1,X2,X3) = 0 0.70/1.08 [if_rm](X1,X2,X3) = 0 0.70/1.08 [le](X1,X2) = 2 0.70/1.08 [min](X) = 0 0.70/1.08 [minsort](X1,X2) = 0 0.70/1.08 [rm](X1,X2) = 0 0.70/1.08 [0] = 0 0.70/1.08 [add](X1,X2) = 2.X2 + 2 0.70/1.08 [false] = 0 0.70/1.08 [nil] = 0 0.70/1.08 [s](X) = 2.X + 2 0.70/1.08 [true] = 2 0.70/1.08 [APP](X1,X2) = 0 0.70/1.08 [EQ](X1,X2) = 0 0.70/1.08 [IF_MIN](X1,X2) = 2.X1 + X2 + 2 0.70/1.08 [IF_MINSORT](X1,X2,X3) = 0 0.70/1.08 [IF_RM](X1,X2,X3) = 0 0.70/1.08 [LE](X1,X2) = 0 0.70/1.08 [MIN](X) = 2.X 0.70/1.08 [MINSORT](X1,X2) = 0 0.70/1.08 [RM](X1,X2) = 0 0.70/1.08 0.70/1.08 Problem 1.2: 0.70/1.08 0.70/1.08 SCC Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 MIN(add(n,add(m,x))) -> IF_MIN(le(n,m),add(n,add(m,x))) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Strongly Connected Components: 0.70/1.08 There is no strongly connected component 0.70/1.08 0.70/1.08 The problem is finite. 0.70/1.08 0.70/1.08 Problem 1.3: 0.70/1.08 0.70/1.08 Subterm Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 EQ(x4,x5) = EQ(x5,x4) 0.70/1.08 -> Pairs: 0.70/1.08 EQ(s(x),s(y)) -> EQ(x,y) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Projection: 0.70/1.08 pi(EQ) = [1,2] 0.70/1.08 0.70/1.08 Problem 1.3: 0.70/1.08 0.70/1.08 SCC Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 EQ(x4,x5) = EQ(x5,x4) 0.70/1.08 -> Pairs: 0.70/1.08 Empty 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.70/1.08 le(s(x),0) -> false 0.70/1.08 le(s(x),s(y)) -> le(x,y) 0.70/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.70/1.08 min(add(n,nil)) -> n 0.70/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.70/1.08 minsort(nil,nil) -> nil 0.70/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.70/1.08 rm(n,nil) -> nil 0.70/1.08 -> SRules: 0.70/1.08 Empty 0.70/1.08 ->Strongly Connected Components: 0.70/1.08 There is no strongly connected component 0.70/1.08 0.70/1.08 The problem is finite. 0.70/1.08 0.70/1.08 Problem 1.4: 0.70/1.08 0.70/1.08 Subterm Processor: 0.70/1.08 -> FAxioms: 0.70/1.08 Empty 0.70/1.08 -> Pairs: 0.70/1.08 IF_RM(false,n,add(m,x)) -> RM(n,x) 0.70/1.08 IF_RM(true,n,add(m,x)) -> RM(n,x) 0.70/1.08 RM(n,add(m,x)) -> IF_RM(eq(n,m),n,add(m,x)) 0.70/1.08 -> EAxioms: 0.70/1.08 eq(x4,x5) = eq(x5,x4) 0.70/1.08 -> Rules: 0.70/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.70/1.08 app(nil,y) -> y 0.70/1.08 eq(0,0) -> true 0.70/1.08 eq(0,s(x)) -> false 0.70/1.08 eq(s(x),0) -> false 0.70/1.08 eq(s(x),s(y)) -> eq(x,y) 0.70/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.70/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.70/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.70/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.70/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.70/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.70/1.08 le(0,y) -> true 0.80/1.08 le(s(x),0) -> false 0.80/1.08 le(s(x),s(y)) -> le(x,y) 0.80/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.08 min(add(n,nil)) -> n 0.80/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.08 minsort(nil,nil) -> nil 0.80/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.08 rm(n,nil) -> nil 0.80/1.08 -> SRules: 0.80/1.08 Empty 0.80/1.08 ->Projection: 0.80/1.08 pi(IF_RM) = [3] 0.80/1.08 pi(RM) = [2] 0.80/1.08 0.80/1.08 Problem 1.4: 0.80/1.08 0.80/1.08 SCC Processor: 0.80/1.08 -> FAxioms: 0.80/1.08 Empty 0.80/1.08 -> Pairs: 0.80/1.08 RM(n,add(m,x)) -> IF_RM(eq(n,m),n,add(m,x)) 0.80/1.08 -> EAxioms: 0.80/1.08 eq(x4,x5) = eq(x5,x4) 0.80/1.08 -> Rules: 0.80/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.08 app(nil,y) -> y 0.80/1.08 eq(0,0) -> true 0.80/1.08 eq(0,s(x)) -> false 0.80/1.08 eq(s(x),0) -> false 0.80/1.08 eq(s(x),s(y)) -> eq(x,y) 0.80/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.08 le(0,y) -> true 0.80/1.08 le(s(x),0) -> false 0.80/1.08 le(s(x),s(y)) -> le(x,y) 0.80/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.08 min(add(n,nil)) -> n 0.80/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.08 minsort(nil,nil) -> nil 0.80/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.08 rm(n,nil) -> nil 0.80/1.08 -> SRules: 0.80/1.08 Empty 0.80/1.08 ->Strongly Connected Components: 0.80/1.08 There is no strongly connected component 0.80/1.08 0.80/1.08 The problem is finite. 0.80/1.08 0.80/1.08 Problem 1.5: 0.80/1.08 0.80/1.08 Subterm Processor: 0.80/1.08 -> FAxioms: 0.80/1.08 Empty 0.80/1.08 -> Pairs: 0.80/1.08 APP(add(n,x),y) -> APP(x,y) 0.80/1.08 -> EAxioms: 0.80/1.08 eq(x4,x5) = eq(x5,x4) 0.80/1.08 -> Rules: 0.80/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.08 app(nil,y) -> y 0.80/1.08 eq(0,0) -> true 0.80/1.08 eq(0,s(x)) -> false 0.80/1.08 eq(s(x),0) -> false 0.80/1.08 eq(s(x),s(y)) -> eq(x,y) 0.80/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.08 le(0,y) -> true 0.80/1.08 le(s(x),0) -> false 0.80/1.08 le(s(x),s(y)) -> le(x,y) 0.80/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.08 min(add(n,nil)) -> n 0.80/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.08 minsort(nil,nil) -> nil 0.80/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.08 rm(n,nil) -> nil 0.80/1.08 -> SRules: 0.80/1.08 Empty 0.80/1.08 ->Projection: 0.80/1.08 pi(APP) = [1] 0.80/1.08 0.80/1.08 Problem 1.5: 0.80/1.08 0.80/1.08 SCC Processor: 0.80/1.08 -> FAxioms: 0.80/1.08 Empty 0.80/1.08 -> Pairs: 0.80/1.08 Empty 0.80/1.08 -> EAxioms: 0.80/1.08 eq(x4,x5) = eq(x5,x4) 0.80/1.08 -> Rules: 0.80/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.08 app(nil,y) -> y 0.80/1.08 eq(0,0) -> true 0.80/1.08 eq(0,s(x)) -> false 0.80/1.08 eq(s(x),0) -> false 0.80/1.08 eq(s(x),s(y)) -> eq(x,y) 0.80/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.08 le(0,y) -> true 0.80/1.08 le(s(x),0) -> false 0.80/1.08 le(s(x),s(y)) -> le(x,y) 0.80/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.08 min(add(n,nil)) -> n 0.80/1.08 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.08 minsort(nil,nil) -> nil 0.80/1.08 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.08 rm(n,nil) -> nil 0.80/1.08 -> SRules: 0.80/1.08 Empty 0.80/1.08 ->Strongly Connected Components: 0.80/1.08 There is no strongly connected component 0.80/1.08 0.80/1.08 The problem is finite. 0.80/1.08 0.80/1.08 Problem 1.6: 0.80/1.08 0.80/1.08 Reduction Pairs Processor: 0.80/1.08 -> FAxioms: 0.80/1.08 Empty 0.80/1.08 -> Pairs: 0.80/1.08 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.80/1.08 IF_MINSORT(true,add(n,x),y) -> MINSORT(app(rm(n,x),y),nil) 0.80/1.08 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.08 -> EAxioms: 0.80/1.08 eq(x4,x5) = eq(x5,x4) 0.80/1.08 -> Usable Equations: 0.80/1.08 eq(x4,x5) = eq(x5,x4) 0.80/1.08 -> Rules: 0.80/1.08 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.08 app(nil,y) -> y 0.80/1.08 eq(0,0) -> true 0.80/1.08 eq(0,s(x)) -> false 0.80/1.08 eq(s(x),0) -> false 0.80/1.08 eq(s(x),s(y)) -> eq(x,y) 0.80/1.08 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.08 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.08 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.08 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.08 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.08 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.08 le(0,y) -> true 0.80/1.08 le(s(x),0) -> false 0.80/1.08 le(s(x),s(y)) -> le(x,y) 0.80/1.08 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.09 min(add(n,nil)) -> n 0.80/1.09 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 minsort(nil,nil) -> nil 0.80/1.09 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.09 rm(n,nil) -> nil 0.80/1.09 -> Usable Rules: 0.80/1.09 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.09 app(nil,y) -> y 0.80/1.09 eq(0,0) -> true 0.80/1.09 eq(0,s(x)) -> false 0.80/1.09 eq(s(x),0) -> false 0.80/1.09 eq(s(x),s(y)) -> eq(x,y) 0.80/1.09 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.09 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.09 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.09 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.09 le(0,y) -> true 0.80/1.09 le(s(x),0) -> false 0.80/1.09 le(s(x),s(y)) -> le(x,y) 0.80/1.09 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.09 min(add(n,nil)) -> n 0.80/1.09 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.09 rm(n,nil) -> nil 0.80/1.09 -> SRules: 0.80/1.09 Empty 0.80/1.09 ->Interpretation type: 0.80/1.09 Linear 0.80/1.09 ->Coefficients: 0.80/1.09 Natural Numbers 0.80/1.09 ->Dimension: 0.80/1.09 1 0.80/1.09 ->Bound: 0.80/1.09 2 0.80/1.09 ->Interpretation: 0.80/1.09 0.80/1.09 [app](X1,X2) = X1 + X2 0.80/1.09 [eq](X1,X2) = 2.X1 + 2.X2 + 2 0.80/1.09 [if_min](X1,X2) = 2.X2 + 2 0.80/1.09 [if_minsort](X1,X2,X3) = 0 0.80/1.09 [if_rm](X1,X2,X3) = X2 + X3 + 1 0.80/1.09 [le](X1,X2) = X2 + 2 0.80/1.09 [min](X) = 2.X + 2 0.80/1.09 [minsort](X1,X2) = 0 0.80/1.09 [rm](X1,X2) = X1 + X2 + 1 0.80/1.09 [0] = 2 0.80/1.09 [add](X1,X2) = 2.X1 + X2 + 2 0.80/1.09 [false] = 2 0.80/1.09 [nil] = 0 0.80/1.09 [s](X) = 2.X + 2 0.80/1.09 [true] = 2 0.80/1.09 [APP](X1,X2) = 0 0.80/1.09 [EQ](X1,X2) = 0 0.80/1.09 [IF_MIN](X1,X2) = 0 0.80/1.09 [IF_MINSORT](X1,X2,X3) = 2.X2 + 2.X3 + 2 0.80/1.09 [IF_RM](X1,X2,X3) = 0 0.80/1.09 [LE](X1,X2) = 0 0.80/1.09 [MIN](X) = 0 0.80/1.09 [MINSORT](X1,X2) = 2.X1 + 2.X2 + 2 0.80/1.09 [RM](X1,X2) = 0 0.80/1.09 0.80/1.09 Problem 1.6: 0.80/1.09 0.80/1.09 SCC Processor: 0.80/1.09 -> FAxioms: 0.80/1.09 Empty 0.80/1.09 -> Pairs: 0.80/1.09 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.80/1.09 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 -> EAxioms: 0.80/1.09 eq(x4,x5) = eq(x5,x4) 0.80/1.09 -> Rules: 0.80/1.09 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.09 app(nil,y) -> y 0.80/1.09 eq(0,0) -> true 0.80/1.09 eq(0,s(x)) -> false 0.80/1.09 eq(s(x),0) -> false 0.80/1.09 eq(s(x),s(y)) -> eq(x,y) 0.80/1.09 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.09 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.09 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.09 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.09 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.09 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.09 le(0,y) -> true 0.80/1.09 le(s(x),0) -> false 0.80/1.09 le(s(x),s(y)) -> le(x,y) 0.80/1.09 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.09 min(add(n,nil)) -> n 0.80/1.09 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 minsort(nil,nil) -> nil 0.80/1.09 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.09 rm(n,nil) -> nil 0.80/1.09 -> SRules: 0.80/1.09 Empty 0.80/1.09 ->Strongly Connected Components: 0.80/1.09 ->->Cycle: 0.80/1.09 ->->-> Pairs: 0.80/1.09 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.80/1.09 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 -> FAxioms: 0.80/1.09 eq(x4,x5) -> eq(x5,x4) 0.80/1.09 -> EAxioms: 0.80/1.09 eq(x4,x5) = eq(x5,x4) 0.80/1.09 ->->-> Rules: 0.80/1.09 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.09 app(nil,y) -> y 0.80/1.09 eq(0,0) -> true 0.80/1.09 eq(0,s(x)) -> false 0.80/1.09 eq(s(x),0) -> false 0.80/1.09 eq(s(x),s(y)) -> eq(x,y) 0.80/1.09 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.09 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.09 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.09 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.09 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.09 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.09 le(0,y) -> true 0.80/1.09 le(s(x),0) -> false 0.80/1.09 le(s(x),s(y)) -> le(x,y) 0.80/1.09 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.09 min(add(n,nil)) -> n 0.80/1.09 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 minsort(nil,nil) -> nil 0.80/1.09 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.09 rm(n,nil) -> nil 0.80/1.09 -> SRules: 0.80/1.09 Empty 0.80/1.09 0.80/1.09 Problem 1.6: 0.80/1.09 0.80/1.09 Subterm Processor: 0.80/1.09 -> FAxioms: 0.80/1.09 Empty 0.80/1.09 -> Pairs: 0.80/1.09 IF_MINSORT(false,add(n,x),y) -> MINSORT(x,add(n,y)) 0.80/1.09 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 -> EAxioms: 0.80/1.09 eq(x4,x5) = eq(x5,x4) 0.80/1.09 -> Rules: 0.80/1.09 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.09 app(nil,y) -> y 0.80/1.09 eq(0,0) -> true 0.80/1.09 eq(0,s(x)) -> false 0.80/1.09 eq(s(x),0) -> false 0.80/1.09 eq(s(x),s(y)) -> eq(x,y) 0.80/1.09 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.09 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.09 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.09 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.09 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.09 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.09 le(0,y) -> true 0.80/1.09 le(s(x),0) -> false 0.80/1.09 le(s(x),s(y)) -> le(x,y) 0.80/1.09 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.09 min(add(n,nil)) -> n 0.80/1.09 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 minsort(nil,nil) -> nil 0.80/1.09 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.09 rm(n,nil) -> nil 0.80/1.09 -> SRules: 0.80/1.09 Empty 0.80/1.09 ->Projection: 0.80/1.09 pi(IF_MINSORT) = [2] 0.80/1.09 pi(MINSORT) = [1] 0.80/1.09 0.80/1.09 Problem 1.6: 0.80/1.09 0.80/1.09 SCC Processor: 0.80/1.09 -> FAxioms: 0.80/1.09 Empty 0.80/1.09 -> Pairs: 0.80/1.09 MINSORT(add(n,x),y) -> IF_MINSORT(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 -> EAxioms: 0.80/1.09 eq(x4,x5) = eq(x5,x4) 0.80/1.09 -> Rules: 0.80/1.09 app(add(n,x),y) -> add(n,app(x,y)) 0.80/1.09 app(nil,y) -> y 0.80/1.09 eq(0,0) -> true 0.80/1.09 eq(0,s(x)) -> false 0.80/1.09 eq(s(x),0) -> false 0.80/1.09 eq(s(x),s(y)) -> eq(x,y) 0.80/1.09 if_min(false,add(n,add(m,x))) -> min(add(m,x)) 0.80/1.09 if_min(true,add(n,add(m,x))) -> min(add(n,x)) 0.80/1.09 if_minsort(false,add(n,x),y) -> minsort(x,add(n,y)) 0.80/1.09 if_minsort(true,add(n,x),y) -> add(n,minsort(app(rm(n,x),y),nil)) 0.80/1.09 if_rm(false,n,add(m,x)) -> add(m,rm(n,x)) 0.80/1.09 if_rm(true,n,add(m,x)) -> rm(n,x) 0.80/1.09 le(0,y) -> true 0.80/1.09 le(s(x),0) -> false 0.80/1.09 le(s(x),s(y)) -> le(x,y) 0.80/1.09 min(add(n,add(m,x))) -> if_min(le(n,m),add(n,add(m,x))) 0.80/1.09 min(add(n,nil)) -> n 0.80/1.09 minsort(add(n,x),y) -> if_minsort(eq(n,min(add(n,x))),add(n,x),y) 0.80/1.09 minsort(nil,nil) -> nil 0.80/1.09 rm(n,add(m,x)) -> if_rm(eq(n,m),n,add(m,x)) 0.80/1.09 rm(n,nil) -> nil 0.80/1.09 -> SRules: 0.80/1.09 Empty 0.80/1.09 ->Strongly Connected Components: 0.80/1.09 There is no strongly connected component 0.80/1.09 0.80/1.09 The problem is finite. 0.80/1.09 EOF