package prolog import prolog.ast.terms.Term abstract class Substitution(val from: Term, val to: Term) { val mapped: Pair? = if (from != to) from to to else null override fun toString(): String = "$from -> $to" } typealias Substitutions = Map typealias Answer = Result typealias Answers = Sequence