(0) Obligation:
Runtime Complexity TRS:
The TRS R consists of the following rules:
group3(@l) → group3#1(@l)
group3#1(::(@x, @xs)) → group3#2(@xs, @x)
group3#1(nil) → nil
group3#2(::(@y, @ys), @x) → group3#3(@ys, @x, @y)
group3#2(nil, @x) → nil
group3#3(::(@z, @zs), @x, @y) → ::(tuple#3(@x, @y, @z), group3(@zs))
group3#3(nil, @x, @y) → nil
zip3(@l1, @l2, @l3) → zip3#1(@l1, @l2, @l3)
zip3#1(::(@x, @xs), @l2, @l3) → zip3#2(@l2, @l3, @x, @xs)
zip3#1(nil, @l2, @l3) → nil
zip3#2(::(@y, @ys), @l3, @x, @xs) → zip3#3(@l3, @x, @xs, @y, @ys)
zip3#2(nil, @l3, @x, @xs) → nil
zip3#3(::(@z, @zs), @x, @xs, @y, @ys) → ::(tuple#3(@x, @y, @z), zip3(@xs, @ys, @zs))
zip3#3(nil, @x, @xs, @y, @ys) → nil
Rewrite Strategy: INNERMOST
(1) DecreasingLoopProof (EQUIVALENT transformation)
The following loop(s) give(s) rise to the lower bound Ω(n1):
The rewrite sequence
group3(::(@x2_0, ::(@y44_0, ::(@z128_0, @zs129_0)))) →+ ::(tuple#3(@x2_0, @y44_0, @z128_0), group3(@zs129_0))
gives rise to a decreasing loop by considering the right hand sides subterm at position [1].
The pumping substitution is [@zs129_0 / ::(@x2_0, ::(@y44_0, ::(@z128_0, @zs129_0)))].
The result substitution is [ ].
(2) BOUNDS(n^1, INF)
(3) RenamingProof (EQUIVALENT transformation)
Renamed function symbols to avoid clashes with predefined symbol.
(4) Obligation:
Runtime Complexity Relative TRS:
The TRS R consists of the following rules:
group3(@l) → group3#1(@l)
group3#1(::(@x, @xs)) → group3#2(@xs, @x)
group3#1(nil) → nil
group3#2(::(@y, @ys), @x) → group3#3(@ys, @x, @y)
group3#2(nil, @x) → nil
group3#3(::(@z, @zs), @x, @y) → ::(tuple#3(@x, @y, @z), group3(@zs))
group3#3(nil, @x, @y) → nil
zip3(@l1, @l2, @l3) → zip3#1(@l1, @l2, @l3)
zip3#1(::(@x, @xs), @l2, @l3) → zip3#2(@l2, @l3, @x, @xs)
zip3#1(nil, @l2, @l3) → nil
zip3#2(::(@y, @ys), @l3, @x, @xs) → zip3#3(@l3, @x, @xs, @y, @ys)
zip3#2(nil, @l3, @x, @xs) → nil
zip3#3(::(@z, @zs), @x, @xs, @y, @ys) → ::(tuple#3(@x, @y, @z), zip3(@xs, @ys, @zs))
zip3#3(nil, @x, @xs, @y, @ys) → nil
S is empty.
Rewrite Strategy: INNERMOST
(5) SlicingProof (LOWER BOUND(ID) transformation)
Sliced the following arguments:
::/0
group3#2/1
group3#3/1
group3#3/2
tuple#3/0
tuple#3/1
tuple#3/2
zip3#2/2
zip3#3/1
zip3#3/3
(6) Obligation:
Runtime Complexity Relative TRS:
The TRS R consists of the following rules:
group3(@l) → group3#1(@l)
group3#1(::(@xs)) → group3#2(@xs)
group3#1(nil) → nil
group3#2(::(@ys)) → group3#3(@ys)
group3#2(nil) → nil
group3#3(::(@zs)) → ::(group3(@zs))
group3#3(nil) → nil
zip3(@l1, @l2, @l3) → zip3#1(@l1, @l2, @l3)
zip3#1(::(@xs), @l2, @l3) → zip3#2(@l2, @l3, @xs)
zip3#1(nil, @l2, @l3) → nil
zip3#2(::(@ys), @l3, @xs) → zip3#3(@l3, @xs, @ys)
zip3#2(nil, @l3, @xs) → nil
zip3#3(::(@zs), @xs, @ys) → ::(zip3(@xs, @ys, @zs))
zip3#3(nil, @xs, @ys) → nil
S is empty.
Rewrite Strategy: INNERMOST
(7) TypeInferenceProof (BOTH BOUNDS(ID, ID) transformation)
Infered types.
(8) Obligation:
Innermost TRS:
Rules:
group3(@l) → group3#1(@l)
group3#1(::(@xs)) → group3#2(@xs)
group3#1(nil) → nil
group3#2(::(@ys)) → group3#3(@ys)
group3#2(nil) → nil
group3#3(::(@zs)) → ::(group3(@zs))
group3#3(nil) → nil
zip3(@l1, @l2, @l3) → zip3#1(@l1, @l2, @l3)
zip3#1(::(@xs), @l2, @l3) → zip3#2(@l2, @l3, @xs)
zip3#1(nil, @l2, @l3) → nil
zip3#2(::(@ys), @l3, @xs) → zip3#3(@l3, @xs, @ys)
zip3#2(nil, @l3, @xs) → nil
zip3#3(::(@zs), @xs, @ys) → ::(zip3(@xs, @ys, @zs))
zip3#3(nil, @xs, @ys) → nil
Types:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
(9) OrderProof (LOWER BOUND(ID) transformation)
Heuristically decided to analyse the following defined symbols:
group3,
group3#1,
group3#2,
group3#3,
zip3,
zip3#1,
zip3#2,
zip3#3They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
zip3 = zip3#1
zip3 = zip3#2
zip3 = zip3#3
zip3#1 = zip3#2
zip3#1 = zip3#3
zip3#2 = zip3#3
(10) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
zip3#1, group3, group3#1, group3#2, group3#3, zip3, zip3#2, zip3#3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
zip3 = zip3#1
zip3 = zip3#2
zip3 = zip3#3
zip3#1 = zip3#2
zip3#1 = zip3#3
zip3#2 = zip3#3
(11) RewriteLemmaProof (LOWER BOUND(ID) transformation)
Proved the following rewrite lemma:
zip3#1(
gen_:::nil2_0(
n4_0),
gen_:::nil2_0(
n4_0),
gen_:::nil2_0(
n4_0)) →
gen_:::nil2_0(
n4_0), rt ∈ Ω(1 + n4
0)
Induction Base:
zip3#1(gen_:::nil2_0(0), gen_:::nil2_0(0), gen_:::nil2_0(0)) →RΩ(1)
nil
Induction Step:
zip3#1(gen_:::nil2_0(+(n4_0, 1)), gen_:::nil2_0(+(n4_0, 1)), gen_:::nil2_0(+(n4_0, 1))) →RΩ(1)
zip3#2(gen_:::nil2_0(+(n4_0, 1)), gen_:::nil2_0(+(n4_0, 1)), gen_:::nil2_0(n4_0)) →RΩ(1)
zip3#3(gen_:::nil2_0(+(1, n4_0)), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) →RΩ(1)
::(zip3(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0))) →RΩ(1)
::(zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0))) →IH
::(gen_:::nil2_0(c5_0))
We have rt ∈ Ω(n1) and sz ∈ O(n). Thus, we have ircR ∈ Ω(n).
(12) Complex Obligation (BEST)
(13) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
zip3#2, group3, group3#1, group3#2, group3#3, zip3, zip3#3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
zip3 = zip3#1
zip3 = zip3#2
zip3 = zip3#3
zip3#1 = zip3#2
zip3#1 = zip3#3
zip3#2 = zip3#3
(14) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol zip3#2.
(15) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
zip3#3, group3, group3#1, group3#2, group3#3, zip3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
zip3 = zip3#1
zip3 = zip3#2
zip3 = zip3#3
zip3#1 = zip3#2
zip3#1 = zip3#3
zip3#2 = zip3#3
(16) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol zip3#3.
(17) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
zip3, group3, group3#1, group3#2, group3#3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
zip3 = zip3#1
zip3 = zip3#2
zip3 = zip3#3
zip3#1 = zip3#2
zip3#1 = zip3#3
zip3#2 = zip3#3
(18) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol zip3.
(19) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
group3#1, group3, group3#2, group3#3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
(20) RewriteLemmaProof (LOWER BOUND(ID) transformation)
Proved the following rewrite lemma:
group3#1(
gen_:::nil2_0(
*(
3,
n929_0))) →
gen_:::nil2_0(
n929_0), rt ∈ Ω(1 + n929
0)
Induction Base:
group3#1(gen_:::nil2_0(*(3, 0))) →RΩ(1)
nil
Induction Step:
group3#1(gen_:::nil2_0(*(3, +(n929_0, 1)))) →RΩ(1)
group3#2(gen_:::nil2_0(+(2, *(3, n929_0)))) →RΩ(1)
group3#3(gen_:::nil2_0(+(1, *(3, n929_0)))) →RΩ(1)
::(group3(gen_:::nil2_0(*(3, n929_0)))) →RΩ(1)
::(group3#1(gen_:::nil2_0(*(3, n929_0)))) →IH
::(gen_:::nil2_0(c930_0))
We have rt ∈ Ω(n1) and sz ∈ O(n). Thus, we have ircR ∈ Ω(n).
(21) Complex Obligation (BEST)
(22) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
group3#1(gen_:::nil2_0(*(3, n929_0))) → gen_:::nil2_0(n929_0), rt ∈ Ω(1 + n9290)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
group3#2, group3, group3#3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
(23) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol group3#2.
(24) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
group3#1(gen_:::nil2_0(*(3, n929_0))) → gen_:::nil2_0(n929_0), rt ∈ Ω(1 + n9290)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
group3#3, group3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
(25) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol group3#3.
(26) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
group3#1(gen_:::nil2_0(*(3, n929_0))) → gen_:::nil2_0(n929_0), rt ∈ Ω(1 + n9290)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
The following defined symbols remain to be analysed:
group3
They will be analysed ascendingly in the following order:
group3 = group3#1
group3 = group3#2
group3 = group3#3
group3#1 = group3#2
group3#1 = group3#3
group3#2 = group3#3
(27) NoRewriteLemmaProof (LOWER BOUND(ID) transformation)
Could not prove a rewrite lemma for the defined symbol group3.
(28) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
group3#1(gen_:::nil2_0(*(3, n929_0))) → gen_:::nil2_0(n929_0), rt ∈ Ω(1 + n9290)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
No more defined symbols left to analyse.
(29) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n1) was proven with the following lemma:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
(30) BOUNDS(n^1, INF)
(31) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
group3#1(gen_:::nil2_0(*(3, n929_0))) → gen_:::nil2_0(n929_0), rt ∈ Ω(1 + n9290)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
No more defined symbols left to analyse.
(32) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n1) was proven with the following lemma:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
(33) BOUNDS(n^1, INF)
(34) Obligation:
Innermost TRS:
Rules:
group3(
@l) →
group3#1(
@l)
group3#1(
::(
@xs)) →
group3#2(
@xs)
group3#1(
nil) →
nilgroup3#2(
::(
@ys)) →
group3#3(
@ys)
group3#2(
nil) →
nilgroup3#3(
::(
@zs)) →
::(
group3(
@zs))
group3#3(
nil) →
nilzip3(
@l1,
@l2,
@l3) →
zip3#1(
@l1,
@l2,
@l3)
zip3#1(
::(
@xs),
@l2,
@l3) →
zip3#2(
@l2,
@l3,
@xs)
zip3#1(
nil,
@l2,
@l3) →
nilzip3#2(
::(
@ys),
@l3,
@xs) →
zip3#3(
@l3,
@xs,
@ys)
zip3#2(
nil,
@l3,
@xs) →
nilzip3#3(
::(
@zs),
@xs,
@ys) →
::(
zip3(
@xs,
@ys,
@zs))
zip3#3(
nil,
@xs,
@ys) →
nilTypes:
group3 :: :::nil → :::nil
group3#1 :: :::nil → :::nil
:: :: :::nil → :::nil
group3#2 :: :::nil → :::nil
nil :: :::nil
group3#3 :: :::nil → :::nil
zip3 :: :::nil → :::nil → :::nil → :::nil
zip3#1 :: :::nil → :::nil → :::nil → :::nil
zip3#2 :: :::nil → :::nil → :::nil → :::nil
zip3#3 :: :::nil → :::nil → :::nil → :::nil
hole_:::nil1_0 :: :::nil
gen_:::nil2_0 :: Nat → :::nil
Lemmas:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
Generator Equations:
gen_:::nil2_0(0) ⇔ nil
gen_:::nil2_0(+(x, 1)) ⇔ ::(gen_:::nil2_0(x))
No more defined symbols left to analyse.
(35) LowerBoundsProof (EQUIVALENT transformation)
The lowerbound Ω(n1) was proven with the following lemma:
zip3#1(gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0), gen_:::nil2_0(n4_0)) → gen_:::nil2_0(n4_0), rt ∈ Ω(1 + n40)
(36) BOUNDS(n^1, INF)