Documentation

Linglib.Studies.Rett2020

[Ret20]: Antonymy + Aspectual Coercion #

[Ret20] [Ret26] [JK21] [Kri10]before and after are antonyms on converse scales, with strong defaults [dS98] [Dol14] (before-start, after-finish). Non-default readings require aspectual coercion: INCHOAT (GLB, atelic → onset) or COMPLET (LUB, telic → telos), which incur processing cost.

Rett's formal analysis (eqs. 22a-b):

Both theories use ∃ over the main clause A: "some time in A bears the relation to (some characterization) B." They differ in how B's reference point is selected (all of B vs MAX of B).

Level #

Level 2 (interval sets): operates on SentDenotation directly, using maxOnScale from Degree to select the informative bound.

Bridges #

Ambidirectionality #

before is truth-conditionally insensitive to negation of its argument (ambidirectional), which is why it licenses expletive negation cross- linguistically. after and while are not ambidirectional.

def Tense.TemporalConnectives.Rett.before {Time : Type u_1} [LinearOrder Time] (A B : SentDenotation Time) :

Rett's before (eq. 22a): ∃t ∈ times(A) [t ≺ MAX(times(B)_≺)]. Some time in A precedes the maximal (on the ≺ scale) time of B.

Equations
Instances For
    def Tense.TemporalConnectives.Rett.after {Time : Type u_1} [LinearOrder Time] (A B : SentDenotation Time) :

    Rett's after (eq. 22b): ∃t ∈ times(A) [t ≻ MAX(times(B)_≻)]. Some time in A succeeds the maximal (on the ≻ scale) time of B.

    Equations
    Instances For
      def Tense.TemporalConnectives.INCHOAT {Time : Type u_1} [LinearOrder Time] (p : SentDenotation Time) :

      Inchoative coercion / GLB ([Ret20], eq. 19; [dS98]; [Dol14]). Maps a process (atelic) denotation to a singleton containing its onset point. GLB(T) = ιt[t ∈ T ∧ ∀t' ∈ T, t ≤ t']

      Linguistically: "Amy was surprised" → "the start of Amy being surprised". Cross-linguistically realized as inchoative morphology (Russian -sja, Tagalog PFV.NEUT).

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def Tense.TemporalConnectives.COMPLET {Time : Type u_1} [LinearOrder Time] (p : SentDenotation Time) :

        Completive coercion / LUB ([Ret20], eq. 21; [Dol14]). Maps a culmination (telic) denotation to a singleton containing its telos. LUB(T) = ιt[t ∈ T ∧ ∀t' ∈ T, t ≥ t']

        Linguistically: "Jane climbed the mountain" → "the moment Jane reached the top". Cross-linguistically realized as completive morphology (Tagalog AIA).

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem Tense.TemporalConnectives.inchoat_bridges_inception {Time : Type u_1} [LinearOrder Time] (i : NonemptyInterval Time) :
          INCHOAT (stativeDenotation i) = {j : NonemptyInterval Time | j = NonemptyInterval.pure i.toProd.1}

          INCHOAT extracts the start point of a stative denotation.

          theorem Tense.TemporalConnectives.complet_bridges_cessation {Time : Type u_1} [LinearOrder Time] (i : NonemptyInterval Time) :
          COMPLET (accomplishmentDenotation i) = {j : NonemptyInterval Time | j = NonemptyInterval.pure i.toProd.2}

          COMPLET extracts the finish point of an accomplishment denotation.

          theorem Tense.TemporalConnectives.anscombe_rett_agree_stative_before_start {Time : Type u_1} [LinearOrder Time] (A : SentDenotation Time) (i_B : NonemptyInterval Time) :

          Both theories predict "before-start" for statives.

          When B is stative (subinterval-closed), both theories reduce to "some time in A precedes all times in B":

          • Anscombe directly: ∃ t ∈ A, ∀ t' ∈ B, t < t'
          • Rett: ∃ t ∈ A, t < MAX(B_≺). For statives, MAX on ≺ picks B.fst (the GLB), and t < B.fst ↔ t < all times in B.
          theorem Tense.TemporalConnectives.rett_implies_anscombe_telic_after_finish {Time : Type u_1} [LinearOrder Time] (A : SentDenotation Time) (i_B : NonemptyInterval Time) :

          Rett's analysis implies Anscombe's for telic "after".

          The converse does NOT hold: Anscombe.after only requires some point of B to precede some point of A (∃ t' ∈ B, t' < t), while Rett requires A to follow B's finish (t > MAX₍>₎(B) = i_B.snd). These differ when A overlaps B without extending past B's endpoint.

          theorem Tense.TemporalConnectives.rett_before_implies_anscombe {Time : Type u_1} [LinearOrder Time] (A B : SentDenotation Time) :

          Rett's before implies Anscombe's before in general.

          From Rett: t < m where m = min(timeTrace B). Since m < all other points in timeTrace B (by maxOnScale), t < every point in timeTrace B. This gives Anscombe's ∀-quantified conclusion.

          theorem Tense.TemporalConnectives.rett_after_implies_anscombe {Time : Type u_1} [LinearOrder Time] (A B : SentDenotation Time) :

          Rett's after implies Anscombe's after in general.

          Immediate: m ∈ maxOnScale(timeTrace B) implies m ∈ timeTrace B, and t > m gives the existential witness for Anscombe.after.

          Expletive negation and ambidirectionality #

          [Ret26] shows that before is ambidirectional: negating B in "A before B" doesn't change truth conditions. This is why before-clauses license expletive negation cross-linguistically ([JK21]: 50 of 74 EN-attesting languages, from a 722-language survey).

          The mechanism: for B = [s, f], both B and its pre-event complement (−∞, s] share s as their "most informative closed bound" on the < scale. The before construction relates A only to this bound, so negating B is truth-conditionally vacuous.

          After is NOT ambidirectional: negating B shifts the relevant bound. While requires total temporal overlap; ¬B fails when A overlaps B.

          Before truth conditions depend only on MAX₍<₎ of B's time trace.

          theorem Tense.TemporalConnectives.rett_before_closedTrace_eq {Time : Type u_1} [LinearOrder Time] (A B : SentDenotation Time) (s f : Time) (hsf : s f) (htrace : timeTrace B = {t : Time | s t t f}) :
          Rett.before A B ttimeTrace A, t < s

          When B's time trace is a closed interval [s, f], Rett.before reduces to "∃ t ∈ A, t < s".

          theorem Tense.TemporalConnectives.complet_stative {Time : Type u_1} [LinearOrder Time] (i : NonemptyInterval Time) :
          COMPLET (stativeDenotation i) = {j : NonemptyInterval Time | j = NonemptyInterval.pure i.toProd.2}

          COMPLET on a stative denotation extracts the finish point.

          def Tense.TemporalConnectives.preEventDenotation {Time : Type u_1} [LinearOrder Time] (bot : Time) (i : NonemptyInterval Time) (hbot : bot i.toProd.1) :

          The pre-event complement of an event interval [s, f].

          Equations
          Instances For
            theorem Tense.TemporalConnectives.timeTrace_stative_closedInterval {Time : Type u_1} [LinearOrder Time] (i : NonemptyInterval Time) :
            timeTrace (stativeDenotation i) = {t : Time | i.toProd.1 t t i.toProd.2}

            The time trace of a stative denotation is the closed interval [start, finish].

            theorem Tense.TemporalConnectives.maxOnScale_lt_stative {Time : Type u_1} [LinearOrder Time] (i : NonemptyInterval Time) :

            MAX₍<₎ of a stative denotation's time trace is {start}.

            theorem Tense.TemporalConnectives.timeTrace_complet_preEvent {Time : Type u_1} [LinearOrder Time] (bot : Time) (i : NonemptyInterval Time) (hbot : bot i.toProd.1) :
            timeTrace (COMPLET (preEventDenotation bot i hbot)) = {t : Time | i.toProd.1 t t i.toProd.1}

            The time trace of COMPLET(preEventDenotation bot i) is the degenerate interval {i.fst}.

            theorem Tense.TemporalConnectives.maxOnScale_lt_complet_preEvent {Time : Type u_1} [LinearOrder Time] (bot : Time) (i : NonemptyInterval Time) (hbot : bot i.toProd.1) :

            MAX₍<₎ of the COMPLET of a pre-event denotation is {start}.

            theorem Tense.TemporalConnectives.before_preEvent_ambidirectional {Time : Type u_1} [LinearOrder Time] (A : SentDenotation Time) (i_B : NonemptyInterval Time) (bot : Time) (hbot : bot i_B.toProd.1) :

            Before is truth-conditionally insensitive to event polarity.

            Both select the same boundary point s through different mechanisms: the original uses the default before-start reading (MAX₍<₎), while the negated version requires COMPLET coercion to extract the end of the pre-event interval.

            theorem Tense.TemporalConnectives.after_not_ambidirectional {Time : Type u_1} [LinearOrder Time] (hab : ∃ (a : Time) (b : Time), a < b) :
            ¬∀ (A : SentDenotation Time) (B : Set Time), Degree.isAmbidirectional (fun (X : Set Time) => ttimeTrace A, mDegree.maxOnScale Core.Order.Comparison.gt X, t > m) B

            After is NOT ambidirectional: negating B changes truth conditions because MAX₍>₎(B) ≠ MAX₍>₎(¬B).

            theorem Tense.TemporalConnectives.while_not_ambidirectional {Time : Type u_1} [Inhabited Time] :
            ¬∀ (A B : Set Time), Degree.isAmbidirectional (fun (X : Set Time) => tA, t X) B

            While is not ambidirectional.

            Temporal Connective Truth-Condition Examples #

            [Hei74] [Ret20] [Kar74]

            Concrete scenarios verifying that the Anscombe, Rett, and Karttunen formalizations produce correct truth-value judgments.

            Scenarios 1–6 verify [Ret20] Table 1 for before/after. Scenarios 7–10 verify [Hei74] Chs. 6, 8, 9 for since, by, till.

            Scenarios (ℕ time points) #

            #MEEEConnectiveResult
            1point(1)stative [5,10]beforeTrue
            2point(12)stative [5,10]afterTrue
            3point(1)accomplishment [3,8]beforeTrue
            4point(12)accomplishment [3,8]afterTrue
            5point(7)stative [5,10]beforeFalse
            6point(7)stative [5,10]afterFalse
            7stative[5,10]point(5)sinceTrue
            8point(1)point(3)byTrue
            9point(3)point(3)byTrue
            9'point(3)point(3)beforeFalse
            10stative[5,10]point(5)tillTrue
            def Rett2020.Examples.me_early :
            NonemptyInterval

            ME: "John left" — punctual event at time 1 (early).

            Equations
            Instances For
              def Rett2020.Examples.me_late :
              NonemptyInterval

              ME: "John left" — punctual event at time 12 (late).

              Equations
              Instances For
                def Rett2020.Examples.me_inside :
                NonemptyInterval

                ME: punctual event at time 7 (inside the stative EE).

                Equations
                Instances For
                  def Rett2020.Examples.ee_stative :
                  NonemptyInterval

                  EE: "she was president" — stative, running [5, 10].

                  Equations
                  Instances For
                    def Rett2020.Examples.ee_accomplishment :
                    NonemptyInterval

                    EE: "she climbed the mountain" — accomplishment, [3, 8].

                    Equations
                    Instances For

                      "John left₁ before she was president₅₋₁₀" — True under Anscombe. Witness: t = 1 ∈ ME, and 1 < all t' ∈ [5, 10].

                      "John left₁ before she was president₅₋₁₀" — True under Rett. Witness: t = 1, m = 5 (the GLB of [5, 10] on the ≺ scale).

                      "John left₁₂ after she was president₅₋₁₀" — True under Anscombe. Witness: t = 12, t' = 5 (any point in EE suffices).

                      "John left₁₂ after she was president₅₋₁₀" — True under Rett. Witness: t = 12, m = 10 (the LUB of [5, 10] on the ≻ scale).

                      "John met Mary₁ before she climbed the mountain₃₋₈" — True under Anscombe. Witness: t = 1, and 1 < all t' in [3, 8].

                      "John met Mary₁ before she climbed the mountain₃₋₈" — True under Rett. Witness: t = 1, m = 3 (the GLB of [3, 8] on the ≺ scale).

                      "John met Mary₁₂ after she climbed the mountain₃₋₈" — True under Anscombe. Witness: t = 12, t' = 3.

                      "John met Mary₁₂ after she climbed the mountain₃₋₈" — True under Rett. Witness: t = 12, m = 8 (the LUB of [3, 8] on the ≻ scale).

                      "John left₇ before she was president₅₋₁₀" — False under Anscombe. Any witness t from ME (t=7) fails: t'=7 ∈ EE and ¬(7 < 7).

                      "John left₇ after she was president₅₋₁₀" — False under Rett. The max on the ≻ scale is 10, and ¬(7 > 10).

                      theorem Rett2020.Examples.inchoat_stative_ee :
                      Tense.TemporalConnectives.INCHOAT B_stative = {j : NonemptyInterval | j = NonemptyInterval.pure 5}

                      INCHOAT of "she was president₅₋₁₀" = {point(5)}. Verifies that inchoative coercion extracts the onset.

                      theorem Rett2020.Examples.complet_telic_ee :
                      Tense.TemporalConnectives.COMPLET B_telic = {j : NonemptyInterval | j = NonemptyInterval.pure 8}

                      COMPLET of "she climbed the mountain₃₋₈" = {point(8)}. Verifies that completive coercion extracts the telos.

                      def Rett2020.Examples.ee_onset :
                      NonemptyInterval

                      EE: punctual event at time 5 — "she arrived."

                      Equations
                      Instances For
                        def Rett2020.Examples.me_at_deadline :
                        NonemptyInterval

                        ME: punctual event at time 3 — "arrived at 3pm" (for by coincidence case).

                        Equations
                        Instances For
                          def Rett2020.Examples.ee_deadline :
                          NonemptyInterval

                          EE: punctual event at time 3 — "3pm" (deadline).

                          Equations
                          Instances For

                            "He has been happy₅₋₁₀ since she arrived₅" — True under Karttunen.since. Witness: t = 5 ∈ B, and ∀t' ∈ A (i.e., 5 ≤ t' ≤ 10), 5 ≤ t'.

                            Since is veridical for its complement in scenario: she arrived.

                            "He arrived₁ by 3pm₃" — True under Karttunen.by_. Witness: t = 1 ∈ A, and ∀t' ∈ B (t' = 3), 1 ≤ 3.

                            "He arrived₃ by 3pm₃" — True under Karttunen.by_. Witness: t = 3 ∈ A, 3 ≤ 3 (coincidence allowed).

                            "He arrived₃ before 3pm₃" — FALSE under Anscombe.before. Need 3 < 3, which fails. Shows bybefore.

                            By but not before on the same scenario: demonstrates the strict weakening from before_implies_by.

                            "He slept₅₋₁₀ till she arrived₅" — True under Karttunen.till. Witness: t = 5 ∈ both time traces (overlap).

                            Not...until scenarios #

                            Karttunen's identity: punctual until = ¬before (eq. 33). We verify this on concrete time points.

                            #MEEEConstructionResult
                            11point(3)point(5)not...untilTrue
                            12point(3)point(5)presup + assertwhen
                            13point(7)point(5)not...untilFalse
                            def Rett2020.Examples.me_wake_early :
                            NonemptyInterval

                            ME: "The princess woke up" — punctual event at time 3 (early).

                            Equations
                            Instances For
                              def Rett2020.Examples.ee_kiss :
                              NonemptyInterval

                              EE: "The prince kissed her" — punctual event at time 5.

                              Equations
                              Instances For

                                Scenario 11: "The princess woke up₃ before the prince kissed her₅" — TRUE. 3 < 5. This is the base before that gets negated in punctual until.

                                Scenario 11': "The princess didn't wake up₃ until the prince kissed her₅" — FALSE. NOT(BEFORE) = NOT(wake₃ before kiss₅) = ¬(3 < 5) = False. The princess DID wake up before the kiss, so "not until" is false.

                                def Rett2020.Examples.me_wake_at_kiss :
                                NonemptyInterval

                                ME: "The princess woke up" — punctual event at time 5 (AT the kiss).

                                Equations
                                Instances For

                                  Scenario 12: "The princess didn't wake up₅ until the prince kissed her₅" — TRUE. NOT(BEFORE) = NOT(wake₅ before kiss₅) = ¬(5 < 5) = True. She woke up at exactly the time of the kiss.

                                  Scenario 12': Presupposition (wake₅ before kiss₅ ∨ wake₅ when kiss₅) is satisfied: the waking happens at the kiss time (when), so the left disjunct is false but the right is true.

                                  Scenario 12'': Presupposition + assertion → when (disjunctive syllogism). This is Karttunen's key result: "not until" + presupposition derives "when".

                                  def Rett2020.Examples.me_wake_late :
                                  NonemptyInterval

                                  ME: "The princess woke up" — punctual event at time 7 (AFTER the kiss).

                                  Equations
                                  Instances For

                                    Scenario 13: "The princess didn't wake up₇ until the prince kissed her₅" — TRUE. NOT(BEFORE) = NOT(wake₇ before kiss₅) = ¬(7 < 5) = True. She woke up after the kiss, so she didn't wake up before it.

                                    Scenario 13': wake₇ is NOT when kiss₅ (no overlap at any time point).

                                    Scenario 13'': The presupposition (before ∨ when) is NOT satisfied, so not...until is vacuously true but pragmatically infelicitous. This models why "She didn't wake up until the prince kissed her" is odd when she woke up AFTER the kiss — the presupposition fails.