async d(4). a(30). c(30). a(A):-b(A). a(A):-d(A). b(3,A):-a(A),not c(B),a(B). task(B, A):-b(A,B). task(30, 3)? ---- ---- task(30, 3) -> b(3, 30) -> a(30) -> not c(4) -> a(4) -> d(4) ---- ---- (no newline)