(0) Obligation:

Clauses:

list([]).
list(X) :- ','(no(empty(X)), ','(tail(X, T), list(T))).
tail([], []).
tail(.(X, Xs), Xs).
empty(X).
no(X) :- ','(X, ','(!, failure(a))).
no(X1).
failure(b).

Query: list(g)

(1) PrologToCdtProblemTransformerProof (UPPER BOUND (ID) transformation)

Built complexity over-approximating cdt problems from derivation graph.

(2) Obligation:

Complexity Dependency Tuples Problem
Rules:

f2_in([]) → f2_out1
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:

f2_in

Defined Pair Symbols:none

Compound Symbols:none

(3) SIsEmptyProof (EQUIVALENT transformation)

The set S is empty

(4) BOUNDS(O(1), O(1))

(5) PrologToCdtProblemTransformerProof (UPPER BOUND (ID) transformation)

Built complexity over-approximating cdt problems from derivation graph.

(6) Obligation:

Complexity Dependency Tuples Problem
Rules:

f1_in([]) → f1_out1
Tuples:none
S tuples:none
K tuples:none
Defined Rule Symbols:

f1_in

Defined Pair Symbols:none

Compound Symbols:none