Documentation

Linglib.Phenomena.TenseAspect.Studies.AspectualConsistency

Cross-Bridge Consistency Tests #

Verifies that all bridge files agree on fragment verb classifications. Each verb that appears in multiple bridges gets a single theorem here checking that its vendlerClass, verbIncClass, and levinClass fields yield consistent licensing predictions across all classification paths.

What it catches #

If you change a fragment verb annotation (e.g., eat.vendlerClass from .accomplishment to .activity), the per-bridge theorems in each bridge file break individually. But this file additionally verifies that the cross-cutting invariants hold:

Sinc/inc verbs should be accomplishments (telic with incremental theme). CumOnly verbs should be activities (atelic, no theme-event mapping). Intransitives (no verbIncClass) can be any class.

GRAD (gradual change) is predicted for sinc/inc verbs, which are accomplishments (telic). SSR (subinterval reference) is predicted for states/activities (atelic). These should be complementary: a verb should not predict both GRAD and SSR.

For each shared verb, verify the complete chain from fragment annotation through all classification levels to licensing and diagnostic predictions. Changing any fragment field breaks the entire chain for that verb.

Motion verbs have both vendlerClass and levinClass annotations. Verify these are consistent: inherently-directed-motion verbs (achievements) have bounded paths, manner-of-motion verbs (activities) have no inherent path.

These tests loop over allVerbs so adding a new verb to the fragment automatically includes it in the test suite — no per-verb theorem needed. If a new verb has an inconsistent annotation, native_decide fails.

Pipeline consistency: for any verb with a vendlerClass annotation, the VendlerClass → Telicity → MereoTag → Boundedness chain must produce a licensing prediction that agrees with the for/in diagnostic. Returns true for verbs without vendlerClass (vacuously OK).

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    VendlerClass × VerbIncClass coherence: sinc/inc verbs must be accomplishments (telic), cumOnly verbs must be activities (atelic). Returns true for verbs without verbIncClass (vacuously OK).

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      GRAD × SSR complementarity: no verb should predict both gradual change (sinc/inc) and subinterval reference (state/activity). Returns true if the verb doesn't predict both.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        Count of verbs with vendlerClass annotations (for coverage tracking). Bump this number when adding new vendlerClass annotations.

        Every verb with a degreeAchievementScale also has a vendlerClass, and the derived vendlerClass from the scale matches the stipulated one. Adding a new degree achievement verb with inconsistent annotations will cause native_decide to fail.

        For a verb with degreeAchievementScale, check that vendlerClass is present and matches the derived value from the scale.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For