// TODO: This ignores the first element of the stack, but that is kind of difficult to deal with.
write_terms.reserve(rhs_stack.stack_size - 1); // We already reserved space for the result.
InnermostStack::add_result(write_configs, symbol.copy(), *arity, top_of_stack + offset - 1);
/// The innermost rewrite stack for the right hand side and the positions that must be added to the stack.
InnermostStack::integrate(&mut stack.configs.write(), &mut stack.terms.write(), self, term, 0);
RHSStack::new(&create_rewrite_rule(&mut tp, "fact(s(N))", "times(s(N), fact(N))", &["N"]).unwrap());