MAYBE Time: 0.577548 TRS: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} DP: DP: { cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2), from# mark X -> from# X, from# ok X -> from# X, s# mark X -> s# X, s# ok X -> s# X, active# cons(X1, X2) -> cons#(active X1, X2), active# cons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X), active# from X -> from# s X, active# from X -> from# active X, active# from X -> s# X, active# from X -> active# X, active# s X -> s# active X, active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2), active# rcons(X1, X2) -> rcons#(active X1, X2), active# posrecip X -> active# X, active# posrecip X -> posrecip# active X, active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, active# negrecip X -> active# X, active# negrecip X -> negrecip# active X, active# pi X -> from# 0(), active# pi X -> active# X, active# pi X -> 2ndspos#(X, from 0()), active# pi X -> pi# active X, active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2), active# plus(X1, X2) -> plus#(active X1, X2), active# plus(s X, Y) -> s# plus(X, Y), active# plus(s X, Y) -> plus#(X, Y), active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2), active# times(X1, X2) -> times#(active X1, X2), active# times(s X, Y) -> plus#(Y, times(X, Y)), active# times(s X, Y) -> times#(X, Y), active# square X -> active# X, active# square X -> times#(X, X), active# square X -> square# active X, 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2), posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X, 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X, pi# mark X -> pi# X, pi# ok X -> pi# X, plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2), times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2), square# mark X -> square# X, square# ok X -> square# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2), proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2, proper# from X -> from# proper X, proper# from X -> proper# X, proper# s X -> s# proper X, proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X, proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X, proper# negrecip X -> proper# X, proper# pi X -> pi# proper X, proper# pi X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2), proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2), proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2, proper# square X -> square# proper X, proper# square X -> proper# X, top# mark X -> proper# X, top# mark X -> top# proper X, top# ok X -> active# X, top# ok X -> top# active X} TRS: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} UR: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), a(x, y) -> x, a(x, y) -> y} EDG: { (active# plus(s X, Y) -> plus#(X, Y), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(X1, mark X2) -> plus#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# square X -> times#(X, X), times#(ok X1, ok X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(mark X1, X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(X1, mark X2) -> times#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# from X -> from# s X, from# ok X -> from# X) (active# from X -> from# s X, from# mark X -> from# X) (active# s X -> s# active X, s# ok X -> s# X) (active# s X -> s# active X, s# mark X -> s# X) (active# negrecip X -> negrecip# active X, negrecip# ok X -> negrecip# X) (active# negrecip X -> negrecip# active X, negrecip# mark X -> negrecip# X) (active# square X -> square# active X, square# ok X -> square# X) (active# square X -> square# active X, square# mark X -> square# X) (proper# s X -> s# proper X, s# ok X -> s# X) (proper# s X -> s# proper X, s# mark X -> s# X) (proper# negrecip X -> negrecip# proper X, negrecip# ok X -> negrecip# X) (proper# negrecip X -> negrecip# proper X, negrecip# mark X -> negrecip# X) (proper# square X -> square# proper X, square# ok X -> square# X) (proper# square X -> square# proper X, square# mark X -> square# X) (top# ok X -> top# active X, top# ok X -> top# active X) (top# ok X -> top# active X, top# ok X -> active# X) (top# ok X -> top# active X, top# mark X -> top# proper X) (top# ok X -> top# active X, top# mark X -> proper# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# ok X -> negrecip# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# mark X -> negrecip# X) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(X1, mark X2) -> times#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(ok X1, ok X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(mark X1, X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(X1, mark X2) -> times#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(mark X1, X2) -> cons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# square X -> square# active X) (active# times(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X2, active# square X -> active# X) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X2, active# pi X -> active# X) (active# times(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# s X -> active# X) (active# times(X1, X2) -> active# X2, active# s X -> s# active X) (active# times(X1, X2) -> active# X2, active# from X -> active# X) (active# times(X1, X2) -> active# X2, active# from X -> s# X) (active# times(X1, X2) -> active# X2, active# from X -> from# active X) (active# times(X1, X2) -> active# X2, active# from X -> from# s X) (active# times(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (from# ok X -> from# X, from# ok X -> from# X) (from# ok X -> from# X, from# mark X -> from# X) (s# ok X -> s# X, s# ok X -> s# X) (s# ok X -> s# X, s# mark X -> s# X) (active# from X -> active# X, active# square X -> square# active X) (active# from X -> active# X, active# square X -> times#(X, X)) (active# from X -> active# X, active# square X -> active# X) (active# from X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# from X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# from X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# from X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# from X -> active# X, active# times(X1, X2) -> active# X2) (active# from X -> active# X, active# times(X1, X2) -> active# X1) (active# from X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# from X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# from X -> active# X, active# plus(X1, X2) -> active# X2) (active# from X -> active# X, active# plus(X1, X2) -> active# X1) (active# from X -> active# X, active# pi X -> pi# active X) (active# from X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# from X -> active# X, active# pi X -> active# X) (active# from X -> active# X, active# pi X -> from# 0()) (active# from X -> active# X, active# negrecip X -> negrecip# active X) (active# from X -> active# X, active# negrecip X -> active# X) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# from X -> active# X, active# posrecip X -> posrecip# active X) (active# from X -> active# X, active# posrecip X -> active# X) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# from X -> active# X, active# rcons(X1, X2) -> active# X2) (active# from X -> active# X, active# rcons(X1, X2) -> active# X1) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# from X -> active# X, active# s X -> active# X) (active# from X -> active# X, active# s X -> s# active X) (active# from X -> active# X, active# from X -> active# X) (active# from X -> active# X, active# from X -> s# X) (active# from X -> active# X, active# from X -> from# active X) (active# from X -> active# X, active# from X -> from# s X) (active# from X -> active# X, active# from X -> cons#(X, from s X)) (active# from X -> active# X, active# cons(X1, X2) -> active# X1) (active# from X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# posrecip X -> active# X, active# square X -> square# active X) (active# posrecip X -> active# X, active# square X -> times#(X, X)) (active# posrecip X -> active# X, active# square X -> active# X) (active# posrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# posrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# posrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# pi X -> pi# active X) (active# posrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# posrecip X -> active# X, active# pi X -> active# X) (active# posrecip X -> active# X, active# pi X -> from# 0()) (active# posrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# posrecip X -> active# X, active# negrecip X -> active# X) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# posrecip X -> active# X, active# posrecip X -> active# X) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# s X -> active# X) (active# posrecip X -> active# X, active# s X -> s# active X) (active# posrecip X -> active# X, active# from X -> active# X) (active# posrecip X -> active# X, active# from X -> s# X) (active# posrecip X -> active# X, active# from X -> from# active X) (active# posrecip X -> active# X, active# from X -> from# s X) (active# posrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# posrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# pi X -> active# X, active# square X -> square# active X) (active# pi X -> active# X, active# square X -> times#(X, X)) (active# pi X -> active# X, active# square X -> active# X) (active# pi X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# pi X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# pi X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# pi X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# pi X -> active# X, active# times(X1, X2) -> active# X2) (active# pi X -> active# X, active# times(X1, X2) -> active# X1) (active# pi X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# pi X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# pi X -> active# X, active# plus(X1, X2) -> active# X2) (active# pi X -> active# X, active# plus(X1, X2) -> active# X1) (active# pi X -> active# X, active# pi X -> pi# active X) (active# pi X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# pi X -> active# X, active# pi X -> active# X) (active# pi X -> active# X, active# pi X -> from# 0()) (active# pi X -> active# X, active# negrecip X -> negrecip# active X) (active# pi X -> active# X, active# negrecip X -> active# X) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# pi X -> active# X, active# posrecip X -> posrecip# active X) (active# pi X -> active# X, active# posrecip X -> active# X) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X2) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X1) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# pi X -> active# X, active# s X -> active# X) (active# pi X -> active# X, active# s X -> s# active X) (active# pi X -> active# X, active# from X -> active# X) (active# pi X -> active# X, active# from X -> s# X) (active# pi X -> active# X, active# from X -> from# active X) (active# pi X -> active# X, active# from X -> from# s X) (active# pi X -> active# X, active# from X -> cons#(X, from s X)) (active# pi X -> active# X, active# cons(X1, X2) -> active# X1) (active# pi X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X) (posrecip# mark X -> posrecip# X, posrecip# mark X -> posrecip# X) (negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X) (negrecip# mark X -> negrecip# X, negrecip# mark X -> negrecip# X) (pi# mark X -> pi# X, pi# ok X -> pi# X) (pi# mark X -> pi# X, pi# mark X -> pi# X) (square# mark X -> square# X, square# ok X -> square# X) (square# mark X -> square# X, square# mark X -> square# X) (proper# from X -> proper# X, proper# square X -> proper# X) (proper# from X -> proper# X, proper# square X -> square# proper X) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# from X -> proper# X, proper# pi X -> proper# X) (proper# from X -> proper# X, proper# pi X -> pi# proper X) (proper# from X -> proper# X, proper# negrecip X -> proper# X) (proper# from X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# from X -> proper# X, proper# posrecip X -> proper# X) (proper# from X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# from X -> proper# X, proper# s X -> proper# X) (proper# from X -> proper# X, proper# s X -> s# proper X) (proper# from X -> proper# X, proper# from X -> proper# X) (proper# from X -> proper# X, proper# from X -> from# proper X) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# square X -> proper# X) (proper# posrecip X -> proper# X, proper# square X -> square# proper X) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# pi X -> proper# X) (proper# posrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# posrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# s X -> proper# X) (proper# posrecip X -> proper# X, proper# s X -> s# proper X) (proper# posrecip X -> proper# X, proper# from X -> proper# X) (proper# posrecip X -> proper# X, proper# from X -> from# proper X) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# square X -> proper# X) (proper# pi X -> proper# X, proper# square X -> square# proper X) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# pi X -> proper# X) (proper# pi X -> proper# X, proper# pi X -> pi# proper X) (proper# pi X -> proper# X, proper# negrecip X -> proper# X) (proper# pi X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# posrecip X -> proper# X) (proper# pi X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# s X -> proper# X) (proper# pi X -> proper# X, proper# s X -> s# proper X) (proper# pi X -> proper# X, proper# from X -> proper# X) (proper# pi X -> proper# X, proper# from X -> from# proper X) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# square X -> proper# X) (top# mark X -> proper# X, proper# square X -> square# proper X) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (top# mark X -> proper# X, proper# pi X -> proper# X) (top# mark X -> proper# X, proper# pi X -> pi# proper X) (top# mark X -> proper# X, proper# negrecip X -> proper# X) (top# mark X -> proper# X, proper# negrecip X -> negrecip# proper X) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (top# mark X -> proper# X, proper# posrecip X -> proper# X) (top# mark X -> proper# X, proper# posrecip X -> posrecip# proper X) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (top# mark X -> proper# X, proper# s X -> proper# X) (top# mark X -> proper# X, proper# s X -> s# proper X) (top# mark X -> proper# X, proper# from X -> proper# X) (top# mark X -> proper# X, proper# from X -> from# proper X) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (active# cons(X1, X2) -> active# X1, active# square X -> square# active X) (active# cons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# cons(X1, X2) -> active# X1, active# square X -> active# X) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# cons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# cons(X1, X2) -> active# X1, active# pi X -> active# X) (active# cons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# cons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# cons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# cons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# s X -> active# X) (active# cons(X1, X2) -> active# X1, active# s X -> s# active X) (active# cons(X1, X2) -> active# X1, active# from X -> active# X) (active# cons(X1, X2) -> active# X1, active# from X -> s# X) (active# cons(X1, X2) -> active# X1, active# from X -> from# active X) (active# cons(X1, X2) -> active# X1, active# from X -> from# s X) (active# cons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X1, active# square X -> active# X) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X1, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# s X -> active# X) (active# rcons(X1, X2) -> active# X1, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> active# X) (active# rcons(X1, X2) -> active# X1, active# from X -> s# X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# square X -> square# active X) (active# plus(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X1, active# square X -> active# X) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X1, active# pi X -> active# X) (active# plus(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# s X -> active# X) (active# plus(X1, X2) -> active# X1, active# s X -> s# active X) (active# plus(X1, X2) -> active# X1, active# from X -> active# X) (active# plus(X1, X2) -> active# X1, active# from X -> s# X) (active# plus(X1, X2) -> active# X1, active# from X -> from# active X) (active# plus(X1, X2) -> active# X1, active# from X -> from# s X) (active# plus(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# cons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> proper# X) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X1, active# from X -> from# s X) (active# times(X1, X2) -> active# X1, active# from X -> from# active X) (active# times(X1, X2) -> active# X1, active# from X -> s# X) (active# times(X1, X2) -> active# X1, active# from X -> active# X) (active# times(X1, X2) -> active# X1, active# s X -> s# active X) (active# times(X1, X2) -> active# X1, active# s X -> active# X) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X1, active# pi X -> active# X) (active# times(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X1, active# square X -> active# X) (active# times(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> square# active X) (top# ok X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (top# ok X -> active# X, active# cons(X1, X2) -> active# X1) (top# ok X -> active# X, active# from X -> cons#(X, from s X)) (top# ok X -> active# X, active# from X -> from# s X) (top# ok X -> active# X, active# from X -> from# active X) (top# ok X -> active# X, active# from X -> s# X) (top# ok X -> active# X, active# from X -> active# X) (top# ok X -> active# X, active# s X -> s# active X) (top# ok X -> active# X, active# s X -> active# X) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X1) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X2) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (top# ok X -> active# X, active# posrecip X -> active# X) (top# ok X -> active# X, active# posrecip X -> posrecip# active X) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (top# ok X -> active# X, active# negrecip X -> active# X) (top# ok X -> active# X, active# negrecip X -> negrecip# active X) (top# ok X -> active# X, active# pi X -> from# 0()) (top# ok X -> active# X, active# pi X -> active# X) (top# ok X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (top# ok X -> active# X, active# pi X -> pi# active X) (top# ok X -> active# X, active# plus(X1, X2) -> active# X1) (top# ok X -> active# X, active# plus(X1, X2) -> active# X2) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (top# ok X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (top# ok X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (top# ok X -> active# X, active# times(X1, X2) -> active# X1) (top# ok X -> active# X, active# times(X1, X2) -> active# X2) (top# ok X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (top# ok X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (top# ok X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (top# ok X -> active# X, active# times(s X, Y) -> times#(X, Y)) (top# ok X -> active# X, active# square X -> active# X) (top# ok X -> active# X, active# square X -> times#(X, X)) (top# ok X -> active# X, active# square X -> square# active X) (proper# square X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# from X -> from# proper X) (proper# square X -> proper# X, proper# from X -> proper# X) (proper# square X -> proper# X, proper# s X -> s# proper X) (proper# square X -> proper# X, proper# s X -> proper# X) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# square X -> proper# X, proper# posrecip X -> proper# X) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# square X -> proper# X, proper# negrecip X -> proper# X) (proper# square X -> proper# X, proper# pi X -> pi# proper X) (proper# square X -> proper# X, proper# pi X -> proper# X) (proper# square X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# square X -> square# proper X) (proper# square X -> proper# X, proper# square X -> proper# X) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# from X -> from# proper X) (proper# negrecip X -> proper# X, proper# from X -> proper# X) (proper# negrecip X -> proper# X, proper# s X -> s# proper X) (proper# negrecip X -> proper# X, proper# s X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# negrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# negrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# negrecip X -> proper# X, proper# pi X -> proper# X) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# square X -> square# proper X) (proper# negrecip X -> proper# X, proper# square X -> proper# X) (proper# s X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# from X -> from# proper X) (proper# s X -> proper# X, proper# from X -> proper# X) (proper# s X -> proper# X, proper# s X -> s# proper X) (proper# s X -> proper# X, proper# s X -> proper# X) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# s X -> proper# X, proper# posrecip X -> proper# X) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# s X -> proper# X, proper# negrecip X -> proper# X) (proper# s X -> proper# X, proper# pi X -> pi# proper X) (proper# s X -> proper# X, proper# pi X -> proper# X) (proper# s X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# square X -> square# proper X) (proper# s X -> proper# X, proper# square X -> proper# X) (square# ok X -> square# X, square# mark X -> square# X) (square# ok X -> square# X, square# ok X -> square# X) (pi# ok X -> pi# X, pi# mark X -> pi# X) (pi# ok X -> pi# X, pi# ok X -> pi# X) (negrecip# ok X -> negrecip# X, negrecip# mark X -> negrecip# X) (negrecip# ok X -> negrecip# X, negrecip# ok X -> negrecip# X) (posrecip# ok X -> posrecip# X, posrecip# mark X -> posrecip# X) (posrecip# ok X -> posrecip# X, posrecip# ok X -> posrecip# X) (active# square X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# square X -> active# X, active# cons(X1, X2) -> active# X1) (active# square X -> active# X, active# from X -> cons#(X, from s X)) (active# square X -> active# X, active# from X -> from# s X) (active# square X -> active# X, active# from X -> from# active X) (active# square X -> active# X, active# from X -> s# X) (active# square X -> active# X, active# from X -> active# X) (active# square X -> active# X, active# s X -> s# active X) (active# square X -> active# X, active# s X -> active# X) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# square X -> active# X, active# rcons(X1, X2) -> active# X1) (active# square X -> active# X, active# rcons(X1, X2) -> active# X2) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# square X -> active# X, active# posrecip X -> active# X) (active# square X -> active# X, active# posrecip X -> posrecip# active X) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# square X -> active# X, active# negrecip X -> active# X) (active# square X -> active# X, active# negrecip X -> negrecip# active X) (active# square X -> active# X, active# pi X -> from# 0()) (active# square X -> active# X, active# pi X -> active# X) (active# square X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# square X -> active# X, active# pi X -> pi# active X) (active# square X -> active# X, active# plus(X1, X2) -> active# X1) (active# square X -> active# X, active# plus(X1, X2) -> active# X2) (active# square X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# square X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# square X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# square X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# square X -> active# X, active# times(X1, X2) -> active# X1) (active# square X -> active# X, active# times(X1, X2) -> active# X2) (active# square X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# square X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# square X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# square X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# square X -> active# X, active# square X -> active# X) (active# square X -> active# X, active# square X -> times#(X, X)) (active# square X -> active# X, active# square X -> square# active X) (active# negrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# negrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# negrecip X -> active# X, active# from X -> from# s X) (active# negrecip X -> active# X, active# from X -> from# active X) (active# negrecip X -> active# X, active# from X -> s# X) (active# negrecip X -> active# X, active# from X -> active# X) (active# negrecip X -> active# X, active# s X -> s# active X) (active# negrecip X -> active# X, active# s X -> active# X) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# negrecip X -> active# X, active# posrecip X -> active# X) (active# negrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# negrecip X -> active# X, active# negrecip X -> active# X) (active# negrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# negrecip X -> active# X, active# pi X -> from# 0()) (active# negrecip X -> active# X, active# pi X -> active# X) (active# negrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# negrecip X -> active# X, active# pi X -> pi# active X) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# negrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# negrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# negrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# negrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# negrecip X -> active# X, active# square X -> active# X) (active# negrecip X -> active# X, active# square X -> times#(X, X)) (active# negrecip X -> active# X, active# square X -> square# active X) (active# s X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# s X -> active# X, active# cons(X1, X2) -> active# X1) (active# s X -> active# X, active# from X -> cons#(X, from s X)) (active# s X -> active# X, active# from X -> from# s X) (active# s X -> active# X, active# from X -> from# active X) (active# s X -> active# X, active# from X -> s# X) (active# s X -> active# X, active# from X -> active# X) (active# s X -> active# X, active# s X -> s# active X) (active# s X -> active# X, active# s X -> active# X) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# s X -> active# X, active# rcons(X1, X2) -> active# X1) (active# s X -> active# X, active# rcons(X1, X2) -> active# X2) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# s X -> active# X, active# posrecip X -> active# X) (active# s X -> active# X, active# posrecip X -> posrecip# active X) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# s X -> active# X, active# negrecip X -> active# X) (active# s X -> active# X, active# negrecip X -> negrecip# active X) (active# s X -> active# X, active# pi X -> from# 0()) (active# s X -> active# X, active# pi X -> active# X) (active# s X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# s X -> active# X, active# pi X -> pi# active X) (active# s X -> active# X, active# plus(X1, X2) -> active# X1) (active# s X -> active# X, active# plus(X1, X2) -> active# X2) (active# s X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# s X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# s X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# s X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# s X -> active# X, active# times(X1, X2) -> active# X1) (active# s X -> active# X, active# times(X1, X2) -> active# X2) (active# s X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# s X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# s X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# s X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# s X -> active# X, active# square X -> active# X) (active# s X -> active# X, active# square X -> times#(X, X)) (active# s X -> active# X, active# square X -> square# active X) (active# from X -> s# X, s# mark X -> s# X) (active# from X -> s# X, s# ok X -> s# X) (s# mark X -> s# X, s# mark X -> s# X) (s# mark X -> s# X, s# ok X -> s# X) (from# mark X -> from# X, from# mark X -> from# X) (from# mark X -> from# X, from# ok X -> from# X) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X2, proper# square X -> proper# X) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X2, active# from X -> from# s X) (active# plus(X1, X2) -> active# X2, active# from X -> from# active X) (active# plus(X1, X2) -> active# X2, active# from X -> s# X) (active# plus(X1, X2) -> active# X2, active# from X -> active# X) (active# plus(X1, X2) -> active# X2, active# s X -> s# active X) (active# plus(X1, X2) -> active# X2, active# s X -> active# X) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X2, active# pi X -> active# X) (active# plus(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X2, active# square X -> active# X) (active# plus(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X2, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X2, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X2, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X2, active# from X -> s# X) (active# rcons(X1, X2) -> active# X2, active# from X -> active# X) (active# rcons(X1, X2) -> active# X2, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X2, active# s X -> active# X) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X2, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# square X -> active# X) (active# rcons(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# pi X -> 2ndspos#(X, from 0()), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# pi X -> 2ndspos#(X, from 0()), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# pi X -> 2ndspos#(X, from 0()), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(X1, mark X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(mark X1, X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(X1, mark X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(mark X1, X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(mark X1, X2) -> cons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# plus(s X, Y) -> s# plus(X, Y), s# mark X -> s# X) (active# plus(s X, Y) -> s# plus(X, Y), s# ok X -> s# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# mark X -> posrecip# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# ok X -> posrecip# X) (top# mark X -> top# proper X, top# mark X -> proper# X) (top# mark X -> top# proper X, top# mark X -> top# proper X) (top# mark X -> top# proper X, top# ok X -> active# X) (top# mark X -> top# proper X, top# ok X -> top# active X) (proper# pi X -> pi# proper X, pi# mark X -> pi# X) (proper# pi X -> pi# proper X, pi# ok X -> pi# X) (proper# posrecip X -> posrecip# proper X, posrecip# mark X -> posrecip# X) (proper# posrecip X -> posrecip# proper X, posrecip# ok X -> posrecip# X) (proper# from X -> from# proper X, from# mark X -> from# X) (proper# from X -> from# proper X, from# ok X -> from# X) (active# pi X -> pi# active X, pi# mark X -> pi# X) (active# pi X -> pi# active X, pi# ok X -> pi# X) (active# posrecip X -> posrecip# active X, posrecip# mark X -> posrecip# X) (active# posrecip X -> posrecip# active X, posrecip# ok X -> posrecip# X) (active# from X -> from# active X, from# mark X -> from# X) (active# from X -> from# active X, from# ok X -> from# X) (times#(ok X1, ok X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(X1, mark X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(mark X1, X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(ok X1, ok X2) -> times#(X1, X2)) (active# pi X -> from# 0(), from# mark X -> from# X) (active# pi X -> from# 0(), from# ok X -> from# X) } EDG: { (active# plus(s X, Y) -> plus#(X, Y), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(X1, mark X2) -> plus#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# square X -> times#(X, X), times#(ok X1, ok X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(mark X1, X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(X1, mark X2) -> times#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# from X -> from# s X, from# ok X -> from# X) (active# from X -> from# s X, from# mark X -> from# X) (active# s X -> s# active X, s# ok X -> s# X) (active# s X -> s# active X, s# mark X -> s# X) (active# negrecip X -> negrecip# active X, negrecip# ok X -> negrecip# X) (active# negrecip X -> negrecip# active X, negrecip# mark X -> negrecip# X) (active# square X -> square# active X, square# ok X -> square# X) (active# square X -> square# active X, square# mark X -> square# X) (proper# s X -> s# proper X, s# ok X -> s# X) (proper# s X -> s# proper X, s# mark X -> s# X) (proper# negrecip X -> negrecip# proper X, negrecip# ok X -> negrecip# X) (proper# negrecip X -> negrecip# proper X, negrecip# mark X -> negrecip# X) (proper# square X -> square# proper X, square# ok X -> square# X) (proper# square X -> square# proper X, square# mark X -> square# X) (top# ok X -> top# active X, top# ok X -> top# active X) (top# ok X -> top# active X, top# ok X -> active# X) (top# ok X -> top# active X, top# mark X -> top# proper X) (top# ok X -> top# active X, top# mark X -> proper# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# ok X -> negrecip# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# mark X -> negrecip# X) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(X1, mark X2) -> times#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(ok X1, ok X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(mark X1, X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(X1, mark X2) -> times#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(mark X1, X2) -> cons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# square X -> square# active X) (active# times(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X2, active# square X -> active# X) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X2, active# pi X -> active# X) (active# times(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# s X -> active# X) (active# times(X1, X2) -> active# X2, active# s X -> s# active X) (active# times(X1, X2) -> active# X2, active# from X -> active# X) (active# times(X1, X2) -> active# X2, active# from X -> s# X) (active# times(X1, X2) -> active# X2, active# from X -> from# active X) (active# times(X1, X2) -> active# X2, active# from X -> from# s X) (active# times(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (from# ok X -> from# X, from# ok X -> from# X) (from# ok X -> from# X, from# mark X -> from# X) (s# ok X -> s# X, s# ok X -> s# X) (s# ok X -> s# X, s# mark X -> s# X) (active# from X -> active# X, active# square X -> square# active X) (active# from X -> active# X, active# square X -> times#(X, X)) (active# from X -> active# X, active# square X -> active# X) (active# from X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# from X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# from X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# from X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# from X -> active# X, active# times(X1, X2) -> active# X2) (active# from X -> active# X, active# times(X1, X2) -> active# X1) (active# from X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# from X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# from X -> active# X, active# plus(X1, X2) -> active# X2) (active# from X -> active# X, active# plus(X1, X2) -> active# X1) (active# from X -> active# X, active# pi X -> pi# active X) (active# from X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# from X -> active# X, active# pi X -> active# X) (active# from X -> active# X, active# pi X -> from# 0()) (active# from X -> active# X, active# negrecip X -> negrecip# active X) (active# from X -> active# X, active# negrecip X -> active# X) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# from X -> active# X, active# posrecip X -> posrecip# active X) (active# from X -> active# X, active# posrecip X -> active# X) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# from X -> active# X, active# rcons(X1, X2) -> active# X2) (active# from X -> active# X, active# rcons(X1, X2) -> active# X1) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# from X -> active# X, active# s X -> active# X) (active# from X -> active# X, active# s X -> s# active X) (active# from X -> active# X, active# from X -> active# X) (active# from X -> active# X, active# from X -> s# X) (active# from X -> active# X, active# from X -> from# active X) (active# from X -> active# X, active# from X -> from# s X) (active# from X -> active# X, active# from X -> cons#(X, from s X)) (active# from X -> active# X, active# cons(X1, X2) -> active# X1) (active# from X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# posrecip X -> active# X, active# square X -> square# active X) (active# posrecip X -> active# X, active# square X -> times#(X, X)) (active# posrecip X -> active# X, active# square X -> active# X) (active# posrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# posrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# posrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# pi X -> pi# active X) (active# posrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# posrecip X -> active# X, active# pi X -> active# X) (active# posrecip X -> active# X, active# pi X -> from# 0()) (active# posrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# posrecip X -> active# X, active# negrecip X -> active# X) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# posrecip X -> active# X, active# posrecip X -> active# X) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# s X -> active# X) (active# posrecip X -> active# X, active# s X -> s# active X) (active# posrecip X -> active# X, active# from X -> active# X) (active# posrecip X -> active# X, active# from X -> s# X) (active# posrecip X -> active# X, active# from X -> from# active X) (active# posrecip X -> active# X, active# from X -> from# s X) (active# posrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# posrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# pi X -> active# X, active# square X -> square# active X) (active# pi X -> active# X, active# square X -> times#(X, X)) (active# pi X -> active# X, active# square X -> active# X) (active# pi X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# pi X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# pi X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# pi X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# pi X -> active# X, active# times(X1, X2) -> active# X2) (active# pi X -> active# X, active# times(X1, X2) -> active# X1) (active# pi X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# pi X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# pi X -> active# X, active# plus(X1, X2) -> active# X2) (active# pi X -> active# X, active# plus(X1, X2) -> active# X1) (active# pi X -> active# X, active# pi X -> pi# active X) (active# pi X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# pi X -> active# X, active# pi X -> active# X) (active# pi X -> active# X, active# pi X -> from# 0()) (active# pi X -> active# X, active# negrecip X -> negrecip# active X) (active# pi X -> active# X, active# negrecip X -> active# X) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# pi X -> active# X, active# posrecip X -> posrecip# active X) (active# pi X -> active# X, active# posrecip X -> active# X) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X2) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X1) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# pi X -> active# X, active# s X -> active# X) (active# pi X -> active# X, active# s X -> s# active X) (active# pi X -> active# X, active# from X -> active# X) (active# pi X -> active# X, active# from X -> s# X) (active# pi X -> active# X, active# from X -> from# active X) (active# pi X -> active# X, active# from X -> from# s X) (active# pi X -> active# X, active# from X -> cons#(X, from s X)) (active# pi X -> active# X, active# cons(X1, X2) -> active# X1) (active# pi X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X) (posrecip# mark X -> posrecip# X, posrecip# mark X -> posrecip# X) (negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X) (negrecip# mark X -> negrecip# X, negrecip# mark X -> negrecip# X) (pi# mark X -> pi# X, pi# ok X -> pi# X) (pi# mark X -> pi# X, pi# mark X -> pi# X) (square# mark X -> square# X, square# ok X -> square# X) (square# mark X -> square# X, square# mark X -> square# X) (proper# from X -> proper# X, proper# square X -> proper# X) (proper# from X -> proper# X, proper# square X -> square# proper X) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# from X -> proper# X, proper# pi X -> proper# X) (proper# from X -> proper# X, proper# pi X -> pi# proper X) (proper# from X -> proper# X, proper# negrecip X -> proper# X) (proper# from X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# from X -> proper# X, proper# posrecip X -> proper# X) (proper# from X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# from X -> proper# X, proper# s X -> proper# X) (proper# from X -> proper# X, proper# s X -> s# proper X) (proper# from X -> proper# X, proper# from X -> proper# X) (proper# from X -> proper# X, proper# from X -> from# proper X) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# square X -> proper# X) (proper# posrecip X -> proper# X, proper# square X -> square# proper X) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# pi X -> proper# X) (proper# posrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# posrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# s X -> proper# X) (proper# posrecip X -> proper# X, proper# s X -> s# proper X) (proper# posrecip X -> proper# X, proper# from X -> proper# X) (proper# posrecip X -> proper# X, proper# from X -> from# proper X) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# square X -> proper# X) (proper# pi X -> proper# X, proper# square X -> square# proper X) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# pi X -> proper# X) (proper# pi X -> proper# X, proper# pi X -> pi# proper X) (proper# pi X -> proper# X, proper# negrecip X -> proper# X) (proper# pi X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# posrecip X -> proper# X) (proper# pi X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# s X -> proper# X) (proper# pi X -> proper# X, proper# s X -> s# proper X) (proper# pi X -> proper# X, proper# from X -> proper# X) (proper# pi X -> proper# X, proper# from X -> from# proper X) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# square X -> proper# X) (top# mark X -> proper# X, proper# square X -> square# proper X) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (top# mark X -> proper# X, proper# pi X -> proper# X) (top# mark X -> proper# X, proper# pi X -> pi# proper X) (top# mark X -> proper# X, proper# negrecip X -> proper# X) (top# mark X -> proper# X, proper# negrecip X -> negrecip# proper X) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (top# mark X -> proper# X, proper# posrecip X -> proper# X) (top# mark X -> proper# X, proper# posrecip X -> posrecip# proper X) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (top# mark X -> proper# X, proper# s X -> proper# X) (top# mark X -> proper# X, proper# s X -> s# proper X) (top# mark X -> proper# X, proper# from X -> proper# X) (top# mark X -> proper# X, proper# from X -> from# proper X) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (active# cons(X1, X2) -> active# X1, active# square X -> square# active X) (active# cons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# cons(X1, X2) -> active# X1, active# square X -> active# X) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# cons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# cons(X1, X2) -> active# X1, active# pi X -> active# X) (active# cons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# cons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# cons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# cons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# s X -> active# X) (active# cons(X1, X2) -> active# X1, active# s X -> s# active X) (active# cons(X1, X2) -> active# X1, active# from X -> active# X) (active# cons(X1, X2) -> active# X1, active# from X -> s# X) (active# cons(X1, X2) -> active# X1, active# from X -> from# active X) (active# cons(X1, X2) -> active# X1, active# from X -> from# s X) (active# cons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X1, active# square X -> active# X) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X1, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# s X -> active# X) (active# rcons(X1, X2) -> active# X1, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> active# X) (active# rcons(X1, X2) -> active# X1, active# from X -> s# X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# square X -> square# active X) (active# plus(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X1, active# square X -> active# X) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X1, active# pi X -> active# X) (active# plus(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# s X -> active# X) (active# plus(X1, X2) -> active# X1, active# s X -> s# active X) (active# plus(X1, X2) -> active# X1, active# from X -> active# X) (active# plus(X1, X2) -> active# X1, active# from X -> s# X) (active# plus(X1, X2) -> active# X1, active# from X -> from# active X) (active# plus(X1, X2) -> active# X1, active# from X -> from# s X) (active# plus(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# cons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> proper# X) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X1, active# from X -> from# s X) (active# times(X1, X2) -> active# X1, active# from X -> from# active X) (active# times(X1, X2) -> active# X1, active# from X -> s# X) (active# times(X1, X2) -> active# X1, active# from X -> active# X) (active# times(X1, X2) -> active# X1, active# s X -> s# active X) (active# times(X1, X2) -> active# X1, active# s X -> active# X) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X1, active# pi X -> active# X) (active# times(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X1, active# square X -> active# X) (active# times(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> square# active X) (top# ok X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (top# ok X -> active# X, active# cons(X1, X2) -> active# X1) (top# ok X -> active# X, active# from X -> cons#(X, from s X)) (top# ok X -> active# X, active# from X -> from# s X) (top# ok X -> active# X, active# from X -> from# active X) (top# ok X -> active# X, active# from X -> s# X) (top# ok X -> active# X, active# from X -> active# X) (top# ok X -> active# X, active# s X -> s# active X) (top# ok X -> active# X, active# s X -> active# X) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X1) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X2) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (top# ok X -> active# X, active# posrecip X -> active# X) (top# ok X -> active# X, active# posrecip X -> posrecip# active X) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (top# ok X -> active# X, active# negrecip X -> active# X) (top# ok X -> active# X, active# negrecip X -> negrecip# active X) (top# ok X -> active# X, active# pi X -> from# 0()) (top# ok X -> active# X, active# pi X -> active# X) (top# ok X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (top# ok X -> active# X, active# pi X -> pi# active X) (top# ok X -> active# X, active# plus(X1, X2) -> active# X1) (top# ok X -> active# X, active# plus(X1, X2) -> active# X2) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (top# ok X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (top# ok X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (top# ok X -> active# X, active# times(X1, X2) -> active# X1) (top# ok X -> active# X, active# times(X1, X2) -> active# X2) (top# ok X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (top# ok X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (top# ok X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (top# ok X -> active# X, active# times(s X, Y) -> times#(X, Y)) (top# ok X -> active# X, active# square X -> active# X) (top# ok X -> active# X, active# square X -> times#(X, X)) (top# ok X -> active# X, active# square X -> square# active X) (proper# square X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# from X -> from# proper X) (proper# square X -> proper# X, proper# from X -> proper# X) (proper# square X -> proper# X, proper# s X -> s# proper X) (proper# square X -> proper# X, proper# s X -> proper# X) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# square X -> proper# X, proper# posrecip X -> proper# X) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# square X -> proper# X, proper# negrecip X -> proper# X) (proper# square X -> proper# X, proper# pi X -> pi# proper X) (proper# square X -> proper# X, proper# pi X -> proper# X) (proper# square X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# square X -> square# proper X) (proper# square X -> proper# X, proper# square X -> proper# X) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# from X -> from# proper X) (proper# negrecip X -> proper# X, proper# from X -> proper# X) (proper# negrecip X -> proper# X, proper# s X -> s# proper X) (proper# negrecip X -> proper# X, proper# s X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# negrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# negrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# negrecip X -> proper# X, proper# pi X -> proper# X) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# square X -> square# proper X) (proper# negrecip X -> proper# X, proper# square X -> proper# X) (proper# s X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# from X -> from# proper X) (proper# s X -> proper# X, proper# from X -> proper# X) (proper# s X -> proper# X, proper# s X -> s# proper X) (proper# s X -> proper# X, proper# s X -> proper# X) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# s X -> proper# X, proper# posrecip X -> proper# X) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# s X -> proper# X, proper# negrecip X -> proper# X) (proper# s X -> proper# X, proper# pi X -> pi# proper X) (proper# s X -> proper# X, proper# pi X -> proper# X) (proper# s X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# square X -> square# proper X) (proper# s X -> proper# X, proper# square X -> proper# X) (square# ok X -> square# X, square# mark X -> square# X) (square# ok X -> square# X, square# ok X -> square# X) (pi# ok X -> pi# X, pi# mark X -> pi# X) (pi# ok X -> pi# X, pi# ok X -> pi# X) (negrecip# ok X -> negrecip# X, negrecip# mark X -> negrecip# X) (negrecip# ok X -> negrecip# X, negrecip# ok X -> negrecip# X) (posrecip# ok X -> posrecip# X, posrecip# mark X -> posrecip# X) (posrecip# ok X -> posrecip# X, posrecip# ok X -> posrecip# X) (active# square X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# square X -> active# X, active# cons(X1, X2) -> active# X1) (active# square X -> active# X, active# from X -> cons#(X, from s X)) (active# square X -> active# X, active# from X -> from# s X) (active# square X -> active# X, active# from X -> from# active X) (active# square X -> active# X, active# from X -> s# X) (active# square X -> active# X, active# from X -> active# X) (active# square X -> active# X, active# s X -> s# active X) (active# square X -> active# X, active# s X -> active# X) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# square X -> active# X, active# rcons(X1, X2) -> active# X1) (active# square X -> active# X, active# rcons(X1, X2) -> active# X2) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# square X -> active# X, active# posrecip X -> active# X) (active# square X -> active# X, active# posrecip X -> posrecip# active X) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# square X -> active# X, active# negrecip X -> active# X) (active# square X -> active# X, active# negrecip X -> negrecip# active X) (active# square X -> active# X, active# pi X -> from# 0()) (active# square X -> active# X, active# pi X -> active# X) (active# square X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# square X -> active# X, active# pi X -> pi# active X) (active# square X -> active# X, active# plus(X1, X2) -> active# X1) (active# square X -> active# X, active# plus(X1, X2) -> active# X2) (active# square X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# square X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# square X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# square X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# square X -> active# X, active# times(X1, X2) -> active# X1) (active# square X -> active# X, active# times(X1, X2) -> active# X2) (active# square X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# square X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# square X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# square X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# square X -> active# X, active# square X -> active# X) (active# square X -> active# X, active# square X -> times#(X, X)) (active# square X -> active# X, active# square X -> square# active X) (active# negrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# negrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# negrecip X -> active# X, active# from X -> from# s X) (active# negrecip X -> active# X, active# from X -> from# active X) (active# negrecip X -> active# X, active# from X -> s# X) (active# negrecip X -> active# X, active# from X -> active# X) (active# negrecip X -> active# X, active# s X -> s# active X) (active# negrecip X -> active# X, active# s X -> active# X) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# negrecip X -> active# X, active# posrecip X -> active# X) (active# negrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# negrecip X -> active# X, active# negrecip X -> active# X) (active# negrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# negrecip X -> active# X, active# pi X -> from# 0()) (active# negrecip X -> active# X, active# pi X -> active# X) (active# negrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# negrecip X -> active# X, active# pi X -> pi# active X) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# negrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# negrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# negrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# negrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# negrecip X -> active# X, active# square X -> active# X) (active# negrecip X -> active# X, active# square X -> times#(X, X)) (active# negrecip X -> active# X, active# square X -> square# active X) (active# s X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# s X -> active# X, active# cons(X1, X2) -> active# X1) (active# s X -> active# X, active# from X -> cons#(X, from s X)) (active# s X -> active# X, active# from X -> from# s X) (active# s X -> active# X, active# from X -> from# active X) (active# s X -> active# X, active# from X -> s# X) (active# s X -> active# X, active# from X -> active# X) (active# s X -> active# X, active# s X -> s# active X) (active# s X -> active# X, active# s X -> active# X) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# s X -> active# X, active# rcons(X1, X2) -> active# X1) (active# s X -> active# X, active# rcons(X1, X2) -> active# X2) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# s X -> active# X, active# posrecip X -> active# X) (active# s X -> active# X, active# posrecip X -> posrecip# active X) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# s X -> active# X, active# negrecip X -> active# X) (active# s X -> active# X, active# negrecip X -> negrecip# active X) (active# s X -> active# X, active# pi X -> from# 0()) (active# s X -> active# X, active# pi X -> active# X) (active# s X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# s X -> active# X, active# pi X -> pi# active X) (active# s X -> active# X, active# plus(X1, X2) -> active# X1) (active# s X -> active# X, active# plus(X1, X2) -> active# X2) (active# s X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# s X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# s X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# s X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# s X -> active# X, active# times(X1, X2) -> active# X1) (active# s X -> active# X, active# times(X1, X2) -> active# X2) (active# s X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# s X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# s X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# s X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# s X -> active# X, active# square X -> active# X) (active# s X -> active# X, active# square X -> times#(X, X)) (active# s X -> active# X, active# square X -> square# active X) (active# from X -> s# X, s# mark X -> s# X) (active# from X -> s# X, s# ok X -> s# X) (s# mark X -> s# X, s# mark X -> s# X) (s# mark X -> s# X, s# ok X -> s# X) (from# mark X -> from# X, from# mark X -> from# X) (from# mark X -> from# X, from# ok X -> from# X) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X2, proper# square X -> proper# X) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X2, active# from X -> from# s X) (active# plus(X1, X2) -> active# X2, active# from X -> from# active X) (active# plus(X1, X2) -> active# X2, active# from X -> s# X) (active# plus(X1, X2) -> active# X2, active# from X -> active# X) (active# plus(X1, X2) -> active# X2, active# s X -> s# active X) (active# plus(X1, X2) -> active# X2, active# s X -> active# X) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X2, active# pi X -> active# X) (active# plus(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X2, active# square X -> active# X) (active# plus(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X2, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X2, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X2, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X2, active# from X -> s# X) (active# rcons(X1, X2) -> active# X2, active# from X -> active# X) (active# rcons(X1, X2) -> active# X2, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X2, active# s X -> active# X) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X2, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# square X -> active# X) (active# rcons(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# pi X -> 2ndspos#(X, from 0()), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(X1, mark X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(mark X1, X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(X1, mark X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(mark X1, X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(mark X1, X2) -> cons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# plus(s X, Y) -> s# plus(X, Y), s# mark X -> s# X) (active# plus(s X, Y) -> s# plus(X, Y), s# ok X -> s# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# mark X -> posrecip# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# ok X -> posrecip# X) (top# mark X -> top# proper X, top# mark X -> proper# X) (top# mark X -> top# proper X, top# mark X -> top# proper X) (top# mark X -> top# proper X, top# ok X -> active# X) (top# mark X -> top# proper X, top# ok X -> top# active X) (proper# pi X -> pi# proper X, pi# mark X -> pi# X) (proper# pi X -> pi# proper X, pi# ok X -> pi# X) (proper# posrecip X -> posrecip# proper X, posrecip# mark X -> posrecip# X) (proper# posrecip X -> posrecip# proper X, posrecip# ok X -> posrecip# X) (proper# from X -> from# proper X, from# mark X -> from# X) (proper# from X -> from# proper X, from# ok X -> from# X) (active# pi X -> pi# active X, pi# mark X -> pi# X) (active# pi X -> pi# active X, pi# ok X -> pi# X) (active# posrecip X -> posrecip# active X, posrecip# mark X -> posrecip# X) (active# posrecip X -> posrecip# active X, posrecip# ok X -> posrecip# X) (active# from X -> from# active X, from# mark X -> from# X) (active# from X -> from# active X, from# ok X -> from# X) (times#(ok X1, ok X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(X1, mark X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(mark X1, X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(ok X1, ok X2) -> times#(X1, X2)) } EDG: { (active# plus(s X, Y) -> plus#(X, Y), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(X1, mark X2) -> plus#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# square X -> times#(X, X), times#(ok X1, ok X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(mark X1, X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(X1, mark X2) -> times#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# from X -> from# s X, from# ok X -> from# X) (active# from X -> from# s X, from# mark X -> from# X) (active# s X -> s# active X, s# ok X -> s# X) (active# s X -> s# active X, s# mark X -> s# X) (active# negrecip X -> negrecip# active X, negrecip# ok X -> negrecip# X) (active# negrecip X -> negrecip# active X, negrecip# mark X -> negrecip# X) (active# square X -> square# active X, square# ok X -> square# X) (active# square X -> square# active X, square# mark X -> square# X) (proper# s X -> s# proper X, s# ok X -> s# X) (proper# s X -> s# proper X, s# mark X -> s# X) (proper# negrecip X -> negrecip# proper X, negrecip# ok X -> negrecip# X) (proper# negrecip X -> negrecip# proper X, negrecip# mark X -> negrecip# X) (proper# square X -> square# proper X, square# ok X -> square# X) (proper# square X -> square# proper X, square# mark X -> square# X) (top# ok X -> top# active X, top# ok X -> top# active X) (top# ok X -> top# active X, top# ok X -> active# X) (top# ok X -> top# active X, top# mark X -> top# proper X) (top# ok X -> top# active X, top# mark X -> proper# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# ok X -> negrecip# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# mark X -> negrecip# X) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(X1, mark X2) -> times#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(ok X1, ok X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(mark X1, X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(X1, mark X2) -> times#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(mark X1, X2) -> cons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# square X -> square# active X) (active# times(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X2, active# square X -> active# X) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X2, active# pi X -> active# X) (active# times(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# s X -> active# X) (active# times(X1, X2) -> active# X2, active# s X -> s# active X) (active# times(X1, X2) -> active# X2, active# from X -> active# X) (active# times(X1, X2) -> active# X2, active# from X -> s# X) (active# times(X1, X2) -> active# X2, active# from X -> from# active X) (active# times(X1, X2) -> active# X2, active# from X -> from# s X) (active# times(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (from# ok X -> from# X, from# ok X -> from# X) (from# ok X -> from# X, from# mark X -> from# X) (s# ok X -> s# X, s# ok X -> s# X) (s# ok X -> s# X, s# mark X -> s# X) (active# from X -> active# X, active# square X -> square# active X) (active# from X -> active# X, active# square X -> times#(X, X)) (active# from X -> active# X, active# square X -> active# X) (active# from X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# from X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# from X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# from X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# from X -> active# X, active# times(X1, X2) -> active# X2) (active# from X -> active# X, active# times(X1, X2) -> active# X1) (active# from X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# from X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# from X -> active# X, active# plus(X1, X2) -> active# X2) (active# from X -> active# X, active# plus(X1, X2) -> active# X1) (active# from X -> active# X, active# pi X -> pi# active X) (active# from X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# from X -> active# X, active# pi X -> active# X) (active# from X -> active# X, active# pi X -> from# 0()) (active# from X -> active# X, active# negrecip X -> negrecip# active X) (active# from X -> active# X, active# negrecip X -> active# X) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# from X -> active# X, active# posrecip X -> posrecip# active X) (active# from X -> active# X, active# posrecip X -> active# X) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# from X -> active# X, active# rcons(X1, X2) -> active# X2) (active# from X -> active# X, active# rcons(X1, X2) -> active# X1) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# from X -> active# X, active# s X -> active# X) (active# from X -> active# X, active# s X -> s# active X) (active# from X -> active# X, active# from X -> active# X) (active# from X -> active# X, active# from X -> s# X) (active# from X -> active# X, active# from X -> from# active X) (active# from X -> active# X, active# from X -> from# s X) (active# from X -> active# X, active# from X -> cons#(X, from s X)) (active# from X -> active# X, active# cons(X1, X2) -> active# X1) (active# from X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# posrecip X -> active# X, active# square X -> square# active X) (active# posrecip X -> active# X, active# square X -> times#(X, X)) (active# posrecip X -> active# X, active# square X -> active# X) (active# posrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# posrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# posrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# pi X -> pi# active X) (active# posrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# posrecip X -> active# X, active# pi X -> active# X) (active# posrecip X -> active# X, active# pi X -> from# 0()) (active# posrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# posrecip X -> active# X, active# negrecip X -> active# X) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# posrecip X -> active# X, active# posrecip X -> active# X) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# s X -> active# X) (active# posrecip X -> active# X, active# s X -> s# active X) (active# posrecip X -> active# X, active# from X -> active# X) (active# posrecip X -> active# X, active# from X -> s# X) (active# posrecip X -> active# X, active# from X -> from# active X) (active# posrecip X -> active# X, active# from X -> from# s X) (active# posrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# posrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# pi X -> active# X, active# square X -> square# active X) (active# pi X -> active# X, active# square X -> times#(X, X)) (active# pi X -> active# X, active# square X -> active# X) (active# pi X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# pi X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# pi X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# pi X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# pi X -> active# X, active# times(X1, X2) -> active# X2) (active# pi X -> active# X, active# times(X1, X2) -> active# X1) (active# pi X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# pi X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# pi X -> active# X, active# plus(X1, X2) -> active# X2) (active# pi X -> active# X, active# plus(X1, X2) -> active# X1) (active# pi X -> active# X, active# pi X -> pi# active X) (active# pi X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# pi X -> active# X, active# pi X -> active# X) (active# pi X -> active# X, active# pi X -> from# 0()) (active# pi X -> active# X, active# negrecip X -> negrecip# active X) (active# pi X -> active# X, active# negrecip X -> active# X) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# pi X -> active# X, active# posrecip X -> posrecip# active X) (active# pi X -> active# X, active# posrecip X -> active# X) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X2) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X1) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# pi X -> active# X, active# s X -> active# X) (active# pi X -> active# X, active# s X -> s# active X) (active# pi X -> active# X, active# from X -> active# X) (active# pi X -> active# X, active# from X -> s# X) (active# pi X -> active# X, active# from X -> from# active X) (active# pi X -> active# X, active# from X -> from# s X) (active# pi X -> active# X, active# from X -> cons#(X, from s X)) (active# pi X -> active# X, active# cons(X1, X2) -> active# X1) (active# pi X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X) (posrecip# mark X -> posrecip# X, posrecip# mark X -> posrecip# X) (negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X) (negrecip# mark X -> negrecip# X, negrecip# mark X -> negrecip# X) (pi# mark X -> pi# X, pi# ok X -> pi# X) (pi# mark X -> pi# X, pi# mark X -> pi# X) (square# mark X -> square# X, square# ok X -> square# X) (square# mark X -> square# X, square# mark X -> square# X) (proper# from X -> proper# X, proper# square X -> proper# X) (proper# from X -> proper# X, proper# square X -> square# proper X) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# from X -> proper# X, proper# pi X -> proper# X) (proper# from X -> proper# X, proper# pi X -> pi# proper X) (proper# from X -> proper# X, proper# negrecip X -> proper# X) (proper# from X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# from X -> proper# X, proper# posrecip X -> proper# X) (proper# from X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# from X -> proper# X, proper# s X -> proper# X) (proper# from X -> proper# X, proper# s X -> s# proper X) (proper# from X -> proper# X, proper# from X -> proper# X) (proper# from X -> proper# X, proper# from X -> from# proper X) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# square X -> proper# X) (proper# posrecip X -> proper# X, proper# square X -> square# proper X) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# pi X -> proper# X) (proper# posrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# posrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# s X -> proper# X) (proper# posrecip X -> proper# X, proper# s X -> s# proper X) (proper# posrecip X -> proper# X, proper# from X -> proper# X) (proper# posrecip X -> proper# X, proper# from X -> from# proper X) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# square X -> proper# X) (proper# pi X -> proper# X, proper# square X -> square# proper X) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# pi X -> proper# X) (proper# pi X -> proper# X, proper# pi X -> pi# proper X) (proper# pi X -> proper# X, proper# negrecip X -> proper# X) (proper# pi X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# posrecip X -> proper# X) (proper# pi X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# s X -> proper# X) (proper# pi X -> proper# X, proper# s X -> s# proper X) (proper# pi X -> proper# X, proper# from X -> proper# X) (proper# pi X -> proper# X, proper# from X -> from# proper X) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# square X -> proper# X) (top# mark X -> proper# X, proper# square X -> square# proper X) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (top# mark X -> proper# X, proper# pi X -> proper# X) (top# mark X -> proper# X, proper# pi X -> pi# proper X) (top# mark X -> proper# X, proper# negrecip X -> proper# X) (top# mark X -> proper# X, proper# negrecip X -> negrecip# proper X) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (top# mark X -> proper# X, proper# posrecip X -> proper# X) (top# mark X -> proper# X, proper# posrecip X -> posrecip# proper X) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (top# mark X -> proper# X, proper# s X -> proper# X) (top# mark X -> proper# X, proper# s X -> s# proper X) (top# mark X -> proper# X, proper# from X -> proper# X) (top# mark X -> proper# X, proper# from X -> from# proper X) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (active# cons(X1, X2) -> active# X1, active# square X -> square# active X) (active# cons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# cons(X1, X2) -> active# X1, active# square X -> active# X) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# cons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# cons(X1, X2) -> active# X1, active# pi X -> active# X) (active# cons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# cons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# cons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# cons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# s X -> active# X) (active# cons(X1, X2) -> active# X1, active# s X -> s# active X) (active# cons(X1, X2) -> active# X1, active# from X -> active# X) (active# cons(X1, X2) -> active# X1, active# from X -> s# X) (active# cons(X1, X2) -> active# X1, active# from X -> from# active X) (active# cons(X1, X2) -> active# X1, active# from X -> from# s X) (active# cons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X1, active# square X -> active# X) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X1, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# s X -> active# X) (active# rcons(X1, X2) -> active# X1, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> active# X) (active# rcons(X1, X2) -> active# X1, active# from X -> s# X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# square X -> square# active X) (active# plus(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X1, active# square X -> active# X) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X1, active# pi X -> active# X) (active# plus(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# s X -> active# X) (active# plus(X1, X2) -> active# X1, active# s X -> s# active X) (active# plus(X1, X2) -> active# X1, active# from X -> active# X) (active# plus(X1, X2) -> active# X1, active# from X -> s# X) (active# plus(X1, X2) -> active# X1, active# from X -> from# active X) (active# plus(X1, X2) -> active# X1, active# from X -> from# s X) (active# plus(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# cons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> proper# X) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X1, active# from X -> from# s X) (active# times(X1, X2) -> active# X1, active# from X -> from# active X) (active# times(X1, X2) -> active# X1, active# from X -> s# X) (active# times(X1, X2) -> active# X1, active# from X -> active# X) (active# times(X1, X2) -> active# X1, active# s X -> s# active X) (active# times(X1, X2) -> active# X1, active# s X -> active# X) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X1, active# pi X -> active# X) (active# times(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X1, active# square X -> active# X) (active# times(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> square# active X) (top# ok X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (top# ok X -> active# X, active# cons(X1, X2) -> active# X1) (top# ok X -> active# X, active# from X -> cons#(X, from s X)) (top# ok X -> active# X, active# from X -> from# s X) (top# ok X -> active# X, active# from X -> from# active X) (top# ok X -> active# X, active# from X -> s# X) (top# ok X -> active# X, active# from X -> active# X) (top# ok X -> active# X, active# s X -> s# active X) (top# ok X -> active# X, active# s X -> active# X) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X1) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X2) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (top# ok X -> active# X, active# posrecip X -> active# X) (top# ok X -> active# X, active# posrecip X -> posrecip# active X) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (top# ok X -> active# X, active# negrecip X -> active# X) (top# ok X -> active# X, active# negrecip X -> negrecip# active X) (top# ok X -> active# X, active# pi X -> from# 0()) (top# ok X -> active# X, active# pi X -> active# X) (top# ok X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (top# ok X -> active# X, active# pi X -> pi# active X) (top# ok X -> active# X, active# plus(X1, X2) -> active# X1) (top# ok X -> active# X, active# plus(X1, X2) -> active# X2) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (top# ok X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (top# ok X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (top# ok X -> active# X, active# times(X1, X2) -> active# X1) (top# ok X -> active# X, active# times(X1, X2) -> active# X2) (top# ok X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (top# ok X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (top# ok X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (top# ok X -> active# X, active# times(s X, Y) -> times#(X, Y)) (top# ok X -> active# X, active# square X -> active# X) (top# ok X -> active# X, active# square X -> times#(X, X)) (top# ok X -> active# X, active# square X -> square# active X) (proper# square X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# from X -> from# proper X) (proper# square X -> proper# X, proper# from X -> proper# X) (proper# square X -> proper# X, proper# s X -> s# proper X) (proper# square X -> proper# X, proper# s X -> proper# X) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# square X -> proper# X, proper# posrecip X -> proper# X) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# square X -> proper# X, proper# negrecip X -> proper# X) (proper# square X -> proper# X, proper# pi X -> pi# proper X) (proper# square X -> proper# X, proper# pi X -> proper# X) (proper# square X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# square X -> square# proper X) (proper# square X -> proper# X, proper# square X -> proper# X) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# from X -> from# proper X) (proper# negrecip X -> proper# X, proper# from X -> proper# X) (proper# negrecip X -> proper# X, proper# s X -> s# proper X) (proper# negrecip X -> proper# X, proper# s X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# negrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# negrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# negrecip X -> proper# X, proper# pi X -> proper# X) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# square X -> square# proper X) (proper# negrecip X -> proper# X, proper# square X -> proper# X) (proper# s X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# from X -> from# proper X) (proper# s X -> proper# X, proper# from X -> proper# X) (proper# s X -> proper# X, proper# s X -> s# proper X) (proper# s X -> proper# X, proper# s X -> proper# X) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# s X -> proper# X, proper# posrecip X -> proper# X) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# s X -> proper# X, proper# negrecip X -> proper# X) (proper# s X -> proper# X, proper# pi X -> pi# proper X) (proper# s X -> proper# X, proper# pi X -> proper# X) (proper# s X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# square X -> square# proper X) (proper# s X -> proper# X, proper# square X -> proper# X) (square# ok X -> square# X, square# mark X -> square# X) (square# ok X -> square# X, square# ok X -> square# X) (pi# ok X -> pi# X, pi# mark X -> pi# X) (pi# ok X -> pi# X, pi# ok X -> pi# X) (negrecip# ok X -> negrecip# X, negrecip# mark X -> negrecip# X) (negrecip# ok X -> negrecip# X, negrecip# ok X -> negrecip# X) (posrecip# ok X -> posrecip# X, posrecip# mark X -> posrecip# X) (posrecip# ok X -> posrecip# X, posrecip# ok X -> posrecip# X) (active# square X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# square X -> active# X, active# cons(X1, X2) -> active# X1) (active# square X -> active# X, active# from X -> cons#(X, from s X)) (active# square X -> active# X, active# from X -> from# s X) (active# square X -> active# X, active# from X -> from# active X) (active# square X -> active# X, active# from X -> s# X) (active# square X -> active# X, active# from X -> active# X) (active# square X -> active# X, active# s X -> s# active X) (active# square X -> active# X, active# s X -> active# X) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# square X -> active# X, active# rcons(X1, X2) -> active# X1) (active# square X -> active# X, active# rcons(X1, X2) -> active# X2) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# square X -> active# X, active# posrecip X -> active# X) (active# square X -> active# X, active# posrecip X -> posrecip# active X) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# square X -> active# X, active# negrecip X -> active# X) (active# square X -> active# X, active# negrecip X -> negrecip# active X) (active# square X -> active# X, active# pi X -> from# 0()) (active# square X -> active# X, active# pi X -> active# X) (active# square X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# square X -> active# X, active# pi X -> pi# active X) (active# square X -> active# X, active# plus(X1, X2) -> active# X1) (active# square X -> active# X, active# plus(X1, X2) -> active# X2) (active# square X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# square X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# square X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# square X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# square X -> active# X, active# times(X1, X2) -> active# X1) (active# square X -> active# X, active# times(X1, X2) -> active# X2) (active# square X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# square X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# square X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# square X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# square X -> active# X, active# square X -> active# X) (active# square X -> active# X, active# square X -> times#(X, X)) (active# square X -> active# X, active# square X -> square# active X) (active# negrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# negrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# negrecip X -> active# X, active# from X -> from# s X) (active# negrecip X -> active# X, active# from X -> from# active X) (active# negrecip X -> active# X, active# from X -> s# X) (active# negrecip X -> active# X, active# from X -> active# X) (active# negrecip X -> active# X, active# s X -> s# active X) (active# negrecip X -> active# X, active# s X -> active# X) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# negrecip X -> active# X, active# posrecip X -> active# X) (active# negrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# negrecip X -> active# X, active# negrecip X -> active# X) (active# negrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# negrecip X -> active# X, active# pi X -> from# 0()) (active# negrecip X -> active# X, active# pi X -> active# X) (active# negrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# negrecip X -> active# X, active# pi X -> pi# active X) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# negrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# negrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# negrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# negrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# negrecip X -> active# X, active# square X -> active# X) (active# negrecip X -> active# X, active# square X -> times#(X, X)) (active# negrecip X -> active# X, active# square X -> square# active X) (active# s X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# s X -> active# X, active# cons(X1, X2) -> active# X1) (active# s X -> active# X, active# from X -> cons#(X, from s X)) (active# s X -> active# X, active# from X -> from# s X) (active# s X -> active# X, active# from X -> from# active X) (active# s X -> active# X, active# from X -> s# X) (active# s X -> active# X, active# from X -> active# X) (active# s X -> active# X, active# s X -> s# active X) (active# s X -> active# X, active# s X -> active# X) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# s X -> active# X, active# rcons(X1, X2) -> active# X1) (active# s X -> active# X, active# rcons(X1, X2) -> active# X2) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# s X -> active# X, active# posrecip X -> active# X) (active# s X -> active# X, active# posrecip X -> posrecip# active X) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# s X -> active# X, active# negrecip X -> active# X) (active# s X -> active# X, active# negrecip X -> negrecip# active X) (active# s X -> active# X, active# pi X -> from# 0()) (active# s X -> active# X, active# pi X -> active# X) (active# s X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# s X -> active# X, active# pi X -> pi# active X) (active# s X -> active# X, active# plus(X1, X2) -> active# X1) (active# s X -> active# X, active# plus(X1, X2) -> active# X2) (active# s X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# s X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# s X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# s X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# s X -> active# X, active# times(X1, X2) -> active# X1) (active# s X -> active# X, active# times(X1, X2) -> active# X2) (active# s X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# s X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# s X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# s X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# s X -> active# X, active# square X -> active# X) (active# s X -> active# X, active# square X -> times#(X, X)) (active# s X -> active# X, active# square X -> square# active X) (active# from X -> s# X, s# mark X -> s# X) (active# from X -> s# X, s# ok X -> s# X) (s# mark X -> s# X, s# mark X -> s# X) (s# mark X -> s# X, s# ok X -> s# X) (from# mark X -> from# X, from# mark X -> from# X) (from# mark X -> from# X, from# ok X -> from# X) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X2, proper# square X -> proper# X) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X2, active# from X -> from# s X) (active# plus(X1, X2) -> active# X2, active# from X -> from# active X) (active# plus(X1, X2) -> active# X2, active# from X -> s# X) (active# plus(X1, X2) -> active# X2, active# from X -> active# X) (active# plus(X1, X2) -> active# X2, active# s X -> s# active X) (active# plus(X1, X2) -> active# X2, active# s X -> active# X) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X2, active# pi X -> active# X) (active# plus(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X2, active# square X -> active# X) (active# plus(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X2, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X2, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X2, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X2, active# from X -> s# X) (active# rcons(X1, X2) -> active# X2, active# from X -> active# X) (active# rcons(X1, X2) -> active# X2, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X2, active# s X -> active# X) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X2, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# square X -> active# X) (active# rcons(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# pi X -> 2ndspos#(X, from 0()), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(X1, mark X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(mark X1, X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(X1, mark X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(mark X1, X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(mark X1, X2) -> cons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# plus(s X, Y) -> s# plus(X, Y), s# mark X -> s# X) (active# plus(s X, Y) -> s# plus(X, Y), s# ok X -> s# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# mark X -> posrecip# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# ok X -> posrecip# X) (top# mark X -> top# proper X, top# mark X -> proper# X) (top# mark X -> top# proper X, top# mark X -> top# proper X) (top# mark X -> top# proper X, top# ok X -> active# X) (top# mark X -> top# proper X, top# ok X -> top# active X) (proper# pi X -> pi# proper X, pi# mark X -> pi# X) (proper# pi X -> pi# proper X, pi# ok X -> pi# X) (proper# posrecip X -> posrecip# proper X, posrecip# mark X -> posrecip# X) (proper# posrecip X -> posrecip# proper X, posrecip# ok X -> posrecip# X) (proper# from X -> from# proper X, from# mark X -> from# X) (proper# from X -> from# proper X, from# ok X -> from# X) (active# pi X -> pi# active X, pi# mark X -> pi# X) (active# pi X -> pi# active X, pi# ok X -> pi# X) (active# posrecip X -> posrecip# active X, posrecip# mark X -> posrecip# X) (active# posrecip X -> posrecip# active X, posrecip# ok X -> posrecip# X) (active# from X -> from# active X, from# mark X -> from# X) (active# from X -> from# active X, from# ok X -> from# X) (times#(ok X1, ok X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(X1, mark X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(mark X1, X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(ok X1, ok X2) -> times#(X1, X2)) } EDG: { (active# plus(s X, Y) -> plus#(X, Y), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(s X, Y) -> plus#(X, Y), plus#(X1, mark X2) -> plus#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# cons(X1, X2) -> cons#(active X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(active X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(active X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# square X -> times#(X, X), times#(ok X1, ok X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(mark X1, X2) -> times#(X1, X2)) (active# square X -> times#(X, X), times#(X1, mark X2) -> times#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (cons#(ok X1, ok X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(ok X1, ok X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(X1, mark X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(ok X1, ok X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(mark X1, X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# from X -> from# s X, from# ok X -> from# X) (active# from X -> from# s X, from# mark X -> from# X) (active# s X -> s# active X, s# ok X -> s# X) (active# s X -> s# active X, s# mark X -> s# X) (active# negrecip X -> negrecip# active X, negrecip# ok X -> negrecip# X) (active# negrecip X -> negrecip# active X, negrecip# mark X -> negrecip# X) (active# square X -> square# active X, square# ok X -> square# X) (active# square X -> square# active X, square# mark X -> square# X) (proper# s X -> s# proper X, s# ok X -> s# X) (proper# s X -> s# proper X, s# mark X -> s# X) (proper# negrecip X -> negrecip# proper X, negrecip# ok X -> negrecip# X) (proper# negrecip X -> negrecip# proper X, negrecip# mark X -> negrecip# X) (proper# square X -> square# proper X, square# ok X -> square# X) (proper# square X -> square# proper X, square# mark X -> square# X) (top# ok X -> top# active X, top# ok X -> top# active X) (top# ok X -> top# active X, top# ok X -> active# X) (top# ok X -> top# active X, top# mark X -> top# proper X) (top# ok X -> top# active X, top# mark X -> proper# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# ok X -> negrecip# X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y, negrecip# mark X -> negrecip# X) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(X1, active X2), times#(X1, mark X2) -> times#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(ok X1, ok X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(mark X1, X2) -> times#(X1, X2)) (proper# times(X1, X2) -> times#(proper X1, proper X2), times#(X1, mark X2) -> times#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# from X -> cons#(X, from s X), cons#(mark X1, X2) -> cons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X2, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# square X -> square# active X) (active# times(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X2, active# square X -> active# X) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X2, active# pi X -> active# X) (active# times(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# s X -> active# X) (active# times(X1, X2) -> active# X2, active# s X -> s# active X) (active# times(X1, X2) -> active# X2, active# from X -> active# X) (active# times(X1, X2) -> active# X2, active# from X -> s# X) (active# times(X1, X2) -> active# X2, active# from X -> from# active X) (active# times(X1, X2) -> active# X2, active# from X -> from# s X) (active# times(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (from# ok X -> from# X, from# ok X -> from# X) (from# ok X -> from# X, from# mark X -> from# X) (s# ok X -> s# X, s# ok X -> s# X) (s# ok X -> s# X, s# mark X -> s# X) (active# from X -> active# X, active# square X -> square# active X) (active# from X -> active# X, active# square X -> times#(X, X)) (active# from X -> active# X, active# square X -> active# X) (active# from X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# from X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# from X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# from X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# from X -> active# X, active# times(X1, X2) -> active# X2) (active# from X -> active# X, active# times(X1, X2) -> active# X1) (active# from X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# from X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# from X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# from X -> active# X, active# plus(X1, X2) -> active# X2) (active# from X -> active# X, active# plus(X1, X2) -> active# X1) (active# from X -> active# X, active# pi X -> pi# active X) (active# from X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# from X -> active# X, active# pi X -> active# X) (active# from X -> active# X, active# pi X -> from# 0()) (active# from X -> active# X, active# negrecip X -> negrecip# active X) (active# from X -> active# X, active# negrecip X -> active# X) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# from X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# from X -> active# X, active# posrecip X -> posrecip# active X) (active# from X -> active# X, active# posrecip X -> active# X) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# from X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# from X -> active# X, active# rcons(X1, X2) -> active# X2) (active# from X -> active# X, active# rcons(X1, X2) -> active# X1) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# from X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# from X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# from X -> active# X, active# s X -> active# X) (active# from X -> active# X, active# s X -> s# active X) (active# from X -> active# X, active# from X -> active# X) (active# from X -> active# X, active# from X -> s# X) (active# from X -> active# X, active# from X -> from# active X) (active# from X -> active# X, active# from X -> from# s X) (active# from X -> active# X, active# from X -> cons#(X, from s X)) (active# from X -> active# X, active# cons(X1, X2) -> active# X1) (active# from X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# posrecip X -> active# X, active# square X -> square# active X) (active# posrecip X -> active# X, active# square X -> times#(X, X)) (active# posrecip X -> active# X, active# square X -> active# X) (active# posrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# posrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# posrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# pi X -> pi# active X) (active# posrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# posrecip X -> active# X, active# pi X -> active# X) (active# posrecip X -> active# X, active# pi X -> from# 0()) (active# posrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# posrecip X -> active# X, active# negrecip X -> active# X) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# posrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# posrecip X -> active# X, active# posrecip X -> active# X) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# posrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# posrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# s X -> active# X) (active# posrecip X -> active# X, active# s X -> s# active X) (active# posrecip X -> active# X, active# from X -> active# X) (active# posrecip X -> active# X, active# from X -> s# X) (active# posrecip X -> active# X, active# from X -> from# active X) (active# posrecip X -> active# X, active# from X -> from# s X) (active# posrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# posrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# posrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# pi X -> active# X, active# square X -> square# active X) (active# pi X -> active# X, active# square X -> times#(X, X)) (active# pi X -> active# X, active# square X -> active# X) (active# pi X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# pi X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# pi X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# pi X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# pi X -> active# X, active# times(X1, X2) -> active# X2) (active# pi X -> active# X, active# times(X1, X2) -> active# X1) (active# pi X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# pi X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# pi X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# pi X -> active# X, active# plus(X1, X2) -> active# X2) (active# pi X -> active# X, active# plus(X1, X2) -> active# X1) (active# pi X -> active# X, active# pi X -> pi# active X) (active# pi X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# pi X -> active# X, active# pi X -> active# X) (active# pi X -> active# X, active# pi X -> from# 0()) (active# pi X -> active# X, active# negrecip X -> negrecip# active X) (active# pi X -> active# X, active# negrecip X -> active# X) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# pi X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# pi X -> active# X, active# posrecip X -> posrecip# active X) (active# pi X -> active# X, active# posrecip X -> active# X) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X2) (active# pi X -> active# X, active# rcons(X1, X2) -> active# X1) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# pi X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# pi X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# pi X -> active# X, active# s X -> active# X) (active# pi X -> active# X, active# s X -> s# active X) (active# pi X -> active# X, active# from X -> active# X) (active# pi X -> active# X, active# from X -> s# X) (active# pi X -> active# X, active# from X -> from# active X) (active# pi X -> active# X, active# from X -> from# s X) (active# pi X -> active# X, active# from X -> cons#(X, from s X)) (active# pi X -> active# X, active# cons(X1, X2) -> active# X1) (active# pi X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X) (posrecip# mark X -> posrecip# X, posrecip# mark X -> posrecip# X) (negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X) (negrecip# mark X -> negrecip# X, negrecip# mark X -> negrecip# X) (pi# mark X -> pi# X, pi# ok X -> pi# X) (pi# mark X -> pi# X, pi# mark X -> pi# X) (square# mark X -> square# X, square# ok X -> square# X) (square# mark X -> square# X, square# mark X -> square# X) (proper# from X -> proper# X, proper# square X -> proper# X) (proper# from X -> proper# X, proper# square X -> square# proper X) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# from X -> proper# X, proper# pi X -> proper# X) (proper# from X -> proper# X, proper# pi X -> pi# proper X) (proper# from X -> proper# X, proper# negrecip X -> proper# X) (proper# from X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# from X -> proper# X, proper# posrecip X -> proper# X) (proper# from X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# from X -> proper# X, proper# s X -> proper# X) (proper# from X -> proper# X, proper# s X -> s# proper X) (proper# from X -> proper# X, proper# from X -> proper# X) (proper# from X -> proper# X, proper# from X -> from# proper X) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# from X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# from X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# square X -> proper# X) (proper# posrecip X -> proper# X, proper# square X -> square# proper X) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# pi X -> proper# X) (proper# posrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# posrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# posrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# posrecip X -> proper# X, proper# s X -> proper# X) (proper# posrecip X -> proper# X, proper# s X -> s# proper X) (proper# posrecip X -> proper# X, proper# from X -> proper# X) (proper# posrecip X -> proper# X, proper# from X -> from# proper X) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# posrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# square X -> proper# X) (proper# pi X -> proper# X, proper# square X -> square# proper X) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# pi X -> proper# X) (proper# pi X -> proper# X, proper# pi X -> pi# proper X) (proper# pi X -> proper# X, proper# negrecip X -> proper# X) (proper# pi X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# posrecip X -> proper# X) (proper# pi X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# pi X -> proper# X, proper# s X -> proper# X) (proper# pi X -> proper# X, proper# s X -> s# proper X) (proper# pi X -> proper# X, proper# from X -> proper# X) (proper# pi X -> proper# X, proper# from X -> from# proper X) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# pi X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# pi X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# square X -> proper# X) (top# mark X -> proper# X, proper# square X -> square# proper X) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# times(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# plus(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (top# mark X -> proper# X, proper# pi X -> proper# X) (top# mark X -> proper# X, proper# pi X -> pi# proper X) (top# mark X -> proper# X, proper# negrecip X -> proper# X) (top# mark X -> proper# X, proper# negrecip X -> negrecip# proper X) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (top# mark X -> proper# X, proper# posrecip X -> proper# X) (top# mark X -> proper# X, proper# posrecip X -> posrecip# proper X) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (top# mark X -> proper# X, proper# s X -> proper# X) (top# mark X -> proper# X, proper# s X -> s# proper X) (top# mark X -> proper# X, proper# from X -> proper# X) (top# mark X -> proper# X, proper# from X -> from# proper X) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X2) (top# mark X -> proper# X, proper# cons(X1, X2) -> proper# X1) (top# mark X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (active# cons(X1, X2) -> active# X1, active# square X -> square# active X) (active# cons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# cons(X1, X2) -> active# X1, active# square X -> active# X) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# cons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# cons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# cons(X1, X2) -> active# X1, active# pi X -> active# X) (active# cons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# cons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# cons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# cons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# cons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# cons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# s X -> active# X) (active# cons(X1, X2) -> active# X1, active# s X -> s# active X) (active# cons(X1, X2) -> active# X1, active# from X -> active# X) (active# cons(X1, X2) -> active# X1, active# from X -> s# X) (active# cons(X1, X2) -> active# X1, active# from X -> from# active X) (active# cons(X1, X2) -> active# X1, active# from X -> from# s X) (active# cons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# cons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X1, active# square X -> active# X) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X1, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# s X -> active# X) (active# rcons(X1, X2) -> active# X1, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> active# X) (active# rcons(X1, X2) -> active# X1, active# from X -> s# X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X1, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# square X -> square# active X) (active# plus(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X1, active# square X -> active# X) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X1, active# pi X -> active# X) (active# plus(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# s X -> active# X) (active# plus(X1, X2) -> active# X1, active# s X -> s# active X) (active# plus(X1, X2) -> active# X1, active# from X -> active# X) (active# plus(X1, X2) -> active# X1, active# from X -> s# X) (active# plus(X1, X2) -> active# X1, active# from X -> from# active X) (active# plus(X1, X2) -> active# X1, active# from X -> from# s X) (active# plus(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (proper# cons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# times(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# times(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# times(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# times(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# times(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# times(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndsneg(X1, X2) -> proper# X1, proper# square X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> from# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# from X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> s# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# s X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> posrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# posrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> negrecip# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# negrecip X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> pi# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# pi X -> proper# X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X1) (proper# 2ndspos(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> square# proper X) (proper# 2ndspos(X1, X2) -> proper# X1, proper# square X -> proper# X) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# times(X1, X2) -> active# X1, active# from X -> from# s X) (active# times(X1, X2) -> active# X1, active# from X -> from# active X) (active# times(X1, X2) -> active# X1, active# from X -> s# X) (active# times(X1, X2) -> active# X1, active# from X -> active# X) (active# times(X1, X2) -> active# X1, active# s X -> s# active X) (active# times(X1, X2) -> active# X1, active# s X -> active# X) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# times(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# times(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# times(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# times(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# times(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# times(X1, X2) -> active# X1, active# pi X -> active# X) (active# times(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# times(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# times(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# times(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# times(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# times(X1, X2) -> active# X1, active# square X -> active# X) (active# times(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# times(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndsneg(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndsneg(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndsneg(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndsneg(X1, X2) -> active# X1, active# square X -> square# active X) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> cons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# cons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> cons#(X, from s X)) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# s X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> from# active X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> s# X) (active# 2ndspos(X1, X2) -> active# X1, active# from X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> s# active X) (active# 2ndspos(X1, X2) -> active# X1, active# s X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# posrecip X -> posrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# 2ndspos(X1, X2) -> active# X1, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# negrecip X -> negrecip# active X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> from# 0()) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> 2ndspos#(X, from 0())) (active# 2ndspos(X1, X2) -> active# X1, active# pi X -> pi# active X) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(X1, X2) -> plus#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> s# plus(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# plus(s X, Y) -> plus#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X1) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(X1, active X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(X1, X2) -> times#(active X1, X2)) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# 2ndspos(X1, X2) -> active# X1, active# times(s X, Y) -> times#(X, Y)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> active# X) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> times#(X, X)) (active# 2ndspos(X1, X2) -> active# X1, active# square X -> square# active X) (top# ok X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (top# ok X -> active# X, active# cons(X1, X2) -> active# X1) (top# ok X -> active# X, active# from X -> cons#(X, from s X)) (top# ok X -> active# X, active# from X -> from# s X) (top# ok X -> active# X, active# from X -> from# active X) (top# ok X -> active# X, active# from X -> s# X) (top# ok X -> active# X, active# from X -> active# X) (top# ok X -> active# X, active# s X -> s# active X) (top# ok X -> active# X, active# s X -> active# X) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (top# ok X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (top# ok X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X1) (top# ok X -> active# X, active# rcons(X1, X2) -> active# X2) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (top# ok X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (top# ok X -> active# X, active# posrecip X -> active# X) (top# ok X -> active# X, active# posrecip X -> posrecip# active X) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (top# ok X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (top# ok X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (top# ok X -> active# X, active# negrecip X -> active# X) (top# ok X -> active# X, active# negrecip X -> negrecip# active X) (top# ok X -> active# X, active# pi X -> from# 0()) (top# ok X -> active# X, active# pi X -> active# X) (top# ok X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (top# ok X -> active# X, active# pi X -> pi# active X) (top# ok X -> active# X, active# plus(X1, X2) -> active# X1) (top# ok X -> active# X, active# plus(X1, X2) -> active# X2) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (top# ok X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (top# ok X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (top# ok X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (top# ok X -> active# X, active# times(X1, X2) -> active# X1) (top# ok X -> active# X, active# times(X1, X2) -> active# X2) (top# ok X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (top# ok X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (top# ok X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (top# ok X -> active# X, active# times(s X, Y) -> times#(X, Y)) (top# ok X -> active# X, active# square X -> active# X) (top# ok X -> active# X, active# square X -> times#(X, X)) (top# ok X -> active# X, active# square X -> square# active X) (proper# square X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# from X -> from# proper X) (proper# square X -> proper# X, proper# from X -> proper# X) (proper# square X -> proper# X, proper# s X -> s# proper X) (proper# square X -> proper# X, proper# s X -> proper# X) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# square X -> proper# X, proper# posrecip X -> proper# X) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# square X -> proper# X, proper# negrecip X -> proper# X) (proper# square X -> proper# X, proper# pi X -> pi# proper X) (proper# square X -> proper# X, proper# pi X -> proper# X) (proper# square X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# square X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# square X -> proper# X, proper# square X -> square# proper X) (proper# square X -> proper# X, proper# square X -> proper# X) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# from X -> from# proper X) (proper# negrecip X -> proper# X, proper# from X -> proper# X) (proper# negrecip X -> proper# X, proper# s X -> s# proper X) (proper# negrecip X -> proper# X, proper# s X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# negrecip X -> proper# X, proper# posrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# negrecip X -> proper# X, proper# negrecip X -> proper# X) (proper# negrecip X -> proper# X, proper# pi X -> pi# proper X) (proper# negrecip X -> proper# X, proper# pi X -> proper# X) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# negrecip X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# negrecip X -> proper# X, proper# square X -> square# proper X) (proper# negrecip X -> proper# X, proper# square X -> proper# X) (proper# s X -> proper# X, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# cons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# from X -> from# proper X) (proper# s X -> proper# X, proper# from X -> proper# X) (proper# s X -> proper# X, proper# s X -> s# proper X) (proper# s X -> proper# X, proper# s X -> proper# X) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# rcons(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# posrecip X -> posrecip# proper X) (proper# s X -> proper# X, proper# posrecip X -> proper# X) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# negrecip X -> negrecip# proper X) (proper# s X -> proper# X, proper# negrecip X -> proper# X) (proper# s X -> proper# X, proper# pi X -> pi# proper X) (proper# s X -> proper# X, proper# pi X -> proper# X) (proper# s X -> proper# X, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# plus(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X1) (proper# s X -> proper# X, proper# times(X1, X2) -> proper# X2) (proper# s X -> proper# X, proper# square X -> square# proper X) (proper# s X -> proper# X, proper# square X -> proper# X) (square# ok X -> square# X, square# mark X -> square# X) (square# ok X -> square# X, square# ok X -> square# X) (pi# ok X -> pi# X, pi# mark X -> pi# X) (pi# ok X -> pi# X, pi# ok X -> pi# X) (negrecip# ok X -> negrecip# X, negrecip# mark X -> negrecip# X) (negrecip# ok X -> negrecip# X, negrecip# ok X -> negrecip# X) (posrecip# ok X -> posrecip# X, posrecip# mark X -> posrecip# X) (posrecip# ok X -> posrecip# X, posrecip# ok X -> posrecip# X) (active# square X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# square X -> active# X, active# cons(X1, X2) -> active# X1) (active# square X -> active# X, active# from X -> cons#(X, from s X)) (active# square X -> active# X, active# from X -> from# s X) (active# square X -> active# X, active# from X -> from# active X) (active# square X -> active# X, active# from X -> s# X) (active# square X -> active# X, active# from X -> active# X) (active# square X -> active# X, active# s X -> s# active X) (active# square X -> active# X, active# s X -> active# X) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# square X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# square X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# square X -> active# X, active# rcons(X1, X2) -> active# X1) (active# square X -> active# X, active# rcons(X1, X2) -> active# X2) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# square X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# square X -> active# X, active# posrecip X -> active# X) (active# square X -> active# X, active# posrecip X -> posrecip# active X) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# square X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# square X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# square X -> active# X, active# negrecip X -> active# X) (active# square X -> active# X, active# negrecip X -> negrecip# active X) (active# square X -> active# X, active# pi X -> from# 0()) (active# square X -> active# X, active# pi X -> active# X) (active# square X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# square X -> active# X, active# pi X -> pi# active X) (active# square X -> active# X, active# plus(X1, X2) -> active# X1) (active# square X -> active# X, active# plus(X1, X2) -> active# X2) (active# square X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# square X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# square X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# square X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# square X -> active# X, active# times(X1, X2) -> active# X1) (active# square X -> active# X, active# times(X1, X2) -> active# X2) (active# square X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# square X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# square X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# square X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# square X -> active# X, active# square X -> active# X) (active# square X -> active# X, active# square X -> times#(X, X)) (active# square X -> active# X, active# square X -> square# active X) (active# negrecip X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# negrecip X -> active# X, active# cons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# from X -> cons#(X, from s X)) (active# negrecip X -> active# X, active# from X -> from# s X) (active# negrecip X -> active# X, active# from X -> from# active X) (active# negrecip X -> active# X, active# from X -> s# X) (active# negrecip X -> active# X, active# from X -> active# X) (active# negrecip X -> active# X, active# s X -> s# active X) (active# negrecip X -> active# X, active# s X -> active# X) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# negrecip X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# rcons(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# negrecip X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# negrecip X -> active# X, active# posrecip X -> active# X) (active# negrecip X -> active# X, active# posrecip X -> posrecip# active X) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# negrecip X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# negrecip X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# negrecip X -> active# X, active# negrecip X -> active# X) (active# negrecip X -> active# X, active# negrecip X -> negrecip# active X) (active# negrecip X -> active# X, active# pi X -> from# 0()) (active# negrecip X -> active# X, active# pi X -> active# X) (active# negrecip X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# negrecip X -> active# X, active# pi X -> pi# active X) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# plus(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# negrecip X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# negrecip X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# negrecip X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X1) (active# negrecip X -> active# X, active# times(X1, X2) -> active# X2) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# negrecip X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# negrecip X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# negrecip X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# negrecip X -> active# X, active# square X -> active# X) (active# negrecip X -> active# X, active# square X -> times#(X, X)) (active# negrecip X -> active# X, active# square X -> square# active X) (active# s X -> active# X, active# cons(X1, X2) -> cons#(active X1, X2)) (active# s X -> active# X, active# cons(X1, X2) -> active# X1) (active# s X -> active# X, active# from X -> cons#(X, from s X)) (active# s X -> active# X, active# from X -> from# s X) (active# s X -> active# X, active# from X -> from# active X) (active# s X -> active# X, active# from X -> s# X) (active# s X -> active# X, active# from X -> active# X) (active# s X -> active# X, active# s X -> s# active X) (active# s X -> active# X, active# s X -> active# X) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# s X -> active# X, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# s X -> active# X, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# s X -> active# X, active# rcons(X1, X2) -> active# X1) (active# s X -> active# X, active# rcons(X1, X2) -> active# X2) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# s X -> active# X, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# s X -> active# X, active# posrecip X -> active# X) (active# s X -> active# X, active# posrecip X -> posrecip# active X) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X1) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> active# X2) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# s X -> active# X, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# s X -> active# X, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# s X -> active# X, active# negrecip X -> active# X) (active# s X -> active# X, active# negrecip X -> negrecip# active X) (active# s X -> active# X, active# pi X -> from# 0()) (active# s X -> active# X, active# pi X -> active# X) (active# s X -> active# X, active# pi X -> 2ndspos#(X, from 0())) (active# s X -> active# X, active# pi X -> pi# active X) (active# s X -> active# X, active# plus(X1, X2) -> active# X1) (active# s X -> active# X, active# plus(X1, X2) -> active# X2) (active# s X -> active# X, active# plus(X1, X2) -> plus#(X1, active X2)) (active# s X -> active# X, active# plus(X1, X2) -> plus#(active X1, X2)) (active# s X -> active# X, active# plus(s X, Y) -> s# plus(X, Y)) (active# s X -> active# X, active# plus(s X, Y) -> plus#(X, Y)) (active# s X -> active# X, active# times(X1, X2) -> active# X1) (active# s X -> active# X, active# times(X1, X2) -> active# X2) (active# s X -> active# X, active# times(X1, X2) -> times#(X1, active X2)) (active# s X -> active# X, active# times(X1, X2) -> times#(active X1, X2)) (active# s X -> active# X, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# s X -> active# X, active# times(s X, Y) -> times#(X, Y)) (active# s X -> active# X, active# square X -> active# X) (active# s X -> active# X, active# square X -> times#(X, X)) (active# s X -> active# X, active# square X -> square# active X) (active# from X -> s# X, s# mark X -> s# X) (active# from X -> s# X, s# ok X -> s# X) (s# mark X -> s# X, s# mark X -> s# X) (s# mark X -> s# X, s# ok X -> s# X) (from# mark X -> from# X, from# mark X -> from# X) (from# mark X -> from# X, from# ok X -> from# X) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# plus(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# plus(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# plus(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# plus(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# plus(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# plus(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# rcons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# rcons(X1, X2) -> proper# X2, proper# square X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> cons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# cons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# from X -> from# proper X) (proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> s# proper X) (proper# cons(X1, X2) -> proper# X2, proper# s X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> 2ndspos#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndspos(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> rcons#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> posrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> 2ndsneg#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# 2ndsneg(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> negrecip# proper X) (proper# cons(X1, X2) -> proper# X2, proper# negrecip X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> pi# proper X) (proper# cons(X1, X2) -> proper# X2, proper# pi X -> proper# X) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> plus#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# plus(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> times#(proper X1, proper X2)) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1) (proper# cons(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X2) (proper# cons(X1, X2) -> proper# X2, proper# square X -> square# proper X) (proper# cons(X1, X2) -> proper# X2, proper# square X -> proper# X) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# plus(X1, X2) -> active# X2, active# from X -> from# s X) (active# plus(X1, X2) -> active# X2, active# from X -> from# active X) (active# plus(X1, X2) -> active# X2, active# from X -> s# X) (active# plus(X1, X2) -> active# X2, active# from X -> active# X) (active# plus(X1, X2) -> active# X2, active# s X -> s# active X) (active# plus(X1, X2) -> active# X2, active# s X -> active# X) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# plus(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# plus(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# plus(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# plus(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# plus(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# plus(X1, X2) -> active# X2, active# pi X -> active# X) (active# plus(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# plus(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# plus(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# plus(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# plus(X1, X2) -> active# X2, active# square X -> active# X) (active# plus(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# plus(X1, X2) -> active# X2, active# square X -> square# active X) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> cons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# cons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# from X -> cons#(X, from s X)) (active# rcons(X1, X2) -> active# X2, active# from X -> from# s X) (active# rcons(X1, X2) -> active# X2, active# from X -> from# active X) (active# rcons(X1, X2) -> active# X2, active# from X -> s# X) (active# rcons(X1, X2) -> active# X2, active# from X -> active# X) (active# rcons(X1, X2) -> active# X2, active# s X -> s# active X) (active# rcons(X1, X2) -> active# X2, active# s X -> active# X) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y) (active# rcons(X1, X2) -> active# X2, active# 2ndspos(s N, cons(X, cons(Y, Z))) -> 2ndsneg#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# rcons(X1, X2) -> rcons#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# posrecip X -> posrecip# active X) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z)) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> rcons#(negrecip Y, 2ndspos(N, Z))) (active# rcons(X1, X2) -> active# X2, active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> negrecip# Y) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> active# X) (active# rcons(X1, X2) -> active# X2, active# negrecip X -> negrecip# active X) (active# rcons(X1, X2) -> active# X2, active# pi X -> from# 0()) (active# rcons(X1, X2) -> active# X2, active# pi X -> active# X) (active# rcons(X1, X2) -> active# X2, active# pi X -> 2ndspos#(X, from 0())) (active# rcons(X1, X2) -> active# X2, active# pi X -> pi# active X) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# plus(X1, X2) -> plus#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> s# plus(X, Y)) (active# rcons(X1, X2) -> active# X2, active# plus(s X, Y) -> plus#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> active# X2) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(X1, active X2)) (active# rcons(X1, X2) -> active# X2, active# times(X1, X2) -> times#(active X1, X2)) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> plus#(Y, times(X, Y))) (active# rcons(X1, X2) -> active# X2, active# times(s X, Y) -> times#(X, Y)) (active# rcons(X1, X2) -> active# X2, active# square X -> active# X) (active# rcons(X1, X2) -> active# X2, active# square X -> times#(X, X)) (active# rcons(X1, X2) -> active# X2, active# square X -> square# active X) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndsneg(s N, cons(X, cons(Y, Z))) -> 2ndspos#(N, Z), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# pi X -> 2ndspos#(X, from 0()), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(X1, mark X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(mark X1, X2) -> plus#(X1, X2)) (active# times(s X, Y) -> plus#(Y, times(X, Y)), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> rcons#(posrecip Y, 2ndsneg(N, Z)), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(X1, mark X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(mark X1, X2) -> plus#(X1, X2)) (proper# plus(X1, X2) -> plus#(proper X1, proper X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (proper# rcons(X1, X2) -> rcons#(proper X1, proper X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(mark X1, X2) -> cons#(X1, X2)) (proper# cons(X1, X2) -> cons#(proper X1, proper X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(X1, mark X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(mark X1, X2) -> plus#(X1, X2)) (active# plus(X1, X2) -> plus#(X1, active X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (active# rcons(X1, X2) -> rcons#(X1, active X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (active# plus(s X, Y) -> s# plus(X, Y), s# mark X -> s# X) (active# plus(s X, Y) -> s# plus(X, Y), s# ok X -> s# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# mark X -> posrecip# X) (active# 2ndspos(s N, cons(X, cons(Y, Z))) -> posrecip# Y, posrecip# ok X -> posrecip# X) (top# mark X -> top# proper X, top# mark X -> proper# X) (top# mark X -> top# proper X, top# mark X -> top# proper X) (top# mark X -> top# proper X, top# ok X -> active# X) (top# mark X -> top# proper X, top# ok X -> top# active X) (proper# pi X -> pi# proper X, pi# mark X -> pi# X) (proper# pi X -> pi# proper X, pi# ok X -> pi# X) (proper# posrecip X -> posrecip# proper X, posrecip# mark X -> posrecip# X) (proper# posrecip X -> posrecip# proper X, posrecip# ok X -> posrecip# X) (proper# from X -> from# proper X, from# mark X -> from# X) (proper# from X -> from# proper X, from# ok X -> from# X) (active# pi X -> pi# active X, pi# mark X -> pi# X) (active# pi X -> pi# active X, pi# ok X -> pi# X) (active# posrecip X -> posrecip# active X, posrecip# mark X -> posrecip# X) (active# posrecip X -> posrecip# active X, posrecip# ok X -> posrecip# X) (active# from X -> from# active X, from# mark X -> from# X) (active# from X -> from# active X, from# ok X -> from# X) (times#(ok X1, ok X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(ok X1, ok X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (times#(X1, mark X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(X1, mark X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2)) (plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(X1, mark X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2)) (rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(mark X1, X2) -> cons#(X1, X2)) (cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(X1, mark X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(mark X1, X2) -> times#(X1, X2)) (active# times(X1, X2) -> times#(active X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2)) (active# 2ndsneg(X1, X2) -> 2ndsneg#(active X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2)) (active# 2ndspos(X1, X2) -> 2ndspos#(active X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(X1, mark X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(mark X1, X2) -> times#(X1, X2)) (active# times(s X, Y) -> times#(X, Y), times#(ok X1, ok X2) -> times#(X1, X2)) } STATUS: arrows: 0.869919 SCCS (15): Scc: {top# mark X -> top# proper X, top# ok X -> top# active X} Scc: { active# cons(X1, X2) -> active# X1, active# from X -> active# X, active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2, active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> active# X, active# pi X -> active# X, active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2, active# square X -> active# X} Scc: { proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X, proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> proper# X, proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2, proper# square X -> proper# X} Scc: {square# mark X -> square# X, square# ok X -> square# X} Scc: {pi# mark X -> pi# X, pi# ok X -> pi# X} Scc: {negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X} Scc: {posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X} Scc: {s# mark X -> s# X, s# ok X -> s# X} Scc: {from# mark X -> from# X, from# ok X -> from# X} Scc: { 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)} Scc: { rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)} Scc: { 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)} Scc: { cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)} Scc: { times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)} Scc: { plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)} SCC (2): Strict: {top# mark X -> top# proper X, top# ok X -> top# active X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (17): Strict: { active# cons(X1, X2) -> active# X1, active# from X -> active# X, active# s X -> active# X, active# 2ndspos(X1, X2) -> active# X1, active# 2ndspos(X1, X2) -> active# X2, active# rcons(X1, X2) -> active# X1, active# rcons(X1, X2) -> active# X2, active# posrecip X -> active# X, active# 2ndsneg(X1, X2) -> active# X1, active# 2ndsneg(X1, X2) -> active# X2, active# negrecip X -> active# X, active# pi X -> active# X, active# plus(X1, X2) -> active# X1, active# plus(X1, X2) -> active# X2, active# times(X1, X2) -> active# X1, active# times(X1, X2) -> active# X2, active# square X -> active# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (18): Strict: { proper# cons(X1, X2) -> proper# X1, proper# cons(X1, X2) -> proper# X2, proper# from X -> proper# X, proper# s X -> proper# X, proper# 2ndspos(X1, X2) -> proper# X1, proper# 2ndspos(X1, X2) -> proper# X2, proper# rcons(X1, X2) -> proper# X1, proper# rcons(X1, X2) -> proper# X2, proper# posrecip X -> proper# X, proper# 2ndsneg(X1, X2) -> proper# X1, proper# 2ndsneg(X1, X2) -> proper# X2, proper# negrecip X -> proper# X, proper# pi X -> proper# X, proper# plus(X1, X2) -> proper# X1, proper# plus(X1, X2) -> proper# X2, proper# times(X1, X2) -> proper# X1, proper# times(X1, X2) -> proper# X2, proper# square X -> proper# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {square# mark X -> square# X, square# ok X -> square# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {pi# mark X -> pi# X, pi# ok X -> pi# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {negrecip# mark X -> negrecip# X, negrecip# ok X -> negrecip# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {posrecip# mark X -> posrecip# X, posrecip# ok X -> posrecip# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {s# mark X -> s# X, s# ok X -> s# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: {from# mark X -> from# X, from# ok X -> from# X} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { 2ndsneg#(X1, mark X2) -> 2ndsneg#(X1, X2), 2ndsneg#(mark X1, X2) -> 2ndsneg#(X1, X2), 2ndsneg#(ok X1, ok X2) -> 2ndsneg#(X1, X2)} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { rcons#(X1, mark X2) -> rcons#(X1, X2), rcons#(mark X1, X2) -> rcons#(X1, X2), rcons#(ok X1, ok X2) -> rcons#(X1, X2)} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { 2ndspos#(X1, mark X2) -> 2ndspos#(X1, X2), 2ndspos#(mark X1, X2) -> 2ndspos#(X1, X2), 2ndspos#(ok X1, ok X2) -> 2ndspos#(X1, X2)} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (2): Strict: { cons#(mark X1, X2) -> cons#(X1, X2), cons#(ok X1, ok X2) -> cons#(X1, X2)} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { times#(X1, mark X2) -> times#(X1, X2), times#(mark X1, X2) -> times#(X1, X2), times#(ok X1, ok X2) -> times#(X1, X2)} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open SCC (3): Strict: { plus#(X1, mark X2) -> plus#(X1, X2), plus#(mark X1, X2) -> plus#(X1, X2), plus#(ok X1, ok X2) -> plus#(X1, X2)} Weak: { cons(mark X1, X2) -> mark cons(X1, X2), cons(ok X1, ok X2) -> ok cons(X1, X2), from mark X -> mark from X, from ok X -> ok from X, s mark X -> mark s X, s ok X -> ok s X, active cons(X1, X2) -> cons(active X1, X2), active from X -> mark cons(X, from s X), active from X -> from active X, active s X -> s active X, active 2ndspos(X1, X2) -> 2ndspos(X1, active X2), active 2ndspos(X1, X2) -> 2ndspos(active X1, X2), active 2ndspos(s N, cons(X, cons(Y, Z))) -> mark rcons(posrecip Y, 2ndsneg(N, Z)), active 2ndspos(0(), Z) -> mark rnil(), active rcons(X1, X2) -> rcons(X1, active X2), active rcons(X1, X2) -> rcons(active X1, X2), active posrecip X -> posrecip active X, active 2ndsneg(X1, X2) -> 2ndsneg(X1, active X2), active 2ndsneg(X1, X2) -> 2ndsneg(active X1, X2), active 2ndsneg(s N, cons(X, cons(Y, Z))) -> mark rcons(negrecip Y, 2ndspos(N, Z)), active 2ndsneg(0(), Z) -> mark rnil(), active negrecip X -> negrecip active X, active pi X -> mark 2ndspos(X, from 0()), active pi X -> pi active X, active plus(X1, X2) -> plus(X1, active X2), active plus(X1, X2) -> plus(active X1, X2), active plus(s X, Y) -> mark s plus(X, Y), active plus(0(), Y) -> mark Y, active times(X1, X2) -> times(X1, active X2), active times(X1, X2) -> times(active X1, X2), active times(s X, Y) -> mark plus(Y, times(X, Y)), active times(0(), Y) -> mark 0(), active square X -> mark times(X, X), active square X -> square active X, 2ndspos(X1, mark X2) -> mark 2ndspos(X1, X2), 2ndspos(mark X1, X2) -> mark 2ndspos(X1, X2), 2ndspos(ok X1, ok X2) -> ok 2ndspos(X1, X2), rcons(X1, mark X2) -> mark rcons(X1, X2), rcons(mark X1, X2) -> mark rcons(X1, X2), rcons(ok X1, ok X2) -> ok rcons(X1, X2), posrecip mark X -> mark posrecip X, posrecip ok X -> ok posrecip X, 2ndsneg(X1, mark X2) -> mark 2ndsneg(X1, X2), 2ndsneg(mark X1, X2) -> mark 2ndsneg(X1, X2), 2ndsneg(ok X1, ok X2) -> ok 2ndsneg(X1, X2), negrecip mark X -> mark negrecip X, negrecip ok X -> ok negrecip X, pi mark X -> mark pi X, pi ok X -> ok pi X, plus(X1, mark X2) -> mark plus(X1, X2), plus(mark X1, X2) -> mark plus(X1, X2), plus(ok X1, ok X2) -> ok plus(X1, X2), times(X1, mark X2) -> mark times(X1, X2), times(mark X1, X2) -> mark times(X1, X2), times(ok X1, ok X2) -> ok times(X1, X2), square mark X -> mark square X, square ok X -> ok square X, proper cons(X1, X2) -> cons(proper X1, proper X2), proper from X -> from proper X, proper s X -> s proper X, proper rnil() -> ok rnil(), proper 2ndspos(X1, X2) -> 2ndspos(proper X1, proper X2), proper 0() -> ok 0(), proper rcons(X1, X2) -> rcons(proper X1, proper X2), proper posrecip X -> posrecip proper X, proper 2ndsneg(X1, X2) -> 2ndsneg(proper X1, proper X2), proper negrecip X -> negrecip proper X, proper pi X -> pi proper X, proper plus(X1, X2) -> plus(proper X1, proper X2), proper times(X1, X2) -> times(proper X1, proper X2), proper square X -> square proper X, proper nil() -> ok nil(), top mark X -> top proper X, top ok X -> top active X} Open