Canonical miniKanren implementation in Racket