pub trait SubtypeRule<Split: SplitStrategy>: CheckerRule {
// Required methods
fn applicable(
&self,
checker: &CheckRef<'_, '_, Split>,
sub: &Term,
sup: &Term,
) -> bool;
fn apply<'t>(
&self,
checker: CheckRef<'t, '_, Split>,
sub: &'t Term,
sup: &'t Term,
) -> Option<bool>;
}