TorchLean API

NN.Verification.PINN.PdeAst

PdeAst #

A compact PDE mini-language (AST) and interval evaluator.

This module defines a small expression language to describe PDE residuals in terms of u, its first/second partial derivatives along axes, and arithmetic combinators. An interval evaluator consumes primitive bounds (u, u_x, u_y, u_xx, ...) and computes residual endpoints. Its host Float arithmetic does not request directed rounding; a sound exact-real enclosure requires separate rounding-error evidence.

We focus on 2D workflows: axes are X and Y, but the evaluator works for 1D by ignoring Y.

References:

Coordinate axis used by the PDE residual language.

Instances For

    Expression language for scalar PDE residuals.

    The constructors refer to u, first partials, second partials, constants, and arithmetic combinators. Evaluation is interval-valued because the surrounding PINN checker works with bounds rather than single floating-point samples.

    Instances For

      Primitive interval bounds supplied to the PDE expression evaluator.

      • Enclosure for the solution value u itself.

      • Enclosure for ∂u/∂x.

      • Enclosure for ∂u/∂y.

      • d2uX : Option (Float × Float)

        Enclosure for ∂²u/∂x².

      • d2uY : Option (Float × Float)

        Enclosure for ∂²u/∂y². Every field is optional because a residual only needs the derivatives its own PDE mentions; a missing one makes evaluation fail loudly instead of silently substituting a default.

      Instances For
        @[inline]

        Add two closed Float intervals endpointwise.

        Instances For
          @[inline]

          Subtract endpoint pairs with the standard interval formula and host Float arithmetic.

          Instances For
            @[inline]

            Scale a closed Float interval, reversing endpoint order for negative coefficients.

            Instances For
              @[inline]

              Negate a closed Float interval by swapping and negating its endpoints.

              Instances For
                @[inline]

                Bound the product of two Float intervals through the shared McCormick envelopes.

                Instances For

                  Evaluate a PDE expression to an interval, given primitive bounds.

                  Instances For

                    Evaluate a PDE expression with the default recursion budget.

                    Instances For