Graph Certificate Semantics #
Value semantics for the verifier graph dialect over ℝ, together with the local semantic
consistency predicate used by certificate soundness proofs.
Basic types and predicates #
We work over ℝ because it has the right order structure for “true” soundness theorems.
The runtime checkers operate over Float (fast, executable), and can be used to connect a
Python-produced floating certificate to the same computations in Lean.
A value flowing along a graph edge in the semantics: a real flat tensor.
Instances For
Componentwise enclosure predicate for a tensor point inside a FlatBox.
Instances For
EnclosesBox B v means the value vector v lies inside the interval box B.
We phrase enclosure using the existing Sem.encloses predicate, but our semantic values are
FlatTensors (carrying their dimension as a Nat), so we also carry a dimension equality witness.
Instances For
Denotational (value) semantics for the verifier graph dialect #
The semantics is defined as a safe Option evaluator:
- If required parameters are missing, it returns
none. - If parents are missing (not yet evaluated) or dimensions mismatch, it returns
none.
Reconstruct a shaped value, run a generic unary tensor operation, and flatten its result.
Instances For
Value semantics for a single node in the supported dialect (over ℝ).
Instances For
The main soundness theorem does not fix a particular graph evaluator. It is stated for any array
vals that is a local model of the semantics step: each node's value must equal evalNode?
computed from its parents' values. Concrete total evaluators (evalGraphRec in
NN.MLTheory.CROWN.Proofs.GraphRunibpEndToEnd) are then shown to satisfy this predicate.
This separates semantic consistency from the particular implementation of the evaluator.
Local semantic consistency (SemLocalOK) #
SemLocalOK g ps inputs vals means:
valshas the correct length, and- each entry
vals[id]equalsevalNode?computed from the full arrayvals.
For a DAG (and only for a DAG), this is exactly the property that vals is a valid interpretation
of the graph semantics.
Existence and uniqueness of vals are evaluator-correctness facts. This file proves the certificate
theorem in the reusable form: for any semantic interpretation vals, a locally-correct certificate
encloses it.
vals is a full semantic interpretation of g: one entry per node, each equal to what the
node's own evaluation rule produces from its parents' entries.
This is stated as a local condition rather than built by a recursive evaluator so the soundness theorem applies to any interpretation, however it was obtained.