Download spec/lambda_v1_vectors.json from SZLHOLDINGS/szl-lambda-gate: direct link, hf CLI and curl.
- Browser
- Download file 35.4 kB
-
https://huggingface.co/kernels/SZLHOLDINGS/szl-lambda-gate/resolve/v1/spec/lambda_v1_vectors.json
- Command line
-
hf download hf://SZLHOLDINGS/szl-lambda-gate@v1/spec/lambda_v1_vectors.json
-
curl -L -o lambda_v1_vectors.json https://huggingface.co/kernels/SZLHOLDINGS/szl-lambda-gate/resolve/v1/spec/lambda_v1_vectors.json
35.4 kB
| { | |
| "schema": "szl.lambda/v1.vectors", | |
| "spec": "spec/szl.lambda.v1.json", | |
| "float_encoding": "Every float is \"f64:<16 lowercase hex digits of the IEEE-754 binary64 bits, big-endian>\"; the *_decimal fields are Python repr() for humans. A JSON value that is not an f64 string (true, null, another string, an integer) is passed to the implementation unchanged.", | |
| "expect": "value_f64 or error describes lambda_v1(axes, weights); verdict and code describe gate_v1(axes, weights, tau).", | |
| "value_tol": "Absolute tolerance on Λ for implementations other than reference/szl_lambda_v1.py, which must match value_f64 bit for bit. Error codes and verdicts are always exact.", | |
| "vectors": [ | |
| { | |
| "id": "nominal", | |
| "source": "szl-math-core.md §3 differential table (nominal)", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "GO", "code": null} | |
| }, | |
| { | |
| "id": "hidden_weak", | |
| "source": "szl-math-core.md §3 differential table (hidden_weak); admit contract hidden_weak_lock gm 0.7653", | |
| "note": "the arithmetic mean 0.8125 would pass tau 0.8; the geometric mean does not", | |
| "axes": ["f64:3fee666666666666", "f64:3fee666666666666", "f64:3fee666666666666", "f64:3fd999999999999a"], | |
| "axes_decimal": ["0.95", "0.95", "0.95", "0.4"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe87cfdb14e60f2", "value_decimal": "0.7652576888094968", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "hidden_weak_permuted", | |
| "source": "szl.lambda/v1 domain: a permutation of hidden_weak gives identical bits (fsum)", | |
| "axes": ["f64:3fd999999999999a", "f64:3fee666666666666", "f64:3fee666666666666", "f64:3fee666666666666"], | |
| "axes_decimal": ["0.4", "0.95", "0.95", "0.95"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe87cfdb14e60f2", "value_decimal": "0.7652576888094968", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "x_gt_1", | |
| "source": "szl-math-core.md §3 differential table (x>1 [1.5, .9])", | |
| "note": "torch and the legacy Python source clamp to 0.948683; szl-formulas and szl-khipu return 1.1619", | |
| "axes": ["f64:3ff8000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["1.5", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "nan_axis", | |
| "source": "szl-math-core.md §3 differential table (NaN axis)", | |
| "axes": ["f64:7ff8000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["nan", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "pos_inf_axis", | |
| "source": "szl-math-core.md §3 differential table (+Inf axis)", | |
| "note": "the legacy Python source treats +Inf as 1 (0.948683)", | |
| "axes": ["f64:7ff0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["inf", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "neg_inf_axis", | |
| "source": "szl-math-core.md §3 differential table (-Inf axis)", | |
| "axes": ["f64:fff0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["-inf", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "negative_axis", | |
| "source": "szl-math-core.md §3 differential table (negative axis)", | |
| "axes": ["f64:bfb999999999999a", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["-0.1", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "zero_axis", | |
| "source": "szl-math-core.md §3 differential table (zero axis)", | |
| "note": "a veto, not an error: log Λ = -inf gives NO_GO", | |
| "axes": ["f64:0000000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.0", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:0000000000000000", "value_decimal": "0.0", "verdict": "NO_GO", "code": "ZERO_VETO"} | |
| }, | |
| { | |
| "id": "negative_zero_axis", | |
| "source": "szl.lambda/v1 domain: -0.0 is a zero axis", | |
| "axes": ["f64:8000000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["-0.0", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:0000000000000000", "value_decimal": "0.0", "verdict": "NO_GO", "code": "ZERO_VETO"} | |
| }, | |
| { | |
| "id": "zero_axis_min_subnormal_tau", | |
| "source": "szl.lambda/v1 domain: the zero-axis veto holds for every valid tau", | |
| "axes": ["f64:0000000000000000", "f64:3ff0000000000000"], | |
| "axes_decimal": ["0.0", "1.0"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:0000000000000001", | |
| "tau_decimal": "5e-324", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:0000000000000000", "value_decimal": "0.0", "verdict": "NO_GO", "code": "ZERO_VETO"} | |
| }, | |
| { | |
| "id": "w_unnormalised_2_2", | |
| "source": "szl-math-core.md §3 differential table (unnormalised w=[2,2] on [.81,.64])", | |
| "note": "never renormalised (torch returns 0.72)", | |
| "axes": ["f64:3fe9eb851eb851ec", "f64:3fe47ae147ae147b"], | |
| "axes_decimal": ["0.81", "0.64"], | |
| "weights": ["f64:4000000000000000", "f64:4000000000000000"], | |
| "weights_decimal": ["2.0", "2.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_WEIGHT_SUM", "verdict": "BLOCK", "code": "LAMBDA_WEIGHT_SUM"} | |
| }, | |
| { | |
| "id": "w_zero_weight", | |
| "source": "szl-math-core.md §3 differential table (zero weight w=[1,0] on [.5,.9])", | |
| "axes": ["f64:3fe0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.5", "0.9"], | |
| "weights": ["f64:3ff0000000000000", "f64:0000000000000000"], | |
| "weights_decimal": ["1.0", "0.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_WEIGHT_NONPOSITIVE", "verdict": "BLOCK", "code": "LAMBDA_WEIGHT_NONPOSITIVE"} | |
| }, | |
| { | |
| "id": "empty", | |
| "source": "szl-math-core.md §3 differential table (empty)", | |
| "note": "never 0.0", | |
| "axes": [], | |
| "axes_decimal": [], | |
| "weights": [], | |
| "weights_decimal": [], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_EMPTY", "verdict": "BLOCK", "code": "LAMBDA_EMPTY"} | |
| }, | |
| { | |
| "id": "empty_axes_nonempty_weights", | |
| "source": "szl.lambda/v1 domain: empty axes", | |
| "axes": [], | |
| "axes_decimal": [], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_EMPTY", "verdict": "BLOCK", "code": "LAMBDA_EMPTY"} | |
| }, | |
| { | |
| "id": "e5_round_4dp_not_a_pass", | |
| "source": "FUSION_BRIEF.md E5 (4-dp rounding before the compare)", | |
| "note": "round(Λ, 4) = 0.65 would pass tau 0.65; the unrounded Λ is below it", | |
| "axes": ["f64:3fe4cc660a201472"], | |
| "axes_decimal": ["0.649951"], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe4cccccccccccd", | |
| "tau_decimal": "0.65", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe4cc660a201472", "value_decimal": "0.649951", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "e5_dropped_axis_present", | |
| "source": "FUSION_BRIEF.md E5 (triage weights, integrity = 0.1 present)", | |
| "note": "weights from szl-typesafe-triage src/szl_triage/data/triage_policy.v3.json", | |
| "axes": ["f64:3feb26e978d4fdf4", "f64:3feb26e978d4fdf4", "f64:3fb999999999999a", "f64:3feb26e978d4fdf4"], | |
| "axes_decimal": ["0.8485", "0.8485", "0.1", "0.8485"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd999999999999a", "f64:3fc999999999999a", "f64:3fc3333333333333"], | |
| "weights_decimal": ["0.25", "0.4", "0.2", "0.15"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe1b4397d7da1fc", "value_decimal": "0.5532500697127598", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "e5_dropped_axis_renormalised", | |
| "source": "FUSION_BRIEF.md E5 (integrity axis dropped)", | |
| "note": "renormalising over the present axes would give 0.8485", | |
| "axes": ["f64:3feb26e978d4fdf4", "f64:3feb26e978d4fdf4", "f64:3feb26e978d4fdf4"], | |
| "axes_decimal": ["0.8485", "0.8485", "0.8485"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd999999999999a", "f64:3fc999999999999a", "f64:3fc3333333333333"], | |
| "weights_decimal": ["0.25", "0.4", "0.2", "0.15"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_LENGTH_MISMATCH", "verdict": "BLOCK", "code": "LAMBDA_LENGTH_MISMATCH"} | |
| }, | |
| { | |
| "id": "e5_negative_weight", | |
| "source": "FUSION_BRIEF.md E5 (w = (1.5, -0.5) breaks monotonicity)", | |
| "note": "the weights sum to 1; szl-formulas accepts them and returns 0.3727", | |
| "axes": ["f64:3fe0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.5", "0.9"], | |
| "weights": ["f64:3ff8000000000000", "f64:bfe0000000000000"], | |
| "weights_decimal": ["1.5", "-0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_WEIGHT_NONPOSITIVE", "verdict": "BLOCK", "code": "LAMBDA_WEIGHT_NONPOSITIVE"} | |
| }, | |
| { | |
| "id": "length_mismatch_extra_weight", | |
| "source": "szl.lambda/v1 domain: more weights than axes", | |
| "axes": ["f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_LENGTH_MISMATCH", "verdict": "BLOCK", "code": "LAMBDA_LENGTH_MISMATCH"} | |
| }, | |
| { | |
| "id": "tie_exact", | |
| "source": "INVENTION.md §2.3 tie band (TIE_EPS = 1e-9, log space)", | |
| "axes": ["f64:3fe999999999999a"], | |
| "axes_decimal": ["0.8"], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe999999999999a", "value_decimal": "0.8", "verdict": "ABSTAIN", "code": "NUMERIC_TIE"} | |
| }, | |
| { | |
| "id": "tie_inside_above", | |
| "source": "INVENTION.md §2.3 tie band (TIE_EPS = 1e-9, log space): log Λ - log tau ≈ +5e-10", | |
| "axes": ["f64:3fe9999999d0935a"], | |
| "axes_decimal": ["0.8000000004000001"], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe9999999d0935a", "value_decimal": "0.8000000004000001", "verdict": "ABSTAIN", "code": "NUMERIC_TIE"} | |
| }, | |
| { | |
| "id": "tie_inside_below", | |
| "source": "INVENTION.md §2.3 tie band (TIE_EPS = 1e-9, log space): log Λ - log tau ≈ -5e-10", | |
| "axes": ["f64:3fe9999999629fda"], | |
| "axes_decimal": ["0.7999999996"], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe9999999629fda", "value_decimal": "0.7999999996", "verdict": "ABSTAIN", "code": "NUMERIC_TIE"} | |
| }, | |
| { | |
| "id": "tie_outside_above", | |
| "source": "INVENTION.md §2.3 tie band (TIE_EPS = 1e-9, log space): log Λ - log tau ≈ +2e-9", | |
| "axes": ["f64:3fe999999a758098"], | |
| "axes_decimal": ["0.8000000016"], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe999999a758098", "value_decimal": "0.8000000016", "verdict": "GO", "code": null} | |
| }, | |
| { | |
| "id": "tie_outside_below", | |
| "source": "INVENTION.md §2.3 tie band (TIE_EPS = 1e-9, log space): log Λ - log tau ≈ -2e-9", | |
| "axes": ["f64:3fe9999998bdb29b"], | |
| "axes_decimal": ["0.7999999984"], | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe9999998bdb29b", "value_decimal": "0.7999999984", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "tie_multi_axis_at_own_value", | |
| "source": "INVENTION.md §2.3 tie band (TIE_EPS = 1e-9, log space): hidden_weak against tau = its own Λ", | |
| "axes": ["f64:3fee666666666666", "f64:3fee666666666666", "f64:3fee666666666666", "f64:3fd999999999999a"], | |
| "axes_decimal": ["0.95", "0.95", "0.95", "0.4"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:3fe87cfdb14e60f2", | |
| "tau_decimal": "0.7652576888094968", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe87cfdb14e60f2", "value_decimal": "0.7652576888094968", "verdict": "ABSTAIN", "code": "NUMERIC_TIE"} | |
| }, | |
| { | |
| "id": "all_ones_thirds", | |
| "source": "szl.lambda/v1 domain: weights 1/3 each (fsum within 1e-12 of 1)", | |
| "axes": ["f64:3ff0000000000000", "f64:3ff0000000000000", "f64:3ff0000000000000"], | |
| "axes_decimal": ["1.0", "1.0", "1.0"], | |
| "weights": ["f64:3fd5555555555555", "f64:3fd5555555555555", "f64:3fd5555555555555"], | |
| "weights_decimal": ["0.3333333333333333", "0.3333333333333333", "0.3333333333333333"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3ff0000000000000", "value_decimal": "1.0", "verdict": "GO", "code": null} | |
| }, | |
| { | |
| "id": "int_axes_accepted", | |
| "source": "szl.lambda/v1 type contract: integers are real numbers", | |
| "axes": [1, 1], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3ff0000000000000", "value_decimal": "1.0", "verdict": "GO", "code": null} | |
| }, | |
| { | |
| "id": "subnormal_axis", | |
| "source": "szl.lambda/v1 domain: the smallest positive axis is not a zero axis", | |
| "axes": ["f64:0000000000000001", "f64:3ff0000000000000"], | |
| "axes_decimal": ["5e-324", "1.0"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:1e60000000000064", "value_decimal": "2.222758749485127e-162", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "weight_sum_within_tol", | |
| "source": "szl.lambda/v1 domain: |fsum(w) - 1| = 4e-13 <= 1e-12", | |
| "axes": ["f64:3feccccccccccccd", "f64:3fe0000000000000"], | |
| "axes_decimal": ["0.9", "0.5"], | |
| "weights": ["f64:3fe0000000000e13", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5000000000004", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fe5775c544ff164", "value_decimal": "0.6708203932499086", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "weight_sum_outside_tol", | |
| "source": "szl.lambda/v1 domain: |fsum(w) - 1| = 3e-12 > 1e-12", | |
| "axes": ["f64:3feccccccccccccd", "f64:3fe0000000000000"], | |
| "axes_decimal": ["0.9", "0.5"], | |
| "weights": ["f64:3fe000000000698e", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.500000000003", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_WEIGHT_SUM", "verdict": "BLOCK", "code": "LAMBDA_WEIGHT_SUM"} | |
| }, | |
| { | |
| "id": "weight_nan", | |
| "source": "szl.lambda/v1 domain: NaN weight", | |
| "axes": ["f64:3fe0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.5", "0.9"], | |
| "weights": ["f64:7ff8000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["nan", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_WEIGHT", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_WEIGHT"} | |
| }, | |
| { | |
| "id": "weight_pos_inf", | |
| "source": "szl.lambda/v1 domain: +Inf weight", | |
| "axes": ["f64:3fe0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.5", "0.9"], | |
| "weights": ["f64:7ff0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["inf", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_WEIGHT", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_WEIGHT"} | |
| }, | |
| { | |
| "id": "weight_neg_inf", | |
| "source": "szl.lambda/v1 domain: -Inf weight", | |
| "axes": ["f64:3fe0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.5", "0.9"], | |
| "weights": ["f64:fff0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["-inf", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_WEIGHT", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_WEIGHT"} | |
| }, | |
| { | |
| "id": "precedence_nonfinite_before_range_a", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant)", | |
| "axes": ["f64:3ff8000000000000", "f64:7ff8000000000000"], | |
| "axes_decimal": ["1.5", "nan"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "precedence_nonfinite_before_range_b", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant)", | |
| "axes": ["f64:7ff8000000000000", "f64:3ff8000000000000"], | |
| "axes_decimal": ["nan", "1.5"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "precedence_axis_before_weight", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant)", | |
| "axes": ["f64:3ff8000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["1.5", "0.9"], | |
| "weights": ["f64:4000000000000000", "f64:4000000000000000"], | |
| "weights_decimal": ["2.0", "2.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_nan_a", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:0000000000000000", "f64:7ff8000000000000"], | |
| "axes_decimal": ["0.0", "nan"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_nan_b", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:7ff8000000000000", "f64:0000000000000000"], | |
| "axes_decimal": ["nan", "0.0"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_pos_inf_a", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:0000000000000000", "f64:7ff0000000000000"], | |
| "axes_decimal": ["0.0", "inf"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_pos_inf_b", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:7ff0000000000000", "f64:0000000000000000"], | |
| "axes_decimal": ["inf", "0.0"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_NONFINITE_AXIS", "verdict": "BLOCK", "code": "LAMBDA_NONFINITE_AXIS"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_x_gt_1_a", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:0000000000000000", "f64:3ff8000000000000"], | |
| "axes_decimal": ["0.0", "1.5"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_x_gt_1_b", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:3ff8000000000000", "f64:0000000000000000"], | |
| "axes_decimal": ["1.5", "0.0"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_negative_a", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:0000000000000000", "f64:bfb999999999999a"], | |
| "axes_decimal": ["0.0", "-0.1"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_negative_b", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:bfb999999999999a", "f64:0000000000000000"], | |
| "axes_decimal": ["-0.1", "0.0"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_AXIS_OUT_OF_RANGE"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_bool_a", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": ["f64:0000000000000000", true], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "precedence_zero_does_not_mask_bool_b", | |
| "source": "szl.lambda/v1 error precedence (phases, permutation-invariant): every axis is validated before the zero veto (szl-receipt#38, FF-03b)", | |
| "axes": [true, "f64:0000000000000000"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe0000000000000", | |
| "tau_decimal": "0.5", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "type_bool_axis", | |
| "source": "szl.lambda/v1 type contract: bool is not a number", | |
| "axes": [true, "f64:3feccccccccccccd"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "type_null_axis", | |
| "source": "szl.lambda/v1 type contract: null axis", | |
| "axes": [null, "f64:3feccccccccccccd"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "type_string_axis", | |
| "source": "szl.lambda/v1 type contract: a string is not a number", | |
| "axes": ["0.9", "f64:3feccccccccccccd"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "type_axes_not_array", | |
| "source": "szl.lambda/v1 type contract: axes must be an array", | |
| "axes": null, | |
| "weights": ["f64:3ff0000000000000"], | |
| "weights_decimal": ["1.0"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "type_bool_weight", | |
| "source": "szl.lambda/v1 type contract: bool weight", | |
| "note": "the element type is checked before the weight value", | |
| "axes": ["f64:3fe0000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.5", "0.9"], | |
| "weights": [true, "f64:0000000000000000"], | |
| "tau": "f64:3fe999999999999a", | |
| "tau_decimal": "0.8", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_TYPE_INVALID", "verdict": "BLOCK", "code": "LAMBDA_TYPE_INVALID"} | |
| }, | |
| { | |
| "id": "tau_one", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:3ff0000000000000", | |
| "tau_decimal": "1.0", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "NO_GO", "code": "BELOW_TAU"} | |
| }, | |
| { | |
| "id": "tau_nan", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:7ff8000000000000", | |
| "tau_decimal": "nan", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| }, | |
| { | |
| "id": "tau_zero_would_admit_veto", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first: tau 0 would pass a vetoed Λ = 0", | |
| "axes": ["f64:0000000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.0", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:0000000000000000", | |
| "tau_decimal": "0.0", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:0000000000000000", "value_decimal": "0.0", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| }, | |
| { | |
| "id": "tau_above_one", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:3ff8000000000000", | |
| "tau_decimal": "1.5", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| }, | |
| { | |
| "id": "tau_negative", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": "f64:bfb999999999999a", | |
| "tau_decimal": "-0.1", | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| }, | |
| { | |
| "id": "tau_bool", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first: bool is not a number", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": true, | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| }, | |
| { | |
| "id": "tau_null", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first: tau is required", | |
| "axes": ["f64:3fee666666666666", "f64:3fed70a3d70a3d71", "f64:3fec28f5c28f5c29", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["0.95", "0.92", "0.88", "0.9"], | |
| "weights": ["f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000", "f64:3fd0000000000000"], | |
| "weights_decimal": ["0.25", "0.25", "0.25", "0.25"], | |
| "tau": null, | |
| "value_tol": 1e-12, | |
| "expect": {"value_f64": "f64:3fed3035e27f23fe", "value_decimal": "0.9121350692522581", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| }, | |
| { | |
| "id": "tau_precedes_axis_error", | |
| "source": "szl.lambda/v1 tau domain (0, 1], required, checked first: tau is checked before Λ", | |
| "axes": ["f64:3ff8000000000000", "f64:3feccccccccccccd"], | |
| "axes_decimal": ["1.5", "0.9"], | |
| "weights": ["f64:3fe0000000000000", "f64:3fe0000000000000"], | |
| "weights_decimal": ["0.5", "0.5"], | |
| "tau": "f64:7ff8000000000000", | |
| "tau_decimal": "nan", | |
| "value_tol": 1e-12, | |
| "expect": {"error": "LAMBDA_AXIS_OUT_OF_RANGE", "verdict": "BLOCK", "code": "LAMBDA_TAU_INVALID"} | |
| } | |
| ] | |
| } | |