cyk_step
std.seq.cyk_step · Level L3One closure step of the CYK recognizer for a grammar in Chomsky normal form: X[A, i, j] = 1 when A derives the part w[i:j] of the word; for every rule A → B C (listed as RB, RC with the one-hot heads OHt) and every split point, a derivation of w[i:k] is added. The body cyk scans.
Signature
cyk_step(X: f64[k, n, n], t: f64[], RB: i64[q], RC: i64[q], OHt: f64[k, q]) → f64[k, n, n]
Structure
The function as NOVA stores it: one box per input, operation and output, and arrows that carry values. A double border marks another library function this one runs — called once, or by Scan once per element; select it to open that function.
- input
- operation
- constant
- call
- output
Verification
- Signature proven by NOVA’s shape solver, for every size.
- Equal to the reference
for every rule and split point, by loopsin exact rational arithmetic, on all 40 test cases. - All 3,327 float64 results are exact: the error is zero.
- Interpreter and NumPy backend return bit-identical results.
- At float32 too: the 40 test cases rounded to float32, and 40 of them exact, with zero error.
- correctly rounded (the float64 nearest the exact value)
- 100%
- bit-equal to the NumPy formula in float64
- 100%
- largest error, in units in the last place
- 0
Identity
sha256:a82e3fb4c944a539993c47668697bde9c98cca6df731ad7b97ec678177269746The semantic hash of the graph. It changes when the program changes, and never when only its documentation does.
Control handle
- Symbol
- Ω:std.seq.cyk_step · Ω:cyk_step
- Pins
sha256:4271a9a1c4aad365dbd65b35e5466c7164073664d0a6b845a3ccdd84f72bb091this graph alone- Evidence
sha256:9e1f3cb8d6c6b02ffecef2151a43ee6b7944be5ff7d8204c5afb8ee9aa4ddfe7the hash of its verification record- Needs
- no capability: a pure function
Through NOVA’s control layer, the symbol launches this function only while the program still matches what it pins: a change to this graph, or to any graph it reaches, needs a migration first.