Documentation

Linglib.Syntax.Clause.Frame

Complement frames — typed slots #

A verb's complement frame as a list of typed Slots, factoring the flat ComplementType enum cells into their axes: syntactic category, case marking, CP-external shell ([Dea26]), clause form, [Noo07] coding, and embedded-subject requirement (genitive subjects of nominalized clauses, [Bon22]). The legacy enum survives as a round-trip view (ComplementType.toFrame / Frame.toComplementType).

Main declarations #

Implementation notes #

Frame-conditioned readings (attitude, opacity, control) are not slot data — they live on Verb.Reading (Semantics/Verb/Defs.lean), keyed to the verb's frames. The [Noo07] selection relation between verb frames and clause-typers (Verb.realizes) lives in Syntax/Clause/Complementation.lean. This file never imports Semantics/.

CP-external wrapping shells #

ComplementSize and ClauseSpine (Syntax/Minimalist/) record internal clause height; Slot.Shell records what wraps the CP externally. [Dea26] Table 79 cross-classifies the two axes.

inductive Slot.Shell :

A wrapping head above a CP: [Dea26] Table 79 attests D, N, and P; c is the base case, so the bare-CP inventory is [.c].

  • c : Shell

    The CP itself (always present).

  • d : Shell

    D shell.

  • n : Shell

    N shell (between D and CP).

  • p : Shell

    P shell.

Instances For
    @[implicit_reducible]
    instance Slot.instDecidableEqShell :
    DecidableEq Shell
    Equations
    @[implicit_reducible]
    instance Slot.instReprShell :
    Repr Shell
    Equations
    def Slot.instReprShell.repr :
    ShellStd.Format
    Equations
    Instances For
      @[reducible, inline]

      An ordered shell list, innermost first: [.c, .d] = D wraps CP, [.c, .n, .d] = D wraps N wraps CP.

      Equations
      Instances For

        The bare-CP cell (Nez Perce; English think).

        Equations
        Instances For

          The V P D CP cell (Bulgarian, [Kra10]; Ndebele, [Pie19]).

          Equations
          Instances For

            The four named witnesses are all attested.

            P-shelling co-occurs with D-shelling.

            N appears only inside a D shell.

            Every named shell contains C.

            V P CP (P with no D shell) is not a Table 79 cell.

            V N CP (N with no D shell) is not a Table 79 cell.

            The clause complex is wrapped in a nominal projection: its shell contains D (Washo dCP, Adyghe dnCP, Bulgarian/Ndebele pdCP; bareCP is not). On [Dea26]'s attested cells this coincides with bareCP (pCP/nCP are unattested); D-membership is the definitional content, not the complement of a special case.

            Equations
            Instances For

              Complement-frame axes #

              inductive Slot.Cat :

              Syntactic category of a complement slot.

              Instances For
                @[implicit_reducible]
                instance Slot.instDecidableEqCat :
                DecidableEq Cat
                Equations
                def Slot.instReprCat.repr :
                CatStd.Format
                Equations
                Instances For
                  @[implicit_reducible]
                  instance Slot.instReprCat :
                  Repr Cat
                  Equations

                  Embedded-subject requirement of a clausal slot: obligatorily null (control/raising infinitives) or overt, optionally with a fixed case (genitive subjects of nominalized clauses, [Bon22]).

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

                      The frame object #

                      structure Slot :

                      One complement position of a verb's frame: its category plus, for clausal slots, the recorded clausal axes. On non-clausal slots the clausal axes are none (Slot.WellFormed); on clausal slots none means unrecorded. Frame-conditioned readings and control are not slot data — they live on Verb.Reading.

                      Instances For
                        @[implicit_reducible]
                        instance instDecidableEqSlot :
                        DecidableEq Slot
                        Equations
                        def instDecidableEqSlot.decEq (x✝ x✝¹ : Slot) :
                        Decidable (x✝ = x✝¹)
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          @[implicit_reducible]
                          instance instReprSlot :
                          Repr Slot
                          Equations
                          def instReprSlot.repr :
                          SlotStd.Format
                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For

                            Clausal axes are reserved for clausal slots.

                            Equations
                            Instances For
                              @[implicit_reducible]
                              Equations

                              The slot is clausal.

                              Equations
                              Instances For
                                @[reducible, inline]
                                abbrev Frame :

                                A complement frame: the verb's selected complement positions in order. Intransitive = []; double object = two slots.

                                Equations
                                Instances For

                                  The [Noo07] codings recorded across the frame's slots.

                                  Equations
                                  Instances For

                                    Some slot of the frame records clause form cf.

                                    Equations
                                    Instances For
                                      @[implicit_reducible]
                                      Equations

                                      Some slot of the frame records [Noo07] coding t.

                                      Equations
                                      Instances For
                                        @[implicit_reducible]
                                        instance Frame.instDecidableHasCoding (fr : Frame) (t : NoonanCompType) :
                                        Decidable (fr.hasCoding t)
                                        Equations

                                        Smart constructors — the legacy ComplementType cells #

                                        Transitive: one nominal slot.

                                        Equations
                                        Instances For

                                          Double object: two nominal slots.

                                          Equations
                                          Instances For

                                            NP + PP: a nominal plus an adpositional slot.

                                            Equations
                                            Instances For

                                              Finite declarative clause.

                                              Equations
                                              Instances For

                                                Infinitival clause: obligatorily null embedded subject.

                                                Equations
                                                Instances For

                                                  Gerund / nominalized clause.

                                                  Equations
                                                  Instances For

                                                    Small clause (paratactic coding).

                                                    Equations
                                                    Instances For

                                                      Embedded question.

                                                      Equations
                                                      Instances For

                                                        The legacy enum view #

                                                        Partial inverse of ComplementType.toFrame: the legacy enum cell a frame instantiates, none on frames richer than any cell.

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

                                                          The enum view round-trips over the smart-constructor cells.