Forward chaining and iterative backward chaining for inference in first-order logic. Efficient knowledge-base indexing. Python API and a (partial) Prolog interpreter.