/// Return an [`Explanation`] for why a pattern appears in the egraph.
Return an [`Explanation`] for why a pattern appears in the egraph.
Return an [ ` Explanation ` ] for why a pattern appears in the egraph .
pub fn explain_existance_pattern(
        &mut self,
        pattern: &PatternAst<L>,
        subst: &Subst,
    ) -> Explanation<L> {
        if let Some(explain) = &mut self.explain {
            explain.explain_existance_pattern(pattern, subst, &self.memo, &mut self.unionfind)
        } else {
            panic!("Use runner.with_explanations_enabled() or egraph.with_explanations_enabled() before running to get explanations.")
        }
    }
pub fn explain_existance_pattern ( & mut self , pattern : & PatternAst < L > , subst : & Subst , ) -> Explanation < L > { if let Some ( explain ) = & mut self . explain { explain . explain_existance_pattern ( pattern , subst , & self . memo , & mut self . unionfind ) } else { panic ! ( " " ) } }
Return an [`Explanation`] for why a pattern appears in the egraph.
Return an [ ` Explanation ` ] for why a pattern appears in the egraph .
&mut self
pattern
&PatternAst<L>
subst
&Subst