TorchLean API

NN.MLTheory.CROWN.Graph.Engine.IBP

Interval Bound Propagation #

This module runs the flat graph IBP pass. It computes one interval box per node from input boxes, constant tensors, and per-op interval transfer rules. The proof layer states the topological and shape hypotheses; this executable pass is the checker-facing computation they refer to.

Enclose real SiLU by multiplying the input box and its sigmoid enclosure.

This is a real-function enclosure, not a bound on the rounding error of a native SiLU kernel.

Instances For
    def NN.MLTheory.CROWN.Graph.ibpStepNodeAt? {α : Type} [TorchLean.Storage α] [Context α] [BoundOps α] [NonlinearBoundOps α] (nodes : Array Node) (ps : ParamStore α) (boxes : Array (Option (FlatBox α))) (id : ℕ) (node : Node) :

    Compute one interval transfer. Missing parents and unavailable transfers return none.

    Instances For
      def NN.MLTheory.CROWN.Graph.propagateIBPNodeAt {α : Type} [TorchLean.Storage α] [Context α] [BoundOps α] [NonlinearBoundOps α] (nodes : Array Node) (ps : ParamStore α) (boxes : Array (Option (FlatBox α))) (id : ℕ) (node : Node) :

      Store the result of one transfer, clearing any previous result if the transfer fails.

      Instances For

        Propagate one node. Missing nodes or parent boxes leave the result unresolved.

        Instances For

          Run an IBP pass over the whole graph. Caller seeds inputs via ParamStore.inputBoxes.

          The body is exposed so that the proof layer can relate this pass to CertSoundness.runIBP?.

          Instances For