boundlab.zono.interpret#

boundlab.zono.interpret = {<class 'boundlab.ibp.matmul.MatmulBiased'>: <boundlab.ibp.matmul.MatmulBiased object>, <class 'boundlab.ibp.softmax.Softmax2ExpReciprocal'>: Softmax2ExpReciprocal(op='softmax', interp_exp=None, interp_reciprocal=None), <class 'boundlab.interp.Add'>: Add(op='add'), <class 'boundlab.interp.BroadcastTo'>: BroadcastTo(op='broadcast_to'), <class 'boundlab.interp.Cast'>: Cast(op='cast'), <class 'boundlab.interp.Identity'>: Identity(op='identity'), <class 'boundlab.interp.Neg'>: Neg(op='neg'), <class 'boundlab.interp.ReduceMean'>: ReduceMean(op='reduce_mean'), <class 'boundlab.interp.ReduceSum'>: ReduceSum(op='reduce_sum'), <class 'boundlab.interp.Reshape'>: Reshape(op='reshape'), <class 'boundlab.interp.Squeeze'>: Squeeze(op='squeeze'), <class 'boundlab.interp.Sub'>: Sub(op='sub'), <class 'boundlab.interp.Transpose'>: Transpose(op='transpose'), <class 'boundlab.interp.Unsqueeze'>: Unsqueeze(op='unsqueeze'), <class 'boundlab.interp.base.DivSimple'>: <boundlab.interp.base.DivSimple object>, <class 'boundlab.interp.base.Gemm'>: <boundlab.interp.base.Gemm object>, <class 'boundlab.interp.base.MarkedIdentity'>: <boundlab.interp.base.MarkedIdentity object>, <class 'boundlab.interp.base.MatmulSimple'>: <boundlab.interp.base.MatmulSimple object>, <class 'boundlab.interp.base.MulSimple'>: <boundlab.interp.base.MulSimple object>, <class 'boundlab.zono.linearizers.Exp'>: Exp(op='exp', apply_bound=<function linearizer_fn.<locals>.decorator.<locals>.LinearizerHandler.<lambda>>), <class 'boundlab.zono.linearizers.MaxWithConst2Relu'>: <boundlab.zono.linearizers.MaxWithConst2Relu object>, <class 'boundlab.zono.linearizers.Reciprocal'>: Reciprocal(op='reciprocal', apply_bound=<function linearizer_fn.<locals>.decorator.<locals>.LinearizerHandler.<lambda>>), <class 'boundlab.zono.linearizers.Relu'>: Relu(op='relu', apply_bound=<function linearizer_fn.<locals>.decorator.<locals>.LinearizerHandler.<lambda>>), <class 'boundlab.zono.linearizers.Tanh'>: Tanh(op='tanh', apply_bound=<function linearizer_fn.<locals>.decorator.<locals>.LinearizerHandler.<lambda>>), <class 'boundlab.zono.matmul.Matmul'>: <boundlab.zono.matmul.Matmul object>}#

The zonotope interpreter.

Extends boundlab.interp.base.interpret with the biased matmul split, the zonotope × zonotope Matmul estimate, the affine linearizers for relu/exp/tanh/reciprocal, and the softmax decomposition; keep_zono promotes every fresh Noise residual to a new error symbol after each node.