pub fn choose_term_filtered_mut<'a, R: Rand, M: Matcher, P: Fn(&Term<M>) -> bool + Copy>( trace: &'a mut Trace<M>, filter: P, constraints: TermConstraints, rand: &mut R) -> Option<&'a mut Term<M>>