Skip to content

Commit e68c0bf

Browse files
committed
0.230.585 — Heim2001.lean mathlib-quality rewrite: sSup_iInter_Iic_eq_iInf headline + FoxHackl bridge + 3 factual fixes
1 parent dc4a326 commit e68c0bf

3 files changed

Lines changed: 318 additions & 282 deletions

File tree

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,36 @@ The release clock (`v4.29.1`, ...) tracks Lean/mathlib compatibility and is what
44

55
## [Unreleased]
66

7+
### 0.230.585 — `Heim2001.lean` mathlib-quality overhaul + FoxHackl2006 bridge
8+
9+
Ground-up rewrite of `Phenomena/Comparison/Studies/Heim2001.lean` (337→317 LOC; structural reduction is in dropped data structures and aggregate-count theorems, offset by added section docstrings and the new lattice/HKC theorems). Three factual errors in the prior file fixed against the paper PDF.
10+
11+
**Headline**: `sSup_iInter_Iic_eq_iInf` (`CompleteLinearOrder` ⋂-side dual of mathlib's `sSup_iUnion_Iic`). Heim's §2.1 monotone-collapse observation reduces to this Galois identity in two lines (`⋂Iic = Iic ⨅`, then `csSup_Iic`). The high-DegP-over-∀ max-set computation `sSup {d | ∀ i, d ≤ μ i} > t` collapses to `(⨅ μ) > t`. Companion theorems wire the substrate's witness-form `forall_more_*` lemmas (paper fn. 6's "whenever these maxima are defined" qualification).
12+
13+
**Negation companion**: `no_isGreatest_Ioi_of_noMaxOrder` — on any `NoMaxOrder` linear order, `Ioi a` has no greatest element. Linguistic corollary `negation_high_DegP_undefined` discharges Heim §2.1 ex. (17c) via the substrate's `negatedDegreePredicate`. Same mechanism as @cite{fox-hackl-2006} negative islands (now bridged).
14+
15+
**FoxHackl2006 bridge** (`negativeIsland_via_no_max`): re-export of `Heim2001.negation_high_DegP_undefined`. Replaces a 6-line "Bridge to FoxHackl2006" comment in the previous Heim file that pointed at a target with zero theorems and zero substrate imports. Per chronological dependency (2006 imports 2001), the bridge lives on the FoxHackl side. FoxHackl2006 went from 0 imports of Degree substrate / 0 theorems → 1 import / 1 bridge theorem.
16+
17+
**Anti-patterns dropped**:
18+
- `monotone_collapse_all_equivalent` — encoded conclusions as definitions (proved `scopeCollapse = true` after stipulating it as a struct field; "deeper principles" lemma `sSup_iInter_Iic_eq_iInf` is the substitute);
19+
- `intensional_verb_pattern` (`length = 4 ∧ length = 4` aggregate-count flagged in MEMORY) — replaced by per-row drift sentry `verbClass_predicts_highDegPAvailable`;
20+
- `heim_eq_kennedy_simple`, `heim_est_matches_absolute`, `heim_exactly_matches_differential` — tautological `Iff.rfl` over substrate definitions; equivalent theorems already in `Abstraction.heim_extensional_equivalence`;
21+
- String-fielded `monotoneCollapseData`/`negationData`/`nonMonotoneData` (5+3+3 rows of stipulated Bool flags) — covered structurally now;
22+
- `RussellAmbiguityDatum` (struct for one value), `superlativeExamples` (Heim 1999 data, wrong attribution).
23+
24+
**§5 Kennedy's generalization formalized**: `nonMonotone_blocked_by_HKC` re-exports `Minimalist.Semantics.DegreeMovement.not_isHeimKennedy_QP_above_bound_DegP`. Replaces 13 lines of "not yet in linglib" prose; the substrate has been there since BhattPancheva2004 went in.
25+
26+
**Drift-sentry encoding for §2.3**: `IntensionalVerbDatum` keeps `highDegPAvailable` (BhattPancheva consumer surface preserved) but adds typed `verbClass : IntensionalVerbClass` (`deontic | possibility | epistemic | negRaising`). Heim's 4-vs-4 split is now derivable from `verbClass`, with the explanation Heim explicitly disclaimed (paper p. 226: "I am unable to spell out any concrete explanations") flagged in the docstring rather than asserted as a clean generalization.
27+
28+
**Three factual errors fixed against the paper PDF (pp. 214–239)**:
29+
- §2.4: docstring previously attributed Heim's Russell-ambiguity analysis to "ACTUALLY operator". Heim's actual implementation in (40a/b) p. 228 uses **free world-variables** (`long_w'` vs `long_w`), citing @cite{percus-2000} and Abusch 1994 (paper fn. 16). The ACTUALLY operator is von Stechow 1984's mechanism (which the substrate's `Theories/Semantics/Degree/Intensional.lean` does formalize, used in `VonStechow1984.lean`). The two implementations agree on the diagnosis but differ on the LF mechanism.
30+
- §2.1: docstring previously called `refuse` a "neg-raising verb". Heim p. 220 explicitly groups `refuse` under "implicitly negative or monotone decreasing operators" — parallel to `at most two`, NOT to `want/should/supposed-to` (which are §2.3 + footnote-14 neg-raising).
31+
- §3.2: "Kim/KIM climbed the highest mountain" was attributed to Heim 2001 but is @cite{szabolcsi-1986} / @cite{heim-1999}. `superlativeExamples` removed; deferred to a future `Heim1999.lean` study.
32+
33+
**Out of scope** (per CLAUDE.md don't-add-features-beyond-task): Heim's free-world-variable de re/de dicto in the substrate (would need a new file alongside `Intensional.lean`); Schwarzschild & Wilkinson 2002 interval-semantics study file (Heim's own fn. 21 calls it work that may force her to revise — separate study); Beck 2001 intervention bridge; promoting the lattice headline to `Theories/Semantics/Degree/Abstraction.lean` (only one consumer so far; promote when n=2). Domain-expert audit also flagged Bumford 2017 / Krasikova / Heim 2006 as unengaged literature — not addressed.
34+
35+
**Build**: 5677/5677 jobs green.
36+
737
### 0.230.584 — `Core/Agreement/Controller.lean` (Corbett 2006 §6.6) + parameterize `MorphCategory.agreement`
838

939
The substrate gap identified at 0.230.578 (subj/obj agreement collapse blocking Anderson Ch 5 §5.2 typology) is now closed.

Linglib/Phenomena/Comparison/Studies/FoxHackl2006.lean

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
1+
import Linglib.Phenomena.Comparison.Studies.Heim2001
2+
import Linglib.Theories.Semantics.Degree.Abstraction
3+
14
/-!
25
# Fox & Hackl 2006: Degree Questions and Negative Islands
3-
@cite{fox-hackl-2006} @cite{beck-rullmann-1999} @cite{fox-2007} @cite{rullmann-1995}
6+
@cite{fox-hackl-2006} @cite{heim-2001} @cite{beck-rullmann-1999}
7+
@cite{fox-2007} @cite{rullmann-1995}
48
59
Empirical data on degree questions ("how tall is Kim?"), including
610
negative islands, modal obviation, and comparative subdeletion.
@@ -9,6 +13,14 @@ negative islands, modal obviation, and comparative subdeletion.
913
degree questions fail under negation because the maximality presupposition
1014
of "how" is undefined over dense scales with downward-monotone predicates.
1115
16+
## Bridge to @cite{heim-2001}
17+
18+
The negative-island mechanism is the same as Heim's §2.1 high-DegP-over-
19+
negation argument: both invoke the failure of `IsGreatest (Ioi (μ a))` on
20+
an unbounded scale. We discharge the negative-island prediction by
21+
appeal to `Heim2001.negation_high_DegP_undefined` (chronological
22+
dependency: 2006 imports 2001).
23+
1224
## Key Empirical Patterns
1325
1426
1. **Negative islands**: "*How tall isn't Kim?" is unacceptable
@@ -22,6 +34,8 @@ of "how" is undefined over dense scales with downward-monotone predicates.
2234

2335
namespace FoxHackl2006
2436

37+
open Semantics.Degree.Abstraction (negatedDegreePredicate)
38+
2539
-- ════════════════════════════════════════════════════
2640
-- § 1. Basic Degree Question Data
2741
-- ════════════════════════════════════════════════════
@@ -60,6 +74,18 @@ def negativeIslandExamples : List DegreeQuestionDatum :=
6074
, note := "degree question + negation" }
6175
]
6276

77+
/-- **Bridge to @cite{heim-2001} §2.1**. The maximality-failure mechanism
78+
behind the negative-island data is the same as Heim's high-DegP-over-
79+
negation argument: on any `NoMaxOrder` scale, the negated degree
80+
predicate `{d | ¬ μ(a) ≥ d}` has no greatest element, so the
81+
maximality presupposition of `how` (which Fox & Hackl tie to Universal
82+
Density of Measurement) cannot be satisfied. Re-export of
83+
`Heim2001.negation_high_DegP_undefined`. -/
84+
theorem negativeIsland_via_no_max {Entity D : Type*} [LinearOrder D]
85+
[NoMaxOrder D] (μ : Entity → D) (a : Entity) :
86+
¬ ∃ m, IsGreatest {d | negatedDegreePredicate μ a d} m :=
87+
Heim2001.negation_high_DegP_undefined μ a
88+
6389
-- ════════════════════════════════════════════════════
6490
-- § 3. Modal Obviation
6591
-- ════════════════════════════════════════════════════

0 commit comments

Comments
 (0)