Lowered Forward Evaluation: Payload-Free Nodes #
One lemma per payload-free operator of the proved forward fragment. Each lemma assumes that the
IR graph holds the node emitted by lowerNode at index id and that the runtime value array
matches the typed shape context; it concludes that IR evaluation at id returns exactly what the
typed evaluator evalNode returns for the source node. The IR payload is arbitrary because these
operators never read it.
A lowered add node evaluates like the typed add node.
A lowered sub node evaluates like the typed sub node.
A lowered mulElem node evaluates like the typed mulElem node.
A lowered relu node evaluates like the typed relu node.
A lowered exp node evaluates like the typed exp node.
A lowered inv node evaluates like the typed inv node.
A lowered log node evaluates like the typed log node. Both evaluators reject nonpositive
inputs with the same error, so the agreement holds without a positivity side condition.
A lowered matmul node evaluates like the typed matmul node.
A lowered reshape node evaluates like the typed reshape node.
A lowered transpose node evaluates like the typed transpose node. Both evaluators run the same
dynamic permutation, so the proof follows the three fallible steps case by case.
A lowered softmax node evaluates like the typed softmax node.
A lowered mseLoss node evaluates like the typed mseLoss node. Both evaluators perform the
same dynamic equal-shape check before averaging the squared error.