(0) Obligation:

Clauses:

query(.(C1, .(D1, .(C2, .(D2, []))))) :- ','(density(C1, D1), ','(density(C2, D2), ','(>(D1, D2), ','(is(T1, *(20, D1)), ','(is(T2, *(21, D2)), <(T1, T2)))))).
density(C, D) :- ','(pop(C, P), ','(area(C, A), is(D, /(*(P, 100), A)))).
pop(china, 8250).
area(china, 3380).
pop(india, 5863).
area(india, 1139).
pop(ussr, 2521).
area(ussr, 8708).
pop(usa, 2119).
area(usa, 3609).
pop(indonesia, 1276).
area(indonesia, 570).
pop(japan, 1097).
area(japan, 148).
pop(brazil, 1042).
area(brazil, 3288).
pop(bangladesh, 750).
area(bangladesh, 55).
pop(pakistan, 682).
area(pakistan, 311).
pop(w_germany, 620).
area(w_germany, 96).
pop(nigeria, 613).
area(nigeria, 373).
pop(mexico, 581).
area(mexico, 764).
pop(uk, 559).
area(uk, 86).
pop(italy, 554).
area(italy, 116).
pop(france, 525).
area(france, 213).
pop(phillipines, 415).
area(phillipines, 90).
pop(thailand, 410).
area(thailand, 200).
pop(turkey, 383).
area(turkey, 296).
pop(egypt, 364).
area(egypt, 386).
pop(spain, 352).
area(spain, 190).
pop(poland, 337).
area(poland, 121).
pop(s_korea, 335).
area(s_korea, 37).
pop(iran, 320).
area(iran, 628).
pop(ethiopia, 272).
area(ethiopia, 350).
pop(argentina, 251).
area(argentina, 1080).

Query: query(g)

(1) NoRecursionProof (EQUIVALENT transformation)

The program does not contain any calls to recursive predicates [PROLOG].

(2) BOUNDS(O(1), O(1))