Skip to content

research: add SYM-ARCH-002A5 differential benchmark validation - #61

Draft
Tristan-Stoltz-ERC wants to merge 10 commits into
research/sym-arch-002a3-validity-v1from
research/sym-arch-002a5-differential-v1
Draft

research: add SYM-ARCH-002A5 differential benchmark validation#61
Tristan-Stoltz-ERC wants to merge 10 commits into
research/sym-arch-002a3-validity-v1from
research/sym-arch-002a5-differential-v1

Conversation

@Tristan-Stoltz-ERC

Copy link
Copy Markdown
Contributor

Summary

Adds SYM-ARCH-002A5 differential/reference validation as a draft sibling of #60, stacked directly on #59 / A3.

A3 establishes internal structural/oracle consistency. A4 attacks trivial learner shortcuts. A5 addresses another failure mode:

What if the generated benchmark and its primary oracle share the same implementation mistake?

A5 adds a separately implemented RuleExpr evaluator, exhaustive finite-domain comparison, projected coverage accounting, and an optional independently frozen train/evaluation partition.

Any discrepancy yields INCONCLUSIVE_BENCHMARK; it is never converted into an architecture win/loss.

Independent reference evaluator

reference_evaluate_rule does not call A3's evaluate_rule and separately implements:

  • equality / inequality;
  • parity/modular predicates;
  • NOT / AND / OR / XOR.

Both implementations are evaluated on every assignment in the frozen finite factor universe.

A disagreement does not decide which evaluator is correct; it invalidates the benchmark until resolved.

Finite reference universe

DifferentialValidityPolicy freezes:

  • factor value domains;
  • Cartesian-product enumeration cap;
  • exact-vs-relaxed learner feature schema;
  • minimum generated coverage fraction;
  • optional exact reference train/eval partition.

Every RuleExpr feature must be represented in the factor domain. Duplicate domain values, missing factors, overflow, and universes above the cap fail closed.

Factor projection / nuisance handling

Strict mode requires generated examples to expose exactly the declared reference factors.

Relaxed mode permits extra nuisance features, but reference truth, coverage, duplicate detection, and partition identity use only the declared-factor projection. Nuisance features therefore cannot inflate coverage or make the same task assignment look novel.

A regression test specifically guards this behavior.

Generated dataset checks

A5 checks:

  • exact feature schema when frozen;
  • required factor presence;
  • factor domain membership;
  • duplicate projected assignments;
  • independent-reference label agreement;
  • frozen minimum finite-domain coverage.

The report records a domain-separated digest of the sorted independent reference truth table.

Optional reference partition

A separately frozen ReferencePartition can define the exact expected train/eval assignments. A5 compares generated split membership against it after projection.

This catches a generator that keeps labels correct but silently moves examples across the held-out boundary.

For scientific independence, the partition should come from a separately reviewed pure partition specification or other reference path—not be copied from generated output after inspection.

Fail-closed behavior

A5 returns only:

  • passed;
  • inconclusive_benchmark.

Violation categories distinguish:

  • A3 structural failure;
  • invalid reference specification;
  • evaluator disagreement/error;
  • feature-schema mismatch;
  • out-of-domain value;
  • duplicate projected assignment;
  • independent-reference label mismatch;
  • insufficient coverage;
  • reference-partition mismatch.

Malformed benchmark data remains a validity report rather than escaping as an execution error during partition comparison.

Tests

Focused tests cover:

  • exhaustive agreement on a nested XOR/parity/equality rule;
  • injected independent-evaluator disagreement detection;
  • wrong split partition with otherwise correct labels;
  • exact-schema extra-feature rejection;
  • relaxed-schema nuisance projection;
  • out-of-domain value rejection while a reference partition is present;
  • low-coverage rejection;
  • missing RuleExpr factor rejection;
  • universe-cap rejection.

CI

Adds SYM-ARCH-002A5 Differential Validity with targeted rustfmt, focused A5 tests, and cargo check -p symthaea-psych-bench --lib.

Wording ceiling

A pass supports only:

The generated benchmark agreed with an independently implemented v1 RuleExpr reference evaluator over the frozen finite domain and satisfied the frozen coverage/partition contract.

It is not a formal proof of task correctness and does not establish any Symthaea architecture advantage.

Depends on #59. Sibling of #60. Tracks #55.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant