#lang datalog/sexp ; path test from Chen & Warren (! (edge a b)) (! (edge b c)) (! (edge c d)) (! (edge d a)) (! (:- (path X Y) (edge X Y))) (! (:- (path X Y) (path X Z) (edge Z Y))) (? (path X Y))