PINN CLI #
PINN residual-bounding CLI.
This file implements a small interactive tool for bounding PDE residuals of a trained physics-informed neural network (PINN) over a box input region. Concretely, it:
- parses a compact PDE mini-language (see
PdeAst/PdeParse), - evaluates that expression using interval bounds for
u,du, andd2u, - computes those primitive bounds via IBP/CROWN-style propagation on a CROWN
Graph, - optionally tightens bounds by recursively splitting the input box (1D/2D).
This CLI is the interactive PINN residual-bound tool:
- use it when you want to inspect residual bounds interactively;
- use it when you are iterating on a PDE expression or input box;
- use the certificate checker when you want a stable artifact for docs, papers, or CI.
The stable artifact checker is:
lake exe verify -- pinn-cert [NN/Examples/Verification/PINN/pinn_cert.json]
Run this CLI via the unified verification dispatcher:
lake exe verify -- pinn-cli -- [flags] "<PDE>" x eps
or for 2D:
lake exe verify -- pinn-cli -- [flags] "<PDE>" x y eps
Examples:
lake exe verify -- pinn-cli -- "u_xx + u" 0.0 0.1lake exe verify -- pinn-cli -- --backend=float "u_t - u_xx" 0.0 0.05
References:
- PINNs:
https://arxiv.org/abs/1711.10561 - IBP:
https://arxiv.org/abs/1810.12715 - CROWN:
https://arxiv.org/abs/1811.00866
Instances For
Compute primitives using a rounded backend α = NF with single-precision nearest-even.
Instances For
Instances For
Instances For
Compute primitives u, duX, duY, d2uX, d2uY at the unique output node (id=5) for 1D/2D models.
Optionally, replace the u-interval with a tighter CROWN/DeepPoly bound.
- ibp : UBoundsMethod
- crownFwd : UBoundsMethod
- crownBwd : UBoundsMethod
Instances For
Instances For
Entry point for the PINN residual-bounding CLI.
This is an interactive tool registered as:
lake exe verify -- pinn-cli -- ...
For certificate checking, use:
lake exe verify -- pinn-cert [NN/Examples/Verification/PINN/pinn_cert.json]
Run:
lake exe verify -- pinn-cli -- [--method=ibp|crown-fwd|crown-bwd|partial] [--split-depth=N] [--backend=float|neuralfloat] [--weights=PATH.json] "<PDE>" x eps
or (2D):
lake exe verify -- pinn-cli -- [flags] "<PDE>" x y eps