Floats integration for CROWN (optional) #
This module bridges the CROWN bound-propagation development with the Floats infrastructure. It provides rounded-arithmetic variants of a few bound-propagation helpers, intended for experiments where you want the CROWN computations themselves to follow an explicit rounding model.
This is not required for the core CROWN proof layer and is grouped under
NN/MLTheory/CROWN/Extras/.
Rounded multiply-add helper: round(a*b) then round(acc + ·).
Instances For
Rounded add
Instances For
Rounded mul
Instances For
Rounded max of two reals (stable under rounding by evaluating in ℝ, then rounding).
Instances For
Rounded min of two reals (stable under rounding by evaluating in ℝ, then rounding).
Instances For
Interval (IBP) linear layer with rounded arithmetic.
Instances For
Interval ReLU with float rounding: computes min/max of relu over bounds then rounds.
Instances For
Rounded matrix-vector multiplication (m×n by n)
Instances For
Rounded matrix-matrix multiplication (m×n by n×p)
Instances For
Rounded column scaling: multiply each column j by v[j].
Instances For
Instances For
Instances For
Rounded elementwise add and mul on vectors
Instances For
Instances For
Evaluate affine on a box with rounding (vector case).
Instances For
Affine (CROWN) bounds with rounding for a 2-layer MLP
Instances For
End-to-end rounded IBP for 2-layer MLP (mirrors CROWN.bound_ibp).
Instances For
Public API: float-rounded CROWN IBP bounds wrapper with default config.
Instances For
Public API: float-rounded (IBP, Affine) bounds wrapper, mirroring CROWN.Examples.
Instances For
Rounded vector ReLU.
Instances For
Rounded forward pass for a 2-layer MLP (linear → ReLU → linear).
Instances For
Round every scalar in a vector tensor to the target float grid.
Instances For
Round every scalar in a matrix tensor to the target float grid.
Instances For
Pre-quantize an MLP2's parameters (W1, b1, W2, b2) onto the float grid.