Generalizations.HomogeneityProjection — cross-paper prediction target #
Cross-paper test substrate for how the homogeneity gap of plural definites
projects under embedding quantifiers and operators. The pattern's empirical
literature spans [Lob00], [Gaj05],
[Spe13], [Mag14], [KC15],
[Kri16], [BL21], [ABB+23],
[KS21b], and [Has25]; the empirical
generalisation predates any one formal account, justifying a theory-neutral
Data/Generalizations/ anchor.
Main declarations #
EmbeddingOperator— operator labels recurring across the literature.GapScenario— scenario classification used by the C-series experiments (TRUE / FALSE / GAP / GAP? / GAP??).ProjectionPredict— the shared signature any account of homogeneity projection must satisfy; given an(operator, scenario)pair, predict a trivalentTruth3value.ProjectionDatum— typed empirical datum; lifted from the rawLinguisticExamplerows byfromExample.Examples(generator-managed) — pooled stimulus rows from each paper that contributes projection-relevant data; per-paper JSON inputs live inLinglib/Data/Examples/<Paper>.json, and this hub imports each paper's generatedData.Examples.<Paper>module (seescripts/gen_examples.py).allData— the test pool: everyLinguisticExamplewhosepaperFeaturescarry the keys this hub recognises.
Studies files (e.g. [[KrizChemla2015]], [[AugurzkyEtAl2023]]) retrieve their
paper-specific slice from their own <Paper>.Examples.all (option-B
per-paper accessor pattern).
Implementation notes #
This file is the entry point for cross-account testing of homogeneity
projection. The shape is: a ProjectionPredict signature each account
implements; a ProjectionDatum carrying observed outcomes; decidable
theorems comparing each account's prediction to each datum, including
divergence theorems where two accounts disagree.
The substrate is restricted to the smallest set of operator cases that
closes the current ≥2-consumer graduation criterion: every / no
(every major contribution tests these), exactlyTwo (introduced by
[KC15] Exps. A3/B3/C3/C4), and notEvery (the
no/notEvery asymmetry from [ABB+23]). Extend as new
consumers land.
There is deliberately no projector-stipulated monotonicity : EmbeddingOperator → ContextPolarity function — the classical mapping
(notEvery ↦ downward by De Morgan) disagrees with the empirical
observation that notEvery patterns with every rather than no in
QUD-manipulation acceptance ([ABB+23]), so any single
mapping would be wrong for at least one consumer.
Todo #
- Wire
ProjectionPredictimplementations from each rival account: the scalar-implicature/exhaustification accounts ([Mag14], [BL21]), the supervaluation/trivalence accounts ([Spe13], [Kri16], [KS21b]), and the presupposition account ([Gaj05] + Schwarzschild 1994 — no linglib study file yet). - Prove decidable per-datum predictions and cross-account divergence theorems once those implementations land.
- Add a denotation hook
EmbeddingOperator → ∀ α, Quantification.GQ αonce accounts derive predictions structurally rather than dispatch on label (per [PW06] discipline).
Substrate #
Quantifier-operator labels for plural-definite embedding environments, restricted to operators actually consumed by linglib's homogeneity- projection study files.
- every : EmbeddingOperator
- no : EmbeddingOperator
- exactlyTwo : EmbeddingOperator
- notEvery : EmbeddingOperator
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Generalizations.HomogeneityProjection.instDecidableEqEmbeddingOperator x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Scenario classification used by the trivalent-judgment paradigm
([KC15]). The first three are the canonical TRUE / FALSE
/ GAP triad; gapQ and gapQQ are the exactly N refinements that
isolate the at-least-reading from genuine homogeneity projection.
- trueScenario : GapScenario
- falseScenario : GapScenario
- gap : GapScenario
- gapQ : GapScenario
- gapQQ : GapScenario
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- Generalizations.HomogeneityProjection.instDecidableEqGapScenario x✝ y✝ = if h : x✝.ctorIdx = y✝.ctorIdx then isTrue ⋯ else isFalse ⋯
Test-suite schema #
Theoretical-prediction signature any account of homogeneity projection
must satisfy: given an embedder label and a scenario, predict the
trivalent Truth3 value the account commits to.
Equations
Instances For
Empirical datum derived from a paper-anchored LinguisticExample.
observed is the trivalent value the paper's findings commit to in this
(operator, scenario) cell; source is the originating paper.
- operator : EmbeddingOperator
- scenario : GapScenario
- observed : Core.Duality.Truth3
- source : Data.Examples.SourceRef
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
LinguisticExample adapter #
Read an EmbeddingOperator from a string value of the paperFeatures
"operator" key. none for unrecognised labels.
Equations
- Generalizations.HomogeneityProjection.parseOperator "every" = some Generalizations.HomogeneityProjection.EmbeddingOperator.every
- Generalizations.HomogeneityProjection.parseOperator "no" = some Generalizations.HomogeneityProjection.EmbeddingOperator.no
- Generalizations.HomogeneityProjection.parseOperator "exactlyTwo" = some Generalizations.HomogeneityProjection.EmbeddingOperator.exactlyTwo
- Generalizations.HomogeneityProjection.parseOperator "notEvery" = some Generalizations.HomogeneityProjection.EmbeddingOperator.notEvery
- Generalizations.HomogeneityProjection.parseOperator x✝ = none
Instances For
Read a GapScenario from a string value of the paperFeatures
"condition" key. none for unrecognised labels.
Equations
- Generalizations.HomogeneityProjection.parseScenario "TRUE" = some Generalizations.HomogeneityProjection.GapScenario.trueScenario
- Generalizations.HomogeneityProjection.parseScenario "FALSE" = some Generalizations.HomogeneityProjection.GapScenario.falseScenario
- Generalizations.HomogeneityProjection.parseScenario "GAP" = some Generalizations.HomogeneityProjection.GapScenario.gap
- Generalizations.HomogeneityProjection.parseScenario "GAP?" = some Generalizations.HomogeneityProjection.GapScenario.gapQ
- Generalizations.HomogeneityProjection.parseScenario "GAP??" = some Generalizations.HomogeneityProjection.GapScenario.gapQQ
- Generalizations.HomogeneityProjection.parseScenario x✝ = none
Instances For
Compute the observed Truth3 value for a (scenario, gapDetected) cell.
Baseline conditions are unambiguous: TRUE → .true, FALSE → .false.
For gap-bearing scenarios, gap detection means the empirical distribution
peaks on the trivalent middle (.indet); a non-detection on a
gap-bearing scenario means an alternative reading (typically an at-least
reading for non-monotonic embedders) rendered the sentence non-gappy.
Equations
- Generalizations.HomogeneityProjection.observedTruth Generalizations.HomogeneityProjection.GapScenario.trueScenario gapDetected = Core.Duality.Truth3.true
- Generalizations.HomogeneityProjection.observedTruth Generalizations.HomogeneityProjection.GapScenario.falseScenario gapDetected = Core.Duality.Truth3.false
- Generalizations.HomogeneityProjection.observedTruth scenario true = Core.Duality.Truth3.indet
- Generalizations.HomogeneityProjection.observedTruth scenario false = Core.Duality.Truth3.true
Instances For
Lift a LinguisticExample to a ProjectionDatum, reading the
operator, condition, and gap_detected keys from paperFeatures.
Returns none for rows whose paperFeatures lack the recognised tags —
those rows are not part of this hub's pool.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Pool #
Cross-paper pool of projection-relevant data, derived from the imported
per-paper Examples.all lists by fromExample. Each entry carries its
originating SourceRef for provenance. Rival theories of projection
should pass their ProjectionPredict implementations against this pool.