YES Problem 1: (VAR v_NonEmpty:S x1:S) (RULES P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ) Problem 1: Dependency Pairs Processor: -> Pairs: P#(x1:S) -> Q#(Q(p(x1:S))) P#(x1:S) -> Q#(p(x1:S)) P#(x1:S) -> p#(x1:S) Q#(p(q(x1:S))) -> Q#(x1:S) Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: SCC Processor: -> Pairs: P#(x1:S) -> Q#(Q(p(x1:S))) P#(x1:S) -> Q#(p(x1:S)) P#(x1:S) -> p#(x1:S) Q#(p(q(x1:S))) -> Q#(x1:S) Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> Q#(x1:S) Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> Q#(x1:S) Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = 2.X + 2 [Q#](X) = 2.X + 1 [p#](X) = 2.X + 1 [q#](X) = 2.X + 1 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> p#(Q(x1:S)) Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = 2.X + 2 [Q#](X) = 2.X + 2 [p#](X) = 2.X + 2 [q#](X) = 2.X + 2 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> Q#(p(x1:S)) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = 2.X + 2 [Q#](X) = X + 2 [p#](X) = X + 2 [q#](X) = X + 2 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(Q(Q(x1:S))) -> p#(x1:S) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = 2.X [Q](X) = 2.X + 1 [p](X) = 2.X + 1 [q](X) = 2.X + 1 [Q#](X) = 2.X + 2 [p#](X) = 2.X + 2 [q#](X) = 2.X + 2 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(p(x1:S)) -> q#(q(x1:S)) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = 2.X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = X [Q#](X) = 2.X + 2 [p#](X) = 2.X + 2 [q#](X) = X Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) p#(p(x1:S)) -> q#(x1:S) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = 2.X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = 2.X + 2 [Q#](X) = 2.X + 2 [p#](X) = 2.X + 2 [q#](X) = 2.X + 2 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(q(x1:S)) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = 2.X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = 2.X + 2 [Q#](X) = 2.X + 2 [p#](X) = 2.X + 2 [q#](X) = 2.X + 2 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(x1:S) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) q#(q(p(x1:S))) -> q#(x1:S) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: Natural Numbers ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = X [Q](X) = 2.X + 2 [p](X) = 2.X + 2 [q](X) = 2.X + 2 [Q#](X) = 2.X + 2 [p#](X) = 2.X + 2 [q#](X) = 2.X + 2 Problem 1: SCC Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: ->->Cycle: ->->-> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) ->->-> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) Problem 1: Reduction Pair Processor: -> Pairs: Q#(p(q(x1:S))) -> q#(p(Q(x1:S))) p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) -> Usable rules: Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Interpretation type: Linear ->Coefficients: All rationals ->Dimension: 1 ->Bound: 2 ->Interpretation: [P](X) = 1/2.X [Q](X) = 2.X + 1/2 [p](X) = 2.X [q](X) = 1/2.X [Q#](X) = 2.X + 2 [p#](X) = 2.X + 1 [q#](X) = 1/2.X + 1 Problem 1: SCC Processor: -> Pairs: p#(Q(Q(x1:S))) -> Q#(Q(p(x1:S))) q#(q(p(x1:S))) -> p#(q(q(x1:S))) -> Rules: P(p(x1:S)) -> x1:S P(x1:S) -> Q(Q(p(x1:S))) Q(p(q(x1:S))) -> q(p(Q(x1:S))) Q(q(x1:S)) -> x1:S p(P(x1:S)) -> x1:S p(Q(Q(x1:S))) -> Q(Q(p(x1:S))) p(p(x1:S)) -> q(q(x1:S)) q(Q(x1:S)) -> x1:S q(q(p(x1:S))) -> p(q(q(x1:S))) ->Strongly Connected Components: There is no strongly connected component The problem is finite.