0 CpxTRS
↳1 DependencyGraphProof (BOTH BOUNDS(ID, ID), 4 ms)
↳2 CpxTRS
↳3 TrsToWeightedTrsProof (BOTH BOUNDS(ID, ID), 0 ms)
↳4 CpxWeightedTrs
↳5 InnermostUnusableRulesProof (BOTH BOUNDS(ID, ID), 0 ms)
↳6 CpxWeightedTrs
↳7 TypeInferenceProof (BOTH BOUNDS(ID, ID), 0 ms)
↳8 CpxTypedWeightedTrs
↳9 CompletionProof (UPPER BOUND(ID), 0 ms)
↳10 CpxTypedWeightedCompleteTrs
↳11 NarrowingProof (BOTH BOUNDS(ID, ID), 3 ms)
↳12 CpxTypedWeightedCompleteTrs
↳13 CpxTypedWeightedTrsToRntsProof (UPPER BOUND(ID), 0 ms)
↳14 CpxRNTS
↳15 InliningProof (UPPER BOUND(ID), 318 ms)
↳16 CpxRNTS
↳17 SimplificationProof (BOTH BOUNDS(ID, ID), 0 ms)
↳18 CpxRNTS
↳19 CpxRntsAnalysisOrderProof (BOTH BOUNDS(ID, ID), 5 ms)
↳20 CpxRNTS
↳21 IntTrsBoundProof (UPPER BOUND(ID), 194 ms)
↳22 CpxRNTS
↳23 IntTrsBoundProof (UPPER BOUND(ID), 20 ms)
↳24 CpxRNTS
↳25 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳26 CpxRNTS
↳27 IntTrsBoundProof (UPPER BOUND(ID), 149 ms)
↳28 CpxRNTS
↳29 IntTrsBoundProof (UPPER BOUND(ID), 57 ms)
↳30 CpxRNTS
↳31 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳32 CpxRNTS
↳33 IntTrsBoundProof (UPPER BOUND(ID), 182 ms)
↳34 CpxRNTS
↳35 IntTrsBoundProof (UPPER BOUND(ID), 48 ms)
↳36 CpxRNTS
↳37 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳38 CpxRNTS
↳39 IntTrsBoundProof (UPPER BOUND(ID), 134 ms)
↳40 CpxRNTS
↳41 IntTrsBoundProof (UPPER BOUND(ID), 76 ms)
↳42 CpxRNTS
↳43 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳44 CpxRNTS
↳45 IntTrsBoundProof (UPPER BOUND(ID), 164 ms)
↳46 CpxRNTS
↳47 IntTrsBoundProof (UPPER BOUND(ID), 37 ms)
↳48 CpxRNTS
↳49 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳50 CpxRNTS
↳51 IntTrsBoundProof (UPPER BOUND(ID), 144 ms)
↳52 CpxRNTS
↳53 IntTrsBoundProof (UPPER BOUND(ID), 26 ms)
↳54 CpxRNTS
↳55 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳56 CpxRNTS
↳57 IntTrsBoundProof (UPPER BOUND(ID), 155 ms)
↳58 CpxRNTS
↳59 IntTrsBoundProof (UPPER BOUND(ID), 5 ms)
↳60 CpxRNTS
↳61 ResultPropagationProof (UPPER BOUND(ID), 0 ms)
↳62 CpxRNTS
↳63 IntTrsBoundProof (UPPER BOUND(ID), 3203 ms)
↳64 CpxRNTS
↳65 IntTrsBoundProof (UPPER BOUND(ID), 1039 ms)
↳66 CpxRNTS
↳67 FinalProof (⇔, 0 ms)
↳68 BOUNDS(1, n^1)
pairNs → cons(0, n__incr(n__oddNs))
oddNs → incr(pairNs)
incr(cons(X, XS)) → cons(s(X), n__incr(activate(XS)))
take(0, XS) → nil
take(s(N), cons(X, XS)) → cons(X, n__take(N, activate(XS)))
zip(nil, XS) → nil
zip(X, nil) → nil
zip(cons(X, XS), cons(Y, YS)) → cons(pair(X, Y), n__zip(activate(XS), activate(YS)))
tail(cons(X, XS)) → activate(XS)
repItems(nil) → nil
repItems(cons(X, XS)) → cons(X, n__cons(X, n__repItems(activate(XS))))
incr(X) → n__incr(X)
oddNs → n__oddNs
take(X1, X2) → n__take(X1, X2)
zip(X1, X2) → n__zip(X1, X2)
cons(X1, X2) → n__cons(X1, X2)
repItems(X) → n__repItems(X)
activate(n__incr(X)) → incr(activate(X))
activate(n__oddNs) → oddNs
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__zip(X1, X2)) → zip(activate(X1), activate(X2))
activate(n__cons(X1, X2)) → cons(activate(X1), X2)
activate(n__repItems(X)) → repItems(activate(X))
activate(X) → X
zip(nil, XS) → nil
zip(X, nil) → nil
repItems(X) → n__repItems(X)
activate(n__repItems(X)) → repItems(activate(X))
take(s(N), cons(X, XS)) → cons(X, n__take(N, activate(XS)))
activate(X) → X
activate(n__incr(X)) → incr(activate(X))
cons(X1, X2) → n__cons(X1, X2)
incr(cons(X, XS)) → cons(s(X), n__incr(activate(XS)))
oddNs → n__oddNs
take(X1, X2) → n__take(X1, X2)
repItems(cons(X, XS)) → cons(X, n__cons(X, n__repItems(activate(XS))))
zip(cons(X, XS), cons(Y, YS)) → cons(pair(X, Y), n__zip(activate(XS), activate(YS)))
incr(X) → n__incr(X)
activate(n__zip(X1, X2)) → zip(activate(X1), activate(X2))
repItems(nil) → nil
take(0, XS) → nil
activate(n__take(X1, X2)) → take(activate(X1), activate(X2))
activate(n__oddNs) → oddNs
pairNs → cons(0, n__incr(n__oddNs))
oddNs → incr(pairNs)
zip(X1, X2) → n__zip(X1, X2)
activate(n__cons(X1, X2)) → cons(activate(X1), X2)
zip(nil, XS) → nil [1]
zip(X, nil) → nil [1]
repItems(X) → n__repItems(X) [1]
activate(n__repItems(X)) → repItems(activate(X)) [1]
take(s(N), cons(X, XS)) → cons(X, n__take(N, activate(XS))) [1]
activate(X) → X [1]
activate(n__incr(X)) → incr(activate(X)) [1]
cons(X1, X2) → n__cons(X1, X2) [1]
incr(cons(X, XS)) → cons(s(X), n__incr(activate(XS))) [1]
oddNs → n__oddNs [1]
take(X1, X2) → n__take(X1, X2) [1]
repItems(cons(X, XS)) → cons(X, n__cons(X, n__repItems(activate(XS)))) [1]
zip(cons(X, XS), cons(Y, YS)) → cons(pair(X, Y), n__zip(activate(XS), activate(YS))) [1]
incr(X) → n__incr(X) [1]
activate(n__zip(X1, X2)) → zip(activate(X1), activate(X2)) [1]
repItems(nil) → nil [1]
take(0, XS) → nil [1]
activate(n__take(X1, X2)) → take(activate(X1), activate(X2)) [1]
activate(n__oddNs) → oddNs [1]
pairNs → cons(0, n__incr(n__oddNs)) [1]
oddNs → incr(pairNs) [1]
zip(X1, X2) → n__zip(X1, X2) [1]
activate(n__cons(X1, X2)) → cons(activate(X1), X2) [1]
take(s(N), cons(X, XS)) → cons(X, n__take(N, activate(XS))) [1]
incr(cons(X, XS)) → cons(s(X), n__incr(activate(XS))) [1]
repItems(cons(X, XS)) → cons(X, n__cons(X, n__repItems(activate(XS)))) [1]
zip(cons(X, XS), cons(Y, YS)) → cons(pair(X, Y), n__zip(activate(XS), activate(YS))) [1]
cons(X1, X2) → n__cons(X1, X2) [1]
zip(nil, XS) → nil [1]
zip(X, nil) → nil [1]
repItems(X) → n__repItems(X) [1]
activate(n__repItems(X)) → repItems(activate(X)) [1]
activate(X) → X [1]
activate(n__incr(X)) → incr(activate(X)) [1]
cons(X1, X2) → n__cons(X1, X2) [1]
oddNs → n__oddNs [1]
take(X1, X2) → n__take(X1, X2) [1]
incr(X) → n__incr(X) [1]
activate(n__zip(X1, X2)) → zip(activate(X1), activate(X2)) [1]
repItems(nil) → nil [1]
take(0, XS) → nil [1]
activate(n__take(X1, X2)) → take(activate(X1), activate(X2)) [1]
activate(n__oddNs) → oddNs [1]
pairNs → cons(0, n__incr(n__oddNs)) [1]
oddNs → incr(pairNs) [1]
zip(X1, X2) → n__zip(X1, X2) [1]
activate(n__cons(X1, X2)) → cons(activate(X1), X2) [1]
zip(nil, XS) → nil [1]
zip(X, nil) → nil [1]
repItems(X) → n__repItems(X) [1]
activate(n__repItems(X)) → repItems(activate(X)) [1]
activate(X) → X [1]
activate(n__incr(X)) → incr(activate(X)) [1]
cons(X1, X2) → n__cons(X1, X2) [1]
oddNs → n__oddNs [1]
take(X1, X2) → n__take(X1, X2) [1]
incr(X) → n__incr(X) [1]
activate(n__zip(X1, X2)) → zip(activate(X1), activate(X2)) [1]
repItems(nil) → nil [1]
take(0, XS) → nil [1]
activate(n__take(X1, X2)) → take(activate(X1), activate(X2)) [1]
activate(n__oddNs) → oddNs [1]
pairNs → cons(0, n__incr(n__oddNs)) [1]
oddNs → incr(pairNs) [1]
zip(X1, X2) → n__zip(X1, X2) [1]
activate(n__cons(X1, X2)) → cons(activate(X1), X2) [1]
zip :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 nil :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 repItems :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 n__repItems :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 activate :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 n__incr :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 incr :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 cons :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 n__cons :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 oddNs :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 n__oddNs :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 take :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 n__take :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 n__zip :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 → nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 0 :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 pairNs :: nil:n__repItems:n__incr:n__cons:n__oddNs:n__take:n__zip:0 |
(a) The obligation is a constructor system where every type has a constant constructor,
(b) The following defined symbols do not have to be completely defined, as they can never occur inside other defined symbols:
none
(c) The following functions are completely defined:
activate
pairNs
repItems
incr
zip
take
oddNs
cons
Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules:
The TRS has the following type information:
Rewrite Strategy: INNERMOST |
Runtime Complexity Weighted TRS with Types. The TRS R consists of the following rules:
The TRS has the following type information:
Rewrite Strategy: INNERMOST |
nil => 2
n__oddNs => 1
0 => 0
activate(z) -{ 1 }→ X :|: X >= 0, z = X
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(X) :|: z = 1 + X, X >= 0
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(X'))) :|: X' >= 0, z = 1 + (1 + X')
activate(z) -{ 2 }→ repItems(oddNs) :|: z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(X''))) :|: z = 1 + (1 + X''), X'' >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 1 }→ oddNs :|: z = 1
activate(z) -{ 2 }→ incr(X) :|: z = 1 + X, X >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(X3))) :|: z = 1 + (1 + X3), X3 >= 0
activate(z) -{ 2 }→ incr(oddNs) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(X4))) :|: z = 1 + (1 + X4), X4 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(X1, X2) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(oddNs, X2) :|: z = 1 + 1 + X2, X2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
cons(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
incr(z) -{ 1 }→ 1 + X :|: X >= 0, z = X
oddNs -{ 2 }→ incr(cons(0, 1 + 1)) :|:
oddNs -{ 1 }→ 1 :|:
pairNs -{ 1 }→ cons(0, 1 + 1) :|:
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + X :|: X >= 0, z = X
take(z, z') -{ 1 }→ 2 :|: z' = XS, z = 0, XS >= 0
take(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' = XS, XS >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, X >= 0, z = X
zip(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' = XS, XS >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, X >= 0, z = X
zip(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
repItems(z) -{ 1 }→ 1 + X :|: X >= 0, z = X
repItems(z) -{ 1 }→ 2 :|: z = 2
cons(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
take(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
take(z, z') -{ 1 }→ 2 :|: z' = XS, z = 0, XS >= 0
incr(z) -{ 1 }→ 1 + X :|: X >= 0, z = X
oddNs -{ 1 }→ 1 :|:
oddNs -{ 2 }→ incr(cons(0, 1 + 1)) :|:
activate(z) -{ 1 }→ X :|: X >= 0, z = X
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(X'))) :|: X' >= 0, z = 1 + (1 + X')
activate(z) -{ 4 }→ repItems(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(X''))) :|: z = 1 + (1 + X''), X'' >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(X3))) :|: z = 1 + (1 + X3), X3 >= 0
activate(z) -{ 4 }→ incr(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(X4))) :|: z = 1 + (1 + X4), X4 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(cons(0, 1 + 1)) :|: z = 1
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 4 }→ cons(incr(cons(0, 1 + 1)), X2) :|: z = 1 + 1 + X2, X2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ cons(1, X2) :|: z = 1 + 1 + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z = 1 + X, X >= 0, X = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z = 1 + X, X >= 0, X' >= 0, X = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
incr(z) -{ 1 }→ 1 + X :|: X >= 0, z = X
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + X :|: X >= 0, z = X
take(z, z') -{ 1 }→ 2 :|: z' = XS, z = 0, XS >= 0
take(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' = XS, XS >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, X >= 0, z = X
zip(z, z') -{ 1 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, z = X1, z' = X2
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ repItems(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ incr(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(cons(0, 1 + 1)) :|: z = 1
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 4 }→ cons(incr(cons(0, 1 + 1)), z - 2) :|: z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ cons(1, z - 2) :|: z - 2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
{ cons } { take } { zip } { incr } { repItems } { pairNs } { oddNs } { activate } |
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ repItems(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ incr(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(cons(0, 1 + 1)) :|: z = 1
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 4 }→ cons(incr(cons(0, 1 + 1)), z - 2) :|: z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ cons(1, z - 2) :|: z - 2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ repItems(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ incr(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(cons(0, 1 + 1)) :|: z = 1
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 4 }→ cons(incr(cons(0, 1 + 1)), z - 2) :|: z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ cons(1, z - 2) :|: z - 2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: ?, size: O(n1) [1 + z + z'] |
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ repItems(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 4 }→ incr(incr(cons(0, 1 + 1))) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(cons(0, 1 + 1)) :|: z = 1
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 4 }→ cons(incr(cons(0, 1 + 1)), z - 2) :|: z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ cons(1, z - 2) :|: z - 2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: ?, size: O(n1) [2 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: ?, size: O(n1) [1 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: ?, size: O(n1) [1 + z] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ repItems(incr(s')) :|: s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 4 }→ incr(s) :|: s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 5 }→ incr(incr(s2)) :|: s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 3 }→ incr(1) :|: z = 1 + 1
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 5 }→ cons(incr(s1), z - 2) :|: s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 6 }→ repItems(s4) :|: s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 6 }→ repItems(s4) :|: s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: ?, size: O(n1) [1 + z] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 6 }→ repItems(s4) :|: s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 3 }→ repItems(1) :|: z = 1 + 1
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: ?, size: O(1) [3] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] oddNs: runtime: ?, size: O(1) [4] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] oddNs: runtime: O(1) [4], size: O(1) [4] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] oddNs: runtime: O(1) [4], size: O(1) [4] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] oddNs: runtime: O(1) [4], size: O(1) [4] activate: runtime: ?, size: O(n2) [56 + 126·z + 28·z2] |
activate(z) -{ 4 }→ s'' :|: s'' >= 0, s'' <= 1 * 1 + 1 * (z - 2) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s10 :|: s10 >= 0, s10 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s11 :|: s11 >= 0, s11 <= 1 * s4 + 1, s4 >= 0, s4 <= 1 * s' + 1, s' >= 0, s' <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 5 }→ s3 :|: s3 >= 0, s3 <= 1 * s + 1, s >= 0, s <= 1 * 0 + 1 * (1 + 1) + 1, z = 1
activate(z) -{ 7 }→ s6 :|: s5 >= 0, s5 <= 1 * s1 + 1, s6 >= 0, s6 <= 1 * s5 + 1 * (z - 2) + 1, s1 >= 0, s1 <= 1 * 0 + 1 * (1 + 1) + 1, z - 2 >= 0
activate(z) -{ 4 }→ s7 :|: s7 >= 0, s7 <= 1 * 1 + 1, z = 1 + 1
activate(z) -{ 7 }→ s9 :|: s8 >= 0, s8 <= 1 * s2 + 1, s9 >= 0, s9 <= 1 * s8 + 1, s2 >= 0, s2 <= 1 * 0 + 1 * (1 + 1) + 1, z = 1 + 1
activate(z) -{ 1 }→ z :|: z >= 0
activate(z) -{ 1 }→ zip(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 1 }→ take(activate(X1), activate(X2)) :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2
activate(z) -{ 2 }→ repItems(zip(activate(X1'), activate(X2'))) :|: z = 1 + (1 + X1' + X2'), X2' >= 0, X1' >= 0
activate(z) -{ 2 }→ repItems(take(activate(X1''), activate(X2''))) :|: X1'' >= 0, z = 1 + (1 + X1'' + X2''), X2'' >= 0
activate(z) -{ 2 }→ repItems(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ repItems(cons(activate(X11), X21)) :|: z = 1 + (1 + X11 + X21), X11 >= 0, X21 >= 0
activate(z) -{ 2 }→ incr(zip(activate(X12), activate(X22))) :|: X12 >= 0, X22 >= 0, z = 1 + (1 + X12 + X22)
activate(z) -{ 2 }→ incr(take(activate(X13), activate(X23))) :|: z = 1 + (1 + X13 + X23), X13 >= 0, X23 >= 0
activate(z) -{ 2 }→ incr(repItems(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(incr(activate(z - 2))) :|: z - 2 >= 0
activate(z) -{ 2 }→ incr(cons(activate(X14), X24)) :|: z = 1 + (1 + X14 + X24), X14 >= 0, X24 >= 0
activate(z) -{ 2 }→ cons(zip(activate(X153), activate(X253)), X2) :|: z = 1 + (1 + X153 + X253) + X2, X253 >= 0, X153 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(take(activate(X154), activate(X254)), X2) :|: X154 >= 0, X254 >= 0, z = 1 + (1 + X154 + X254) + X2, X2 >= 0
activate(z) -{ 2 }→ cons(repItems(activate(X55)), X2) :|: X2 >= 0, z = 1 + (1 + X55) + X2, X55 >= 0
activate(z) -{ 2 }→ cons(incr(activate(X56)), X2) :|: z = 1 + (1 + X56) + X2, X56 >= 0, X2 >= 0
activate(z) -{ 2 }→ cons(cons(activate(X155), X255), X2) :|: X255 >= 0, X155 >= 0, z = 1 + (1 + X155 + X255) + X2, X2 >= 0
activate(z) -{ 3 }→ 2 :|: z - 1 >= 0, z - 1 = 2
activate(z) -{ 2 }→ 1 :|: z = 1
activate(z) -{ 3 }→ 1 + X' :|: z - 1 >= 0, X' >= 0, z - 1 = X'
activate(z) -{ 3 }→ 1 + X1' + X2' :|: X1 >= 0, X2 >= 0, z = 1 + X1 + X2, X1' >= 0, X2' >= 0, X1 = X1', X2 = X2'
cons(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
incr(z) -{ 1 }→ 1 + z :|: z >= 0
oddNs -{ 1 }→ 1 :|:
oddNs -{ 4 }→ 1 + X :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2, X >= 0, 1 + X1 + X2 = X
pairNs -{ 2 }→ 1 + X1 + X2 :|: X1 >= 0, X2 >= 0, 0 = X1, 1 + 1 = X2
repItems(z) -{ 1 }→ 2 :|: z = 2
repItems(z) -{ 1 }→ 1 + z :|: z >= 0
take(z, z') -{ 1 }→ 2 :|: z = 0, z' >= 0
take(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z = 2, z' >= 0
zip(z, z') -{ 1 }→ 2 :|: z' = 2, z >= 0
zip(z, z') -{ 1 }→ 1 + z + z' :|: z >= 0, z' >= 0
cons: runtime: O(1) [1], size: O(n1) [1 + z + z'] take: runtime: O(1) [1], size: O(n1) [2 + z + z'] zip: runtime: O(1) [1], size: O(n1) [1 + z + z'] incr: runtime: O(1) [1], size: O(n1) [1 + z] repItems: runtime: O(1) [1], size: O(n1) [1 + z] pairNs: runtime: O(1) [2], size: O(1) [3] oddNs: runtime: O(1) [4], size: O(1) [4] activate: runtime: O(n1) [100 + 200·z], size: O(n2) [56 + 126·z + 28·z2] |