104.21/104.98 YES 104.21/104.98 104.21/104.98 Problem 1: 104.21/104.98 104.21/104.98 (VAR a b f g s t u x y) 104.21/104.98 (THEORY 104.21/104.98 (AC * virg)) 104.21/104.98 (RULES 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 ) 104.21/104.98 104.21/104.98 Problem 1: 104.21/104.98 104.21/104.98 Dependency Pairs Processor: 104.21/104.98 -> FAxioms: 104.21/104.98 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/104.98 *#(x9,x10) = *#(x10,x9) 104.21/104.98 VIRG(virg(x9,x10),x11) = VIRG(x9,virg(x10,x11)) 104.21/104.98 VIRG(x9,x10) = VIRG(x10,x9) 104.21/104.98 -> Pairs: 104.21/104.98 *#(*(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/104.98 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/104.98 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/104.98 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/104.98 *#(*(a,a),x9) -> *#(a,x9) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> *#(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(f),a),b)) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> SEQUENT(virg(convf(g),a),b) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> VIRG(convf(f),a) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> VIRG(convf(g),a) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> *#(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> SEQUENT(convf(f),b) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> SEQUENT(convf(g),b) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> *#(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> SEQUENT(a,virg(convf(g),b)) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> VIRG(convf(f),b) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> VIRG(convf(g),b) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> *#(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> SEQUENT(a,convf(f)) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> SEQUENT(a,convf(g)) 104.21/104.98 EXISTS(f) -> NEG(forall(neg(f))) 104.21/104.98 EXISTS(f) -> NEG(f) 104.21/104.98 IMP(f,g) -> NEG(f) 104.21/104.98 IMP(f,g) -> OR(neg(f),g) 104.21/104.98 RON(.(x,s),t) -> .#(substt(x,t),ron(s,t)) 104.21/104.98 RON(.(x,s),t) -> RON(s,t) 104.21/104.98 RON(.(x,s),t) -> SUBSTT(x,t) 104.21/104.98 RON(ron(s,t),u) -> RON(s,ron(t,u)) 104.21/104.98 RON(ron(s,t),u) -> RON(t,u) 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> SEQUENT(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> VIRG(convf(f),a) 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> VIRG(convf(g),virg(convf(f),a)) 104.21/104.98 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.98 SEQUENT(virg(convf(neg(f)),a),b) -> VIRG(convf(f),b) 104.21/104.98 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.98 SEQUENT(convf(and(f,g)),b) -> VIRG(convf(f),convf(g)) 104.21/104.98 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.98 SEQUENT(convf(neg(f)),b) -> VIRG(convf(f),b) 104.21/104.98 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.98 SEQUENT(a,virg(convf(neg(f)),b)) -> VIRG(convf(f),a) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> VIRG(virg(convf(f),convf(g)),b) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> VIRG(convf(f),convf(g)) 104.21/104.98 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.98 SEQUENT(a,convf(neg(f))) -> VIRG(convf(f),a) 104.21/104.98 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.98 SEQUENT(a,convf(or(f,g))) -> VIRG(convf(f),convf(g)) 104.21/104.98 SUBSTF(and(f,g),s) -> AND(substf(f,s),substf(g,s)) 104.21/104.98 SUBSTF(and(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(and(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(exists(f),s) -> .#(1,ron(s,shift)) 104.21/104.98 SUBSTF(exists(f),s) -> EXISTS(substf(f,.(1,ron(s,shift)))) 104.21/104.98 SUBSTF(exists(f),s) -> RON(s,shift) 104.21/104.98 SUBSTF(exists(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/104.98 SUBSTF(imp(f,g),s) -> IMP(substf(f,s),substf(g,s)) 104.21/104.98 SUBSTF(imp(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(imp(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(neg(f),s) -> NEG(substf(f,s)) 104.21/104.98 SUBSTF(neg(f),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(or(f,g),s) -> OR(substf(f,s),substf(g,s)) 104.21/104.98 SUBSTF(or(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(or(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(substf(f,s),t) -> RON(s,t) 104.21/104.98 SUBSTF(substf(f,s),t) -> SUBSTF(f,ron(s,t)) 104.21/104.98 SUBSTF(Pe(x),y) -> SUBSTT(x,y) 104.21/104.98 SUBSTF(forall(f),s) -> .#(1,ron(s,shift)) 104.21/104.98 SUBSTF(forall(f),s) -> RON(s,shift) 104.21/104.98 SUBSTF(forall(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/104.98 SUBSTT(substt(x,s),t) -> RON(s,t) 104.21/104.98 SUBSTT(substt(x,s),t) -> SUBSTT(x,ron(s,t)) 104.21/104.98 SUBSTT(ef(x),y) -> SUBSTT(x,y) 104.21/104.98 VIRG(virg(emptyfset,a),x9) -> VIRG(a,x9) 104.21/104.98 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 -> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 -> SRules: 104.21/104.98 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/104.98 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/104.98 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.98 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.98 104.21/104.98 Problem 1: 104.21/104.98 104.21/104.98 SCC Processor: 104.21/104.98 -> FAxioms: 104.21/104.98 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/104.98 *#(x9,x10) = *#(x10,x9) 104.21/104.98 VIRG(virg(x9,x10),x11) = VIRG(x9,virg(x10,x11)) 104.21/104.98 VIRG(x9,x10) = VIRG(x10,x9) 104.21/104.98 -> Pairs: 104.21/104.98 *#(*(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/104.98 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/104.98 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/104.98 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/104.98 *#(*(a,a),x9) -> *#(a,x9) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> *#(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(f),a),b)) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> SEQUENT(virg(convf(g),a),b) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> VIRG(convf(f),a) 104.21/104.98 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> VIRG(convf(g),a) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> *#(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> SEQUENT(convf(f),b) 104.21/104.98 CONVS(sequent(convf(or(f,g)),b)) -> SEQUENT(convf(g),b) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> *#(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> SEQUENT(a,virg(convf(g),b)) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> VIRG(convf(f),b) 104.21/104.98 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> VIRG(convf(g),b) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> *#(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> SEQUENT(a,convf(f)) 104.21/104.98 CONVS(sequent(a,convf(and(f,g)))) -> SEQUENT(a,convf(g)) 104.21/104.98 EXISTS(f) -> NEG(forall(neg(f))) 104.21/104.98 EXISTS(f) -> NEG(f) 104.21/104.98 IMP(f,g) -> NEG(f) 104.21/104.98 IMP(f,g) -> OR(neg(f),g) 104.21/104.98 RON(.(x,s),t) -> .#(substt(x,t),ron(s,t)) 104.21/104.98 RON(.(x,s),t) -> RON(s,t) 104.21/104.98 RON(.(x,s),t) -> SUBSTT(x,t) 104.21/104.98 RON(ron(s,t),u) -> RON(s,ron(t,u)) 104.21/104.98 RON(ron(s,t),u) -> RON(t,u) 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> SEQUENT(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> VIRG(convf(f),a) 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> VIRG(convf(g),virg(convf(f),a)) 104.21/104.98 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.98 SEQUENT(virg(convf(neg(f)),a),b) -> VIRG(convf(f),b) 104.21/104.98 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.98 SEQUENT(convf(and(f,g)),b) -> VIRG(convf(f),convf(g)) 104.21/104.98 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.98 SEQUENT(convf(neg(f)),b) -> VIRG(convf(f),b) 104.21/104.98 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.98 SEQUENT(a,virg(convf(neg(f)),b)) -> VIRG(convf(f),a) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> VIRG(virg(convf(f),convf(g)),b) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> VIRG(convf(f),convf(g)) 104.21/104.98 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.98 SEQUENT(a,convf(neg(f))) -> VIRG(convf(f),a) 104.21/104.98 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.98 SEQUENT(a,convf(or(f,g))) -> VIRG(convf(f),convf(g)) 104.21/104.98 SUBSTF(and(f,g),s) -> AND(substf(f,s),substf(g,s)) 104.21/104.98 SUBSTF(and(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(and(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(exists(f),s) -> .#(1,ron(s,shift)) 104.21/104.98 SUBSTF(exists(f),s) -> EXISTS(substf(f,.(1,ron(s,shift)))) 104.21/104.98 SUBSTF(exists(f),s) -> RON(s,shift) 104.21/104.98 SUBSTF(exists(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/104.98 SUBSTF(imp(f,g),s) -> IMP(substf(f,s),substf(g,s)) 104.21/104.98 SUBSTF(imp(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(imp(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(neg(f),s) -> NEG(substf(f,s)) 104.21/104.98 SUBSTF(neg(f),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(or(f,g),s) -> OR(substf(f,s),substf(g,s)) 104.21/104.98 SUBSTF(or(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(or(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(substf(f,s),t) -> RON(s,t) 104.21/104.98 SUBSTF(substf(f,s),t) -> SUBSTF(f,ron(s,t)) 104.21/104.98 SUBSTF(Pe(x),y) -> SUBSTT(x,y) 104.21/104.98 SUBSTF(forall(f),s) -> .#(1,ron(s,shift)) 104.21/104.98 SUBSTF(forall(f),s) -> RON(s,shift) 104.21/104.98 SUBSTF(forall(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/104.98 SUBSTT(substt(x,s),t) -> RON(s,t) 104.21/104.98 SUBSTT(substt(x,s),t) -> SUBSTT(x,ron(s,t)) 104.21/104.98 SUBSTT(ef(x),y) -> SUBSTT(x,y) 104.21/104.98 VIRG(virg(emptyfset,a),x9) -> VIRG(a,x9) 104.21/104.98 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 -> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 -> SRules: 104.21/104.98 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/104.98 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/104.98 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.98 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.98 ->Strongly Connected Components: 104.21/104.98 ->->Cycle: 104.21/104.98 ->->-> Pairs: 104.21/104.98 VIRG(virg(emptyfset,a),x9) -> VIRG(a,x9) 104.21/104.98 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.98 -> FAxioms: 104.21/104.98 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) -> *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) -> virg(x10,x9) 104.21/104.98 VIRG(virg(x9,x10),x11) -> VIRG(x9,virg(x10,x11)) 104.21/104.98 VIRG(x9,x10) -> VIRG(x10,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 ->->-> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 -> SRules: 104.21/104.98 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.98 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.98 ->->Cycle: 104.21/104.98 ->->-> Pairs: 104.21/104.98 SEQUENT(virg(convf(and(f,g)),a),b) -> SEQUENT(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.98 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.98 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.98 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.98 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.98 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.98 -> FAxioms: 104.21/104.98 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) -> *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) -> virg(x10,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 ->->-> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 -> SRules: 104.21/104.98 Empty 104.21/104.98 ->->Cycle: 104.21/104.98 ->->-> Pairs: 104.21/104.98 RON(.(x,s),t) -> RON(s,t) 104.21/104.98 RON(.(x,s),t) -> SUBSTT(x,t) 104.21/104.98 RON(ron(s,t),u) -> RON(s,ron(t,u)) 104.21/104.98 RON(ron(s,t),u) -> RON(t,u) 104.21/104.98 SUBSTT(substt(x,s),t) -> RON(s,t) 104.21/104.98 SUBSTT(substt(x,s),t) -> SUBSTT(x,ron(s,t)) 104.21/104.98 SUBSTT(ef(x),y) -> SUBSTT(x,y) 104.21/104.98 -> FAxioms: 104.21/104.98 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) -> *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) -> virg(x10,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 ->->-> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 -> SRules: 104.21/104.98 Empty 104.21/104.98 ->->Cycle: 104.21/104.98 ->->-> Pairs: 104.21/104.98 SUBSTF(and(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(and(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(exists(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/104.98 SUBSTF(imp(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(imp(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(neg(f),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(or(f,g),s) -> SUBSTF(f,s) 104.21/104.98 SUBSTF(or(f,g),s) -> SUBSTF(g,s) 104.21/104.98 SUBSTF(substf(f,s),t) -> SUBSTF(f,ron(s,t)) 104.21/104.98 SUBSTF(forall(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/104.98 -> FAxioms: 104.21/104.98 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) -> *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) -> virg(x10,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 ->->-> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.98 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.98 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.98 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.98 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.98 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.98 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.98 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.98 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.98 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.98 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.98 substf(f,id) -> f 104.21/104.98 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.98 substt(1,.(x,s)) -> x 104.21/104.98 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.98 substt(x,id) -> x 104.21/104.98 virg(emptyfset,a) -> a 104.21/104.98 virg(a,a) -> a 104.21/104.98 -> SRules: 104.21/104.98 Empty 104.21/104.98 ->->Cycle: 104.21/104.98 ->->-> Pairs: 104.21/104.98 *#(*(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/104.98 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/104.98 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/104.98 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/104.98 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/104.98 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/104.98 *#(*(a,a),x9) -> *#(a,x9) 104.21/104.98 -> FAxioms: 104.21/104.98 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) -> *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) -> virg(x10,x9) 104.21/104.98 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/104.98 *#(x9,x10) -> *#(x10,x9) 104.21/104.98 -> EAxioms: 104.21/104.98 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.98 *(x9,x10) = *(x10,x9) 104.21/104.98 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.98 virg(x9,x10) = virg(x10,x9) 104.21/104.98 ->->-> Rules: 104.21/104.98 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.98 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.98 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.98 *(emptysset,a) -> a 104.21/104.98 *(a,a) -> a 104.21/104.98 .(substt(1,s),ron(shift,s)) -> s 104.21/104.98 .(1,shift) -> id 104.21/104.98 and(f,f) -> f 104.21/104.98 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.98 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.98 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.98 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.98 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.98 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.98 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.98 exists(f) -> neg(forall(neg(f))) 104.21/104.98 imp(f,g) -> or(neg(f),g) 104.21/104.98 neg(neg(f)) -> f 104.21/104.98 or(f,f) -> f 104.21/104.98 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.98 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.98 ron(id,s) -> s 104.21/104.98 ron(shift,.(x,s)) -> s 104.21/104.98 ron(s,id) -> s 104.21/104.98 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.98 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.98 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.98 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.98 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/104.99 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(f),a),b)) 104.21/104.99 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/104.99 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/104.99 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/104.99 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/104.99 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/104.99 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/104.99 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 104.21/104.99 104.21/104.99 The problem is decomposed in 6 subproblems. 104.21/104.99 104.21/104.99 Problem 1.1: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 VIRG(virg(x9,x10),x11) = VIRG(x9,virg(x10,x11)) 104.21/104.99 VIRG(x9,x10) = VIRG(x10,x9) 104.21/104.99 -> Pairs: 104.21/104.99 VIRG(virg(emptyfset,a),x9) -> VIRG(a,x9) 104.21/104.99 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.99 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 0 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 0 104.21/104.99 [or](X1,X2) = 0 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 2 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 0 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 1 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = 0 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 2.X1 + 2.X2 104.21/104.99 104.21/104.99 Problem 1.1: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 VIRG(virg(x9,x10),x11) = VIRG(x9,virg(x10,x11)) 104.21/104.99 VIRG(x9,x10) = VIRG(x10,x9) 104.21/104.99 -> Pairs: 104.21/104.99 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.99 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 VIRG(virg(x9,x10),x11) -> VIRG(x9,virg(x10,x11)) 104.21/104.99 VIRG(x9,x10) -> VIRG(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.99 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.99 104.21/104.99 Problem 1.1: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 VIRG(virg(x9,x10),x11) = VIRG(x9,virg(x10,x11)) 104.21/104.99 VIRG(x9,x10) = VIRG(x10,x9) 104.21/104.99 -> Pairs: 104.21/104.99 VIRG(virg(a,a),x9) -> VIRG(a,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.99 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 0 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 0 104.21/104.99 [or](X1,X2) = 0 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 2 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 0 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 0 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = 0 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 2.X1 + 2.X2 104.21/104.99 104.21/104.99 Problem 1.1: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 VIRG(virg(x9,x10),x11) = VIRG(x9,virg(x10,x11)) 104.21/104.99 VIRG(x9,x10) = VIRG(x10,x9) 104.21/104.99 -> Pairs: 104.21/104.99 Empty 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 VIRG(virg(x9,x10),x11) -> VIRG(x9,x10) 104.21/104.99 VIRG(x9,virg(x10,x11)) -> VIRG(x10,x11) 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 There is no strongly connected component 104.21/104.99 104.21/104.99 The problem is finite. 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(virg(convf(and(f,g)),a),b) -> SEQUENT(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 2.X1 + X2 + 2 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 2.X + 2 104.21/104.99 [or](X1,X2) = 2.X1 + 2.X2 + 2 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 1 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 2.X + 2 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 2 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = X1 + X2 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 0 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(virg(convf(neg(f)),a),b) -> SEQUENT(a,virg(convf(f),b)) 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 2.X1 + 2.X2 + 2 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 2.X + 2 104.21/104.99 [or](X1,X2) = 2.X1 + 2.X2 + 2 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 2 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 2.X + 2 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 1 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = 2.X1 + 2.X2 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 0 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(convf(and(f,g)),b) -> SEQUENT(virg(convf(f),convf(g)),b) 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 2.X1 + X2 + 2 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 2.X + 2 104.21/104.99 [or](X1,X2) = X1 + 2.X2 + 1 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 1 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 2.X + 1 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 2 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = 2.X1 + 2.X2 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 0 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(convf(neg(f)),b) -> SEQUENT(emptyfset,virg(convf(f),b)) 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 0 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 2.X + 2 104.21/104.99 [or](X1,X2) = X1 + 2.X2 + 2 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 1 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 2.X + 2 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 1 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = 2.X1 + 2.X2 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 0 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(neg(f))) -> SEQUENT(virg(convf(f),a),emptyfset) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(a,virg(convf(neg(f)),b)) -> SEQUENT(virg(convf(f),a),b) 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 0 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 2 104.21/104.99 [or](X1,X2) = 2.X1 + 2.X2 + 2 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 + 2 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = 2.X + 2 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 0 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = 2.X2 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 0 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 Reduction Pairs Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(a,virg(convf(or(f,g)),b)) -> SEQUENT(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Usable Equations: 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> Usable Rules: 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Interpretation type: 104.21/104.99 Linear 104.21/104.99 ->Coefficients: 104.21/104.99 Natural Numbers 104.21/104.99 ->Dimension: 104.21/104.99 1 104.21/104.99 ->Bound: 104.21/104.99 2 104.21/104.99 ->Interpretation: 104.21/104.99 104.21/104.99 [*](X1,X2) = 0 104.21/104.99 [.](X1,X2) = 0 104.21/104.99 [and](X1,X2) = 0 104.21/104.99 [convs](X) = 0 104.21/104.99 [exists](X) = 0 104.21/104.99 [imp](X1,X2) = 0 104.21/104.99 [neg](X) = 0 104.21/104.99 [or](X1,X2) = 2.X1 + X2 + 2 104.21/104.99 [ron](X1,X2) = 0 104.21/104.99 [sequent](X1,X2) = 0 104.21/104.99 [substf](X1,X2) = 0 104.21/104.99 [substt](X1,X2) = 0 104.21/104.99 [virg](X1,X2) = X1 + X2 104.21/104.99 [1] = 0 104.21/104.99 [Pe](X) = 0 104.21/104.99 [convf](X) = X + 1 104.21/104.99 [ef](X) = 0 104.21/104.99 [emptyfset] = 0 104.21/104.99 [emptysset] = 0 104.21/104.99 [forall](X) = 0 104.21/104.99 [id] = 0 104.21/104.99 [shift] = 0 104.21/104.99 [*#](X1,X2) = 0 104.21/104.99 [.#](X1,X2) = 0 104.21/104.99 [AND](X1,X2) = 0 104.21/104.99 [CONVS](X) = 0 104.21/104.99 [EXISTS](X) = 0 104.21/104.99 [IMP](X1,X2) = 0 104.21/104.99 [NEG](X) = 0 104.21/104.99 [OR](X1,X2) = 0 104.21/104.99 [RON](X1,X2) = 0 104.21/104.99 [SEQUENT](X1,X2) = X2 104.21/104.99 [SUBSTF](X1,X2) = 0 104.21/104.99 [SUBSTT](X1,X2) = 0 104.21/104.99 [VIRG](X1,X2) = 0 104.21/104.99 104.21/104.99 Problem 1.2: 104.21/104.99 104.21/104.99 SCC Processor: 104.21/104.99 -> FAxioms: 104.21/104.99 Empty 104.21/104.99 -> Pairs: 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 -> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/104.99 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/104.99 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/104.99 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/104.99 exists(f) -> neg(forall(neg(f))) 104.21/104.99 imp(f,g) -> or(neg(f),g) 104.21/104.99 neg(neg(f)) -> f 104.21/104.99 or(f,f) -> f 104.21/104.99 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/104.99 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/104.99 ron(id,s) -> s 104.21/104.99 ron(shift,.(x,s)) -> s 104.21/104.99 ron(s,id) -> s 104.21/104.99 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/104.99 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/104.99 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/104.99 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/104.99 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/104.99 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/104.99 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/104.99 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/104.99 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/104.99 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/104.99 substf(neg(f),s) -> neg(substf(f,s)) 104.21/104.99 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/104.99 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/104.99 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/104.99 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/104.99 substf(f,id) -> f 104.21/104.99 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/104.99 substt(1,.(x,s)) -> x 104.21/104.99 substt(ef(x),y) -> ef(substt(x,y)) 104.21/104.99 substt(x,id) -> x 104.21/104.99 virg(emptyfset,a) -> a 104.21/104.99 virg(a,a) -> a 104.21/104.99 -> SRules: 104.21/104.99 Empty 104.21/104.99 ->Strongly Connected Components: 104.21/104.99 ->->Cycle: 104.21/104.99 ->->-> Pairs: 104.21/104.99 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/104.99 -> FAxioms: 104.21/104.99 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) -> *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) -> virg(x10,x9) 104.21/104.99 -> EAxioms: 104.21/104.99 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/104.99 *(x9,x10) = *(x10,x9) 104.21/104.99 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/104.99 virg(x9,x10) = virg(x10,x9) 104.21/104.99 ->->-> Rules: 104.21/104.99 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/104.99 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/104.99 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/104.99 *(emptysset,a) -> a 104.21/104.99 *(a,a) -> a 104.21/104.99 .(substt(1,s),ron(shift,s)) -> s 104.21/104.99 .(1,shift) -> id 104.21/104.99 and(f,f) -> f 104.21/104.99 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/104.99 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/104.99 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/104.99 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 104.21/105.00 Problem 1.2: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 Empty 104.21/105.00 -> Pairs: 104.21/105.00 SEQUENT(a,convf(or(f,g))) -> SEQUENT(a,virg(convf(f),convf(g))) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> Usable Rules: 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 ->Interpretation type: 104.21/105.00 Linear 104.21/105.00 ->Coefficients: 104.21/105.00 Natural Numbers 104.21/105.00 ->Dimension: 104.21/105.00 1 104.21/105.00 ->Bound: 104.21/105.00 2 104.21/105.00 ->Interpretation: 104.21/105.00 104.21/105.00 [*](X1,X2) = 0 104.21/105.00 [.](X1,X2) = 0 104.21/105.00 [and](X1,X2) = 0 104.21/105.00 [convs](X) = 0 104.21/105.00 [exists](X) = 0 104.21/105.00 [imp](X1,X2) = 0 104.21/105.00 [neg](X) = 0 104.21/105.00 [or](X1,X2) = 2.X1 + X2 + 2 104.21/105.00 [ron](X1,X2) = 0 104.21/105.00 [sequent](X1,X2) = 0 104.21/105.00 [substf](X1,X2) = 0 104.21/105.00 [substt](X1,X2) = 0 104.21/105.00 [virg](X1,X2) = X1 + X2 + 1 104.21/105.00 [1] = 0 104.21/105.00 [Pe](X) = 0 104.21/105.00 [convf](X) = X 104.21/105.00 [ef](X) = 0 104.21/105.00 [emptyfset] = 0 104.21/105.00 [emptysset] = 0 104.21/105.00 [forall](X) = 0 104.21/105.00 [id] = 0 104.21/105.00 [shift] = 0 104.21/105.00 [*#](X1,X2) = 0 104.21/105.00 [.#](X1,X2) = 0 104.21/105.00 [AND](X1,X2) = 0 104.21/105.00 [CONVS](X) = 0 104.21/105.00 [EXISTS](X) = 0 104.21/105.00 [IMP](X1,X2) = 0 104.21/105.00 [NEG](X) = 0 104.21/105.00 [OR](X1,X2) = 0 104.21/105.00 [RON](X1,X2) = 0 104.21/105.00 [SEQUENT](X1,X2) = X2 104.21/105.00 [SUBSTF](X1,X2) = 0 104.21/105.00 [SUBSTT](X1,X2) = 0 104.21/105.00 [VIRG](X1,X2) = 0 104.21/105.00 104.21/105.00 Problem 1.2: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 Empty 104.21/105.00 -> Pairs: 104.21/105.00 Empty 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 There is no strongly connected component 104.21/105.00 104.21/105.00 The problem is finite. 104.21/105.00 104.21/105.00 Problem 1.3: 104.21/105.00 104.21/105.00 Subterm Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 Empty 104.21/105.00 -> Pairs: 104.21/105.00 RON(.(x,s),t) -> RON(s,t) 104.21/105.00 RON(.(x,s),t) -> SUBSTT(x,t) 104.21/105.00 RON(ron(s,t),u) -> RON(s,ron(t,u)) 104.21/105.00 RON(ron(s,t),u) -> RON(t,u) 104.21/105.00 SUBSTT(substt(x,s),t) -> RON(s,t) 104.21/105.00 SUBSTT(substt(x,s),t) -> SUBSTT(x,ron(s,t)) 104.21/105.00 SUBSTT(ef(x),y) -> SUBSTT(x,y) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 ->Projection: 104.21/105.00 pi(RON) = [1] 104.21/105.00 pi(SUBSTT) = [1] 104.21/105.00 104.21/105.00 Problem 1.3: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 Empty 104.21/105.00 -> Pairs: 104.21/105.00 Empty 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 There is no strongly connected component 104.21/105.00 104.21/105.00 The problem is finite. 104.21/105.00 104.21/105.00 Problem 1.4: 104.21/105.00 104.21/105.00 Subterm Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 Empty 104.21/105.00 -> Pairs: 104.21/105.00 SUBSTF(and(f,g),s) -> SUBSTF(f,s) 104.21/105.00 SUBSTF(and(f,g),s) -> SUBSTF(g,s) 104.21/105.00 SUBSTF(exists(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/105.00 SUBSTF(imp(f,g),s) -> SUBSTF(f,s) 104.21/105.00 SUBSTF(imp(f,g),s) -> SUBSTF(g,s) 104.21/105.00 SUBSTF(neg(f),s) -> SUBSTF(f,s) 104.21/105.00 SUBSTF(or(f,g),s) -> SUBSTF(f,s) 104.21/105.00 SUBSTF(or(f,g),s) -> SUBSTF(g,s) 104.21/105.00 SUBSTF(substf(f,s),t) -> SUBSTF(f,ron(s,t)) 104.21/105.00 SUBSTF(forall(f),s) -> SUBSTF(f,.(1,ron(s,shift))) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 ->Projection: 104.21/105.00 pi(SUBSTF) = [1] 104.21/105.00 104.21/105.00 Problem 1.4: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 Empty 104.21/105.00 -> Pairs: 104.21/105.00 Empty 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 Empty 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 There is no strongly connected component 104.21/105.00 104.21/105.00 The problem is finite. 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> Usable Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Interpretation type: 104.21/105.00 Simple mixed 104.21/105.00 ->Coefficients: 104.21/105.00 Natural Numbers 104.21/105.00 ->Dimension: 104.21/105.00 1 104.21/105.00 ->Bound: 104.21/105.00 1 104.21/105.00 ->Interpretation: 104.21/105.00 104.21/105.00 [*](X1,X2) = X1 + X2 + 1 104.21/105.00 [.](X1,X2) = 0 104.21/105.00 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [convs](X) = X.X + X + 1 104.21/105.00 [exists](X) = 0 104.21/105.00 [imp](X1,X2) = 0 104.21/105.00 [neg](X) = X.X + X + 1 104.21/105.00 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [ron](X1,X2) = 0 104.21/105.00 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [substf](X1,X2) = 0 104.21/105.00 [substt](X1,X2) = 0 104.21/105.00 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.00 [1] = 0 104.21/105.00 [Pe](X) = 0 104.21/105.00 [convf](X) = X.X + X 104.21/105.00 [ef](X) = 0 104.21/105.00 [emptyfset] = 1 104.21/105.00 [emptysset] = 1 104.21/105.00 [forall](X) = 0 104.21/105.00 [id] = 0 104.21/105.00 [shift] = 0 104.21/105.00 [*#](X1,X2) = X1 + X2 104.21/105.00 [.#](X1,X2) = 0 104.21/105.00 [AND](X1,X2) = 0 104.21/105.00 [CONVS](X) = 0 104.21/105.00 [EXISTS](X) = 0 104.21/105.00 [IMP](X1,X2) = 0 104.21/105.00 [NEG](X) = 0 104.21/105.00 [OR](X1,X2) = 0 104.21/105.00 [RON](X1,X2) = 0 104.21/105.00 [SEQUENT](X1,X2) = 0 104.21/105.00 [SUBSTF](X1,X2) = 0 104.21/105.00 [SUBSTT](X1,X2) = 0 104.21/105.00 [VIRG](X1,X2) = 0 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 ->->Cycle: 104.21/105.00 ->->-> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> FAxioms: 104.21/105.00 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) -> *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) -> virg(x10,x9) 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) -> *#(x10,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 ->->-> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> Usable Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Interpretation type: 104.21/105.00 Simple mixed 104.21/105.00 ->Coefficients: 104.21/105.00 Natural Numbers 104.21/105.00 ->Dimension: 104.21/105.00 1 104.21/105.00 ->Bound: 104.21/105.00 1 104.21/105.00 ->Interpretation: 104.21/105.00 104.21/105.00 [*](X1,X2) = X1 + X2 + 1 104.21/105.00 [.](X1,X2) = 0 104.21/105.00 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [convs](X) = X.X + X + 1 104.21/105.00 [exists](X) = 0 104.21/105.00 [imp](X1,X2) = 0 104.21/105.00 [neg](X) = X.X + X + 1 104.21/105.00 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [ron](X1,X2) = 0 104.21/105.00 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [substf](X1,X2) = 0 104.21/105.00 [substt](X1,X2) = 0 104.21/105.00 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.00 [1] = 0 104.21/105.00 [Pe](X) = 0 104.21/105.00 [convf](X) = X.X + X 104.21/105.00 [ef](X) = 0 104.21/105.00 [emptyfset] = 1 104.21/105.00 [emptysset] = 1 104.21/105.00 [forall](X) = 0 104.21/105.00 [id] = 0 104.21/105.00 [shift] = 0 104.21/105.00 [*#](X1,X2) = X1 + X2 104.21/105.00 [.#](X1,X2) = 0 104.21/105.00 [AND](X1,X2) = 0 104.21/105.00 [CONVS](X) = 0 104.21/105.00 [EXISTS](X) = 0 104.21/105.00 [IMP](X1,X2) = 0 104.21/105.00 [NEG](X) = 0 104.21/105.00 [OR](X1,X2) = 0 104.21/105.00 [RON](X1,X2) = 0 104.21/105.00 [SEQUENT](X1,X2) = 0 104.21/105.00 [SUBSTF](X1,X2) = 0 104.21/105.00 [SUBSTT](X1,X2) = 0 104.21/105.00 [VIRG](X1,X2) = 0 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 ->->Cycle: 104.21/105.00 ->->-> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> FAxioms: 104.21/105.00 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) -> *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) -> virg(x10,x9) 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) -> *#(x10,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 ->->-> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(virg(f,a),b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> Usable Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Interpretation type: 104.21/105.00 Simple mixed 104.21/105.00 ->Coefficients: 104.21/105.00 Natural Numbers 104.21/105.00 ->Dimension: 104.21/105.00 1 104.21/105.00 ->Bound: 104.21/105.00 1 104.21/105.00 ->Interpretation: 104.21/105.00 104.21/105.00 [*](X1,X2) = X1 + X2 + 1 104.21/105.00 [.](X1,X2) = 0 104.21/105.00 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [convs](X) = X.X + X + 1 104.21/105.00 [exists](X) = 0 104.21/105.00 [imp](X1,X2) = 0 104.21/105.00 [neg](X) = X.X + X + 1 104.21/105.00 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [ron](X1,X2) = 0 104.21/105.00 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [substf](X1,X2) = 0 104.21/105.00 [substt](X1,X2) = 0 104.21/105.00 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.00 [1] = 0 104.21/105.00 [Pe](X) = 0 104.21/105.00 [convf](X) = X.X + X 104.21/105.00 [ef](X) = 0 104.21/105.00 [emptyfset] = 1 104.21/105.00 [emptysset] = 1 104.21/105.00 [forall](X) = 0 104.21/105.00 [id] = 0 104.21/105.00 [shift] = 0 104.21/105.00 [*#](X1,X2) = X1 + X2 104.21/105.00 [.#](X1,X2) = 0 104.21/105.00 [AND](X1,X2) = 0 104.21/105.00 [CONVS](X) = 0 104.21/105.00 [EXISTS](X) = 0 104.21/105.00 [IMP](X1,X2) = 0 104.21/105.00 [NEG](X) = 0 104.21/105.00 [OR](X1,X2) = 0 104.21/105.00 [RON](X1,X2) = 0 104.21/105.00 [SEQUENT](X1,X2) = 0 104.21/105.00 [SUBSTF](X1,X2) = 0 104.21/105.00 [SUBSTT](X1,X2) = 0 104.21/105.00 [VIRG](X1,X2) = 0 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 ->->Cycle: 104.21/105.00 ->->-> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> FAxioms: 104.21/105.00 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) -> *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) -> virg(x10,x9) 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) -> *#(x10,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 ->->-> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,emptyfset)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> Usable Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Interpretation type: 104.21/105.00 Simple mixed 104.21/105.00 ->Coefficients: 104.21/105.00 Natural Numbers 104.21/105.00 ->Dimension: 104.21/105.00 1 104.21/105.00 ->Bound: 104.21/105.00 1 104.21/105.00 ->Interpretation: 104.21/105.00 104.21/105.00 [*](X1,X2) = X1 + X2 + 1 104.21/105.00 [.](X1,X2) = 0 104.21/105.00 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [convs](X) = X.X + X + 1 104.21/105.00 [exists](X) = 0 104.21/105.00 [imp](X1,X2) = 0 104.21/105.00 [neg](X) = X.X + X + 1 104.21/105.00 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [ron](X1,X2) = 0 104.21/105.00 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [substf](X1,X2) = 0 104.21/105.00 [substt](X1,X2) = 0 104.21/105.00 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.00 [1] = 0 104.21/105.00 [Pe](X) = 0 104.21/105.00 [convf](X) = X.X + X 104.21/105.00 [ef](X) = 0 104.21/105.00 [emptyfset] = 1 104.21/105.00 [emptysset] = 1 104.21/105.00 [forall](X) = 0 104.21/105.00 [id] = 0 104.21/105.00 [shift] = 0 104.21/105.00 [*#](X1,X2) = X1 + X2 104.21/105.00 [.#](X1,X2) = 0 104.21/105.00 [AND](X1,X2) = 0 104.21/105.00 [CONVS](X) = 0 104.21/105.00 [EXISTS](X) = 0 104.21/105.00 [IMP](X1,X2) = 0 104.21/105.00 [NEG](X) = 0 104.21/105.00 [OR](X1,X2) = 0 104.21/105.00 [RON](X1,X2) = 0 104.21/105.00 [SEQUENT](X1,X2) = 0 104.21/105.00 [SUBSTF](X1,X2) = 0 104.21/105.00 [SUBSTT](X1,X2) = 0 104.21/105.00 [VIRG](X1,X2) = 0 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 ->->Cycle: 104.21/105.00 ->->-> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> FAxioms: 104.21/105.00 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) -> *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) -> virg(x10,x9) 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) -> *#(x10,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 ->->-> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> Usable Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Interpretation type: 104.21/105.00 Simple mixed 104.21/105.00 ->Coefficients: 104.21/105.00 Natural Numbers 104.21/105.00 ->Dimension: 104.21/105.00 1 104.21/105.00 ->Bound: 104.21/105.00 1 104.21/105.00 ->Interpretation: 104.21/105.00 104.21/105.00 [*](X1,X2) = X1 + X2 + 1 104.21/105.00 [.](X1,X2) = 0 104.21/105.00 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [convs](X) = X.X + X + 1 104.21/105.00 [exists](X) = 0 104.21/105.00 [imp](X1,X2) = 0 104.21/105.00 [neg](X) = X.X + X + 1 104.21/105.00 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [ron](X1,X2) = 0 104.21/105.00 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.00 [substf](X1,X2) = 0 104.21/105.00 [substt](X1,X2) = 0 104.21/105.00 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.00 [1] = 0 104.21/105.00 [Pe](X) = 0 104.21/105.00 [convf](X) = X.X + X 104.21/105.00 [ef](X) = 0 104.21/105.00 [emptyfset] = 1 104.21/105.00 [emptysset] = 1 104.21/105.00 [forall](X) = 0 104.21/105.00 [id] = 0 104.21/105.00 [shift] = 0 104.21/105.00 [*#](X1,X2) = X1 + X2 104.21/105.00 [.#](X1,X2) = 0 104.21/105.00 [AND](X1,X2) = 0 104.21/105.00 [CONVS](X) = 0 104.21/105.00 [EXISTS](X) = 0 104.21/105.00 [IMP](X1,X2) = 0 104.21/105.00 [NEG](X) = 0 104.21/105.00 [OR](X1,X2) = 0 104.21/105.00 [RON](X1,X2) = 0 104.21/105.00 [SEQUENT](X1,X2) = 0 104.21/105.00 [SUBSTF](X1,X2) = 0 104.21/105.00 [SUBSTT](X1,X2) = 0 104.21/105.00 [VIRG](X1,X2) = 0 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 SCC Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 ->Strongly Connected Components: 104.21/105.00 ->->Cycle: 104.21/105.00 ->->-> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> FAxioms: 104.21/105.00 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) -> *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) -> virg(x10,x9) 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) -> *#(x10,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 ->->-> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.00 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.00 *(emptysset,a) -> a 104.21/105.00 *(a,a) -> a 104.21/105.00 .(substt(1,s),ron(shift,s)) -> s 104.21/105.00 .(1,shift) -> id 104.21/105.00 and(f,f) -> f 104.21/105.00 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.00 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.00 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.00 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.00 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.00 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.00 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.00 exists(f) -> neg(forall(neg(f))) 104.21/105.00 imp(f,g) -> or(neg(f),g) 104.21/105.00 neg(neg(f)) -> f 104.21/105.00 or(f,f) -> f 104.21/105.00 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.00 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.00 ron(id,s) -> s 104.21/105.00 ron(shift,.(x,s)) -> s 104.21/105.00 ron(s,id) -> s 104.21/105.00 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.00 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.00 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.00 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.00 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.00 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.00 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.00 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.00 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.00 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.00 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.00 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.00 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.00 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.00 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.00 substf(f,id) -> f 104.21/105.00 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.00 substt(1,.(x,s)) -> x 104.21/105.00 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.00 substt(x,id) -> x 104.21/105.00 virg(emptyfset,a) -> a 104.21/105.00 virg(a,a) -> a 104.21/105.00 -> SRules: 104.21/105.00 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.00 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.00 104.21/105.00 Problem 1.5: 104.21/105.00 104.21/105.00 Reduction Pairs Processor: 104.21/105.00 -> FAxioms: 104.21/105.00 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.00 *#(x9,x10) = *#(x10,x9) 104.21/105.00 -> Pairs: 104.21/105.00 *#(*(convs(sequent(emptyfset,b)),convs(sequent(a,b))),x9) -> *#(convs(sequent(emptyfset,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.00 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.00 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.00 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.00 -> EAxioms: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Usable Equations: 104.21/105.00 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.00 *(x9,x10) = *(x10,x9) 104.21/105.00 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.00 virg(x9,x10) = virg(x10,x9) 104.21/105.00 -> Rules: 104.21/105.00 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.00 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Interpretation type: 104.21/105.01 Simple mixed 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 1 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = X1 + X2 + 1 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [convs](X) = X.X + X + 1 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = X.X + X + 1 104.21/105.01 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X.X + X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 1 104.21/105.01 [emptysset] = 1 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = X1 + X2 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = 0 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.01 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 ->->Cycle: 104.21/105.01 ->->-> Pairs: 104.21/105.01 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.01 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> FAxioms: 104.21/105.01 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) -> *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) -> virg(x10,x9) 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) -> *#(x10,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 ->->-> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(convs(sequent(a,virg(f,b))),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,b)),x9) 104.21/105.01 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Interpretation type: 104.21/105.01 Simple mixed 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 1 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = X1 + X2 + 1 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [convs](X) = X.X + X + 1 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = X.X + X + 1 104.21/105.01 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X.X + X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 1 104.21/105.01 [emptysset] = 1 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = X1 + X2 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = 0 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 ->->Cycle: 104.21/105.01 ->->-> Pairs: 104.21/105.01 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> FAxioms: 104.21/105.01 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) -> *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) -> virg(x10,x9) 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) -> *#(x10,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 ->->-> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(convs(sequent(a,emptyfset)),convs(sequent(a,b))),x9) -> *#(convs(sequent(a,emptyfset)),x9) 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Interpretation type: 104.21/105.01 Simple mixed 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 1 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = X1 + X2 + 1 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [convs](X) = X.X + X + 1 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = X.X + X + 1 104.21/105.01 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X.X + X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 1 104.21/105.01 [emptysset] = 1 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = X1 + X2 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = 0 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 ->->Cycle: 104.21/105.01 ->->-> Pairs: 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> FAxioms: 104.21/105.01 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) -> *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) -> virg(x10,x9) 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) -> *#(x10,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 ->->-> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(emptysset,a),x9) -> *#(a,x9) 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Interpretation type: 104.21/105.01 Simple mixed 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 1 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = X1 + X2 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [convs](X) = X.X + X + 1 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = X.X + X + 1 104.21/105.01 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X.X + X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 1 104.21/105.01 [emptysset] = 1 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = X1 + X2 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = 0 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 ->->Cycle: 104.21/105.01 ->->-> Pairs: 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> FAxioms: 104.21/105.01 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) -> *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) -> virg(x10,x9) 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) -> *#(x10,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 ->->-> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 *#(*(a,a),x9) -> *#(a,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Interpretation type: 104.21/105.01 Simple mixed 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 1 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = X1 + X2 + 1 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [convs](X) = X.X + X + 1 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = X.X + X + 1 104.21/105.01 [or](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = X1.X2 + X1 + X2 + 1 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1.X2 + X1 + X2 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X.X + X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 1 104.21/105.01 [emptysset] = 1 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = X1 + X2 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = 0 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.5: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 *#(*(x9,x10),x11) = *#(x9,*(x10,x11)) 104.21/105.01 *#(x9,x10) = *#(x10,x9) 104.21/105.01 -> Pairs: 104.21/105.01 Empty 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 *#(*(x9,x10),x11) -> *#(x9,x10) 104.21/105.01 *#(x9,*(x10,x11)) -> *#(x10,x11) 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 There is no strongly connected component 104.21/105.01 104.21/105.01 The problem is finite. 104.21/105.01 104.21/105.01 Problem 1.6: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 Empty 104.21/105.01 -> Pairs: 104.21/105.01 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(f),a),b)) 104.21/105.01 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 ->Interpretation type: 104.21/105.01 Linear 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 2 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = 0 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = X1 + X2 + 1 104.21/105.01 [convs](X) = 0 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = 2.X + 2 104.21/105.01 [or](X1,X2) = 2.X1 + X2 + 2 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = 2.X1 + X2 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1 + X2 + 1 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 0 104.21/105.01 [emptysset] = 0 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = 0 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = X 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.6: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 Empty 104.21/105.01 -> Pairs: 104.21/105.01 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 ->->Cycle: 104.21/105.01 ->->-> Pairs: 104.21/105.01 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> FAxioms: 104.21/105.01 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) -> *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) -> virg(x10,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 ->->-> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 104.21/105.01 Problem 1.6: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 Empty 104.21/105.01 -> Pairs: 104.21/105.01 CONVS(sequent(virg(convf(or(f,g)),a),b)) -> CONVS(sequent(virg(convf(g),a),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 ->Interpretation type: 104.21/105.01 Linear 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 2 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = 0 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.01 [convs](X) = 0 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = 2.X + 2 104.21/105.01 [or](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = 2.X1 + 2.X2 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1 + X2 + 1 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = 2.X + 2 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 2 104.21/105.01 [emptysset] = 0 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = 0 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = X 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.6: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 Empty 104.21/105.01 -> Pairs: 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 ->Strongly Connected Components: 104.21/105.01 ->->Cycle: 104.21/105.01 ->->-> Pairs: 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> FAxioms: 104.21/105.01 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) -> *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) -> virg(x10,x9) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 ->->-> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 104.21/105.01 Problem 1.6: 104.21/105.01 104.21/105.01 Reduction Pairs Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 Empty 104.21/105.01 -> Pairs: 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(f),b)) 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Usable Equations: 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.01 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.01 *(emptysset,a) -> a 104.21/105.01 *(a,a) -> a 104.21/105.01 .(substt(1,s),ron(shift,s)) -> s 104.21/105.01 .(1,shift) -> id 104.21/105.01 and(f,f) -> f 104.21/105.01 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.01 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.01 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.01 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.01 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.01 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.01 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.01 exists(f) -> neg(forall(neg(f))) 104.21/105.01 imp(f,g) -> or(neg(f),g) 104.21/105.01 neg(neg(f)) -> f 104.21/105.01 or(f,f) -> f 104.21/105.01 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.01 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.01 ron(id,s) -> s 104.21/105.01 ron(shift,.(x,s)) -> s 104.21/105.01 ron(s,id) -> s 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.01 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.01 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.01 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.01 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.01 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.01 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.01 substf(f,id) -> f 104.21/105.01 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.01 substt(1,.(x,s)) -> x 104.21/105.01 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.01 substt(x,id) -> x 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> Usable Rules: 104.21/105.01 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.01 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.01 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.01 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.01 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.01 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.01 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.01 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.01 virg(emptyfset,a) -> a 104.21/105.01 virg(a,a) -> a 104.21/105.01 -> SRules: 104.21/105.01 Empty 104.21/105.01 ->Interpretation type: 104.21/105.01 Linear 104.21/105.01 ->Coefficients: 104.21/105.01 Natural Numbers 104.21/105.01 ->Dimension: 104.21/105.01 1 104.21/105.01 ->Bound: 104.21/105.01 2 104.21/105.01 ->Interpretation: 104.21/105.01 104.21/105.01 [*](X1,X2) = 0 104.21/105.01 [.](X1,X2) = 0 104.21/105.01 [and](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.01 [convs](X) = 0 104.21/105.01 [exists](X) = 0 104.21/105.01 [imp](X1,X2) = 0 104.21/105.01 [neg](X) = 2.X + 2 104.21/105.01 [or](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.01 [ron](X1,X2) = 0 104.21/105.01 [sequent](X1,X2) = 2.X1 + 2.X2 104.21/105.01 [substf](X1,X2) = 0 104.21/105.01 [substt](X1,X2) = 0 104.21/105.01 [virg](X1,X2) = X1 + X2 + 2 104.21/105.01 [1] = 0 104.21/105.01 [Pe](X) = 0 104.21/105.01 [convf](X) = X 104.21/105.01 [ef](X) = 0 104.21/105.01 [emptyfset] = 0 104.21/105.01 [emptysset] = 0 104.21/105.01 [forall](X) = 0 104.21/105.01 [id] = 0 104.21/105.01 [shift] = 0 104.21/105.01 [*#](X1,X2) = 0 104.21/105.01 [.#](X1,X2) = 0 104.21/105.01 [AND](X1,X2) = 0 104.21/105.01 [CONVS](X) = 2.X 104.21/105.01 [EXISTS](X) = 0 104.21/105.01 [IMP](X1,X2) = 0 104.21/105.01 [NEG](X) = 0 104.21/105.01 [OR](X1,X2) = 0 104.21/105.01 [RON](X1,X2) = 0 104.21/105.01 [SEQUENT](X1,X2) = 0 104.21/105.01 [SUBSTF](X1,X2) = 0 104.21/105.01 [SUBSTT](X1,X2) = 0 104.21/105.01 [VIRG](X1,X2) = 0 104.21/105.01 104.21/105.01 Problem 1.6: 104.21/105.01 104.21/105.01 SCC Processor: 104.21/105.01 -> FAxioms: 104.21/105.01 Empty 104.21/105.01 -> Pairs: 104.21/105.01 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.01 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.01 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.01 -> EAxioms: 104.21/105.01 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.01 *(x9,x10) = *(x10,x9) 104.21/105.01 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.01 virg(x9,x10) = virg(x10,x9) 104.21/105.01 -> Rules: 104.21/105.01 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.01 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Strongly Connected Components: 104.21/105.02 ->->Cycle: 104.21/105.02 ->->-> Pairs: 104.21/105.02 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> FAxioms: 104.21/105.02 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) -> *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) -> virg(x10,x9) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 ->->-> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 Reduction Pairs Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(convf(or(f,g)),b)) -> CONVS(sequent(convf(g),b)) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Usable Equations: 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> Usable Rules: 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Interpretation type: 104.21/105.02 Linear 104.21/105.02 ->Coefficients: 104.21/105.02 Natural Numbers 104.21/105.02 ->Dimension: 104.21/105.02 1 104.21/105.02 ->Bound: 104.21/105.02 2 104.21/105.02 ->Interpretation: 104.21/105.02 104.21/105.02 [*](X1,X2) = 0 104.21/105.02 [.](X1,X2) = 0 104.21/105.02 [and](X1,X2) = 2.X1 + 2.X2 + 1 104.21/105.02 [convs](X) = 0 104.21/105.02 [exists](X) = 0 104.21/105.02 [imp](X1,X2) = 0 104.21/105.02 [neg](X) = 2.X 104.21/105.02 [or](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.02 [ron](X1,X2) = 0 104.21/105.02 [sequent](X1,X2) = 2.X1 + 2.X2 104.21/105.02 [substf](X1,X2) = 0 104.21/105.02 [substt](X1,X2) = 0 104.21/105.02 [virg](X1,X2) = X1 + X2 104.21/105.02 [1] = 0 104.21/105.02 [Pe](X) = 0 104.21/105.02 [convf](X) = 2.X + 2 104.21/105.02 [ef](X) = 0 104.21/105.02 [emptyfset] = 0 104.21/105.02 [emptysset] = 0 104.21/105.02 [forall](X) = 0 104.21/105.02 [id] = 0 104.21/105.02 [shift] = 0 104.21/105.02 [*#](X1,X2) = 0 104.21/105.02 [.#](X1,X2) = 0 104.21/105.02 [AND](X1,X2) = 0 104.21/105.02 [CONVS](X) = X 104.21/105.02 [EXISTS](X) = 0 104.21/105.02 [IMP](X1,X2) = 0 104.21/105.02 [NEG](X) = 0 104.21/105.02 [OR](X1,X2) = 0 104.21/105.02 [RON](X1,X2) = 0 104.21/105.02 [SEQUENT](X1,X2) = 0 104.21/105.02 [SUBSTF](X1,X2) = 0 104.21/105.02 [SUBSTT](X1,X2) = 0 104.21/105.02 [VIRG](X1,X2) = 0 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 SCC Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Strongly Connected Components: 104.21/105.02 ->->Cycle: 104.21/105.02 ->->-> Pairs: 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> FAxioms: 104.21/105.02 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) -> *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) -> virg(x10,x9) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 ->->-> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 Reduction Pairs Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(f),b))) 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Usable Equations: 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> Usable Rules: 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Interpretation type: 104.21/105.02 Linear 104.21/105.02 ->Coefficients: 104.21/105.02 Natural Numbers 104.21/105.02 ->Dimension: 104.21/105.02 1 104.21/105.02 ->Bound: 104.21/105.02 2 104.21/105.02 ->Interpretation: 104.21/105.02 104.21/105.02 [*](X1,X2) = 0 104.21/105.02 [.](X1,X2) = 0 104.21/105.02 [and](X1,X2) = 2.X1 + 2.X2 + 1 104.21/105.02 [convs](X) = 0 104.21/105.02 [exists](X) = 0 104.21/105.02 [imp](X1,X2) = 0 104.21/105.02 [neg](X) = 2.X + 2 104.21/105.02 [or](X1,X2) = X1 + X2 + 2 104.21/105.02 [ron](X1,X2) = 0 104.21/105.02 [sequent](X1,X2) = 2.X1 + 2.X2 104.21/105.02 [substf](X1,X2) = 0 104.21/105.02 [substt](X1,X2) = 0 104.21/105.02 [virg](X1,X2) = X1 + X2 + 1 104.21/105.02 [1] = 0 104.21/105.02 [Pe](X) = 0 104.21/105.02 [convf](X) = 2.X + 1 104.21/105.02 [ef](X) = 0 104.21/105.02 [emptyfset] = 1 104.21/105.02 [emptysset] = 0 104.21/105.02 [forall](X) = 0 104.21/105.02 [id] = 0 104.21/105.02 [shift] = 0 104.21/105.02 [*#](X1,X2) = 0 104.21/105.02 [.#](X1,X2) = 0 104.21/105.02 [AND](X1,X2) = 0 104.21/105.02 [CONVS](X) = 2.X 104.21/105.02 [EXISTS](X) = 0 104.21/105.02 [IMP](X1,X2) = 0 104.21/105.02 [NEG](X) = 0 104.21/105.02 [OR](X1,X2) = 0 104.21/105.02 [RON](X1,X2) = 0 104.21/105.02 [SEQUENT](X1,X2) = 0 104.21/105.02 [SUBSTF](X1,X2) = 0 104.21/105.02 [SUBSTT](X1,X2) = 0 104.21/105.02 [VIRG](X1,X2) = 0 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 SCC Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Strongly Connected Components: 104.21/105.02 ->->Cycle: 104.21/105.02 ->->-> Pairs: 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> FAxioms: 104.21/105.02 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) -> *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) -> virg(x10,x9) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 ->->-> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 Reduction Pairs Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,virg(convf(and(f,g)),b))) -> CONVS(sequent(a,virg(convf(g),b))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Usable Equations: 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> Usable Rules: 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Interpretation type: 104.21/105.02 Linear 104.21/105.02 ->Coefficients: 104.21/105.02 Natural Numbers 104.21/105.02 ->Dimension: 104.21/105.02 1 104.21/105.02 ->Bound: 104.21/105.02 2 104.21/105.02 ->Interpretation: 104.21/105.02 104.21/105.02 [*](X1,X2) = 0 104.21/105.02 [.](X1,X2) = 0 104.21/105.02 [and](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.02 [convs](X) = 0 104.21/105.02 [exists](X) = 0 104.21/105.02 [imp](X1,X2) = 0 104.21/105.02 [neg](X) = 2.X + 2 104.21/105.02 [or](X1,X2) = X1 + X2 + 2 104.21/105.02 [ron](X1,X2) = 0 104.21/105.02 [sequent](X1,X2) = 2.X1 + X2 104.21/105.02 [substf](X1,X2) = 0 104.21/105.02 [substt](X1,X2) = 0 104.21/105.02 [virg](X1,X2) = X1 + X2 104.21/105.02 [1] = 0 104.21/105.02 [Pe](X) = 0 104.21/105.02 [convf](X) = X + 2 104.21/105.02 [ef](X) = 0 104.21/105.02 [emptyfset] = 0 104.21/105.02 [emptysset] = 0 104.21/105.02 [forall](X) = 0 104.21/105.02 [id] = 0 104.21/105.02 [shift] = 0 104.21/105.02 [*#](X1,X2) = 0 104.21/105.02 [.#](X1,X2) = 0 104.21/105.02 [AND](X1,X2) = 0 104.21/105.02 [CONVS](X) = 2.X 104.21/105.02 [EXISTS](X) = 0 104.21/105.02 [IMP](X1,X2) = 0 104.21/105.02 [NEG](X) = 0 104.21/105.02 [OR](X1,X2) = 0 104.21/105.02 [RON](X1,X2) = 0 104.21/105.02 [SEQUENT](X1,X2) = 0 104.21/105.02 [SUBSTF](X1,X2) = 0 104.21/105.02 [SUBSTT](X1,X2) = 0 104.21/105.02 [VIRG](X1,X2) = 0 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 SCC Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Strongly Connected Components: 104.21/105.02 ->->Cycle: 104.21/105.02 ->->-> Pairs: 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> FAxioms: 104.21/105.02 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) -> *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) -> virg(x10,x9) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 ->->-> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 Reduction Pairs Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(f))) 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Usable Equations: 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> Usable Rules: 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Interpretation type: 104.21/105.02 Linear 104.21/105.02 ->Coefficients: 104.21/105.02 Natural Numbers 104.21/105.02 ->Dimension: 104.21/105.02 1 104.21/105.02 ->Bound: 104.21/105.02 2 104.21/105.02 ->Interpretation: 104.21/105.02 104.21/105.02 [*](X1,X2) = 0 104.21/105.02 [.](X1,X2) = 0 104.21/105.02 [and](X1,X2) = 2.X1 + 2.X2 + 2 104.21/105.02 [convs](X) = 0 104.21/105.02 [exists](X) = 0 104.21/105.02 [imp](X1,X2) = 0 104.21/105.02 [neg](X) = 2.X + 2 104.21/105.02 [or](X1,X2) = X1 + X2 + 2 104.21/105.02 [ron](X1,X2) = 0 104.21/105.02 [sequent](X1,X2) = 2.X1 + X2 104.21/105.02 [substf](X1,X2) = 0 104.21/105.02 [substt](X1,X2) = 0 104.21/105.02 [virg](X1,X2) = X1 + X2 104.21/105.02 [1] = 0 104.21/105.02 [Pe](X) = 0 104.21/105.02 [convf](X) = X + 2 104.21/105.02 [ef](X) = 0 104.21/105.02 [emptyfset] = 0 104.21/105.02 [emptysset] = 0 104.21/105.02 [forall](X) = 0 104.21/105.02 [id] = 0 104.21/105.02 [shift] = 0 104.21/105.02 [*#](X1,X2) = 0 104.21/105.02 [.#](X1,X2) = 0 104.21/105.02 [AND](X1,X2) = 0 104.21/105.02 [CONVS](X) = X 104.21/105.02 [EXISTS](X) = 0 104.21/105.02 [IMP](X1,X2) = 0 104.21/105.02 [NEG](X) = 0 104.21/105.02 [OR](X1,X2) = 0 104.21/105.02 [RON](X1,X2) = 0 104.21/105.02 [SEQUENT](X1,X2) = 0 104.21/105.02 [SUBSTF](X1,X2) = 0 104.21/105.02 [SUBSTT](X1,X2) = 0 104.21/105.02 [VIRG](X1,X2) = 0 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 SCC Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Strongly Connected Components: 104.21/105.02 ->->Cycle: 104.21/105.02 ->->-> Pairs: 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> FAxioms: 104.21/105.02 *(*(x9,x10),x11) -> *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) -> *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) -> virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) -> virg(x10,x9) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 ->->-> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 Reduction Pairs Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 CONVS(sequent(a,convf(and(f,g)))) -> CONVS(sequent(a,convf(g))) 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Usable Equations: 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> Usable Rules: 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Interpretation type: 104.21/105.02 Linear 104.21/105.02 ->Coefficients: 104.21/105.02 Natural Numbers 104.21/105.02 ->Dimension: 104.21/105.02 1 104.21/105.02 ->Bound: 104.21/105.02 2 104.21/105.02 ->Interpretation: 104.21/105.02 104.21/105.02 [*](X1,X2) = 0 104.21/105.02 [.](X1,X2) = 0 104.21/105.02 [and](X1,X2) = 2.X1 + X2 + 2 104.21/105.02 [convs](X) = 0 104.21/105.02 [exists](X) = 0 104.21/105.02 [imp](X1,X2) = 0 104.21/105.02 [neg](X) = 2.X + 2 104.21/105.02 [or](X1,X2) = X1 + X2 + 2 104.21/105.02 [ron](X1,X2) = 0 104.21/105.02 [sequent](X1,X2) = 2.X1 + X2 104.21/105.02 [substf](X1,X2) = 0 104.21/105.02 [substt](X1,X2) = 0 104.21/105.02 [virg](X1,X2) = X1 + X2 104.21/105.02 [1] = 0 104.21/105.02 [Pe](X) = 0 104.21/105.02 [convf](X) = X + 2 104.21/105.02 [ef](X) = 0 104.21/105.02 [emptyfset] = 0 104.21/105.02 [emptysset] = 0 104.21/105.02 [forall](X) = 0 104.21/105.02 [id] = 0 104.21/105.02 [shift] = 0 104.21/105.02 [*#](X1,X2) = 0 104.21/105.02 [.#](X1,X2) = 0 104.21/105.02 [AND](X1,X2) = 0 104.21/105.02 [CONVS](X) = X 104.21/105.02 [EXISTS](X) = 0 104.21/105.02 [IMP](X1,X2) = 0 104.21/105.02 [NEG](X) = 0 104.21/105.02 [OR](X1,X2) = 0 104.21/105.02 [RON](X1,X2) = 0 104.21/105.02 [SEQUENT](X1,X2) = 0 104.21/105.02 [SUBSTF](X1,X2) = 0 104.21/105.02 [SUBSTT](X1,X2) = 0 104.21/105.02 [VIRG](X1,X2) = 0 104.21/105.02 104.21/105.02 Problem 1.6: 104.21/105.02 104.21/105.02 SCC Processor: 104.21/105.02 -> FAxioms: 104.21/105.02 Empty 104.21/105.02 -> Pairs: 104.21/105.02 Empty 104.21/105.02 -> EAxioms: 104.21/105.02 *(*(x9,x10),x11) = *(x9,*(x10,x11)) 104.21/105.02 *(x9,x10) = *(x10,x9) 104.21/105.02 virg(virg(x9,x10),x11) = virg(x9,virg(x10,x11)) 104.21/105.02 virg(x9,x10) = virg(x10,x9) 104.21/105.02 -> Rules: 104.21/105.02 *(convs(sequent(virg(f,a),virg(g,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,emptyfset))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(convs(sequent(virg(f,a),b)),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(emptyfset,emptyfset)),convs(sequent(a,b))) -> convs(sequent(emptyfset,emptyfset)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,virg(f,b)))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(emptyfset,b)),convs(sequent(a,b))) -> convs(sequent(emptyfset,b)) 104.21/105.02 *(convs(sequent(a,virg(f,b))),convs(sequent(a,b))) -> convs(sequent(a,b)) 104.21/105.02 *(convs(sequent(a,emptyfset)),convs(sequent(a,b))) -> convs(sequent(a,emptyfset)) 104.21/105.02 *(emptysset,a) -> a 104.21/105.02 *(a,a) -> a 104.21/105.02 .(substt(1,s),ron(shift,s)) -> s 104.21/105.02 .(1,shift) -> id 104.21/105.02 and(f,f) -> f 104.21/105.02 convs(sequent(virg(convf(or(f,g)),a),b)) -> *(convs(sequent(virg(convf(f),a),b)),convs(sequent(virg(convf(g),a),b))) 104.21/105.02 convs(sequent(virg(convf(f),a),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(virg(convf(f),a),convf(f))) -> emptysset 104.21/105.02 convs(sequent(convf(or(f,g)),b)) -> *(convs(sequent(convf(f),b)),convs(sequent(convf(g),b))) 104.21/105.02 convs(sequent(convf(f),virg(convf(f),b))) -> emptysset 104.21/105.02 convs(sequent(convf(f),convf(f))) -> emptysset 104.21/105.02 convs(sequent(a,virg(convf(and(f,g)),b))) -> *(convs(sequent(a,virg(convf(f),b))),convs(sequent(a,virg(convf(g),b)))) 104.21/105.02 convs(sequent(a,convf(and(f,g)))) -> *(convs(sequent(a,convf(f))),convs(sequent(a,convf(g)))) 104.21/105.02 exists(f) -> neg(forall(neg(f))) 104.21/105.02 imp(f,g) -> or(neg(f),g) 104.21/105.02 neg(neg(f)) -> f 104.21/105.02 or(f,f) -> f 104.21/105.02 ron(.(x,s),t) -> .(substt(x,t),ron(s,t)) 104.21/105.02 ron(ron(s,t),u) -> ron(s,ron(t,u)) 104.21/105.02 ron(id,s) -> s 104.21/105.02 ron(shift,.(x,s)) -> s 104.21/105.02 ron(s,id) -> s 104.21/105.02 sequent(virg(convf(and(f,g)),a),b) -> sequent(virg(convf(g),virg(convf(f),a)),b) 104.21/105.02 sequent(virg(convf(neg(f)),a),b) -> sequent(a,virg(convf(f),b)) 104.21/105.02 sequent(convf(and(f,g)),b) -> sequent(virg(convf(f),convf(g)),b) 104.21/105.02 sequent(convf(neg(f)),b) -> sequent(emptyfset,virg(convf(f),b)) 104.21/105.02 sequent(a,virg(convf(neg(f)),b)) -> sequent(virg(convf(f),a),b) 104.21/105.02 sequent(a,virg(convf(or(f,g)),b)) -> sequent(a,virg(virg(convf(f),convf(g)),b)) 104.21/105.02 sequent(a,convf(neg(f))) -> sequent(virg(convf(f),a),emptyfset) 104.21/105.02 sequent(a,convf(or(f,g))) -> sequent(a,virg(convf(f),convf(g))) 104.21/105.02 substf(and(f,g),s) -> and(substf(f,s),substf(g,s)) 104.21/105.02 substf(exists(f),s) -> exists(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(imp(f,g),s) -> imp(substf(f,s),substf(g,s)) 104.21/105.02 substf(neg(f),s) -> neg(substf(f,s)) 104.21/105.02 substf(or(f,g),s) -> or(substf(f,s),substf(g,s)) 104.21/105.02 substf(substf(f,s),t) -> substf(f,ron(s,t)) 104.21/105.02 substf(Pe(x),y) -> Pe(substt(x,y)) 104.21/105.02 substf(forall(f),s) -> forall(substf(f,.(1,ron(s,shift)))) 104.21/105.02 substf(f,id) -> f 104.21/105.02 substt(substt(x,s),t) -> substt(x,ron(s,t)) 104.21/105.02 substt(1,.(x,s)) -> x 104.21/105.02 substt(ef(x),y) -> ef(substt(x,y)) 104.21/105.02 substt(x,id) -> x 104.21/105.02 virg(emptyfset,a) -> a 104.21/105.02 virg(a,a) -> a 104.21/105.02 -> SRules: 104.21/105.02 Empty 104.21/105.02 ->Strongly Connected Components: 104.21/105.02 There is no strongly connected component 104.21/105.02 104.21/105.02 The problem is finite. 104.21/105.02 EOF