1% DELAYING META-INTERPRETER
    2% CILog code. Copyright David Poole, 1997.
    3
    4% dprove(G,D0,D1) is true if G can be proven from the delayables in D1-D0
    5%   where D0 is a tail of D1.
   11dprove(true,D,D).
   12dprove((A & B),D1,D3) <-
   13   dprove(A,D1,D2) &
   14   dprove(B,D2,D3).
   15dprove(G,D,[G|D]) <-
   16   delay(G).
   17dprove(H,D1,D2) <-
   18   (H <= B) &
   19   dprove(B,D1,D2)