Table of Contents

Class SymbolicTransformationResult

Namespace
Utils.Mathematics.Expressions
Assembly
Utils.Mathematics.dll

A structured, non-throwing result of a symbolic transformation (differentiation or integration). Lets callers distinguish "not differentiable/integrable", "approximately transformed", "invalid input", and "internal construction failure" without relying on exception types or null conventions (see TODO-2026-07-11-pass3.md item #42).

public sealed record SymbolicTransformationResult : IEquatable<SymbolicTransformationResult>
Inheritance
SymbolicTransformationResult
Implements
Inherited Members
Extension Methods

Constructors

SymbolicTransformationResult(SymbolicTransformationStatus, LambdaExpression?, bool, Expression?, string?, Exception?)

A structured, non-throwing result of a symbolic transformation (differentiation or integration). Lets callers distinguish "not differentiable/integrable", "approximately transformed", "invalid input", and "internal construction failure" without relying on exception types or null conventions (see TODO-2026-07-11-pass3.md item #42).

public SymbolicTransformationResult(SymbolicTransformationStatus Status, LambdaExpression? Expression, bool IsExact, Expression? UnsupportedNode, string? Diagnostic, Exception? InnerException)

Parameters

Status SymbolicTransformationStatus

The outcome category.

Expression LambdaExpression

The produced lambda expression when Status is Success; otherwise null.

IsExact bool

true when the successful result is a fully symbolic (exact) transformation; false when a numeric finite-difference fallback was used for at least one sub-expression. Always false for non-success results.

UnsupportedNode Expression

The offending expression node when it can be identified (e.g. the unsupported conversion or the unknown method call); otherwise null.

Diagnostic string

A human-readable explanation, or null on success.

InnerException Exception

The originating exception, when the result was produced from a caught exception.

Properties

Diagnostic

A human-readable explanation, or null on success.

public string? Diagnostic { get; init; }

Property Value

string

Expression

The produced lambda expression when Status is Success; otherwise null.

public LambdaExpression? Expression { get; init; }

Property Value

LambdaExpression

InnerException

The originating exception, when the result was produced from a caught exception.

public Exception? InnerException { get; init; }

Property Value

Exception

IsExact

true when the successful result is a fully symbolic (exact) transformation; false when a numeric finite-difference fallback was used for at least one sub-expression. Always false for non-success results.

public bool IsExact { get; init; }

Property Value

bool

Status

The outcome category.

public SymbolicTransformationStatus Status { get; init; }

Property Value

SymbolicTransformationStatus

Success

Gets whether the transformation produced a valid expression.

public bool Success { get; }

Property Value

bool

UnsupportedNode

The offending expression node when it can be identified (e.g. the unsupported conversion or the unknown method call); otherwise null.

public Expression? UnsupportedNode { get; init; }

Property Value

Expression