boundlab.diff.zono3.keep_diff#

boundlab.diff.zono3.keep_diff(inner)[source]#

Lift a domain’s after_each normaliser over differential components.

A node whose result mixes a differential expression with a shared one (a bias add, a residual constant) produces an ExprGroup — the base Expr.__add__ has no differential rules — so each result is first folded back into a pair or triple by lift_diff(). Constant (Bias) components are left alone: paired weights stay concrete, which keeps every product involving them exact.