{
  "compose_bundle": 1,
  "title": "Coppock & Champollion — Invitation to Formal Semantics",
  "authors": "Elizabeth Coppock & Lucas Champollion",
  "chapters": [
    {
      "prefix": "ch6",
      "label": "§6",
      "title": "Function Application & Quantifiers"
    },
    {
      "prefix": "ch7",
      "label": "§7",
      "title": "Adjectives, Relatives & Pronouns"
    },
    {
      "prefix": "ch8",
      "label": "§8",
      "title": "Definites & Possessives"
    },
    {
      "prefix": "ch10",
      "label": "§10",
      "title": "Coordination & Plurals"
    },
    {
      "prefix": "ch11",
      "label": "§11",
      "title": "Event Semantics"
    },
    {
      "prefix": "ch12",
      "label": "§12",
      "title": "Tense & Aspect"
    },
    {
      "prefix": "ch13",
      "label": "§13",
      "title": "Intensional Semantics"
    }
  ],
  "exercises": [
    {
      "key": "ch6.1-fa",
      "title": "Function Application (§6.1–6.3)",
      "content": {
        "compose": 1,
        "id": "ch6-fa",
        "title": "Function Application (§6.1–6.3)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2 r"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "runs",
              "run"
            ],
            "denotation": "Lx.run(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "sleeps",
              "sleep"
            ],
            "denotation": "Lx.sleep(x)"
          },
          {
            "words": [
              "hikes",
              "hike"
            ],
            "denotation": "Lx.hike(x)"
          },
          {
            "words": [
              "gardens",
              "garden"
            ],
            "denotation": "Lx.garden(x)"
          },
          {
            "words": [
              "fights",
              "fight"
            ],
            "denotation": "Lx.fight(x)"
          },
          {
            "words": [
              "laughs",
              "laugh"
            ],
            "denotation": "Lx.laugh(x)"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "gives",
              "give"
            ],
            "denotation": "Lz.Ly.Lx.give(x,y,z)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "the-ring"
            ],
            "denotation": "r"
          },
          {
            "words": [
              "with"
            ],
            "denotation": "Ly.Lx.with(x,y)"
          },
          {
            "words": [
              "in"
            ],
            "denotation": "Ly.Lx.in(x,y)"
          },
          {
            "words": [
              "to"
            ],
            "denotation": "Ly.Lx.to(x,y)"
          },
          {
            "words": [
              "near"
            ],
            "denotation": "Ly.Lx.near(x,y)"
          },
          {
            "words": [
              "Mordor"
            ],
            "denotation": "o"
          },
          {
            "words": [
              "Rivendell"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true
          }
        },
        "exercises": [
          {
            "title": "A. Intransitive verbs",
            "instructions": "A subject of type e combines with an intransitive verb of type ⟨e,t⟩ by Function Application, yielding a proposition of type t.",
            "items": [
              {
                "sentence": "Frodo runs.",
                "tree": "[.S [.DP Frodo ] [.VP runs ] ]",
                "reading": {
                  "section": "6.1"
                },
                "targets": [
                  "run(f)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote f and λx.run(x). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Strider hikes.",
                "tree": "[.S [.DP Strider ] [.VP hikes ] ]",
                "reading": {
                  "section": "6.1"
                },
                "targets": [
                  "hike(st)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote st and λx.hike(x). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Sam gardens.",
                "tree": "[.S [.DP Sam ] [.VP gardens ] ]",
                "reading": {
                  "section": "6.1"
                },
                "targets": [
                  "garden(s)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote s and λx.garden(x). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g1"
          },
          {
            "title": "B. Transitive and ditransitive verbs",
            "instructions": "A transitive verb ⟨e,⟨e,t⟩⟩ takes its object first, then its subject. A ditransitive verb takes three arguments in turn; here \"the ring\" is treated as a single individual of type e (definite descriptions come in §8).",
            "items": [
              {
                "sentence": "Bilbo loves Frodo.",
                "tree": "[.S [.DP Bilbo ] [.VP [.V loves ] [.DP Frodo ] ] ]",
                "reading": {
                  "section": "6.2"
                },
                "targets": [
                  "love(bi, f)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote bi and λx.love(x, f). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Frodo trusts Sam.",
                "tree": "[.S [.DP Frodo ] [.VP [.V trusts ] [.DP Sam ] ] ]",
                "reading": {
                  "section": "6.2"
                },
                "targets": [
                  "trust(f, s)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote f and λx.trust(x, s). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Gandalf gives Frodo Sam.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V [.V gives ] [.DP Frodo ] ] [.DP Sam ] ] ]",
                "reading": {
                  "section": "6.2"
                },
                "targets": [
                  "give(g, s, f)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote g and λx.give(x, s, f). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g2"
          },
          {
            "title": "C. The copula",
            "instructions": "The copula \"is\" and the article \"a\" are the identity function λX.X. They pass the predicate up unchanged, and the predicate applies to the subject.",
            "items": [
              {
                "sentence": "Frodo is a hobbit.",
                "tree": "[.S [.DP Frodo ] [.VP [.V is ] [.NP [.D a ] [.NP hobbit ] ] ] ]",
                "reading": {
                  "section": "6.2.2"
                },
                "targets": [
                  "hobbit(f)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote f and λx.hobbit(x). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Gandalf is a wizard.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V is ] [.NP [.D a ] [.NP wizard ] ] ] ]",
                "reading": {
                  "section": "6.2.2"
                },
                "targets": [
                  "wizard(g)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote g and λx.wizard(x). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Sam is brave.",
                "tree": "[.S [.DP Sam ] [.VP [.V is ] [.AP brave ] ] ]",
                "reading": {
                  "section": "6.2.2"
                },
                "targets": [
                  "brave(s)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote s and λx.brave(x). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g3"
          },
          {
            "title": "D. Prepositions",
            "instructions": "A preposition is a relation of type ⟨e,⟨e,t⟩⟩, like a transitive verb. It combines with its complement to form a predicate ⟨e,t⟩, which the copula passes up to the subject.",
            "items": [
              {
                "sentence": "Sam is with Frodo.",
                "tree": "[.S [.DP Sam ] [.VP [.V is ] [.PP [.P with ] [.DP Frodo ] ] ] ]",
                "reading": {
                  "section": "6.2.3"
                },
                "targets": [
                  "with(s, f)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote s and λx.with(x, f). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Sauron is in Mordor.",
                "tree": "[.S [.DP Sauron ] [.VP [.V is ] [.PP [.P in ] [.DP Mordor ] ] ] ]",
                "reading": {
                  "section": "6.2.3"
                },
                "targets": [
                  "in(n, o)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote n and λx.in(x, o). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Gandalf is near Rivendell.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V is ] [.PP [.P near ] [.DP Rivendell ] ] ] ]",
                "reading": {
                  "section": "6.2.3"
                },
                "targets": [
                  "near(g, w)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote g and λx.near(x, w). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g4"
          },
          {
            "title": "E. Negation",
            "instructions": "Negation is type ⟨⟨e,t⟩,⟨e,t⟩⟩: it takes a predicate and returns its complement. \"doesn't\" negates a verb phrase; \"not\" after the copula negates the predicate nominal.",
            "items": [
              {
                "sentence": "Frodo doesn't fight.",
                "tree": "[.S [.DP Frodo ] [.VP [.Neg doesnt ] [.VP fights ] ] ]",
                "reading": {
                  "section": "6.3"
                },
                "targets": [
                  "¬fight(f)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote f and λx.¬fight(x). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Sauron is not a hobbit.",
                "tree": "[.S [.DP Sauron ] [.VP [.V is ] [.NegP [.Neg not ] [.NP [.D a ] [.NP hobbit ] ] ] ] ]",
                "reading": {
                  "section": "6.3"
                },
                "targets": [
                  "¬hobbit(n)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote n and λx.¬hobbit(x). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Sauron is not in Rivendell.",
                "tree": "[.S [.DP Sauron ] [.VP [.V is ] [.NegP [.Neg not ] [.PP [.P in ] [.DP Rivendell ] ] ] ] ]",
                "reading": {
                  "section": "6.3"
                },
                "targets": [
                  "¬in(n, w)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote n and λx.¬in(x, w). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g5"
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 6 · Function Application\n\nFrege's insight is that a verb phrase is *unsaturated*: `loves Frodo` is a meaning with a hole in it, waiting for a subject. The guiding hypothesis of this chapter is that meanings combine in essentially **one** way — a function meets its argument and fills the hole.\n\nWe translate each English word into the typed lambda calculus, give every node in the tree a semantic **type**, and let two composition rules do all the work.\n\n## 6.1 Function Application\n\nThere are two basic types: $e$ for individuals and $t$ for truth values. A one-place predicate is a function from individuals to truth values, written $<e,t>$.\n\n**Function Application (FA).** If a branching node has two daughters — one of type $<s,t>$ and the other of type $s$ — the mother denotes the result of applying the first to the second, and has type $t$.[^order]\n\n**Non-branching Nodes (NN).** A node with a single daughter simply inherits that daughter's denotation.\n\nAn intransitive verb is type $<e,t>$ and a subject name is type $e$, so the two meet directly by FA:\n\n\\begin{derivation}\n[[runs]]       = lambda x.run(x)  : <e,t>\n[[Frodo]]      = f                : e\n[[Frodo runs]] = run(f)           : t\n\\end{derivation}\n\n\\begin{forest}\n[S{run(f)}\n  [DP{f} Frodo]\n  [VP{lambda x.run(x)} runs]]\n\\end{forest}\n\nSo *Frodo runs* is true exactly when $f$ belongs to the set of runners. Every sentence in (\\ref{intrans}) has this same shape.\n\n\\ex<intrans> Frodo runs.\n\\xe\n\n\\ex Strider hikes.\n\\xe\n\n\\ex * Runs Frodo.\n\\xe\n\n[^order]: $s$ and $t$ here are *any* types, not just the truth-value type — they range over whatever the two daughters happen to be. FA only cares that one daughter's input type matches the other daughter's type.\n\n## 6.2 Transitive and ditransitive verbs\n\nA transitive verb wants two arguments, so it is type $<e,<e,t>>$ — a function that takes the **object** first and returns a one-place predicate:\n\n\\begin{derivation}\n[[loves]]              = lambda y.lambda x.love(x,y) : <e,<e,t>>\n[[loves Frodo]]        = lambda x.love(x,f)          : <e,t>\n[[Bilbo loves Frodo]]  = love(bi,f)                  : t\n\\end{derivation}\n\n\\begin{forest}\n[S{love(bi,f)}\n  [DP{bi} Bilbo]\n  [VP{lambda x.love(x,f)}\n    [V{lambda y.lambda x.love(x,y)} loves]\n    [DP{f} Frodo]]]\n\\end{forest}\n\nThe object saturates the inner $lambda y$; the subject saturates the outer $lambda x$ at the top node. A ditransitive verb such as *gives* is type $<e,<e,<e,t>>>$ and peels off three arguments in turn, innermost first.\n\n## 6.2.2 The copula and predication\n\nWords like *is* and the article *a* carry no content of their own: each is the identity function $lambda X.X$, of type $<<e,t>,<e,t>>$. They pass a predicate up the tree untouched, so the predicate ends up applying to the subject:\n\n\\begin{derivation}\n[[is]] = [[a]]         = lambda X.X         : <<e,t>,<e,t>>\n[[hobbit]]             = lambda x.hobbit(x) : <e,t>\n[[Frodo is a hobbit]]  = hobbit(f)          : t\n\\end{derivation}\n\nA predicate adjective behaves the same way: *Sam is brave* reduces all the way to $brave(s)$.\n\n## 6.2.3 Prepositions\n\nA preposition is a relation between two individuals, type $<e,<e,t>>$ — structurally just like a transitive verb. It combines with its complement to form a predicate, which the copula then relays to the subject:\n\n\\begin{derivation}\n[[with]]               = lambda y.lambda x.with(x,y) : <e,<e,t>>\n[[with Frodo]]         = lambda x.with(x,f)          : <e,t>\n[[Sam is with Frodo]]  = with(s,f)                   : t\n\\end{derivation}\n\n## 6.3 Negation\n\nPredicate negation is type $<<e,t>,<e,t>>$: it takes a predicate and returns its **complement** — the set of everything the predicate is false of.\n\n\\begin{derivation}\n[[doesnt]] = [[not]]      = lambda P.lambda x.~P(x) : <<e,t>,<e,t>>\n[[doesnt fight]]          = lambda x.~fight(x)      : <e,t>\n[[Frodo doesnt fight]]    = ~fight(f)               : t\n\\end{derivation}\n\n*doesn't* negates a verb phrase; *not* after the copula negates a predicate nominal or PP, as in (\\ref{neg}). Either way the result is the complement of the predicate it applies to.\n\n\\ex<neg> Frodo doesn't fight.\n\\xe\n\n\\ex Sauron is not a hobbit.\n\\xe\n\n\\ex Sauron is not in Rivendell.\n\\xe"
        }
      }
    },
    {
      "key": "ch6.2-quant",
      "title": "Quantifiers (§6.4)",
      "content": {
        "compose": 1,
        "id": "ch6-quant",
        "title": "Quantifiers (§6.4)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "runs",
              "run"
            ],
            "denotation": "Lx.run(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "sleeps",
              "sleep"
            ],
            "denotation": "Lx.sleep(x)"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "orc"
            ],
            "denotation": "Lx.orc(x)"
          },
          {
            "words": [
              "ranger"
            ],
            "denotation": "Lx.ranger(x)"
          },
          {
            "words": [
              "magical"
            ],
            "denotation": "Lx.magical(x)"
          },
          {
            "words": [
              "beautiful"
            ],
            "denotation": "Lx.beautiful(x)"
          },
          {
            "words": [
              "late"
            ],
            "denotation": "Lx.late(x)"
          },
          {
            "words": [
              "drinks",
              "drink"
            ],
            "denotation": "Lx.drink(x)"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "everything",
              "everyone"
            ],
            "denotation": "LP.Ax[P(x)]"
          },
          {
            "words": [
              "something",
              "someone"
            ],
            "denotation": "LP.Ex[P(x)]"
          },
          {
            "words": [
              "nothing",
              "no-one"
            ],
            "denotation": "LP.~Ex[P(x)]"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true
          }
        },
        "exercises": [
          {
            "title": "A. Simple quantifiers",
            "instructions": "\"Everything\", \"something\" and \"nothing\" are complete generalized quantifiers of type ⟨⟨e,t⟩,t⟩. They apply directly to the predicate — the first uses a copular predicate, the second a transitive verb, the third adds negation.",
            "items": [
              {
                "sentence": "Everything is beautiful.",
                "tree": "[.S [.DP everything ] [.VP [.V is ] [.AP beautiful ] ] ]",
                "reading": {
                  "section": "6.4"
                }
              },
              {
                "sentence": "Nothing loves Sauron.",
                "tree": "[.S [.DP nothing ] [.VP [.V loves ] [.DP Sauron ] ] ]",
                "reading": {
                  "section": "6.4"
                }
              },
              {
                "sentence": "Something is not beautiful.",
                "tree": "[.S [.DP something ] [.VP [.Neg not ] [.VP [.V is ] [.AP beautiful ] ] ] ]",
                "reading": {
                  "section": "6.4"
                }
              }
            ]
          },
          {
            "title": "B. Generalized quantifiers",
            "instructions": "A determiner combines with a noun to form a generalized quantifier ⟨⟨e,t⟩,t⟩, which takes the VP as its argument. The third example layers in VP negation.",
            "items": [
              {
                "sentence": "Every hobbit drinks.",
                "tree": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP drinks ] ]",
                "reading": {
                  "section": "6.4.2"
                }
              },
              {
                "sentence": "No elf fears Sauron.",
                "tree": "[.S [.DP [.D no ] [.NP elf ] ] [.VP [.V fears ] [.DP Sauron ] ] ]",
                "reading": {
                  "section": "6.4.2"
                }
              },
              {
                "sentence": "Some elf doesn't drink.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.Neg doesnt ] [.VP drinks ] ] ]",
                "reading": {
                  "section": "6.4.2"
                }
              }
            ]
          },
          {
            "title": "C. Quantifiers with transitive verbs",
            "instructions": "A subject quantifier scopes over the clause. The later items fold in tools from earlier sections: VP negation, and a copular predicate nominal.",
            "items": [
              {
                "sentence": "Every dwarf trusts Aragorn.",
                "tree": "[.S [.DP [.D every ] [.NP dwarf ] ] [.VP [.V trusts ] [.DP Aragorn ] ] ]",
                "reading": {
                  "section": "6.4.2"
                }
              },
              {
                "sentence": "Some elf doesn't fear Sauron.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.Neg doesnt ] [.VP [.V fears ] [.DP Sauron ] ] ] ]",
                "reading": {
                  "section": "6.4.2"
                }
              },
              {
                "sentence": "No orc is a ranger.",
                "tree": "[.S [.DP [.D no ] [.NP orc ] ] [.VP [.V is ] [.NP [.D a ] [.NP ranger ] ] ] ]",
                "reading": {
                  "section": "6.4.2"
                }
              }
            ]
          },
          {
            "title": "D. Scope ambiguity",
            "instructions": "Negation and a universal quantifier can interact in two ways. Sentential (wide-scope) negation ¬∀ says the universal statement is false; VP (narrow-scope) negation ∀¬ says every individual fails. Derive the reading shown.",
            "items": [
              {
                "sentence": "Not every hobbit loves Gandalf.",
                "instructions": "Surface-scope reading only: negation takes wide scope.\n∀x[hobbit(x) → love(x,g)]",
                "tree": "[.S [.NegP [.Neg not ] [.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.V loves ] [.DP Gandalf ] ] ] ] ]",
                "targets": [
                  "wide scope: ¬∀x[hobbit(x) → love(x, g)]"
                ],
                "reading": {
                  "section": "6.6"
                }
              },
              {
                "sentence": "Every hobbit doesn't love Gandalf.",
                "instructions": "Two scope readings are possible. Derive each using the tree provided for that reading.",
                "tree": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.Neg doesnt ] [.VP [.V love ] [.DP Gandalf ] ] ] ]",
                "targets": [
                  "surface scope (∀ > ¬): ∀x[hobbit(x) → ¬love(x, g)]",
                  "inverse scope (¬ > ∀): ¬∀x[hobbit(x) → love(x, g)]"
                ],
                "scopeTrees": {
                  "0": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.Neg doesnt ] [.VP [.V love ] [.DP Gandalf ] ] ] ]",
                  "1": "[.S [.NegP [.Neg not ] [.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.V loves ] [.DP Gandalf ] ] ] ] ]"
                },
                "reading": {
                  "section": "6.6"
                }
              },
              {
                "sentence": "Some elf doesn't trust Sauron.",
                "instructions": "Two scope readings are possible.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.Neg doesnt ] [.VP [.V trust ] [.DP Sauron ] ] ] ]",
                "targets": [
                  "surface scope (∃ > ¬): ∃x[elf(x) ∧ ¬trust(x, n)]",
                  "inverse scope (¬ > ∃): ¬∃x[elf(x) ∧ trust(x, n)]"
                ],
                "scopeTrees": {
                  "0": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.Neg doesnt ] [.VP [.V trust ] [.DP Sauron ] ] ] ]",
                  "1": "[.S [.NegP [.Neg not ] [.S [.DP [.D some ] [.NP elf ] ] [.VP [.V trusts ] [.DP Sauron ] ] ] ] ]"
                },
                "reading": {
                  "section": "6.6"
                }
              }
            ]
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 6 · Quantifiers\n\nA name denotes an individual — type $e$. But *everyone* does not pick out any single individual: no one person *is* everyone. Quantifiers therefore live one type up, as functions over predicates.\n\n## 6.4 Generalized quantifiers\n\nA quantifier is a **property of properties**: type $<<e,t>,t>$. It takes a verb-phrase meaning of type $<e,t>$ and returns a truth value.\n\n\\begin{derivation}\n[[everything]] = lambda P.forall x[P(x)]  : <<e,t>,t>\n[[something]]  = lambda P.exists x[P(x)]  : <<e,t>,t>\n[[nothing]]    = lambda P.~exists x[P(x)] : <<e,t>,t>\n\\end{derivation}\n\nBecause it is already a complete quantifier, it applies **directly** to the predicate by Function Application:\n\n\\begin{forest}\n[S{forall x[beautiful(x)]}\n  [DP{lambda P.forall x[P(x)]} everything]\n  [VP{lambda x.beautiful(x)} is beautiful]]\n\\end{forest}\n\nSo the sentences in (\\ref{simple}) come out as $forall x[beautiful(x)]$ and $~exists x[love(x,n)]$ respectively — exactly the truth conditions we want.\n\n\\ex<simple> Everything is beautiful.\n\\xe\n\n\\ex Nothing loves Sauron.\n\\xe\n\n\\ex Something is not beautiful.\n\\xe\n\n## 6.4.2 Quantificational determiners\n\nA determiner like *every*, *some*, or *no* builds a quantifier out of a noun. It is type $<<e,t>,<<e,t>,t>>$: it takes the **restrictor** noun first, then the **scope** verb phrase.\n\n\\begin{derivation}\n[[every]] = lambda X.lambda Y.forall x[X(x) -> Y(x)] : <<e,t>,<<e,t>,t>>\n[[some]]  = lambda X.lambda Y.exists x[X(x) & Y(x)]  : <<e,t>,<<e,t>,t>>\n[[no]]    = lambda X.lambda Y.~exists x[X(x) & Y(x)] : <<e,t>,<<e,t>,t>>\n\\end{derivation}\n\nNote the connective: *every* joins restrictor and scope with the conditional $->$, while *some* and *no* use conjunction $&$.[^donkey] The determiner first combines with the noun to form a generalized quantifier of type $<<e,t>,t>$, which then takes the VP:\n\n\\begin{forest}\n[S{forall x[hobbit(x) -> drink(x)]}\n  [DP{lambda Y.forall x[hobbit(x) -> Y(x)]}\n    [D{lambda X.lambda Y.forall x[X(x) -> Y(x)]} every]\n    [NP{lambda x.hobbit(x)} hobbit]]\n  [VP{lambda x.drink(x)} drinks]]\n\\end{forest}\n\nThe same recipe scales to transitive verbs and to predicate nominals, as in (\\ref{det}) — only the VP that the quantifier consumes changes.\n\n\\ex<det> Every hobbit drinks.\n\\xe\n\n\\ex No elf fears Sauron.\n\\xe\n\n\\ex No orc is a ranger.\n\\xe\n\n[^donkey]: This restrictor–scope split is the heart of *generalized quantifier theory*: a determiner is a relation between two sets, the noun's denotation and the VP's.\n\n## 6.6 Negation and scope ambiguity\n\nWhen negation meets a quantifier, two readings can arise, depending on which element scopes over the other.[^scope] *Every hobbit doesn't love Gandalf* can mean either of (\\ref{scope}):\n\n\\ex<scope> Surface, $forall > ~$ : $forall x[hobbit(x) -> ~love(x,g)]$ — every hobbit fails to love him.\n\\xe\n\n\\ex Inverse, $~ > forall$ : $~forall x[hobbit(x) -> love(x,g)]$ — not all hobbits do.\n\\xe\n\nSentential negation sits **above** the clause — $not [S ...]$ — giving the wide-scope $~forall$ reading; VP negation sits **inside** the clause, giving $forall~$. COMPOSE supplies a separate tree for each reading, so derive the one named in the exercise.\n\n[^scope]: A *scope ambiguity* is one string with two distinct logical forms. The surface tree fixes one reading; the other requires negation to take scope it does not have on the surface."
        }
      }
    },
    {
      "key": "ch7.1-adj",
      "title": "Adjectives & Predicate Modification (§7.2)",
      "content": {
        "compose": 1,
        "id": "ch7-adj",
        "title": "Adjectives & Predicate Modification (§7.2)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "ranger"
            ],
            "denotation": "Lx.ranger(x)"
          },
          {
            "words": [
              "human"
            ],
            "denotation": "Lx.human(x)"
          },
          {
            "words": [
              "king"
            ],
            "denotation": "Lx.king(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "mischievous"
            ],
            "denotation": "Lx.mischievous(x)"
          },
          {
            "words": [
              "mundane"
            ],
            "denotation": "Lx.mundane(x)"
          },
          {
            "words": [
              "magical"
            ],
            "denotation": "Lx.magical(x)"
          },
          {
            "words": [
              "traveling"
            ],
            "denotation": "Lx.traveling(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "former"
            ],
            "denotation": "LF.Lx.former(F)(x)"
          },
          {
            "words": [
              "alleged"
            ],
            "denotation": "LF.Lx.alleged(F)(x)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(x,y)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true
          }
        },
        "exercises": [
          {
            "title": "A. Intersective adjectives with copula",
            "instructions": "An intersective adjective is a predicate ⟨e,t⟩. Two predicates sisters in NP combine by Predicate Modification: λx.[F(x) ∧ G(x)]. The copula passes the result up unchanged. The third adds a quantifier as complication.",
            "items": [
              {
                "sentence": "Pippin is a mischievous hobbit.",
                "tree": "[.S [.DP Pippin ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mischievous ] [.NP hobbit ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "mischievous(pi) ∧ hobbit(pi)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote pi and λx.mischievous(x) ∧ hobbit(x). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Tom is not a mundane creature.",
                "tree": "[.S [.DP Tom ] [.VP [.Neg not ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mundane ] [.NP creature ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "¬(mundane(tm) ∧ creature(tm))"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote tm and λx.¬(mundane(x) ∧ creature(x)). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Every traveling hobbit is a brave creature.",
                "tree": "[.S [.DP [.D every ] [.NP [.AP traveling ] [.NP hobbit ] ] ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP brave ] [.NP creature ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "∀x.traveling(x) ∧ hobbit(x) → brave(x) ∧ creature(x)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote λY.∀x.traveling(x) ∧ hobbit(x) → Y(x) and λx.brave(x) ∧ creature(x). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g1"
          },
          {
            "title": "B. Stacked adjectives",
            "instructions": "Multiple intersective adjectives stack by repeated Predicate Modification. Each AP adds its predicate conjunctively. The third example adds sentential negation.",
            "items": [
              {
                "sentence": "Tom is a mischievous magical creature.",
                "tree": "[.S [.DP Tom ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mischievous ] [.NP [.AP magical ] [.NP creature ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "mischievous(tm) ∧ magical(tm) ∧ creature(tm)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote tm and λx.mischievous(x) ∧ magical(x) ∧ creature(x). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Strider is not a human ranger.",
                "tree": "[.S [.DP Strider ] [.VP [.Neg not ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP human ] [.NP ranger ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "¬(human(st) ∧ ranger(st))"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote st and λx.¬(human(x) ∧ ranger(x)). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "No traveling hobbit is a mischievous brave creature.",
                "tree": "[.S [.DP [.D no ] [.NP [.AP traveling ] [.NP hobbit ] ] ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mischievous ] [.NP [.AP brave ] [.NP creature ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "¬(∃x.traveling(x) ∧ hobbit(x) ∧ mischievous(x) ∧ brave(x) ∧ creature(x))"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote λY.¬(∃x.traveling(x) ∧ hobbit(x) ∧ Y(x)) and λx.mischievous(x) ∧ brave(x) ∧ creature(x). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g2"
          },
          {
            "title": "C. Non-intersective adjectives",
            "instructions": "Non-intersective adjectives like \"alleged\" and \"former\" are predicate modifiers ⟨⟨e,t⟩,⟨e,t⟩⟩ — they take a property and return a property, without entailing the base noun. They combine by Function Application, not PM.",
            "items": [
              {
                "sentence": "Strider is an alleged king.",
                "tree": "[.S [.DP Strider ] [.VP [.V is ] [.NP [.D an ] [.NP [.AP alleged ] [.NP king ] ] ] ] ]",
                "reading": {
                  "section": "7.2.1"
                },
                "targets": [
                  "alleged(λx.king(x), st)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote st and λx.alleged(λx.king(x), x). Combine them and β-reduce."
                ],
                "id": "d1"
              },
              {
                "sentence": "Bilbo is a former traveling hobbit.",
                "tree": "[.S [.DP Bilbo ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP former ] [.NP [.AP traveling ] [.NP hobbit ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2.1"
                },
                "targets": [
                  "former(λx.traveling(x) ∧ hobbit(x), bi)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote bi and λx.former(λx.traveling(x) ∧ hobbit(x), x). Combine them and β-reduce."
                ],
                "id": "d2"
              },
              {
                "sentence": "Some alleged wise wizard sees Sauron.",
                "tree": "[.S [.DP [.D some ] [.NP [.AP alleged ] [.NP [.AP wise ] [.NP wizard ] ] ] ] [.VP [.V sees ] [.DP Sauron ] ] ]",
                "reading": {
                  "section": "7.2.1"
                },
                "targets": [
                  "∃x.alleged(λx.wise(x) ∧ wizard(x), x) ∧ see(x, n)"
                ],
                "hints": [
                  "Work bottom-up: resolve every leaf from the lexicon first. The root node is resolved by Function Application — one sister denotes a function whose type matches the other sister.",
                  "At the root, the sisters denote λY.∃x.alleged(λx.wise(x) ∧ wizard(x), x) ∧ Y(x) and λx.see(x, n). Combine them and β-reduce."
                ],
                "id": "d3"
              }
            ],
            "id": "g3"
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 7 · Predicate Modification\n\nChapter 6 established **Function Application** as the core composition rule. Chapter 7 adds a second rule — **Predicate Modification** — for adjective–noun combinations, and widens the type inventory to include predicate modifiers ⟨⟨e,t⟩,⟨e,t⟩⟩.\n\n## 7.2 Predicate Modification\n\n**Predicate Modification (PM).** If two sisters α and β are both type ⟨e,t⟩, their mother denotes λx.[α(x) ∧ β(x)].\n\nAn *intersective* adjective is a plain one-place predicate. It shares type ⟨e,t⟩ with the noun, so the two sisters combine by PM. The determiner *a/an* and copula *is/are* are identity functions that pass their sister's denotation straight up.\n\n\\ex<pm-ex> Pippin is a mischievous hobbit.\n\\xe\n\n\\ex Tom is not a mundane creature.\n\\xe\n\n\\ex Every traveling hobbit is a brave creature.\n\\xe\n\n\\begin{derivation}\n[[mischievous]]                     = lambda x.mischievous(x)                      : <e,t>\n[[hobbit]]                          = lambda x.hobbit(x)                           : <e,t>\n[[mischievous hobbit]]              = lambda x.mischievous(x) /\\ hobbit(x)         : <e,t>\n[[a]]                               = lambda X.X                                   : <<e,t>,<e,t>>\n[[a mischievous hobbit]]            = lambda x.mischievous(x) /\\ hobbit(x)         : <e,t>\n[[is]]                              = lambda X.X                                   : <<e,t>,<e,t>>\n[[is a mischievous hobbit]]         = lambda x.mischievous(x) /\\ hobbit(x)         : <e,t>\n[[Pippin is a mischievous hobbit]]  = mischievous(pi) /\\ hobbit(pi)                : t\n\\end{derivation}\n\n\\begin{forest}\n[S{mischievous(pi) /\\ hobbit(pi)}\n  [DP{pi} Pippin]\n  [VP{lambda x.mischievous(x) /\\ hobbit(x)}\n    [V{lambda X.X} is]\n    [NP{lambda x.mischievous(x) /\\ hobbit(x)}\n      [D{lambda X.X} a]\n      [NP{lambda x.mischievous(x) /\\ hobbit(x)}\n        [AP{lambda x.mischievous(x)} mischievous]\n        [NP{lambda x.hobbit(x)} hobbit]]]]]\n\\end{forest}\n\nNegation applies after the VP is assembled: `⟦not⟧` = λP.λx.¬P(x), so *is not a mundane creature* = λx.¬[mundane(x) ∧ creature(x)].\n\nMultiple intersective adjectives stack by repeated PM. Each AP sister adds one conjunct (\\ref{stack}):\n\n\\ex<stack> Tom is a mischievous magical creature.\n\\xe\n\n\\ex Strider is not a human ranger.\n\\xe\n\n\\ex No traveling hobbit is a mischievous brave creature.\n\\xe\n\n\\begin{derivation}\n[[mischievous magical creature]] = lambda x.mischievous(x) /\\ magical(x) /\\ creature(x) : <e,t>\n\\end{derivation}\n\nWhen the subject is a quantifier, PM assembles the predicate first; then the determiner applies by FA:\n\n\\begin{derivation}\n[[every]]                               = lambda X.lambda Y.forall x[X(x) -> Y(x)]              : <<e,t>,<<e,t>,t>>\n[[traveling hobbit]]                    = lambda x.traveling(x) /\\ hobbit(x)                    : <e,t>\n[[every traveling hobbit]]              = lambda Y.forall x[(traveling(x) /\\ hobbit(x)) -> Y(x)] : <<e,t>,t>\n[[brave creature]]                      = lambda x.brave(x) /\\ creature(x)                      : <e,t>\n[[Every traveling hobbit is a brave creature]] = forall x[(traveling(x) /\\ hobbit(x)) -> (brave(x) /\\ creature(x))] : t\n\\end{derivation}\n\n## 7.2.1 Non-intersective adjectives\n\n*Alleged* and *former* are not intersective: an alleged king need not be a king; a former hobbit is no longer one. These adjectives are **predicate modifiers** of type ⟨⟨e,t⟩,⟨e,t⟩⟩ — they take a property and return a (possibly weaker) property. Because one daughter is ⟨⟨e,t⟩,⟨e,t⟩⟩ and the other ⟨e,t⟩, they combine by **FA** — PM would fail since the daughters are not the same type.\n\n\\ex<nonintersect> Strider is an alleged king.\n\\xe\n\n\\ex Bilbo is a former traveling hobbit.\n\\xe\n\n\\ex Some alleged wise wizard sees Sauron.\n\\xe\n\n\\begin{derivation}\n[[alleged]]                    = lambda F.lambda x.alleged(F)(x)    : <<e,t>,<e,t>>\n[[king]]                       = lambda x.king(x)                   : <e,t>\n[[alleged king]]               = lambda x.alleged(king)(x)          : <e,t>\n[[Strider is an alleged king]] = alleged(king)(st)                  : t\n\n[[former]]                           = lambda F.lambda x.former(F)(x)               : <<e,t>,<e,t>>\n[[traveling hobbit]]                 = lambda x.traveling(x) /\\ hobbit(x)           : <e,t>\n[[former traveling hobbit]]          = lambda x.former(lambda x.traveling(x) /\\ hobbit(x))(x) : <e,t>\n[[Bilbo is a former traveling hobbit]] = former(lambda x.traveling(x) /\\ hobbit(x))(bi) : t\n\\end{derivation}\n\nThe notation `alleged(king)(x)` treats *alleged* as mapping the property `king` to a new property, then applying to an individual. No entailment that the individual satisfies `king` is triggered.[^nonintersect]\n\n[^nonintersect]: *Former* works the same way but adds a temporal flavour: `former(P)(x)` means x once had property P but no longer does. Both predicates are opaque to their nominal argument."
        }
      }
    },
    {
      "key": "ch7.2-adjts",
      "title": "Adjective Type-Shifting: MOD (§7.2)",
      "content": {
        "compose": 1,
        "id": "ch7-adjts",
        "title": "Adjective Type-Shifting: MOD (§7.2)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "ranger"
            ],
            "denotation": "Lx.ranger(x)"
          },
          {
            "words": [
              "human"
            ],
            "denotation": "Lx.human(x)"
          },
          {
            "words": [
              "king"
            ],
            "denotation": "Lx.king(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "mischievous"
            ],
            "denotation": "Lx.mischievous(x)"
          },
          {
            "words": [
              "mundane"
            ],
            "denotation": "Lx.mundane(x)"
          },
          {
            "words": [
              "magical"
            ],
            "denotation": "Lx.magical(x)"
          },
          {
            "words": [
              "traveling"
            ],
            "denotation": "Lx.traveling(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "alleged"
            ],
            "denotation": "LF.Lx.alleged(F)(x)"
          },
          {
            "words": [
              "former"
            ],
            "denotation": "LF.Lx.former(F)(x)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(x,y)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true
          },
          "typeShifts": [
            "mod"
          ]
        },
        "exercises": [
          {
            "title": "A. MOD: predicative to attributive",
            "instructions": "An intersective adjective ⟨e,t⟩ can be shifted to a modifier ⟨⟨e,t⟩,⟨e,t⟩⟩ by MOD, then combined with the noun by Function Application. Apply MOD to the adjective, then use FA to combine with the noun.",
            "items": [
              {
                "sentence": "Pippin is a mischievous hobbit.",
                "tree": "[.S [.DP Pippin ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mischievous ] [.NP hobbit ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "mischievous(pi) ∧ hobbit(pi)"
                ],
                "id": "d1"
              },
              {
                "sentence": "Tom is not a mundane creature.",
                "tree": "[.S [.DP Tom ] [.VP [.Neg not ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mundane ] [.NP creature ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "¬(mundane(tm) ∧ creature(tm))"
                ],
                "id": "d2"
              },
              {
                "sentence": "Every traveling hobbit is a brave creature.",
                "tree": "[.S [.DP [.D every ] [.NP [.AP traveling ] [.NP hobbit ] ] ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP brave ] [.NP creature ] ] ] ] ]",
                "reading": {
                  "section": "7.2"
                },
                "targets": [
                  "∀x.traveling(x) ∧ hobbit(x) → brave(x) ∧ creature(x)"
                ],
                "id": "d3"
              }
            ],
            "id": "g1"
          },
          {
            "title": "B. Stacked MOD",
            "instructions": "Stack two adjective shifts: apply MOD to each adjective in turn, combine each with the noun by FA. The third adds negation.",
            "items": [
              {
                "sentence": "Tom is a mischievous magical creature.",
                "tree": "[.S [.DP Tom ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mischievous ] [.NP [.AP magical ] [.NP creature ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2.1"
                },
                "targets": [
                  "mischievous(tm) ∧ magical(tm) ∧ creature(tm)"
                ],
                "id": "d1"
              },
              {
                "sentence": "Strider is not a human ranger.",
                "tree": "[.S [.DP Strider ] [.VP [.Neg not ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP human ] [.NP ranger ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2.1"
                },
                "targets": [
                  "¬(human(st) ∧ ranger(st))"
                ],
                "id": "d2"
              },
              {
                "sentence": "No traveling hobbit is a mischievous brave creature.",
                "tree": "[.S [.DP [.D no ] [.NP [.AP traveling ] [.NP hobbit ] ] ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP mischievous ] [.NP [.AP brave ] [.NP creature ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2.1"
                },
                "targets": [
                  "¬(∃x.traveling(x) ∧ hobbit(x) ∧ mischievous(x) ∧ brave(x) ∧ creature(x))"
                ],
                "id": "d3"
              }
            ],
            "id": "g2"
          },
          {
            "title": "C. Non-intersective adjectives via FA",
            "instructions": "Non-intersective adjectives are already modifiers ⟨⟨e,t⟩,⟨e,t⟩⟩ — no MOD shift needed. They take the nominal predicate directly by FA.",
            "items": [
              {
                "sentence": "Strider is an alleged king.",
                "tree": "[.S [.DP Strider ] [.VP [.V is ] [.NP [.D an ] [.NP [.AP alleged ] [.NP king ] ] ] ] ]",
                "reading": {
                  "section": "7.2.2"
                },
                "targets": [
                  "alleged(λx.king(x), st)"
                ],
                "id": "d1"
              },
              {
                "sentence": "Bilbo is a former traveling hobbit.",
                "tree": "[.S [.DP Bilbo ] [.VP [.V is ] [.NP [.D a ] [.NP [.AP former ] [.NP [.AP traveling ] [.NP hobbit ] ] ] ] ] ]",
                "reading": {
                  "section": "7.2.2"
                },
                "targets": [
                  "former(λx.traveling(x) ∧ hobbit(x), bi)"
                ],
                "id": "d2"
              },
              {
                "sentence": "Some alleged wise wizard sees Sauron.",
                "tree": "[.S [.DP [.D some ] [.NP [.AP alleged ] [.NP [.AP wise ] [.NP wizard ] ] ] ] [.VP [.V sees ] [.DP Sauron ] ] ]",
                "reading": {
                  "section": "7.2.2"
                },
                "targets": [
                  "∃x.alleged(λx.wise(x) ∧ wizard(x), x) ∧ see(x, n)"
                ],
                "id": "d3"
              }
            ],
            "id": "g3"
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 7 · Adjective Type-Shifting (MOD)\n\nThe same adjective–noun denotation can be reached by two routes. **Predicate Modification** treats both sisters as ⟨e,t⟩ and conjoins them directly. The **MOD type-shift** instead raises an intersective adjective to type ⟨⟨e,t⟩,⟨e,t⟩⟩, letting it combine with the noun by ordinary **Function Application**.\n\n## 7.2 The MOD shift\n\n**Type-Shifting Rule — MOD.** If α has type ⟨e,t⟩, it also has a derived translation of type ⟨⟨e,t⟩,⟨e,t⟩⟩:\n\n$$\\text{MOD}(\\alpha) = \\lambda P.\\lambda x.[\\alpha(x) \\wedge P(x)]$$\n\nThe shifted adjective takes the noun as its FA argument, returning the intersective conjunction. The result is identical to applying PM directly.\n\n\\ex<mod-ex> Pippin is a mischievous hobbit.\n\\xe\n\n\\ex Tom is not a mundane creature.\n\\xe\n\n\\ex Every traveling hobbit is a brave creature.\n\\xe\n\n\\begin{derivation}\n[[mischievous]]                    = lambda x.mischievous(x)                              : <e,t>\nMOD([[mischievous]])               = lambda P.lambda x.mischievous(x) /\\ P(x)             : <<e,t>,<e,t>>\n[[hobbit]]                         = lambda x.hobbit(x)                                   : <e,t>\n[[mischievous hobbit]]             = lambda x.mischievous(x) /\\ hobbit(x)                 : <e,t>\n[[Pippin is a mischievous hobbit]] = mischievous(pi) /\\ hobbit(pi)                        : t\n\\end{derivation}\n\nThe derivation produces exactly the same truth conditions as the PM route. MOD is a **silent operator** — it has no phonological form but a definite semantic effect, lifting the adjective's type so FA can apply.\n\n## 7.2.1 Stacking via MOD\n\nMultiple adjectives each undergo MOD in turn, applying to the growing nominal predicate one at a time.\n\n\\ex<stack-mod> Tom is a mischievous magical creature.\n\\xe\n\n\\ex Strider is not a human ranger.\n\\xe\n\n\\begin{derivation}\nMOD([[mischievous]])           = lambda P.lambda x.mischievous(x) /\\ P(x)         : <<e,t>,<e,t>>\nMOD([[magical]])               = lambda P.lambda x.magical(x) /\\ P(x)              : <<e,t>,<e,t>>\n[[creature]]                   = lambda x.creature(x)                              : <e,t>\n[[magical creature]]           = lambda x.magical(x) /\\ creature(x)               : <e,t>\n[[mischievous magical creature]] = lambda x.mischievous(x) /\\ magical(x) /\\ creature(x) : <e,t>\n\\end{derivation}\n\nThe innermost adjective applies first (its MOD-shifted form takes the bare noun), then the outer MOD-shifted adjective takes the result — each step is FA.\n\nWhen the subject is a quantifier, the MOD-derived predicate serves as the VP restriction exactly as in PM:\n\n\\begin{derivation}\n[[every]]                               = lambda X.lambda Y.forall x[X(x) -> Y(x)]              : <<e,t>,<<e,t>,t>>\n[[traveling hobbit]]                    = lambda x.traveling(x) /\\ hobbit(x)                    : <e,t>\n[[every traveling hobbit]]              = lambda Y.forall x[(traveling(x) /\\ hobbit(x)) -> Y(x)] : <<e,t>,t>\n[[brave creature]]                      = lambda x.brave(x) /\\ creature(x)                      : <e,t>\n[[Every traveling hobbit is a brave creature]] = forall x[(traveling(x) /\\ hobbit(x)) -> (brave(x) /\\ creature(x))] : t\n\\end{derivation}\n\n## 7.2.2 Non-intersective adjectives\n\nNon-intersective adjectives like *alleged* and *former* are **lexically** type ⟨⟨e,t⟩,⟨e,t⟩⟩ — they do not start as ⟨e,t⟩ and therefore do not undergo MOD. They take the nominal predicate directly by FA, exactly as in the PM set.\n\n\\ex<nonintersect-ts> Strider is an alleged king.\n\\xe\n\n\\ex Bilbo is a former traveling hobbit.\n\\xe\n\n\\ex Some alleged wise wizard sees Sauron.\n\\xe\n\n\\begin{derivation}\n[[alleged]]       = lambda F.lambda x.alleged(F)(x)    : <<e,t>,<e,t>>\n[[former]]        = lambda F.lambda x.former(F)(x)     : <<e,t>,<e,t>>\n[[alleged king]]  = lambda x.alleged(king)(x)          : <e,t>  (FA — no MOD)\n\\end{derivation}\n\nThe diagnostic: an adjective open to MOD is one that can appear *predicatively* (*Pippin is mischievous*); non-intersective adjectives resist purely predicative uses with their opaque reading.[^diag]\n\n[^diag]: *The king is former* is at best odd; *former* needs a nominal complement to make sense. This correlates with its lexical type: it is a modifier, not a predicate."
        }
      }
    },
    {
      "key": "ch7.3-relcl",
      "title": "Relative Clauses (§7.3)",
      "content": {
        "compose": 1,
        "id": "ch7-relcl",
        "title": "Relative Clauses (§7.3)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "who"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "ranger"
            ],
            "denotation": "Lx.ranger(x)"
          },
          {
            "words": [
              "human"
            ],
            "denotation": "Lx.human(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "drinks",
              "drink"
            ],
            "denotation": "Lx.drink(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "visits",
              "visit"
            ],
            "denotation": "Ly.Lx.visit(x,y)"
          },
          {
            "words": [
              "with"
            ],
            "denotation": "Ly.Lx.with(x,y)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Subject gap relative clauses",
            "instructions": "A relative clause with a subject gap: \"who drinks\" is λx.drink(x), combining with the head noun by PM. Items 2 and 3 add copular predicates and negation.",
            "items": [
              {
                "sentence": "wizard who drinks.",
                "tree": "[.NP [.NP wizard ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP drinks ] ] ] ] ]",
                "reading": {
                  "section": "7.3.1"
                },
                "targets": [
                  "λx.wizard(x) ∧ drink(x)"
                ],
                "id": "d1"
              },
              {
                "sentence": "hobbit who is brave.",
                "tree": "[.NP [.NP hobbit ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.V is ] [.AP brave ] ] ] ] ] ]",
                "reading": {
                  "section": "7.3.1"
                },
                "targets": [
                  "λx.hobbit(x) ∧ brave(x)"
                ],
                "id": "d2"
              },
              {
                "sentence": "wizard who doesn't fear Sauron.",
                "tree": "[.NP [.NP wizard ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.Neg doesnt ] [.VP [.V fears ] [.DP Sauron ] ] ] ] ] ] ]",
                "reading": {
                  "section": "7.3.1"
                },
                "targets": [
                  "λx.wizard(x) ∧ ¬fear(x, n)"
                ],
                "id": "d3"
              }
            ],
            "id": "g1"
          },
          {
            "title": "B. Object gap relative clauses",
            "instructions": "A relative clause with an object gap uses Predicate Abstraction over the trace. Items 2 and 3 fold in negation and a prepositional phrase.",
            "items": [
              {
                "sentence": "hobbit who Gandalf loves.",
                "tree": "[.NP [.NP hobbit ] [.CP [.C who ] [.LP 1 [.S [.DP Gandalf ] [.VP [.V loves ] [.DP t1 ] ] ] ] ] ]",
                "reading": {
                  "section": "7.3.2"
                },
                "targets": [
                  "λx.hobbit(x) ∧ love(g, x)"
                ],
                "id": "d1"
              },
              {
                "sentence": "human who Strider doesn't trust.",
                "tree": "[.NP [.NP human ] [.CP [.C who ] [.LP 1 [.S [.DP Strider ] [.VP [.Neg doesnt ] [.VP [.V trusts ] [.DP t1 ] ] ] ] ] ] ]",
                "reading": {
                  "section": "7.3.2"
                },
                "targets": [
                  "λx.human(x) ∧ ¬trust(st, x)"
                ],
                "id": "d2"
              },
              {
                "sentence": "ranger who Frodo is with.",
                "tree": "[.NP [.NP ranger ] [.CP [.C who ] [.LP 1 [.S [.DP Frodo ] [.VP [.V is ] [.PP [.P with ] [.DP t1 ] ] ] ] ] ] ]",
                "reading": {
                  "section": "7.3.2"
                },
                "targets": [
                  "λx.ranger(x) ∧ with(f, x)"
                ],
                "id": "d3"
              }
            ],
            "id": "g2"
          },
          {
            "title": "C. Full sentences with relative clauses",
            "instructions": "A relative clause restricts the domain of a quantifier or identifies an individual via the copula. Items 2 and 3 introduce quantifiers.",
            "items": [
              {
                "sentence": "Gandalf is a wizard who is wise.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V is ] [.NP [.D a ] [.NP [.NP wizard ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.V is ] [.AP wise ] ] ] ] ] ] ] ] ]",
                "reading": {
                  "section": "7.3.2"
                },
                "targets": [
                  "wizard(g) ∧ wise(g)"
                ],
                "id": "d1"
              },
              {
                "sentence": "Every hobbit who drinks sings.",
                "tree": "[.S [.DP [.D every ] [.NP [.NP hobbit ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP drinks ] ] ] ] ] ] [.VP sings ] ]",
                "reading": {
                  "section": "7.3.2"
                },
                "targets": [
                  "∀x.hobbit(x) ∧ drink(x) → sing(x)"
                ],
                "id": "d2"
              },
              {
                "sentence": "Some wise wizard who fears Sauron visits Saruman.",
                "tree": "[.S [.DP [.D some ] [.NP [.AP wise ] [.NP [.NP wizard ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.V fears ] [.DP Sauron ] ] ] ] ] ] ] ] [.VP [.V visits ] [.DP Saruman ] ] ]",
                "reading": {
                  "section": "7.3.2"
                },
                "targets": [
                  "∃x.wise(x) ∧ wizard(x) ∧ fear(x, n) ∧ visit(x, sr)"
                ],
                "id": "d3"
              }
            ],
            "id": "g3"
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 7 · Relative Clauses\n\nA relative clause like *who drinks* restricts the set of individuals denoted by the head noun. Compositionally, the clause must produce a predicate of type ⟨e,t⟩ so it can combine with the noun by **Predicate Modification**. The mechanism is **Predicate Abstraction**, which turns a clause containing a gap into a lambda-abstract.\n\n## 7.3 Predicate Abstraction\n\nA relative clause leaves a **trace** — a silent pronoun — in the gap position. The trace is co-indexed with the relative pronoun. A **λ-phrase node** (LP) abstracts over the index, turning the full clause denotation into a function:\n\n**Predicate Abstraction (PA).** ⟦[LP n φ]⟧ = λx. ⟦φ⟧ where every free occurrence of trace t_n in φ is replaced by x.\n\nThe relative pronoun *who* is an identity function λX.X — it passes the LP denotation up unchanged.\n\n## 7.3.1 Subject gap relative clauses\n\nWhen the trace is in subject position, the S-internal predicate is already a one-place property once PA is applied. The resulting CP combines with the head noun by PM.\n\n\\ex<subj-gap> wizard who drinks\n\\xe\n\n\\ex hobbit who is brave\n\\xe\n\n\\ex wizard who doesn't fear Sauron\n\\xe\n\n\\begin{derivation}\n[[drinks]]               = lambda x.drink(x)                        : <e,t>\n[[LP 1 [S t1 drinks]]]   = lambda x.drink(x)                        : <e,t>   (PA)\n[[who]]                  = lambda X.X                                : <<e,t>,<e,t>>\n[[who drinks]]           = lambda x.drink(x)                        : <e,t>\n[[wizard]]               = lambda x.wizard(x)                       : <e,t>\n[[wizard who drinks]]    = lambda x.wizard(x) /\\ drink(x)           : <e,t>   (PM)\n\\end{derivation}\n\n## 7.3.2 Object gap relative clauses\n\nWhen the trace is in **object position**, the clause contains a complete subject and a VP with the trace filling the object slot. PA abstracts over the trace index, producing a predicate that identifies which individuals stand in the relevant relation to the subject.\n\n\\ex<obj-gap> hobbit who Gandalf loves\n\\xe\n\n\\ex human who Strider doesn't trust\n\\xe\n\n\\ex ranger who Frodo is with\n\\xe\n\n\\begin{derivation}\n[[loves]]                         = lambda y.lambda x.love(x,y)          : <e,<e,t>>\n[[loves t1]]                      = lambda x.love(x,t_1)                 : <e,t>\n[[Gandalf loves t1]]              = love(g,t_1)                          : t\n[[LP 1 [S Gandalf loves t1]]]     = lambda x.love(g,x)                   : <e,t>   (PA)\n[[who [LP 1 ...]]]                = lambda x.love(g,x)                   : <e,t>\n[[hobbit]]                        = lambda x.hobbit(x)                   : <e,t>\n[[hobbit who Gandalf loves]]      = lambda x.hobbit(x) /\\ love(g,x)      : <e,t>   (PM)\n\\end{derivation}\n\n\\begin{forest}\n[NP{lambda x.hobbit(x) /\\ love(g,x)}\n  [NP{lambda x.hobbit(x)} hobbit]\n  [CP{lambda x.love(g,x)}\n    [C{lambda X.X} who]\n    [LP{lambda x.love(g,x)} 1\n      [S{love(g,t_1)}\n        [DP{g} Gandalf]\n        [VP{lambda x.love(x,t_1)}\n          [V{lambda y.lambda x.love(x,y)} loves]\n          [DP{t_1} t_1]]]]]]\n\\end{forest}\n\nThe full-sentence exercises in Group C embed relative clauses inside DPs. A restricted quantifier like *every hobbit who drinks* has the restrictor λx.[hobbit(x) ∧ drink(x)] built by PM inside the NP, then the determiner *every* applies as usual:\n\n\\begin{derivation}\n[[hobbit who drinks]]          = lambda x.hobbit(x) /\\ drink(x)                 : <e,t>\n[[every hobbit who drinks]]    = lambda Y.forall x[(hobbit(x) /\\ drink(x)) -> Y(x)] : <<e,t>,t>\n[[every hobbit who drinks sings]] = forall x[(hobbit(x) /\\ drink(x)) -> sing(x)] : t\n\\end{derivation}"
        }
      }
    },
    {
      "key": "ch7.4-objraise",
      "title": "Quantifiers in Object Position (§7.4)",
      "content": {
        "compose": 1,
        "id": "ch7-objraise",
        "title": "Quantifiers in Object Position (§7.4)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "councils",
              "council"
            ],
            "denotation": "Ly.Lx.council(x,y)"
          },
          {
            "words": [
              "summons",
              "summon"
            ],
            "denotation": "Ly.Lx.summon(x,y)"
          },
          {
            "words": [
              "travels",
              "travel"
            ],
            "denotation": "Lx.travel(x)"
          },
          {
            "words": [
              "human"
            ],
            "denotation": "Lx.human(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "good"
            ],
            "denotation": "Lx.good(x)"
          },
          {
            "words": [
              "evil"
            ],
            "denotation": "Lx.evil(x)"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "who"
            ],
            "denotation": "LX.X"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "raiseO"
          ],
          "quantifierRaising": true
        },
        "exercises": [
          {
            "title": "A. Simple object quantifiers via QR",
            "instructions": "Raise the object DP to sentence level, leaving a trace of type e. Resolve the LP node with Predicate Abstraction, then apply the quantifier.",
            "items": [
              {
                "sentence": "Gandalf loves every hobbit.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V loves ] [.DP [.D every ] [.NP hobbit ] ] ] ]",
                "targets": [
                  "∀x[hobbit(x) → love(g,x)]"
                ],
                "reading": {
                  "section": "7.4"
                }
              },
              {
                "sentence": "Elrond summons every good wise creature.",
                "tree": "[.S [.DP Elrond ] [.VP [.V summons ] [.DP [.D every ] [.NP [.AP good ] [.NP [.AP wise ] [.NP creature ] ] ] ] ] ]",
                "targets": [
                  "∀x[good(x) ∧ wise(x) ∧ creature(x) → summon(el,x)]"
                ],
                "reading": {
                  "section": "7.4"
                }
              },
              {
                "sentence": "Legolas doesn't trust some brave dwarf.",
                "tree": "[.S [.DP Legolas ] [.VP [.Neg doesnt ] [.VP [.V trusts ] [.DP [.D some ] [.NP [.AP brave ] [.NP dwarf ] ] ] ] ] ]",
                "targets": [
                  "∃x[brave(x) ∧ dwarf(x) ∧ ¬trust(l,x)]"
                ],
                "reading": {
                  "section": "7.4"
                }
              }
            ]
          },
          {
            "title": "B. Object quantifiers with subject quantifiers",
            "instructions": "Both subject and object are quantifiers. Try both scope orders and derive the readings.",
            "items": [
              {
                "sentence": "No elf trusts every human.",
                "tree": "[.S [.DP [.D no ] [.NP elf ] ] [.VP [.V trusts ] [.DP [.D every ] [.NP human ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[elf(x) → ∃y[hobbit(y) ∧ trust(x,y)]]",
                  "some > every (inverse): ∃y[hobbit(y) ∧ ∀x[elf(x) → trust(x,y)]]",
                  "no > every: ¬∃x[elf(x) ∧ ∀y[human(y) → trust(x,y)]]",
                  "every > no: ∀y[human(y) → ¬∃x[elf(x) ∧ trust(x,y)]]"
                ],
                "reading": {
                  "section": "7.4.1"
                }
              },
              {
                "sentence": "Some elf councils every good wise creature.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.V councils ] [.DP [.D every ] [.NP [.AP good ] [.NP [.AP wise ] [.NP creature ] ] ] ] ] ]",
                "targets": [
                  "some > every (linear): ∃x[elf(x) ∧ ∀y[good(y) ∧ wise(y) ∧ creature(y) → council(x,y)]]",
                  "every > some (inverse): ∀y[good(y) ∧ wise(y) ∧ creature(y) → ∃x[elf(x) ∧ council(x,y)]]"
                ],
                "reading": {
                  "section": "7.4.1"
                }
              },
              {
                "sentence": "Every hobbit who travels fears some evil creature.",
                "tree": "[.S [.DP [.D every ] [.NP [.NP hobbit ] [.CP [.C who ] [.S [.DP t1 ] [.VP travels ] ] ] ] ] [.VP [.V fears ] [.DP [.D some ] [.NP [.AP evil ] [.NP creature ] ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[hobbit(x) ∧ travel(x) → ∃y[evil(y) ∧ creature(y) ∧ fear(x,y)]]",
                  "some > every (inverse): ∃y[evil(y) ∧ creature(y) ∧ ∀x[hobbit(x) ∧ travel(x) → fear(x,y)]]"
                ],
                "reading": {
                  "section": "7.4.1"
                }
              }
            ]
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 7 · Quantifiers in Object Position\n\nWhen a transitive verb takes an individual (type e) as its object, FA applies cleanly. But a quantifier phrase like *every hobbit* has type ⟨⟨e,t⟩,t⟩ — it cannot serve as the direct argument of a verb expecting type e. **Quantifier Raising (QR)** resolves the mismatch by moving the quantifier out of its base position.\n\n## 7.4 Quantifier Raising\n\n**Quantifier Raising (QR).** The object DP moves covertly to adjoin at S-level, leaving a trace t_n of type e. A λ-phrase node (LP) hosts Predicate Abstraction over n, creating the ⟨e,t⟩ argument the quantifier needs.\n\n\\ex<qr-ex> Gandalf loves every hobbit.\n\\xe\n\n\\ex Elrond summons every good wise creature.\n\\xe\n\n\\ex Legolas doesn't trust some brave dwarf.\n\\xe\n\n\\begin{derivation}\n[[loves]]                        = lambda y.lambda x.love(x,y)                  : <e,<e,t>>\n[[loves t1]]                     = lambda x.love(x,t_1)                         : <e,t>\n[[Gandalf loves t1]]             = love(g,t_1)                                  : t\n[[LP 1 [S Gandalf loves t1]]]    = lambda y.love(g,y)                           : <e,t>   (PA)\n[[every hobbit]]                 = lambda Y.forall x[hobbit(x) -> Y(x)]         : <<e,t>,t>\n[[every hobbit loves Gandalf]]   = forall x[hobbit(x) -> love(g,x)]             : t\n\\end{derivation}\n\n\\begin{forest}\n[S{forall x[hobbit(x) -> love(g,x)]}\n  [DP{lambda Y.forall x[hobbit(x) -> Y(x)]}\n    [D{lambda X.lambda Y.forall x[X(x) -> Y(x)]} every]\n    [NP{lambda x.hobbit(x)} hobbit]]\n  [LP{lambda y.love(g,y)} 1\n    [S{love(g,t_1)}\n      [DP{g} Gandalf]\n      [VP{lambda x.love(x,t_1)}\n        [V{lambda y.lambda x.love(x,y)} loves]\n        [DP{t_1} t_1]]]]]\n\\end{forest}\n\n## 7.4.1 Two quantifiers and scope\n\nWhen both subject and object are quantifiers, QR can apply to either or both, generating different **scope orderings**. Raising the object above the subject yields object-wide scope; the base order (subject above raised object) yields subject-wide scope.\n\n\\ex<scope-ex> No elf trusts every human.\n\\xe\n\n\\ex Some elf councils every good wise creature.\n\\xe\n\n\\ex Every hobbit who travels fears some evil creature.\n\\xe\n\n**Subject wide scope** (no > every): the object is QR'd, the subject remains in situ.\n\n\\begin{derivation}\n[[LP 1 [S no-elf [VP trusts t1]]]] = lambda y.~exists x[elf(x) /\\ trust(x,y)] : <e,t>   (PA)\n[[every human applied]]            = forall y[human(y) -> ~exists x[elf(x) /\\ trust(x,y)]] : t\n\\end{derivation}\n\n**Object wide scope** (every > no): the object LP is embedded *within* a second LP that abstracts over the subject trace.\n\nThe two readings differ in truth conditions when the quantifiers are *some* and *every*: the subject-wide reading requires one witness to stand in the relation to all objects, while the object-wide reading only requires that for each object some (possibly different) subject qualifies.[^scope]\n\n[^scope]: For *no* and *every* the two readings are logically equivalent. The asymmetry becomes vivid with *some*: *some elf councils every creature* (∃-wide) entails a single elf does the counselling; the inverse (∀-wide) only requires each creature to be counselled by some elf, possibly different ones."
        }
      }
    },
    {
      "key": "ch7.5-objts",
      "title": "Object Type-Shifting: RaiseO/S (§7.4.2)",
      "content": {
        "compose": 1,
        "id": "ch7-objts",
        "title": "Object Type-Shifting: RaiseO/S (§7.4.2)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "councils",
              "council"
            ],
            "denotation": "Ly.Lx.council(x,y)"
          },
          {
            "words": [
              "summons",
              "summon"
            ],
            "denotation": "Ly.Lx.summon(x,y)"
          },
          {
            "words": [
              "travels",
              "travel"
            ],
            "denotation": "Lx.travel(x)"
          },
          {
            "words": [
              "human"
            ],
            "denotation": "Lx.human(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "good"
            ],
            "denotation": "Lx.good(x)"
          },
          {
            "words": [
              "evil"
            ],
            "denotation": "Lx.evil(x)"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "who"
            ],
            "denotation": "LX.X"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "raiseO",
            "raiseS"
          ]
        },
        "exercises": [
          {
            "title": "A. Simple object quantifiers via RaiseO",
            "instructions": "Apply RaiseO to shift the transitive verb, allowing the object GQ to apply directly by FA.",
            "items": [
              {
                "sentence": "Gandalf loves every hobbit.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V loves ] [.DP [.D every ] [.NP hobbit ] ] ] ]",
                "targets": [
                  "∀x[hobbit(x) → love(g,x)]"
                ],
                "reading": {
                  "section": "7.4.2"
                }
              },
              {
                "sentence": "Elrond summons every good wise creature.",
                "tree": "[.S [.DP Elrond ] [.VP [.V summons ] [.DP [.D every ] [.NP [.AP good ] [.NP [.AP wise ] [.NP creature ] ] ] ] ] ]",
                "targets": [
                  "∀x[good(x) ∧ wise(x) ∧ creature(x) → summon(el,x)]"
                ],
                "reading": {
                  "section": "7.4.2"
                }
              },
              {
                "sentence": "Legolas doesn't trust some brave dwarf.",
                "tree": "[.S [.DP Legolas ] [.VP [.Neg doesnt ] [.VP [.V trusts ] [.DP [.D some ] [.NP [.AP brave ] [.NP dwarf ] ] ] ] ] ]",
                "targets": [
                  "∃x[brave(x) ∧ dwarf(x) ∧ ¬trust(l,x)]"
                ],
                "reading": {
                  "section": "7.4.2"
                }
              }
            ]
          },
          {
            "title": "B. Two quantifiers via RaiseO + RaiseS",
            "instructions": "Apply RaiseO to the verb for the object GQ, then RaiseS to allow the subject GQ to take scope. Try both scope orders.",
            "items": [
              {
                "sentence": "No elf trusts every human.",
                "tree": "[.S [.DP [.D no ] [.NP elf ] ] [.VP [.V trusts ] [.DP [.D every ] [.NP human ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[elf(x) → ∃y[hobbit(y) ∧ trust(x,y)]]",
                  "some > every (inverse): ∃y[hobbit(y) ∧ ∀x[elf(x) → trust(x,y)]]",
                  "no > every: ¬∃x[elf(x) ∧ ∀y[human(y) → trust(x,y)]]",
                  "every > no: ∀y[human(y) → ¬∃x[elf(x) ∧ trust(x,y)]]"
                ],
                "reading": {
                  "section": "7.4.3"
                }
              },
              {
                "sentence": "Some elf councils every good wise creature.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.V councils ] [.DP [.D every ] [.NP [.AP good ] [.NP [.AP wise ] [.NP creature ] ] ] ] ] ]",
                "targets": [
                  "some > every (linear): ∃x[elf(x) ∧ ∀y[good(y) ∧ wise(y) ∧ creature(y) → council(x,y)]]",
                  "every > some (inverse): ∀y[good(y) ∧ wise(y) ∧ creature(y) → ∃x[elf(x) ∧ council(x,y)]]"
                ],
                "reading": {
                  "section": "7.4.3"
                }
              },
              {
                "sentence": "Every hobbit who travels fears some evil creature.",
                "tree": "[.S [.DP [.D every ] [.NP [.NP hobbit ] [.CP [.C who ] [.S [.DP t1 ] [.VP travels ] ] ] ] ] [.VP [.V fears ] [.DP [.D some ] [.NP [.AP evil ] [.NP creature ] ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[hobbit(x) ∧ travel(x) → ∃y[evil(y) ∧ creature(y) ∧ fear(x,y)]]",
                  "some > every (inverse): ∃y[evil(y) ∧ creature(y) ∧ ∀x[hobbit(x) ∧ travel(x) → fear(x,y)]]"
                ],
                "reading": {
                  "section": "7.4.3"
                }
              }
            ]
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 7 · Object and Subject Type-Shifting\n\nAn alternative to Quantifier Raising handles object quantifiers without syntactic movement: two **type-shifting rules**, RaiseO and RaiseS, lift the transitive verb so it can combine directly with a generalized quantifier in its base position.\n\n## 7.4.2 RaiseO: object type-shifting\n\n**RaiseO** takes a transitive verb of type ⟨e,⟨e,t⟩⟩ and returns a function that expects a generalized quantifier as its object:\n\n$$\\text{RaiseO} = \\lambda H.\\lambda Q.\\lambda x.\\, Q(\\lambda y.\\, H(y)(x))$$\n\nRaiseO appears as an explicit node in the syntactic tree, sistering the verb. The shifted verb–phrase then takes the object GQ directly by FA, and the subject individual applies to the result.\n\n\\ex<raiseo-ex> Gandalf loves every hobbit.\n\\xe\n\n\\ex Elrond summons every good wise creature.\n\\xe\n\n\\ex Legolas doesn't trust some brave dwarf.\n\\xe\n\n\\begin{derivation}\n[[loves]]                  = lambda y.lambda x.love(x,y)                    : <e,<e,t>>\n[[RaiseO loves]]           = lambda Q.lambda x.Q(lambda y.love(x,y))        : <<<e,t>,t>,<e,t>>\n[[every hobbit]]           = lambda Y.forall x[hobbit(x) -> Y(x)]           : <<e,t>,t>\n[[RaiseO loves every hobbit]] = lambda x.forall y[hobbit(y) -> love(x,y)]   : <e,t>\n[[Gandalf loves every hobbit]] = forall y[hobbit(y) -> love(g,y)]            : t\n\\end{derivation}\n\n\\begin{forest}\n[S{forall y[hobbit(y) -> love(g,y)]}\n  [DP{g} Gandalf]\n  [VP{lambda x.forall y[hobbit(y) -> love(x,y)]}\n    [V'{lambda Q.lambda x.Q(lambda y.love(x,y))}\n      [V{RaiseO} RaiseO]\n      [V{lambda y.lambda x.love(x,y)} loves]]\n    [DP{lambda Y.forall x[hobbit(x) -> Y(x)]}\n      [D{lambda X.lambda Y.forall x[X(x) -> Y(x)]} every]\n      [NP{lambda x.hobbit(x)} hobbit]]]]\n\\end{forest}\n\n## 7.4.3 RaiseS: subject type-shifting\n\nWhen **both** subject and object are quantifiers, a second rule handles the subject. **RaiseS** shifts the transitive verb so it can absorb the *subject* GQ, with the object remaining as an individual argument:\n\n$$\\text{RaiseS} = \\lambda H.\\lambda Q.\\lambda y.\\, Q(\\lambda x.\\, H(y)(x))$$\n\nThe RaiseS-shifted verb takes the **subject GQ** as its first argument and the object individual as its second, yielding the *inverse scope* reading (object GQ takes wide scope; subject GQ is bound inside).\n\n\\ex<raises-ex> No elf trusts every human.\n\\xe\n\n\\ex Some elf councils every good wise creature.\n\\xe\n\n\\ex Every hobbit who travels fears some evil creature.\n\\xe\n\n\\begin{derivation}\n[[trusts]]                      = lambda y.lambda x.trust(x,y)                    : <e,<e,t>>\n[[RaiseO trusts]]               = lambda Q.lambda x.Q(lambda y.trust(x,y))        : <<<e,t>,t>,<e,t>>\n[[RaiseO trusts every human]]   = lambda x.forall y[human(y) -> trust(x,y)]       : <e,t>\n[[no elf]] applied to VP        = ~exists x[elf(x) /\\ forall y[human(y) -> trust(x,y)]] : t\n\n[[RaiseS trusts]]               = lambda Q.lambda y.Q(lambda x.trust(x,y))        : <<<e,t>,t>,<e,t>>\n[[RaiseS trusts no elf]]        = lambda y.~exists x[elf(x) /\\ trust(x,y)]        : <e,t>\n[[every human]] applied to VP   = forall y[human(y) -> ~exists x[elf(x) /\\ trust(x,y)]] : t\n\\end{derivation}\n\nThe two trees yield logically equivalent results for *no*/*every*; the difference is vivid for *some*/*every* — the RaiseO tree gives ∃ > ∀ scope and the RaiseS tree gives ∀ > ∃ scope.[^raiseSvsO]\n\n[^raiseSvsO]: RaiseO and RaiseS have the same type ⟨⟨e,⟨e,t⟩⟩, ⟨⟨⟨e,t⟩,t⟩,⟨e,t⟩⟩⟩ but differ in *which* argument position the quantifier binds: RaiseO binds the y-position (the lexical object argument); RaiseS binds the x-position (the lexical subject argument)."
        }
      }
    },
    {
      "key": "ch7.6-pron",
      "title": "Pronouns & Binding (§7.5)",
      "content": {
        "compose": 1,
        "id": "ch7-pron",
        "title": "Pronouns & Binding (§7.5)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "ranger"
            ],
            "denotation": "Lx.ranger(x)"
          },
          {
            "words": [
              "king"
            ],
            "denotation": "Lx.king(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "evil"
            ],
            "denotation": "Lx.evil(x)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "he1",
              "him1",
              "his1",
              "she1",
              "her1",
              "they1",
              "them1",
              "himself1",
              "herself1",
              "themselves1"
            ],
            "denotation": "x1"
          },
          {
            "words": [
              "he2",
              "him2",
              "his2",
              "she2",
              "her2",
              "they2",
              "them2",
              "himself2",
              "herself2",
              "themselves2"
            ],
            "denotation": "x2"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "who"
            ],
            "denotation": "LX.X"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "quantifierRaising": true
        },
        "exercises": [
          {
            "title": "A. Free pronouns",
            "instructions": "A free pronoun denotes a contextually-supplied individual (type e). Its value is given by the assignment function. Derive the proposition.",
            "items": [
              {
                "sentence": "He is a king.",
                "tree": "[.S [.DP he1 ] [.VP [.V is ] [.NP [.D a ] [.NP king ] ] ] ]",
                "reading": {
                  "section": "7.5"
                }
              },
              {
                "sentence": "He loves Arwen.",
                "tree": "[.S [.DP he1 ] [.VP [.V loves ] [.DP Aragorn ] ] ]",
                "reading": {
                  "section": "7.5"
                }
              },
              {
                "sentence": "He fears no evil creature.",
                "tree": "[.S [.DP he1 ] [.VP [.V fears ] [.DP [.D no ] [.NP [.AP evil ] [.NP creature ] ] ] ] ]",
                "reading": {
                  "section": "7.5"
                }
              }
            ]
          },
          {
            "title": "B. Reflexive Pronouns",
            "instructions": "Reflexive pronouns are bound by the subject via Quantifier Raising + Predicate Abstraction. Raise the subject DP (or the pronoun's antecedent) and abstract over the co-indexed trace.",
            "items": [
              {
                "sentence": "Every dwarf trusts themself.",
                "tree": "[.S [.DP [.D every ] [.NP dwarf ] ] [.VP [.V trusts ] [.DP themselves1 ] ] ]",
                "targets": [
                  "∀x[dwarf(x) → trust(x,x)]"
                ],
                "reading": {
                  "section": "7.5.1"
                }
              },
              {
                "sentence": "Strider is a ranger who doesn't trust himself.",
                "tree": "[.S [.DP Strider ] [.VP [.V is ] [.NP [.D a ] [.NP [.NP ranger ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.Neg doesnt ] [.VP [.V trusts ] [.DP himself1 ] ] ] ] ] ] ] ] ] ]",
                "targets": [
                  "ranger(st) ∧ ¬trust(st,st)"
                ],
                "reading": {
                  "section": "7.5.1"
                }
              },
              {
                "sentence": "Some wizard who loves Frodo fears himself.",
                "tree": "[.S [.DP [.D some ] [.NP [.NP wizard ] [.CP [.C who ] [.S [.DP t1 ] [.VP [.V loves ] [.DP Frodo ] ] ] ] ] ] [.VP [.V fears ] [.DP himself1 ] ] ]",
                "targets": [
                  "∃x[wizard(x) ∧ love(x,f) ∧ fear(x,x)]"
                ],
                "reading": {
                  "section": "7.5.1"
                }
              }
            ]
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 7 · Pronouns and Binding\n\nA pronoun can get its value in two ways: *freely*, from the context of utterance, or *bound*, via a quantifier antecedent. Both are handled compositionally once pronouns are treated as **indexed** expressions.\n\n## 7.5 Free pronouns\n\nA **free pronoun** denotes a contextually supplied individual of type e. Its denotation is given directly by the assignment: *he₁* denotes x₁, the value assigned to index 1. Free pronouns are ordinary type-e terms; they compose by Function Application just like proper names.\n\n\\ex<free-pron> He is a king.\n\\xe\n\n\\ex He loves Arwen.\n\\xe\n\n\\ex He fears no evil creature.\n\\xe\n\n\\begin{derivation}\n[[he_1]]              = x_1                            : e\n[[king]]              = lambda x.king(x)               : <e,t>\n[[is a king]]         = lambda x.king(x)               : <e,t>\n[[He_1 is a king]]    = king(x_1)                      : t\n\\end{derivation}\n\nThe proposition *king(x₁)* is true or false depending on who x₁ is assigned to — the pronoun is a free variable whose value is fixed by context, not by the grammar.\n\nTwo pronouns with different indices are always disjoint in interpretation. *He₁* and *he₂* can never corefer within a single assignment.\n\n## 7.5.1 Bound pronouns\n\nA **bound pronoun** is co-indexed with a quantifier. The binding is established by **Predicate Abstraction** over the shared index: the quantifier raises (or is interpreted as raising) via QR, and the LP node at its landing site abstracts over the index that the pronoun also carries.\n\n\\ex<bound-pron> Every dwarf trusts themself.\n\\xe\n\n\\ex Strider is a ranger who doesn't trust himself.\n\\xe\n\n\\ex Some wizard who loves Frodo fears himself.\n\\xe\n\nFor *Every dwarf trusts themself*, the subject QP and the reflexive *themselves₁* both carry index 1. QR raises the subject, leaving a trace t₁; the reflexive in object position is also x₁. PA over index 1 binds both simultaneously:\n\n\\begin{derivation}\n[[trusts themselves_1]]     = lambda x.trust(x,x_1)         : <e,t>\n[[t_1 trusts themselves_1]] = trust(x_1,x_1)                : t\n[[LP 1 [S t_1 trusts themselves_1]]] = lambda x.trust(x,x)  : <e,t>   (PA)\n[[every dwarf]]             = lambda Y.forall x[dwarf(x) -> Y(x)] : <<e,t>,t>\n[[every dwarf trusts themself]] = forall x[dwarf(x) -> trust(x,x)] : t\n\\end{derivation}\n\nAfter PA, the pronoun index is **bound**: every individual that falls in the restrictor is related to itself. The reflexive reading follows without any extra axiom — it is just co-indexation made compositional.\n\n\\begin{forest}\n[S{forall x[dwarf(x) -> trust(x,x)]}\n  [DP{lambda Y.forall x[dwarf(x) -> Y(x)]}\n    [D{lambda X.lambda Y.forall x[X(x) -> Y(x)]} every]\n    [NP{lambda x.dwarf(x)} dwarf]]\n  [LP{lambda x.trust(x,x)} 1\n    [S{trust(x_1,x_1)}\n      [DP{x_1} t_1]\n      [VP{lambda x.trust(x,x_1)}\n        [V{lambda y.lambda x.trust(x,y)} trusts]\n        [DP{x_1} themselves_1]]]]]\n\\end{forest}\n\nBound pronouns in relative clauses work the same way. *A ranger who doesn't trust himself* embeds a relative clause whose object gap and reflexive share an index; PA inside the relative CP produces λx.¬trust(x,x).[^refl]\n\n[^refl]: In this system *himself₁* and trace t₁ are both x₁ — the same individual constant abstracted over by LP. The PA rule therefore captures coreference and binding in a single step."
        }
      }
    },
    {
      "key": "ch8.1-defn",
      "title": "Definite Descriptions (§8.1–8.2)",
      "content": {
        "compose": 1,
        "id": "ch8-defn",
        "title": "Definite Descriptions (§8.1–8.2)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "a",
              "an"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "doesnt",
              "does-not"
            ],
            "denotation": "LP.Lx.~P(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "ranger"
            ],
            "denotation": "Lx.ranger(x)"
          },
          {
            "words": [
              "human"
            ],
            "denotation": "Lx.human(x)"
          },
          {
            "words": [
              "king"
            ],
            "denotation": "Lx.king(x)"
          },
          {
            "words": [
              "creature"
            ],
            "denotation": "Lx.creature(x)"
          },
          {
            "words": [
              "Gondorian"
            ],
            "denotation": "Lx.gondorian(x)"
          },
          {
            "words": [
              "rightful"
            ],
            "denotation": "LF.Lx.rightful(F)(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "carries",
              "carry"
            ],
            "denotation": "Ly.Lx.carry(x,y)"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.love(x,y)"
          },
          {
            "words": [
              "trusts",
              "trust"
            ],
            "denotation": "Ly.Lx.trust(x,y)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.fear(x,y)"
          },
          {
            "words": [
              "flees",
              "flee"
            ],
            "denotation": "Ly.Lx.flee(x,y)"
          },
          {
            "words": [
              "flees-to",
              "flee-to"
            ],
            "denotation": "Ly.Lx.flee(x,y)"
          },
          {
            "words": [
              "slays",
              "slay"
            ],
            "denotation": "Ly.Lx.slay(x,y)"
          },
          {
            "words": [
              "admires",
              "admire"
            ],
            "denotation": "Ly.Lx.admire(x,y)"
          },
          {
            "words": [
              "kills",
              "kill"
            ],
            "denotation": "Ly.Lx.kill(x,y)"
          },
          {
            "words": [
              "hunts",
              "hunt"
            ],
            "denotation": "Ly.Lx.hunt(x,y)"
          },
          {
            "words": [
              "summons",
              "summon"
            ],
            "denotation": "Ly.Lx.summon(x,y)"
          },
          {
            "words": [
              "pass",
              "passes"
            ],
            "denotation": "Lx.pass(x)"
          },
          {
            "words": [
              "with"
            ],
            "denotation": "Ly.Lx.with(x,y)"
          },
          {
            "words": [
              "in"
            ],
            "denotation": "Ly.Lx.in(x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "Balrog"
            ],
            "denotation": "Lx.balrog(x)"
          },
          {
            "words": [
              "fellowship"
            ],
            "denotation": "Lx.fellowship(x)"
          },
          {
            "words": [
              "kingdom"
            ],
            "denotation": "Lx.kingdom(x)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "bow"
            ],
            "denotation": "Lx.bow(x)"
          },
          {
            "words": [
              "axe"
            ],
            "denotation": "Lx.axe(x)"
          },
          {
            "words": [
              "hair"
            ],
            "denotation": "Lx.hair(x)"
          },
          {
            "words": [
              "uruk-hai",
              "uruk"
            ],
            "denotation": "Lx.uruk(x)"
          },
          {
            "words": [
              "the",
              "The"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "shall"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "'s"
            ],
            "denotation": "LP.Lx.Iy.poss(x,y) & P(y)"
          },
          {
            "words": [
              "he1",
              "him1",
              "his1",
              "she1",
              "her1"
            ],
            "denotation": "x1"
          },
          {
            "words": [
              "my1",
              "our1"
            ],
            "denotation": "x1"
          },
          {
            "words": [
              "him-B",
              "he-B"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "him-K",
              "he-K"
            ],
            "denotation": "Iy.poss(b,y) & king(y)"
          },
          {
            "words": [
              "boromirs-king"
            ],
            "denotation": "Iy.poss(b,y) & king(y)"
          },
          {
            "words": [
              "will"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "dies",
              "die"
            ],
            "denotation": "Lx.die(x)"
          },
          {
            "words": [
              "until"
            ],
            "denotation": "Lq.Lp.p & until(q)"
          },
          {
            "words": [
              "who"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true
          }
        },
        "exercises": [
          {
            "title": "A. Definite descriptions",
            "instructions": "\"The\" is the iota operator λP.ιx.P(x), picking out the unique satisfier of P. Items 2 and 3 fold in non-intersective adjectives and a relative clause.",
            "items": [
              {
                "sentence": "Frodo carries the ring.",
                "tree": "[.S [.DP Frodo ] [.VP [.V carries ] [.DP [.D the ] [.NP ring ] ] ] ]",
                "reading": {
                  "section": "8.1"
                }
              },
              {
                "sentence": "Legolas trusts the rightful king.",
                "tree": "[.S [.DP Legolas ] [.VP [.V trusts ] [.DP [.D the ] [.NP [.AP rightful ] [.NP king ] ] ] ] ]",
                "reading": {
                  "section": "8.1"
                }
              },
              {
                "sentence": "The elf who trusts Gimli is in Moria.",
                "tree": "[.S [.DP [.D the ] [.NP [.NP elf ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.V trusts ] [.DP Gimli ] ] ] ] ] ] ] [.VP [.V is ] [.PP [.P in ] [.DP Moria ] ] ] ]",
                "reading": {
                  "section": "8.1"
                }
              }
            ]
          },
          {
            "title": "B. Possessives",
            "instructions": "A possessive \"X's\" is λP.λx.ιy.poss(x,y) ∧ P(y): Strider's sword picks out the unique object in the possession relation. Items 2 and 3 use pronouns as possessors.",
            "items": [
              {
                "sentence": "Boromir's sword.",
                "tree": "[.NP [.DP Boromir ] [.NP [.Poss 's ] [.NP sword ] ] ]",
                "reading": {
                  "section": "8.2"
                }
              },
              {
                "sentence": "his bow.",
                "tree": "[.NP [.DP he1 ] [.NP [.Poss 's ] [.NP bow ] ] ]",
                "reading": {
                  "section": "8.2"
                }
              },
              {
                "sentence": "my axe.",
                "tree": "[.NP [.DP my1 ] [.NP [.Poss 's ] [.NP axe ] ] ]",
                "reading": {
                  "section": "8.2"
                }
              }
            ]
          },
          {
            "title": "C. Definites in context",
            "instructions": "The definite article interacts with other tools: \"shall\" is the identity function here (tense/aspect come in §12). The last item folds in a possessive definite DP.",
            "items": [
              {
                "sentence": "The Balrog shall not pass.",
                "tree": "[.S [.DP [.D the ] [.NP Balrog ] ] [.VP [.V shall ] [.VP [.Neg not ] [.VP pass ] ] ] ]",
                "reading": {
                  "section": "8.2"
                }
              },
              {
                "sentence": "The Balrog slays our wise wizard.",
                "tree": "[.S [.DP [.D the ] [.NP Balrog ] ] [.VP [.V slays ] [.DP [.D the ] [.NP [.AP wise ] [.NP wizard ] ] ] ] ]",
                "reading": {
                  "section": "8.2"
                }
              },
              {
                "sentence": "The fellowship flees to Galadriel's kingdom.",
                "tree": "[.S [.DP [.D the ] [.NP fellowship ] ] [.VP [.V flees-to ] [.DP [.DP Galadriel ] [.NP [.Poss 's ] [.NP kingdom ] ] ] ] ]",
                "reading": {
                  "section": "8.2"
                }
              }
            ]
          },
          {
            "title": "D. Bound vs. free readings",
            "instructions": "A possessive pronoun can be free (context-supplied) or bound (raised and abstracted). Derive both readings where applicable.",
            "items": [
              {
                "sentence": "Galadriel admires her hair.",
                "tree": "[.S [.DP Galadriel ] [.VP [.V admires ] [.DP [.DP he1 ] [.NP [.Poss 's ] [.NP hair ] ] ] ] ]",
                "targets": [
                  "free: admire(w, ιy.poss(x1,y) ∧ hair(y))",
                  "bound: ∀x[noble(x) → admire(x, ιy.poss(x,y) ∧ hair(y))]"
                ],
                "reading": {
                  "section": "8.2.1"
                }
              },
              {
                "sentence": "Boromir's sword kills every Uruk-hai who hunts him.",
                "tree": "[.S [.DP [.DP Boromir ] [.NP [.Poss 's ] [.NP sword ] ] ] [.VP [.V kills ] [.DP [.D every ] [.NP [.NP uruk-hai ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP [.V hunts ] [.DP him1 ] ] ] ] ] ] ] ] ]",
                "targets": [
                  "Boromir kills every Uruk who hunts him (free): ∀x[uruk(x) ∧ hunt(x,b) → kill(b,x)]",
                  "Boromir kills every Uruk who hunts himself (bound): ∀x[uruk(x) ∧ hunt(x,x) → kill(b,x)]"
                ],
                "reading": {
                  "section": "8.2.1"
                }
              },
              {
                "sentence": "Boromir's king will love him until he dies.",
                "tree": "[.S [.S [.DP [.DP Boromir ] [.NP [.Poss 's ] [.NP king ] ] ] [.VP [.V will ] [.VP [.V loves ] [.DP him-B ] ] ] ] [.PP [.P until ] [.S [.DP he-B ] [.VP dies ] ] ] ]",
                "targets": [
                  "him = Boromir, he = Boromir: love(ιy.poss(b,y) ∧ king(y), b) ∧ until(die(b))",
                  "him = Boromir, he = the king: love(ιy.poss(b,y) ∧ king(y), b) ∧ until(die(ιy.poss(b,y) ∧ king(y)))",
                  "him = the king, he = Boromir: love(ιy.poss(b,y) ∧ king(y), ιy.poss(b,y) ∧ king(y)) ∧ until(die(b))",
                  "him = the king, he = the king: love(ιy.poss(b,y) ∧ king(y), ιy.poss(b,y) ∧ king(y)) ∧ until(die(ιy.poss(b,y) ∧ king(y)))"
                ],
                "reading": {
                  "section": "8.2.1"
                }
              }
            ]
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 8 · Definite Descriptions\n\nChapter 7 showed how to build complex predicates. Chapter 8 introduces a new kind of DP: the **definite description**, built with the **iota operator** ι, which picks out a unique individual satisfying a predicate.\n\n## 8.1 The iota operator\n\n**The definite article.** `⟦the⟧` = λX.ιx.X(x) : ⟨⟨e,t⟩,e⟩. It takes a predicate and returns the unique individual satisfying it; the result is type e, just like a proper name.\n\nThe uniqueness condition is a **presupposition**: *the ring* is only defined if exactly one thing is a ring in the context.\n\n\\ex<defn-ex> Frodo carries the ring.\n\\xe\n\n\\ex Legolas trusts the rightful king.\n\\xe\n\n\\ex The elf who trusts Gimli is in Moria.\n\\xe\n\n\\begin{derivation}\n[[the]]              = lambda X.iota x.X(x)                          : <<e,t>,e>\n[[ring]]             = lambda x.ring(x)                              : <e,t>\n[[the ring]]         = iota x.ring(x)                                : e\n[[carries]]          = lambda y.lambda x.carry(x,y)                  : <e,<e,t>>\n[[carries the ring]] = lambda x.carry(x,iota y.ring(y))              : <e,t>\n[[Frodo carries the ring]] = carry(f,iota y.ring(y))                 : t\n\\end{derivation}\n\n\\begin{forest}\n[S{carry(f,iota y.ring(y))}\n  [DP{f} Frodo]\n  [VP{lambda x.carry(x,iota y.ring(y))}\n    [V{lambda y.lambda x.carry(x,y)} carries]\n    [DP{iota x.ring(x)}\n      [D{lambda X.iota x.X(x)} the]\n      [NP{lambda x.ring(x)} ring]]]]\n\\end{forest}\n\nA non-intersective adjective like *rightful* combines with the noun by FA before iota applies (\\ref{defn-ex}):\n\n\\begin{derivation}\n[[rightful]]              = lambda F.lambda x.rightful(F)(x)               : <<e,t>,<e,t>>\n[[king]]                  = lambda x.king(x)                               : <e,t>\n[[rightful king]]         = lambda x.rightful(king)(x)                     : <e,t>\n[[the rightful king]]     = iota x.rightful(king)(x)                       : e\n[[trusts the rightful king]] = lambda x.trust(x,iota y.rightful(king)(y))  : <e,t>\n[[Legolas trusts the rightful king]] = trust(l,iota y.rightful(king)(y))   : t\n\\end{derivation}\n\nA definite DP can embed a relative clause. The NP assembles its full predicate (by PM + PA) before *the* applies (\\ref{defn-ex}):\n\n\\begin{derivation}\n[[trusts Gimli]]                  = lambda x.trust(x,m)                    : <e,t>\n[[elf who trusts Gimli]]          = lambda x.elf(x) /\\ trust(x,m)          : <e,t>\n[[the elf who trusts Gimli]]      = iota x.(elf(x) /\\ trust(x,m))          : e\n[[in Moria]]                      = lambda x.in(x,mr)                      : <e,t>\n[[The elf who trusts Gimli is in Moria]] = in(iota x.(elf(x) /\\ trust(x,m)),mr) : t\n\\end{derivation}\n\n## 8.2 Possessives\n\nThe clitic **'s** builds a definite description relative to a possessor: `⟦'s⟧` = λP.λx.ιy.[poss(x,y) ∧ P(y)] : ⟨⟨e,t⟩,⟨e,e⟩⟩. It takes the possessed noun and the possessor individual and returns the unique object standing in the possession relation to that possessor.\n\n\\ex<poss-ex> Boromir's sword.\n\\xe\n\n\\ex his₁ bow.\n\\xe\n\n\\ex my₁ axe.\n\\xe\n\n\\begin{derivation}\n[['s]]                    = lambda P.lambda x.iota y.poss(x,y) /\\ P(y)    : <<e,t>,<e,e>>\n[[sword]]                 = lambda x.sword(x)                              : <e,t>\n[['s sword]]              = lambda x.iota y.poss(x,y) /\\ sword(y)         : <e,e>\n[[Boromir's sword]]       = iota y.poss(b,y) /\\ sword(y)                  : e\n\n[[his_1]]                 = x_1                                            : e\n[['s bow]]                = lambda x.iota y.poss(x,y) /\\ bow(y)           : <e,e>\n[[his_1 bow]]             = iota y.poss(x_1,y) /\\ bow(y)                  : e\n\n[[my_1 axe]]              = iota y.poss(x_1,y) /\\ axe(y)                  : e\n\\end{derivation}\n\nThe possessor `x_1` in *his/my* is supplied by context — a free variable assigned to whoever is the contextually salient referent. This parallels the free reading of a pronoun.\n\nIn more complex DPs, 'the' need not appear: a possessive NP already delivers type e, so *Galadriel's kingdom* is directly an individual without a separate definite article (\\ref{poss-ex}).\n\n## 8.2.1 Free and bound readings\n\nA pronoun inside a possessive can be **free** (its index is assigned by context) or **bound** (its index is abstracted over by a higher quantifier). The two readings differ in their truth conditions.\n\n\\ex<bound-ex> Galadriel admires her₁ hair.\n\\xe\n\n\\ex Boromir's sword kills every Uruk-hai who hunts him-B.\n\\xe\n\n\\ex Boromir's king will love him until he dies.\n\\xe\n\n**Free reading** — the possessor index is set by context (\\ref{bound-ex}):\n\n\\begin{derivation}\n[['s hair]]                         = lambda x.iota y.poss(x,y) /\\ hair(y)      : <e,e>\n[[her_1 hair]]                      = iota y.poss(x_1,y) /\\ hair(y)             : e\n[[admires her_1 hair]]              = lambda x.admire(x,iota y.poss(x_1,y) /\\ hair(y)) : <e,t>\n[[Galadriel admires her_1 hair]]    = admire(w,iota y.poss(x_1,y) /\\ hair(y))   : t\n\\end{derivation}\n\nWhen x₁ is assigned to Galadriel (w), this gives the reflexive reading: Galadriel admires her own hair. When x₁ is assigned to another contextually prominent individual, it is a non-reflexive free reading.\n\n**Definite-pronoun reading** — *him-K* abbreviates the complex definite ιy.[poss(b,y) ∧ king(y)] (Boromir's king), giving the anaphoric referent as a definite description rather than a free variable:\n\n\\begin{derivation}\n[[boromirs-king]]     = iota y.poss(b,y) /\\ king(y)                      : e\n[[him-B]]             = b                                                  : e\n[[him-K]]             = iota y.poss(b,y) /\\ king(y)                      : e\n[[will]]              = lambda X.X                                         : <<e,t>,<e,t>>\n[[until]]             = lambda q.lambda p.p /\\ until(q)                   : <t,<t,t>>\n[[dies]]              = lambda x.die(x)                                   : <e,t>\n[[he-B dies]]         = die(b)                                             : t\n[[until he-B dies]]   = lambda p.p /\\ until(die(b))                       : <t,t>\n[[love him-B]]        = lambda x.love(x,b)                                : <e,t>\n[[will love him-B until he-B dies]] = lambda x.love(x,b) /\\ until(die(b)) : <e,t>\n[[Boromir's king will love him-B until he-B dies]] = love(iota y.poss(b,y) /\\ king(y),b) /\\ until(die(b)) : t\n\\end{derivation}\n\nThe *him-K* variant replaces the object `b` with `ιy.[poss(b,y) ∧ king(y)]`, making the pronoun co-refer with the subject definite description — a **bridging** inference made explicit in the denotation.[^bridge]\n\n[^bridge]: *will* and *shall* are both identity functions here — tense and modality are analysed properly in Chapters 12–13. The *until* operator introduces a second conjunct that the temporal connective holds."
        }
      }
    },
    {
      "key": "ch8.4-definedness",
      "title": "Definedness Conditions: the ∂ operator (§8.4)",
      "content": {
        "compose": 1,
        "id": "ch8-definedness",
        "title": "Definedness Conditions: the ∂ operator (§8.4)",
        "subtitle": "Presuppositional determiners — neither and every — with Beaver & Krahmer's partial operator",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n",
            "<<e,t>,t>": "card2"
          },
          "variables": {
            "e": "x y z",
            "<e,t>": "X Y Z P Q",
            "<<e,t>,t>": "Q",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "tower"
            ],
            "denotation": "Lx.tower(x)"
          },
          {
            "words": [
              "tree"
            ],
            "denotation": "Lx.tree(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "wizard"
            ],
            "denotation": "Lx.wizard(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "white"
            ],
            "denotation": "Lx.white(x)"
          },
          {
            "words": [
              "dark"
            ],
            "denotation": "Lx.dark(x)"
          },
          {
            "words": [
              "golden"
            ],
            "denotation": "Lx.golden(x)"
          },
          {
            "words": [
              "wise"
            ],
            "denotation": "Lx.wise(x)"
          },
          {
            "words": [
              "new"
            ],
            "denotation": "Lx.new(x)"
          },
          {
            "words": [
              "is",
              "are"
            ],
            "denotation": "LX.X"
          },
          {
            "words": [
              "neither",
              "Neither"
            ],
            "denotation": "LX.LY.[∂(card2(X)) & ~Ex[X(x) & Y(x)]]"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.[∂(Ex.X(x)) & Ax[X(x) -> Y(x)]]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "not",
              "Not"
            ],
            "denotation": "LQ.LP.~Q(P)"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": false
          }
        },
        "exercises": [
          {
            "title": "A. Presuppositional neither (a cardinality presupposition)",
            "instructions": "neither is basically a synonym of no, but it carries an extra PRESUPPOSITION: that its restrictor has exactly two satisfiers. We mark the presupposed part with the ∂ ('presupposing that') operator, which is of type ⟨t,t⟩ — it returns its argument when true and 'undefined' otherwise. neither ↝ λXλY.[∂(card2(X)) ∧ ¬∃x[X(x) ∧ Y(x)]], where card2(X) abbreviates the book's |X|=2, 'X has exactly two satisfiers' (footnote 4 expands it to ∃x∃y[¬(x=y) ∧ X(x) ∧ X(y) ∧ ¬∃z[¬(z=x) ∧ ¬(z=y) ∧ X(z)]]). The subject DP is a generalized quantifier that applies to the VP predicate by Function Application.",
            "items": [
              {
                "sentence": "Neither tower is white.",
                "tree": "[.S [.DP [.D neither ] [.NP tower ] ] [.VP [.V is ] [.AP white ] ] ]",
                "targets": [
                  "∂(card2(λx.tower(x))) ∧ ¬∃x[tower(x) ∧ white(x)]"
                ],
                "reading": {
                  "section": "8.4"
                }
              },
              {
                "sentence": "Neither tree is dark.",
                "tree": "[.S [.DP [.D neither ] [.NP tree ] ] [.VP [.V is ] [.AP dark ] ] ]",
                "targets": [
                  "∂(card2(λx.tree(x))) ∧ ¬∃x[tree(x) ∧ dark(x)]"
                ],
                "reading": {
                  "section": "8.4"
                }
              }
            ]
          },
          {
            "title": "B. Presuppositional every (an existence presupposition)",
            "instructions": "The quantifier every can also be given an existence presupposition with ∂: every ↝ λXλY.[∂(∃x.X(x)) ∧ ∀x[X(x) → Y(x)]]. This predicts that 'Every dubstep album by Frege is brilliant' is neither true nor false when Frege made no dubstep albums — capturing the intuition that the sentence presupposes there are such albums.",
            "items": [
              {
                "sentence": "Every ring is golden.",
                "tree": "[.S [.DP [.D every ] [.NP ring ] ] [.VP [.V is ] [.AP golden ] ] ]",
                "targets": [
                  "∂(∃x.ring(x)) ∧ ∀x[ring(x) → golden(x)]"
                ],
                "reading": {
                  "section": "8.4.1"
                }
              },
              {
                "sentence": "Every wizard is wise.",
                "tree": "[.S [.DP [.D every ] [.NP wizard ] ] [.VP [.V is ] [.AP wise ] ] ]",
                "targets": [
                  "∂(∃x.wizard(x)) ∧ ∀x[wizard(x) → wise(x)]"
                ],
                "reading": {
                  "section": "8.4.1"
                }
              }
            ]
          },
          {
            "title": "C. Projection through negation",
            "instructions": "Presuppositions PROJECT out of entailment-cancelling environments. With not ↝ λQ⟨⟨e,t⟩,t⟩λP⟨e,t⟩.¬Q(P), the negation scopes over the whole quantifier — but the ∂ presupposition rides along inside it, so 'Not every ring is golden' still presupposes that there are rings. Notice the ∂ ends up under the ¬: in three-valued logic, the negation of an undefined formula is still undefined, so the existence presupposition survives.",
            "items": [
              {
                "sentence": "Not every ring is golden.",
                "tree": "[.S [.DP [.Neg not ] [.DP [.D every ] [.NP ring ] ] ] [.VP [.V is ] [.AP golden ] ] ]",
                "targets": [
                  "¬[∂(∃x.ring(x)) ∧ ∀x[ring(x) → golden(x)]]"
                ],
                "reading": {
                  "section": "8.4.2"
                }
              }
            ]
          },
          {
            "title": "D. Contrast: some asserts, it does not presuppose",
            "instructions": "Unlike every, the determiner some makes no use of ∂ — it simply ASSERTS existence: some ↝ λXλY.∃x[X(x) ∧ Y(x)]. Compare the result here (no ∂) with Group B (a ∂ conjunct). This is the difference between presupposing that there are rings and asserting it.",
            "items": [
              {
                "sentence": "Some ring is golden.",
                "tree": "[.S [.DP [.D some ] [.NP ring ] ] [.VP [.V is ] [.AP golden ] ] ]",
                "targets": [
                  "∃x[ring(x) ∧ golden(x)]"
                ],
                "reading": {
                  "section": "8.4.3"
                }
              }
            ]
          }
        ],
        "reading": {
          "format": "latex",
          "markdown": "# Chapter 8 · Definedness Conditions\n\nQuantifiers like *every* and *neither* do more than assert: they **presuppose** something about their domain. Chapter 8 formalises this with the **∂ operator**, which marks a condition as presupposed rather than asserted.\n\n## 8.4 The ∂ operator and *neither*\n\n**∂(φ)** (read: *presupposing φ*) marks its propositional argument as a **presupposition** — a condition that must be true for the sentence to be felicitous. Unlike an assertion, a presupposition projects out of negation and other entailment-cancelling contexts: if the presupposition fails, the sentence is neither true nor false.\n\n**Neither.** `⟦neither⟧` = λX.λY.[∂(card₂(X)) ∧ ¬∃x[X(x) ∧ Y(x)]] : ⟨⟨e,t⟩,⟨⟨e,t⟩,t⟩⟩.\n\n*Neither* asserts what *no* asserts — the restrictor and scope-predicate have empty intersection — but additionally **presupposes** that the restrictor has exactly two satisfiers (`card₂(X)`). If the restrictor doesn't contain exactly two individuals, the sentence is infelicitous.[^neither]\n\n\\ex<neither-ex> Neither tower is white.\n\\xe\n\n\\ex Neither tree is dark.\n\\xe\n\n\\begin{derivation}\n[[neither]]              = lambda X.lambda Y.[∂(card2(X)) /\\ ~Ex[X(x) /\\ Y(x)]]   : <<e,t>,<<e,t>,t>>\n[[tower]]                = lambda x.tower(x)                                        : <e,t>\n[[neither tower]]        = lambda Y.[∂(card2(lambda x.tower(x))) /\\ ~Ex[tower(x) /\\ Y(x)]] : <<e,t>,t>\n[[white]]                = lambda x.white(x)                                        : <e,t>\n[[Neither tower is white]] = ∂(card2(lambda x.tower(x))) /\\ ~Ex[tower(x) /\\ white(x)]  : t\n\\end{derivation}\n\nThe presupposed component `∂(card₂(λx.tower(x)))` fires first: a speaker who utters *Neither tower is white* is committed to there being exactly two towers in the domain (\\ref{neither-ex}).\n\n## 8.4.1 Presuppositional *every*\n\n**Every.** `⟦every⟧` = λX.λY.[∂(∃x.X(x)) ∧ ∀x[X(x) → Y(x)]] : ⟨⟨e,t⟩,⟨⟨e,t⟩,t⟩⟩.\n\nThe bare assertion of *every* is universal quantification. The ∂ conjunct adds an **existence presupposition**: the sentence is only felicitous if the restrictor is non-empty. *Every Balrog is benevolent* is neither true nor false if there are no Balrogs — the presupposition that at least one Balrog exists has failed.\n\n\\ex<every-ex> Every ring is golden.\n\\xe\n\n\\ex Every wizard is wise.\n\\xe\n\n\\begin{derivation}\n[[every]]               = lambda X.lambda Y.[∂(Ex.X(x)) /\\ Ax[X(x) -> Y(x)]]     : <<e,t>,<<e,t>,t>>\n[[ring]]                = lambda x.ring(x)                                          : <e,t>\n[[every ring]]          = lambda Y.[∂(Ex.ring(x)) /\\ Ax[ring(x) -> Y(x)]]         : <<e,t>,t>\n[[golden]]              = lambda x.golden(x)                                        : <e,t>\n[[Every ring is golden]] = ∂(Ex.ring(x)) /\\ Ax[ring(x) -> golden(x)]              : t\n\\end{derivation}\n\n\\begin{forest}\n[S{∂(Ex.ring(x)) /\\ Ax[ring(x) -> golden(x)]}\n  [DP{lambda Y.[∂(Ex.ring(x)) /\\ Ax[ring(x) -> Y(x)]]}\n    [D{lambda X.lambda Y.[∂(Ex.X(x)) /\\ Ax[X(x) -> Y(x)]]} every]\n    [NP{lambda x.ring(x)} ring]]\n  [VP{lambda x.golden(x)}\n    [V{lambda X.X} is]\n    [AP{lambda x.golden(x)} golden]]]\n\\end{forest}\n\n## 8.4.2 Projection through negation\n\nPresuppositions **project** out of the scope of negation: negating a sentence does not cancel its presuppositions.\n\n`⟦not⟧` = λQ⟨⟨e,t⟩,t⟩.λP⟨e,t⟩.¬Q(P). This *not* takes a GQ and a predicate and negates the whole quantificational claim — but the ∂ inside the GQ is not negated.\n\n\\ex<proj-ex> Not every ring is golden.\n\\xe\n\n\\begin{derivation}\n[[not]]                           = lambda Q.lambda P.~Q(P)                              : <<<e,t>,t>,<<e,t>,t>>\n[[every ring]]                    = lambda Y.[∂(Ex.ring(x)) /\\ Ax[ring(x) -> Y(x)]]     : <<e,t>,t>\n[[not [every ring]]]              = lambda P.~[∂(Ex.ring(x)) /\\ Ax[ring(x) -> P(x)]]   : <<e,t>,t>\n[[golden]]                        = lambda x.golden(x)                                   : <e,t>\n[[Not every ring is golden]]      = ~[∂(Ex.ring(x)) /\\ Ax[ring(x) -> golden(x)]]        : t\n\\end{derivation}\n\nThe result asserts the negation of the ∀-claim, but the existence presupposition ∂(∃x.ring(x)) remains — even *Not every ring is golden* presupposes that there is at least one ring. This is the projection behaviour that ∂ is designed to capture.[^proj]\n\n## 8.4.3 *some* — assertion without presupposition\n\nBy contrast, *some* makes no use of ∂: `⟦some⟧` = λX.λY.∃x[X(x) ∧ Y(x)] : ⟨⟨e,t⟩,⟨⟨e,t⟩,t⟩⟩. It simply asserts that the restrictor and nuclear scope have a common satisfier.\n\n\\ex<some-ex> Some ring is golden.\n\\xe\n\n\\begin{derivation}\n[[some]]                = lambda X.lambda Y.Ex[X(x) /\\ Y(x)]                       : <<e,t>,<<e,t>,t>>\n[[ring]]                = lambda x.ring(x)                                          : <e,t>\n[[some ring]]           = lambda Y.Ex[ring(x) /\\ Y(x)]                             : <<e,t>,t>\n[[golden]]              = lambda x.golden(x)                                        : <e,t>\n[[Some ring is golden]] = Ex[ring(x) /\\ golden(x)]                                 : t\n\\end{derivation}\n\nNo ∂ conjunct appears. *Some ring is golden* is straightforwardly **false** (not infelicitous) if there are no rings — because it merely asserts existence. The contrast between *every* (presupposes existence, ∂) and *some* (asserts existence, no ∂) captures the classic observation that existential bare plurals feel more informative than universal claims about empty sets.[^contrast]\n\n[^neither]: *card₂(X)* is a two-place cardinality predicate that holds of X when exactly two individuals satisfy X. *Neither* is thus the two-element counterpart of *no* — semantically equivalent to *no* but felicitous only over a two-member domain.\n[^proj]: The projection here is technically not about the ∂ escaping negation — it is inside the QP which is itself not negated. *not* combines with the QP externally, so the ∂ inside the QP's denotation never falls within the negation's scope.\n[^contrast]: *Every F is G* is odd when the speaker knows there are no Fs (the vacuous truth problem); *Some F is G* is simply false in that case. ∂ formalises this asymmetry: existential import is a presupposition for *every*, an assertion for *some*."
        }
      }
    },
    {
      "key": "ch10-coord",
      "title": "10.1 Coordination",
      "content": {
        "compose": 1,
        "id": "ch10-coord",
        "title": "10.1 Coordination",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z Z",
            "et": "P Q X Y"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(x)"
          },
          {
            "words": [
              "meets",
              "meet"
            ],
            "denotation": "Lx.meet(x)"
          },
          {
            "words": [
              "carries",
              "carry"
            ],
            "denotation": "Ly.Lx.carry(x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "hobbits"
            ],
            "denotation": "*Lx.hobbit(x)"
          },
          {
            "words": [
              "elves"
            ],
            "denotation": "*Lx.elf(x)"
          },
          {
            "words": [
              "dwarves"
            ],
            "denotation": "*Lx.dwarf(x)"
          },
          {
            "words": [
              "rings"
            ],
            "denotation": "*Lx.ring(x)"
          },
          {
            "words": [
              "swords"
            ],
            "denotation": "*Lx.sword(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "theSUPR"
            ],
            "denotation": "LX.Ix.[X(x) & Ay[X(y) -> y≤x]]"
          },
          {
            "words": [
              "andS"
            ],
            "denotation": "Lq.Lp.[p & q]"
          },
          {
            "words": [
              "orS"
            ],
            "denotation": "Lq.Lp.[p ∨ q]"
          },
          {
            "words": [
              "andVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) & Q(x)]"
          },
          {
            "words": [
              "orVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) ∨ Q(x)]"
          },
          {
            "words": [
              "andV"
            ],
            "denotation": "LR.LS.Ly.Lx.[S(y)(x) & R(y)(x)]"
          },
          {
            "words": [
              "andDP"
            ],
            "denotation": "LT.LU.LP.[U(P) & T(P)]"
          },
          {
            "words": [
              "orDP"
            ],
            "denotation": "LT.LU.LP.[U(P) ∨ T(P)]"
          },
          {
            "words": [
              "andE"
            ],
            "denotation": "Ly.Lz.z⊕y"
          },
          {
            "words": [
              "part"
            ],
            "denotation": "Ly.Lx.x≤y"
          },
          {
            "words": [
              "carry_coll"
            ],
            "denotation": "Ly.Lx.carry_coll(x,y)"
          },
          {
            "words": [
              "smokes",
              "smoke"
            ],
            "denotation": "Lx.smoke(x)"
          },
          {
            "words": [
              "drinks",
              "drink"
            ],
            "denotation": "Lx.drink(x)"
          },
          {
            "words": [
              "genAnd"
            ],
            "denotation": "LX.LY.LZ.(Lq.Lp.[p & q])(X(Z))(Y(Z))"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "lift"
          ]
        },
        "exercises": [
          {
            "title": "A. Sentential coordination (andS / orS)",
            "instructions": "andS ↝ λq.λp.[p ∧ q] has type ⟨t,⟨t,t⟩⟩. Place and in a ConjP with the right-hand sentence; the result is a ⟨t,t⟩ function that applies to the left sentence by FA. Compare andS and orS — the derivation is identical, only the connective changes.",
            "items": [
              {
                "sentence": "Frodo sings and Gandalf rides.",
                "tree": "[.S [.S [.DP Frodo ] [.VP sings ] ] [.ConjP [.Conj andS ] [.S [.DP Gandalf ] [.VP rides ] ] ] ]",
                "targets": [
                  "sing(f) ∧ ride(g)"
                ]
              },
              {
                "sentence": "Frodo rests or Gandalf sings.",
                "tree": "[.S [.S [.DP Frodo ] [.VP rests ] ] [.ConjP [.Conj orS ] [.S [.DP Gandalf ] [.VP sings ] ] ] ]",
                "targets": [
                  "rest(f) ∨ sing(g)"
                ]
              },
              {
                "sentence": "Aragorn guards the ring and Sam reads the map.",
                "tree": "[.S [.S [.DP Aragorn ] [.VP [.V guards ] [.DP [.D the ] [.NP ring ] ] ] ] [.ConjP [.Conj andS ] [.S [.DP Sam ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ]",
                "targets": [
                  "guard(a,ιz[ring(z)]) ∧ read(s,ιz[map(z)])"
                ]
              }
            ]
          },
          {
            "title": "B. VP coordination (andVP / orVP)",
            "instructions": "andVP ↝ λQ.λP.λx.[P(x) ∧ Q(x)] has type ⟨⟨e,t⟩,⟨⟨e,t⟩,⟨e,t⟩⟩⟩. The coordinator takes the right VP first, then the left VP, and distributes the subject. VP-coordination gives the same truth conditions as sentential coordination but is more economical: the subject is mentioned once.",
            "items": [
              {
                "sentence": "Frodo rides and sings.",
                "tree": "[.S [.DP Frodo ] [.VP [.ConjP [.Conj andVP ] [.VP rides ] ] [.VP sings ] ] ]",
                "targets": [
                  "ride(f) ∧ sing(f)"
                ]
              },
              {
                "sentence": "Gandalf sings or rests.",
                "tree": "[.S [.DP Gandalf ] [.VP [.ConjP [.Conj orVP ] [.VP sings ] ] [.VP rests ] ] ]",
                "targets": [
                  "sing(g) ∨ rest(g)"
                ]
              },
              {
                "sentence": "Sam rides and guards the ring.",
                "tree": "[.S [.DP Sam ] [.VP [.ConjP [.Conj andVP ] [.VP rides ] ] [.VP [.V guards ] [.DP [.D the ] [.NP ring ] ] ] ] ]",
                "targets": [
                  "ride(s) ∧ guard(s,ιz[ring(z)])"
                ]
              }
            ]
          },
          {
            "title": "C. Transitive-verb coordination (andV)",
            "instructions": "andV ↝ λR.λS.λy.λx.[S(y)(x) ∧ R(y)(x)] has type ⟨⟨e,⟨e,t⟩⟩,⟨⟨e,⟨e,t⟩⟩,⟨e,⟨e,t⟩⟩⟩⟩. It coordinates two transitive verbs, sharing BOTH subject and object. The ConjP takes the right V first, then FA with the left V, giving a ⟨e,⟨e,t⟩⟩ that takes its object normally.",
            "items": [
              {
                "sentence": "Frodo carries and guards the ring.",
                "tree": "[.S [.DP Frodo ] [.VP [.V [.ConjP [.Conj andV ] [.V carries ] ] [.V guards ] ] [.DP [.D the ] [.NP ring ] ] ] ]",
                "targets": [
                  "carry(f,ιz[ring(z)]) ∧ guard(f,ιz[ring(z)])"
                ]
              },
              {
                "sentence": "Sam finds and reads the map.",
                "tree": "[.S [.DP Sam ] [.VP [.V [.ConjP [.Conj andV ] [.V finds ] ] [.V reads ] ] [.DP [.D the ] [.NP map ] ] ] ]",
                "targets": [
                  "find(s,ιz[map(z)]) ∧ read(s,ιz[map(z)])"
                ]
              }
            ]
          },
          {
            "title": "D. Mixed-type coordination & the ⊓ schema (Exercises 5–6)",
            "instructions": "All the entries above share a pattern: each has ∧ (or ∨) at its core, and each operates on a type ending in t. The book generalizes them with a single recursive operator ⊓ (and ⊔ for or), defined in (16): ⊓⟨τ,⟨τ,τ⟩⟩ = λqλp.p∧q if τ=t, else λXλYλZ.⊓(X(Z))(Y(Z)). — ITEM 1 (Ex 5): coordinate two type-e names with andDP. Each name must first be raised to a quantifier ⟨⟨e,t⟩,t⟩ with the Montague Lift type-shifter (apply it once on each conjunct), so Frodo ⇝ λP.P(f). — ITEM 2 (Ex 6): genAnd is ⊓ specialized to the VP type ⟨e,t⟩: plugging τ=⟨e,t⟩ into (16) gives λXλYλZ.⊓⟨t,⟨t,t⟩⟩(X(Z))(Y(Z)), and the base case ⊓⟨t,⟨t,t⟩⟩ = λqλp.p∧q. Compose genAnd with two VPs and REDUCE — it collapses to exactly the andVP entry from group B.",
            "items": [
              {
                "sentence": "Frodo and Sam smoke. (Ex 5 — lift each conjunct)",
                "tree": "[.S [.DP [.DP Frodo ] [.Coord' [.Coord andDP ] [.DP Sam ] ] ] [.VP smoke ] ]",
                "targets": [
                  "smoke(f) ∧ smoke(s)"
                ]
              },
              {
                "sentence": "Frodo rides and sings. (Ex 6 — schema reduces to andVP)",
                "tree": "[.S [.DP Frodo ] [.VP [.ConjP [.Conj genAnd ] [.VP rides ] ] [.VP sings ] ] ]",
                "targets": [
                  "ride(f) ∧ sing(f)"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch10-lift",
      "title": "10.1 DP Coordination & Montague Lift",
      "content": {
        "compose": 1,
        "id": "ch10-lift",
        "title": "10.1 DP Coordination & Montague Lift",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "et": "P Q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(x)"
          },
          {
            "words": [
              "meets",
              "meet"
            ],
            "denotation": "Lx.meet(x)"
          },
          {
            "words": [
              "carries",
              "carry"
            ],
            "denotation": "Ly.Lx.carry(x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "hobbits"
            ],
            "denotation": "*Lx.hobbit(x)"
          },
          {
            "words": [
              "elves"
            ],
            "denotation": "*Lx.elf(x)"
          },
          {
            "words": [
              "dwarves"
            ],
            "denotation": "*Lx.dwarf(x)"
          },
          {
            "words": [
              "rings"
            ],
            "denotation": "*Lx.ring(x)"
          },
          {
            "words": [
              "swords"
            ],
            "denotation": "*Lx.sword(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "theSUPR"
            ],
            "denotation": "LX.Ix.[X(x) & Ay[X(y) -> y≤x]]"
          },
          {
            "words": [
              "andS"
            ],
            "denotation": "Lq.Lp.[p & q]"
          },
          {
            "words": [
              "orS"
            ],
            "denotation": "Lq.Lp.[p ∨ q]"
          },
          {
            "words": [
              "andVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) & Q(x)]"
          },
          {
            "words": [
              "orVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) ∨ Q(x)]"
          },
          {
            "words": [
              "andV"
            ],
            "denotation": "LR.LS.Ly.Lx.[S(y)(x) & R(y)(x)]"
          },
          {
            "words": [
              "andDP"
            ],
            "denotation": "LT.LU.LP.[U(P) & T(P)]"
          },
          {
            "words": [
              "orDP"
            ],
            "denotation": "LT.LU.LP.[U(P) ∨ T(P)]"
          },
          {
            "words": [
              "andE"
            ],
            "denotation": "Ly.Lz.z⊕y"
          },
          {
            "words": [
              "part"
            ],
            "denotation": "Ly.Lx.x≤y"
          },
          {
            "words": [
              "carry_coll"
            ],
            "denotation": "Ly.Lx.carry_coll(x,y)"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "lift"
          ]
        },
        "exercises": [
          {
            "title": "A. DP coordination (two quantified DPs)",
            "instructions": "andDP ↝ λT.λU.λX.[T(λz.X(z)) ∧ U(λz.X(z))] takes two GQs (type ⟨⟨e,t⟩,t⟩) and returns a GQ. Place it in a ConjP with the right DP; FA with the left DP gives the coordinated GQ. The result distributes the VP over both DP denotations.",
            "items": [
              {
                "sentence": "Every hobbit and some elf ride.",
                "tree": "[.S [.DP [.DP [.D every ] [.NP hobbit ] ] [.ConjP [.Conj andDP ] [.DP [.D some ] [.NP elf ] ] ] ] [.VP rides ] ]",
                "targets": [
                  "∀x[hobbit(x) → ride(x)] ∧ ∃x[elf(x) ∧ ride(x)]"
                ]
              },
              {
                "sentence": "Some dwarf or every elf sings.",
                "tree": "[.S [.DP [.DP [.D some ] [.NP dwarf ] ] [.ConjP [.Conj orDP ] [.DP [.D every ] [.NP elf ] ] ] ] [.VP sings ] ]",
                "targets": [
                  "∃x[dwarf(x) ∧ sing(x)] ∨ ∀x[elf(x) → sing(x)]"
                ]
              }
            ]
          },
          {
            "title": "B. Mixed coordination — name + quantifier (Lift required)",
            "instructions": "A proper name (type e) cannot directly coordinate with a generalized quantifier. First apply the Montague Lift type-shift to the name's DP node, turning e.g. Frodo (type e) into λP.P(f) of type ⟨⟨e,t⟩,t⟩. Then andDP combines the two quantifiers in a ConjP, and the coordinated GQ applies to the VP. Lift the name yourself — there is no pre-lifted entry.",
            "items": [
              {
                "sentence": "Frodo and every hobbit ride.",
                "tree": "[.S [.DP [.DP Frodo ] [.ConjP [.Conj andDP ] [.DP [.D every ] [.NP hobbit ] ] ] ] [.VP rides ] ]",
                "targets": [
                  "ride(f) ∧ ∀x[hobbit(x) → ride(x)]"
                ]
              },
              {
                "sentence": "Sam and some elf guard the ring.",
                "tree": "[.S [.DP [.DP Sam ] [.ConjP [.Conj andDP ] [.DP [.D some ] [.NP elf ] ] ] ] [.VP [.V guards ] [.DP [.D the ] [.NP ring ] ] ] ]",
                "targets": [
                  "guard(s,ιz[ring(z)]) ∧ ∃x[elf(x) ∧ guard(x,ιz[ring(z)])]"
                ]
              },
              {
                "sentence": "Gandalf or every dwarf sings.",
                "tree": "[.S [.DP [.DP Gandalf ] [.ConjP [.Conj orDP ] [.DP [.D every ] [.NP dwarf ] ] ] ] [.VP sings ] ]",
                "targets": [
                  "sing(g) ∨ ∀x[dwarf(x) → sing(x)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch10-mereology",
      "title": "10.2 Mereology — Sums and Parthood",
      "content": {
        "compose": 1,
        "id": "ch10-mereology",
        "title": "10.2 Mereology — Sums and Parthood",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "et": "P Q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(x)"
          },
          {
            "words": [
              "meets",
              "meet"
            ],
            "denotation": "Lx.meet(x)"
          },
          {
            "words": [
              "carries",
              "carry"
            ],
            "denotation": "Ly.Lx.carry(x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "hobbits"
            ],
            "denotation": "*Lx.hobbit(x)"
          },
          {
            "words": [
              "elves"
            ],
            "denotation": "*Lx.elf(x)"
          },
          {
            "words": [
              "dwarves"
            ],
            "denotation": "*Lx.dwarf(x)"
          },
          {
            "words": [
              "rings"
            ],
            "denotation": "*Lx.ring(x)"
          },
          {
            "words": [
              "swords"
            ],
            "denotation": "*Lx.sword(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "theSUPR"
            ],
            "denotation": "LX.Ix.[X(x) & Ay[X(y) -> y≤x]]"
          },
          {
            "words": [
              "andS"
            ],
            "denotation": "Lq.Lp.[p & q]"
          },
          {
            "words": [
              "orS"
            ],
            "denotation": "Lq.Lp.[p ∨ q]"
          },
          {
            "words": [
              "andVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) & Q(x)]"
          },
          {
            "words": [
              "orVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) ∨ Q(x)]"
          },
          {
            "words": [
              "andV"
            ],
            "denotation": "LR.LS.Ly.Lx.[S(y)(x) & R(y)(x)]"
          },
          {
            "words": [
              "andDP"
            ],
            "denotation": "LT.LU.LP.[U(P) & T(P)]"
          },
          {
            "words": [
              "orDP"
            ],
            "denotation": "LT.LU.LP.[U(P) ∨ T(P)]"
          },
          {
            "words": [
              "andE"
            ],
            "denotation": "Ly.Lz.z⊕y"
          },
          {
            "words": [
              "part"
            ],
            "denotation": "Ly.Lx.x≤y"
          },
          {
            "words": [
              "carry_coll"
            ],
            "denotation": "Ly.Lx.carry_coll(x,y)"
          },
          {
            "words": [
              "are",
              "is"
            ],
            "denotation": "LP.P"
          },
          {
            "words": [
              "two_"
            ],
            "displayAs": "two",
            "denotation": "Lx.|x|=2"
          },
          {
            "words": [
              "three_"
            ],
            "displayAs": "three",
            "denotation": "Lx.|x|=3"
          },
          {
            "words": [
              "two"
            ],
            "denotation": "LP.LQ.Ex[P(x) & |x|=2 & Q(x)]"
          },
          {
            "words": [
              "three"
            ],
            "denotation": "LP.LQ.Ex[P(x) & |x|=3 & Q(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Sum-formation (andE — name coordination)",
            "instructions": "andE ↝ λy.λz.z⊕y (type ⟨e,⟨e,e⟩⟩) takes the right name first, then FA with the left, forming a sum of type e. The result is a new individual — the mereological sum of the two names — that can serve as subject or object of a predicate.",
            "items": [
              {
                "sentence": "Frodo and Sam (the sum f⊕s).",
                "tree": "[.DP [.DP Frodo ] [.ConjP [.Conj andE ] [.DP Sam ] ] ]",
                "targets": [
                  "f⊕s"
                ]
              },
              {
                "sentence": "Frodo, Sam and Aragorn (the sum f⊕s⊕a).",
                "tree": "[.DP [.DP [.DP Frodo ] [.ConjP [.Conj andE ] [.DP Sam ] ] ] [.ConjP [.Conj andE ] [.DP Aragorn ] ] ]",
                "targets": [
                  "f⊕s⊕a"
                ]
              },
              {
                "sentence": "Gandalf and Aragorn carry the ring (collective subject).",
                "tree": "[.S [.DP [.DP Gandalf ] [.ConjP [.Conj andE ] [.DP Aragorn ] ] ] [.VP [.V carry_coll ] [.DP [.D the ] [.NP ring ] ] ] ]",
                "targets": [
                  "carry_coll(g⊕a,ιz[ring(z)])"
                ]
              }
            ]
          },
          {
            "title": "B. Parthood (≤)",
            "instructions": "The parthood relation ≤ holds between an individual and a sum that contains it: f≤f⊕s. In a sentence \"Frodo is part of Frodo and Sam\", derive the sum first via andE, then apply the parthood predicate. The truth conditions contain ≤ directly.",
            "items": [
              {
                "sentence": "Frodo is part of Frodo and Sam. (f ≤ f⊕s)",
                "tree": "[.S [.DP Frodo ] [.VP [.V part ] [.DP [.DP Frodo ] [.ConjP [.Conj andE ] [.DP Sam ] ] ] ] ]",
                "targets": [
                  "f≤f⊕s"
                ]
              },
              {
                "sentence": "Sam and Gandalf carry the sword together; Frodo is part of their sum.",
                "tree": "[.S [.DP Frodo ] [.VP [.V part ] [.DP [.DP Sam ] [.ConjP [.Conj andE ] [.DP Gandalf ] ] ] ] ]",
                "targets": [
                  "f≤s⊕g"
                ]
              }
            ]
          },
          {
            "title": "C. Cardinality of sums (|·|)",
            "instructions": "The cardinality operator |x| counts the atomic parts of an individual: |f⊕s| = 2. The copula \"are\" (λP.P) passes the numeral predicate to the plural subject, which then applies to the sum. Because ⊕ is commutative, associative and idempotent, the parts may be summed in any order — |s⊕f| = 2 is accepted just as readily.",
            "items": [
              {
                "sentence": "Frodo and Sam are two. (|f⊕s| = 2)",
                "tree": "[.S [.DP [.DP Frodo ] [.ConjP [.Conj andE ] [.DP Sam ] ] ] [.VP [.V are ] [.NumP two_ ] ] ]",
                "targets": [
                  "|f⊕s|=2"
                ]
              },
              {
                "sentence": "Frodo, Sam and Gandalf are three. (|f⊕s⊕g| = 3)",
                "tree": "[.S [.DP [.DP [.DP Frodo ] [.ConjP [.Conj andE ] [.DP Sam ] ] ] [.ConjP [.Conj andE ] [.DP Gandalf ] ] ] [.VP [.V are ] [.NumP three_ ] ] ]",
                "targets": [
                  "|f⊕s⊕g|=3"
                ]
              }
            ]
          },
          {
            "title": "D. Cardinal numerals as quantifiers",
            "instructions": "A numeral determiner \"two\" ⇝ λP.λQ.∃x[P(x) ∧ |x|=2 ∧ Q(x)] existentially quantifies over a sum of two atoms that satisfies the pluralized noun (∗) and the predicate. It is type ⟨⟨e,t⟩,⟨⟨e,t⟩,t⟩⟩, a generalized quantifier, and combines with the VP by Function Application.",
            "items": [
              {
                "sentence": "Two hobbits ride.",
                "tree": "[.S [.DP [.D two ] [.NP hobbits ] ] [.VP ride ] ]",
                "targets": [
                  "Ex[*hobbit(x) & |x|=2 & ride(x)]"
                ]
              },
              {
                "sentence": "Three elves sing.",
                "tree": "[.S [.DP [.D three ] [.NP elves ] ] [.VP sing ] ]",
                "targets": [
                  "Ex[*elf(x) & |x|=3 & sing(x)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch10-plural",
      "title": "10.3 Plurals & the Star Operator",
      "content": {
        "compose": 1,
        "id": "ch10-plural",
        "title": "10.3 Plurals & the Star Operator",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr",
            "<e,t>": "hobbit elf dwarf orc ring sword map singer"
          },
          "variables": {
            "e": "x y z",
            "et": "P Q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(x)"
          },
          {
            "words": [
              "meets",
              "meet"
            ],
            "denotation": "Lx.meet(x)"
          },
          {
            "words": [
              "carries",
              "carry"
            ],
            "denotation": "Ly.Lx.carry(x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "hobbit"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "elf"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "dwarf"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "ring"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "sword"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "map"
          },
          {
            "words": [
              "hobbits"
            ],
            "denotation": "*hobbit"
          },
          {
            "words": [
              "elves"
            ],
            "denotation": "*elf"
          },
          {
            "words": [
              "dwarves"
            ],
            "denotation": "*dwarf"
          },
          {
            "words": [
              "rings"
            ],
            "denotation": "*ring"
          },
          {
            "words": [
              "swords"
            ],
            "denotation": "*sword"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "theSUPR"
            ],
            "denotation": "LX.Ix.[X(x) & Ay[X(y) -> y≤x]]"
          },
          {
            "words": [
              "andS"
            ],
            "denotation": "Lq.Lp.[p & q]"
          },
          {
            "words": [
              "orS"
            ],
            "denotation": "Lq.Lp.[p ∨ q]"
          },
          {
            "words": [
              "andVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) & Q(x)]"
          },
          {
            "words": [
              "orVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) ∨ Q(x)]"
          },
          {
            "words": [
              "andV"
            ],
            "denotation": "LR.LS.Ly.Lx.[S(y)(x) & R(y)(x)]"
          },
          {
            "words": [
              "andDP"
            ],
            "denotation": "LT.LU.LP.[U(P) & T(P)]"
          },
          {
            "words": [
              "orDP"
            ],
            "denotation": "LT.LU.LP.[U(P) ∨ T(P)]"
          },
          {
            "words": [
              "andE"
            ],
            "denotation": "Ly.Lz.z⊕y"
          },
          {
            "words": [
              "part"
            ],
            "denotation": "Ly.Lx.x≤y"
          },
          {
            "words": [
              "carry_coll"
            ],
            "denotation": "Ly.Lx.carry_coll(x,y)"
          },
          {
            "words": [
              "singer"
            ],
            "denotation": "singer"
          },
          {
            "words": [
              "-s",
              "PL"
            ],
            "denotation": "LP.*P"
          },
          {
            "words": [
              "are",
              "is",
              "be"
            ],
            "denotation": "LP.P"
          },
          {
            "words": [
              "two"
            ],
            "denotation": "Lx.card(x)=2"
          },
          {
            "words": [
              "theSUM"
            ],
            "denotation": "LP.⊕P"
          },
          {
            "words": [
              "∅D",
              "emptyD"
            ],
            "denotation": "LP.LP'.Ex[P(x) & P'(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Plural predicate (∗P)",
            "instructions": "The plural noun \"hobbits\" denotes ∗hobbit of type ⟨e,t⟩. It is true of any individual that is either a hobbit or a sum of hobbits. Build the NP and check its type — it should be ⟨e,t⟩, same as the singular \"hobbit\".",
            "items": [
              {
                "sentence": "hobbits (∗hobbit)",
                "tree": "[.NP [.N hobbit ] [.Pl -s ] ]",
                "targets": [
                  "∗hobbit"
                ]
              },
              {
                "sentence": "elves (∗elf)",
                "tree": "[.NP [.N elf ] [.Pl -s ] ]",
                "targets": [
                  "∗elf"
                ]
              },
              {
                "sentence": "dwarves (∗dwarf)",
                "tree": "[.NP [.N dwarf ] [.Pl -s ] ]",
                "targets": [
                  "∗dwarf"
                ]
              }
            ]
          },
          {
            "title": "B. Plural definite (theSUPR)",
            "instructions": "The plural definite \"the hobbits\" uses the supremum iota: ιx.[∗hobbit(x) ∧ ∀y[∗hobbit(y)→y≤x]] — the maximal sum of all hobbits. theSUPR ↝ λX.ιx.[X(x) ∧ ∀y[X(y)→y≤x]] takes the plural predicate (∗hobbit) and returns its supremum — an individual of type e.",
            "items": [
              {
                "sentence": "the hobbits",
                "tree": "[.DP [.D theSUPR ] [.NP hobbits ] ]",
                "targets": [
                  "ιx.[∗hobbit(x) ∧ ∀y[∗hobbit(y) → y≤x]]"
                ]
              },
              {
                "sentence": "the elves",
                "tree": "[.DP [.D theSUPR ] [.NP elves ] ]",
                "targets": [
                  "ιx.[∗elf(x) ∧ ∀y[∗elf(y) → y≤x]]"
                ]
              }
            ]
          },
          {
            "title": "C. Plural definite as subject",
            "instructions": "A plural definite description is a type-e individual (the maximal sum). Apply it as a subject to a VP by FA — the VP predicate holds of the entire sum, expressing a collective or distributive claim depending on the predicate.",
            "items": [
              {
                "sentence": "The hobbits ride.",
                "tree": "[.S [.DP [.D theSUPR ] [.NP hobbits ] ] [.VP rides ] ]",
                "targets": [
                  "ride(ιx.[∗hobbit(x) ∧ ∀y[∗hobbit(y) → y≤x]])"
                ]
              },
              {
                "sentence": "The elves sing.",
                "tree": "[.S [.DP [.D theSUPR ] [.NP elves ] ] [.VP sings ] ]",
                "targets": [
                  "sing(ιx.[∗elf(x) ∧ ∀y[∗elf(y) → y≤x]])"
                ]
              }
            ]
          },
          {
            "title": "D. The plural morpheme -s (Exercise 8)",
            "instructions": "Instead of treating \"singers\" as an unanalyzed starred predicate, derive it compositionally. The plural morpheme is -s ⇝ λP.∗P (entry 30): it takes a singular noun and returns its algebraic closure. Build the noun by composing [.N singer ] with [.Pl -s ] via Function Application. For coordinated proper names, use andE (λyλz.z⊕y) to form the sum, and treat \"are\"/\"is\" as the identity function λP.P. These reproduce the book's (31) and (32b).",
            "items": [
              {
                "sentence": "singers ( [singer -s] = ∗singer )",
                "tree": "[.NP [.N singer ] [.Pl -s ] ]",
                "targets": [
                  "∗singer"
                ]
              },
              {
                "sentence": "Frodo and Sam are singers. (32b)",
                "tree": "[.S [.DP [.DP Frodo ] [.Coord' [.Coord andE ] [.DP Sam ] ] ] [.VP [.V are ] [.NP [.N singer ] [.Pl -s ] ] ] ]",
                "targets": [
                  "∗singer(f⊕s)"
                ]
              },
              {
                "sentence": "Some singers met. (31b)",
                "tree": "[.S [.DP [.D some ] [.NP [.N singer ] [.Pl -s ] ] ] [.VP meet ] ]",
                "targets": [
                  "∃x[∗singer(x) ∧ meet(x)]"
                ]
              },
              {
                "sentence": "Frodo, Sam and Pippin met. (31a)",
                "tree": "[.S [.DP [.DP Frodo ] [.Coord' [.Coord andE ] [.DP [.DP Sam ] [.Coord' [.Coord andE ] [.DP Pippin ] ] ] ] ] [.VP meet ] ]",
                "targets": [
                  "meet(f⊕(s⊕pi))"
                ]
              }
            ]
          },
          {
            "title": "E. theSUM — the sum analysis of plural the (Exercise 10)",
            "instructions": "Before the supremum analysis, the book first tries treating plural the as the generalized sum: theSUM ⇝ λP.⊕P (entry 33), where ⊕P is the sum of all the P's (type e). For \"the singers\" this gives the right answer — the maximal singer-sum. But notice the second item: with \"two singers\", theSUM sums up ALL the two-singer pluralities, collapsing them back to the total sum — so \"theSUM two singers\" wrongly denotes the sum of all singers, not a pair. This is exactly why the book replaces theSUM with theSUPR. (Here two ⇝ λx.card(x)=2 combines with singers by Predicate Modification.)",
            "items": [
              {
                "sentence": "theSUM singers met.",
                "tree": "[.S [.DP [.D theSUM ] [.NP [.N singer ] [.Pl -s ] ] ] [.VP meet ] ]",
                "targets": [
                  "meet(⊕∗singer)"
                ]
              },
              {
                "sentence": "theSUM two singers met. (the over-summing problem)",
                "tree": "[.S [.DP [.D theSUM ] [.NP [.Card two ] [.NP [.N singer ] [.Pl -s ] ] ] ] [.VP meet ] ]",
                "targets": [
                  "meet(⊕(λx.[card(x)=2 ∧ ∗singer(x)]))"
                ]
              }
            ]
          },
          {
            "title": "F. The silent determiner ∅D (Exercise 9)",
            "instructions": "Bare plurals like \"Two singers met\" have no overt determiner, but combine with the VP like a quantifier. The book posits a silent determiner with existential-quantifier semantics: ∅D ⇝ λPλP'.∃x[P(x) ∧ P'(x)] (Exercise 9). Include the ∅D node explicitly in the tree. \"two singers\" is formed by Predicate Modification, then ∅D binds it existentially.",
            "items": [
              {
                "sentence": "Two singers met.",
                "tree": "[.S [.DP [.D ∅D ] [.NP [.Card two ] [.NP [.N singer ] [.Pl -s ] ] ] ] [.VP meet ] ]",
                "targets": [
                  "∃x[[card(x)=2 ∧ ∗singer(x)] ∧ meet(x)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch10-cumulative",
      "title": "10.4 Cumulative Readings",
      "content": {
        "compose": 1,
        "id": "ch10-cumulative",
        "title": "10.4 Cumulative Readings",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w",
            "<e,<e,t>>": "carry guard read find"
          },
          "variables": {
            "e": "x y z",
            "et": "P Q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(x)"
          },
          {
            "words": [
              "meets",
              "meet"
            ],
            "denotation": "Lx.meet(x)"
          },
          {
            "words": [
              "carries",
              "carry"
            ],
            "denotation": "Ly.Lx.carry(x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "hobbits"
            ],
            "denotation": "*Lx.hobbit(x)"
          },
          {
            "words": [
              "elves"
            ],
            "denotation": "*Lx.elf(x)"
          },
          {
            "words": [
              "dwarves"
            ],
            "denotation": "*Lx.dwarf(x)"
          },
          {
            "words": [
              "rings"
            ],
            "denotation": "*Lx.ring(x)"
          },
          {
            "words": [
              "swords"
            ],
            "denotation": "*Lx.sword(x)"
          },
          {
            "words": [
              "maps"
            ],
            "denotation": "*Lx.map(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "theSUPR"
            ],
            "denotation": "LX.Ix.[X(x) & Ay[X(y) -> y≤x]]"
          },
          {
            "words": [
              "andS"
            ],
            "denotation": "Lq.Lp.[p & q]"
          },
          {
            "words": [
              "orS"
            ],
            "denotation": "Lq.Lp.[p ∨ q]"
          },
          {
            "words": [
              "andVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) & Q(x)]"
          },
          {
            "words": [
              "orVP"
            ],
            "denotation": "LQ.LP.Lx.[P(x) ∨ Q(x)]"
          },
          {
            "words": [
              "andV"
            ],
            "denotation": "LR.LS.Ly.Lx.[S(y)(x) & R(y)(x)]"
          },
          {
            "words": [
              "andDP"
            ],
            "denotation": "LT.LU.LP.[U(P) & T(P)]"
          },
          {
            "words": [
              "orDP"
            ],
            "denotation": "LT.LU.LP.[U(P) ∨ T(P)]"
          },
          {
            "words": [
              "andE"
            ],
            "denotation": "Ly.Lz.z⊕y"
          },
          {
            "words": [
              "part"
            ],
            "denotation": "Ly.Lx.x≤y"
          },
          {
            "words": [
              "carry_coll"
            ],
            "denotation": "Ly.Lx.carry_coll(x,y)"
          },
          {
            "words": [
              "cum_carry"
            ],
            "denotation": "Ly.Lx.*carry(x,y)"
          },
          {
            "words": [
              "cum_read"
            ],
            "denotation": "Ly.Lx.*read(x,y)"
          },
          {
            "words": [
              "cum_guard"
            ],
            "denotation": "Ly.Lx.*guard(x,y)"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "raiseO"
          ]
        },
        "exercises": [
          {
            "title": "A. Cumulative predicate applied to plural sums",
            "instructions": "The cumulative verb is the relational star ∗carry — the cumulative closure of the carry relation. ∗carry(X,Y) holds of two sums X and Y when X and Y can be divided into parts that pair up under carry, so every part of X carries some part of Y and vice versa. The verb is λy.λx.∗carry(x,y); the star operator now applies to a two-place relation ⟨e,⟨e,t⟩⟩, just as it applies to a one-place predicate ⟨e,t⟩ in the plural nouns. Build the sentence with theSUPR-formed plural definites as subject and object.",
            "items": [
              {
                "sentence": "The hobbits carried the rings. (cumulative)",
                "tree": "[.S [.DP [.D theSUPR ] [.NP hobbits ] ] [.VP [.V cum_carry ] [.DP [.D theSUPR ] [.NP rings ] ] ] ]",
                "targets": [
                  "∗carry(ιx.[∗(λz.hobbit(z))(x) ∧ ∀y[∗(λz.hobbit(z))(y) → y≤x]], ιx.[∗(λz.ring(z))(x) ∧ ∀y[∗(λz.ring(z))(y) → y≤x]])"
                ]
              },
              {
                "sentence": "The elves read the maps. (cumulative)",
                "tree": "[.S [.DP [.D theSUPR ] [.NP elves ] ] [.VP [.V cum_read ] [.DP [.D theSUPR ] [.NP maps ] ] ] ]",
                "targets": [
                  "∗read(ιx.[∗(λz.elf(z))(x) ∧ ∀y[∗(λz.elf(z))(y) → y≤x]], ιx.[∗(λz.map(z))(x) ∧ ∀y[∗(λz.map(z))(y) → y≤x]])"
                ]
              }
            ]
          },
          {
            "title": "B. Distributive vs. cumulative contrast",
            "instructions": "\"Every hobbit carried every ring\" (distributive — every individual to every individual) vs. \"The hobbits carried the rings\" (cumulative — sums to sums). Build both and compare. The distributive reading uses every+every and gives ∀x∀y[…carry(x,y)]; the cumulative reading uses theSUPR+theSUPR and the relational star ∗carry over the two plural sums.",
            "items": [
              {
                "sentence": "Every hobbit carried every ring. (distributive)",
                "tree": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.V carries ] [.DP [.D every ] [.NP ring ] ] ] ]",
                "targets": [
                  "∀x[hobbit(x) → ∀y[ring(y) → carry(x,y)]]"
                ]
              },
              {
                "sentence": "The hobbits carried the rings. (cumulative — theSUPR + cum_carry)",
                "tree": "[.S [.DP [.D theSUPR ] [.NP hobbits ] ] [.VP [.V cum_carry ] [.DP [.D theSUPR ] [.NP rings ] ] ] ]",
                "targets": [
                  "∗carry(ιx.[∗(λz.hobbit(z))(x) ∧ ∀y[∗(λz.hobbit(z))(y) → y≤x]], ιx.[∗(λz.ring(z))(x) ∧ ∀y[∗(λz.ring(z))(y) → y≤x]])"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch10.5-fragment",
      "title": "10.5 The Full Fragment (L∗ with starred verbs)",
      "content": {
        "compose": 1,
        "id": "ch10-fragment",
        "title": "10.5 The Full Fragment (L∗ with starred verbs)",
        "subtitle": "The book's §10.5.4 translations: once the domain has sums, every verb is starred (holds distributively of sums). Capstone, incl. cumulative readings via the relational star.",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "mx l pt j su my t1 t2 t3 t4",
            "<e,t>": "singer toothbrush fish",
            "<e,<e,t>>": "catch eat own"
          },
          "variables": {
            "e": "x y z w Z",
            "et": "P Q X Y"
          }
        },
        "lexicon": [
          {
            "words": [
              "Maxine"
            ],
            "denotation": "mx"
          },
          {
            "words": [
              "LaVerne"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Patty"
            ],
            "denotation": "pt"
          },
          {
            "words": [
              "John"
            ],
            "denotation": "j"
          },
          {
            "words": [
              "Sue"
            ],
            "denotation": "su"
          },
          {
            "words": [
              "Mary"
            ],
            "denotation": "my"
          },
          {
            "words": [
              "smokes",
              "smoke"
            ],
            "denotation": "Lx.*smoke(x)"
          },
          {
            "words": [
              "drinks",
              "drink"
            ],
            "denotation": "Lx.*drink(x)"
          },
          {
            "words": [
              "caught",
              "catch"
            ],
            "denotation": "Ly.Lx.*catch(x,y)"
          },
          {
            "words": [
              "ate",
              "eat"
            ],
            "denotation": "Ly.Lx.*eat(x,y)"
          },
          {
            "words": [
              "own",
              "owns"
            ],
            "denotation": "Ly.Lx.*own(x,y)"
          },
          {
            "words": [
              "two"
            ],
            "denotation": "Lx.card(x)=2"
          },
          {
            "words": [
              "three"
            ],
            "denotation": "Lx.card(x)=3"
          },
          {
            "words": [
              "four"
            ],
            "denotation": "Lx.card(x)=4"
          },
          {
            "words": [
              "singer"
            ],
            "denotation": "singer"
          },
          {
            "words": [
              "toothbrush"
            ],
            "denotation": "toothbrush"
          },
          {
            "words": [
              "fish"
            ],
            "denotation": "fish"
          },
          {
            "words": [
              "-s",
              "PL"
            ],
            "denotation": "LP.*P"
          },
          {
            "words": [
              "andE",
              "andSUM"
            ],
            "denotation": "Ly.Lz.z⊕y"
          },
          {
            "words": [
              "andS"
            ],
            "denotation": "Lq.Lp.[p & q]"
          },
          {
            "words": [
              "orS"
            ],
            "denotation": "Lq.Lp.[p ∨ q]"
          },
          {
            "words": [
              "andVP"
            ],
            "denotation": "LY.LX.Lx.[X(x) & Y(x)]"
          },
          {
            "words": [
              "andV"
            ],
            "denotation": "LR.LS.Ly.Lx.[S(y)(x) & R(y)(x)]"
          },
          {
            "words": [
              "is",
              "are",
              "a",
              "be"
            ],
            "denotation": "LP.P"
          },
          {
            "words": [
              "the",
              "theSUPR"
            ],
            "denotation": "LP.Iz.[P(z) & Ax[P(x) -> x≤z]]"
          },
          {
            "words": [
              "∅D",
              "emptyD"
            ],
            "denotation": "LP.LQ.Ex[P(x) & Q(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "raiseO"
          ],
          "quantifierRaising": true
        },
        "exercises": [
          {
            "title": "A. Why verbs are starred — distributivity over sums",
            "instructions": "Once plural individuals live in the domain, a verb like smoke must hold of a SUM whenever it holds of each atom. So the fragment stars every verb: smokes ↝ λx.∗smoke(x) (entry §10.5.4). Form the plural subject with andE (λyλz.z⊕y), which sums two entities, and apply the starred verb. ∗smoke(mx⊕l) is true exactly when both Maxine and LaVerne smoke — the distributive reading falls out of the star, with no extra distributivity operator.",
            "items": [
              {
                "sentence": "Maxine and LaVerne smoke.",
                "tree": "[.S [.DP [.DP Maxine ] [.Coord' [.Coord andE ] [.DP LaVerne ] ] ] [.VP smoke ] ]",
                "targets": [
                  "∗smoke(mx⊕l)"
                ]
              },
              {
                "sentence": "Maxine, LaVerne and Patty drink.",
                "tree": "[.S [.DP [.DP Maxine ] [.Coord' [.Coord andE ] [.DP [.DP LaVerne ] [.Coord' [.Coord andE ] [.DP Patty ] ] ] ] ] [.VP drink ] ]",
                "targets": [
                  "∗drink(mx⊕(l⊕pt))"
                ]
              }
            ]
          },
          {
            "title": "B. Starred transitive verbs",
            "instructions": "Transitive verbs are starred too: caught ↝ λyλx.∗catch(x,y), own ↝ λyλx.∗own(x,y) (§10.5.4). The object is taken first, then the subject, giving a flat ∗catch(subject, object). With singular arguments the star is vacuous, but the entry is uniform across singular and plural.",
            "items": [
              {
                "sentence": "Maxine caught Sue.",
                "tree": "[.S [.DP Maxine ] [.VP [.V caught ] [.DP Sue ] ] ]",
                "targets": [
                  "∗catch(mx,su)"
                ]
              },
              {
                "sentence": "Maxine and LaVerne caught Mary.",
                "tree": "[.S [.DP [.DP Maxine ] [.Coord' [.Coord andE ] [.DP LaVerne ] ] ] [.VP [.V caught ] [.DP Mary ] ] ]",
                "targets": [
                  "∗catch(mx⊕l,my)"
                ]
              }
            ]
          },
          {
            "title": "C. The plural morpheme with a starred verb",
            "instructions": "Combine the pieces: the plural noun is [.N singer ] + [.Pl -s ] (-s ↝ λP.∗P), the silent ∅D ↝ λPλQ.∃x[P(x) ∧ Q(x)] turns it into a quantifier, and the starred verb supplies the predicate. \"Some singers smoke\" existentially quantifies over singer-sums that smoke.",
            "items": [
              {
                "sentence": "Some singers smoke.",
                "tree": "[.S [.DP [.D some ] [.NP [.N singer ] [.Pl -s ] ] ] [.VP smoke ] ]",
                "targets": [
                  "∃x[∗singer(x) ∧ ∗smoke(x)]"
                ]
              }
            ]
          },
          {
            "title": "D. Cumulative readings via the relational star (Exercise 41)",
            "instructions": "The relational star generalizes ∗ to two-place predicates: ∗own holds of a pair of sums when they divide into atom-pairs each in the own-relation (entries 39–41). \"Maxine, LaVerne and Patty own four toothbrushes\" gets a CUMULATIVE reading: a total of four toothbrushes are collectively owned. The object \"four toothbrushes\" is ∅D(four ⊓ ∗toothbrush), a quantifier; let it take scope over the starred verb (apply RaiseO to the verb so the object combines in situ, or raise the object). The result is the book's (41).",
            "items": [
              {
                "sentence": "Maxine, LaVerne and Patty own four toothbrushes. (cumulative)",
                "tree": "[.S [.DP [.DP Maxine ] [.Coord' [.Coord andE ] [.DP [.DP LaVerne ] [.Coord' [.Coord andE ] [.DP Patty ] ] ] ] ] [.VP [.V own ] [.DP [.D ∅D ] [.NP [.Card four ] [.NP [.N toothbrush ] [.Pl -s ] ] ] ] ] ]",
                "targets": [
                  "∃x[[card(x)=4 ∧ ∗toothbrush(x)] ∧ ∗own(mx⊕(l⊕pt),x)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch11.1-dav",
      "title": "Davidsonian Event Semantics (§11.1–11.2)",
      "content": {
        "compose": 1,
        "id": "ch11-dav",
        "title": "Davidsonian Event Semantics (§11.1–11.2)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q",
            "v": "e"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "runs",
              "run"
            ],
            "denotation": "Lx.Le.run(e,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.Le.sing(e,x)"
          },
          {
            "words": [
              "sleeps",
              "sleep"
            ],
            "denotation": "Lx.Le.sleep(e,x)"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Ly.Lx.Le.love(e,x,y)"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Ly.Lx.Le.fear(e,x,y)"
          },
          {
            "words": [
              "helps",
              "help"
            ],
            "denotation": "Ly.Lx.Le.help(e,x,y)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "orc"
            ],
            "denotation": "Lx.orc(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "horse"
            ],
            "denotation": "Lx.horse(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LP.ιx.P(x)"
          },
          {
            "words": [
              "'s",
              "POSS"
            ],
            "denotation": "LP.Lx.ιy[poss(x,y) & P(y)]"
          },
          {
            "words": [
              "who",
              "that"
            ],
            "denotation": "LP.P"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Intransitive verbs",
            "instructions": "The subject saturates the individual argument, leaving an event predicate ⟨v,t⟩. Apply EC at the root to existentially bind the event and reach type t.",
            "items": [
              {
                "sentence": "Frodo runs.",
                "tree": "[.S [.DP Frodo ] [.VP runs ] ]",
                "targets": [
                  "∃e[run(e,f)]"
                ]
              },
              {
                "sentence": "Gandalf sings.",
                "tree": "[.S [.DP Gandalf ] [.VP sings ] ]",
                "targets": [
                  "∃e[sing(e,g)]"
                ]
              },
              {
                "sentence": "Sam sleeps.",
                "tree": "[.S [.DP Sam ] [.VP sleeps ] ]",
                "targets": [
                  "∃e[sleep(e,s)]"
                ]
              }
            ]
          },
          {
            "title": "B. Transitive verbs",
            "instructions": "A Davidsonian transitive verb is ⟨e,⟨e,⟨v,t⟩⟩⟩. After both participants apply, EC binds the event.",
            "items": [
              {
                "sentence": "Frodo loves Sam.",
                "tree": "[.S [.DP Frodo ] [.VP [.V loves ] [.DP Sam ] ] ]",
                "targets": [
                  "∃e[love(e,f,s)]"
                ]
              },
              {
                "sentence": "Aragorn helps Boromir.",
                "tree": "[.S [.DP Aragorn ] [.VP [.V helps ] [.DP Boromir ] ] ]",
                "targets": [
                  "∃e[help(e,a,b)]"
                ]
              },
              {
                "sentence": "Gimli fears Sauron.",
                "tree": "[.S [.DP Gimli ] [.VP [.V fears ] [.DP Sauron ] ] ]",
                "targets": [
                  "∃e[fear(e,m,n)]"
                ]
              }
            ]
          },
          {
            "title": "C. Quantified subjects",
            "instructions": "A quantified subject can't fill the verb's ⟨e,…⟩ slot directly. Quantifier-raise the subject DP, leaving a type-e trace; the trace saturates the verb, then apply EC LOW (at the ⟨v,t⟩ node) so the event closes below the quantifier. Predicate Abstraction over the trace gives an ⟨e,t⟩ predicate the quantifier binds — yielding the narrow-event reading where each individual has its own event.",
            "items": [
              {
                "sentence": "Every hobbit runs.",
                "tree": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP runs ] ]",
                "targets": [
                  "∀x[hobbit(x) → ∃e[run(e,x)]]"
                ]
              },
              {
                "sentence": "Some elf fears Sauron.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP [.V fears ] [.DP Sauron ] ] ]",
                "targets": [
                  "∃x[elf(x) ∧ ∃e[fear(e,x,n)]]"
                ]
              },
              {
                "sentence": "No dwarf helps Frodo.",
                "tree": "[.S [.DP [.D no ] [.NP dwarf ] ] [.VP [.V helps ] [.DP Frodo ] ] ]",
                "targets": [
                  "¬∃x[dwarf(x) ∧ ∃e[help(e,x,f)]]"
                ]
              }
            ]
          },
          {
            "title": "D. Quantified objects",
            "instructions": "A quantified object can't fill the verb's object slot directly either. Quantifier-raise the object DP, leaving a type-e trace; the subject and trace saturate the verb, apply EC LOW at the ⟨v,t⟩ node, then Predicate Abstraction lets the object quantifier bind.",
            "items": [
              {
                "sentence": "Frodo loves every elf.",
                "tree": "[.S [.DP Frodo ] [.VP [.V loves ] [.DP [.D every ] [.NP elf ] ] ] ]",
                "targets": [
                  "∀x[elf(x) → ∃e[love(e,f,x)]]"
                ]
              },
              {
                "sentence": "Aragorn helps some dwarf.",
                "tree": "[.S [.DP Aragorn ] [.VP [.V helps ] [.DP [.D some ] [.NP dwarf ] ] ] ]",
                "targets": [
                  "∃x[dwarf(x) ∧ ∃e[help(e,a,x)]]"
                ]
              },
              {
                "sentence": "Gandalf fears no orc.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V fears ] [.DP [.D no ] [.NP orc ] ] ] ]",
                "targets": [
                  "¬∃x[orc(x) ∧ ∃e[fear(e,g,x)]]"
                ]
              }
            ]
          },
          {
            "title": "E. Two quantifiers",
            "instructions": "With quantifiers in both positions, raise both DPs. The order of raising fixes the scope; EC stays lowest, so the event always closes under both quantifiers. Derive each target reading.",
            "items": [
              {
                "sentence": "Every hobbit loves some elf.",
                "tree": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.V loves ] [.DP [.D some ] [.NP elf ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[hobbit(x) → ∃y[elf(y) ∧ ∃e[love(e,x,y)]]]",
                  "some > every (inverse): ∃y[elf(y) ∧ ∀x[hobbit(x) → ∃e[love(e,x,y)]]]"
                ]
              },
              {
                "sentence": "Some dwarf helps every hobbit.",
                "tree": "[.S [.DP [.D some ] [.NP dwarf ] ] [.VP [.V helps ] [.DP [.D every ] [.NP hobbit ] ] ] ]",
                "targets": [
                  "some > every (linear): ∃x[dwarf(x) ∧ ∀y[hobbit(y) → ∃e[help(e,x,y)]]]",
                  "every > some (inverse): ∀y[hobbit(y) → ∃x[dwarf(x) ∧ ∃e[help(e,x,y)]]]"
                ]
              },
              {
                "sentence": "Every dwarf fears some orc.",
                "tree": "[.S [.DP [.D every ] [.NP dwarf ] ] [.VP [.V fears ] [.DP [.D some ] [.NP orc ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[dwarf(x) → ∃y[orc(y) ∧ ∃e[fear(e,x,y)]]]",
                  "some > every (inverse): ∃y[orc(y) ∧ ∀x[dwarf(x) → ∃e[fear(e,x,y)]]]"
                ]
              }
            ]
          },
          {
            "title": "F. Complex arguments",
            "instructions": "A definite, possessive or relative-clause DP is type e, so it slots straight into the verb's individual argument. \"the orc\" = ιx[orc(x)]; \"Sam's horse\" = ιy[poss(s,y) ∧ horse(y)]; in the relative clause the trace's event closes by EC and Predicate Abstraction feeds the ι operator. The matrix event closes last.",
            "items": [
              {
                "sentence": "Aragorn fears the orc.",
                "tree": "[.S [.DP Aragorn ] [.VP [.V fears ] [.DP [.D the ] [.NP orc ] ] ] ]",
                "targets": [
                  "∃e[fear(e,a,ιx[orc(x)])]"
                ]
              },
              {
                "sentence": "Frodo loves Sam's horse.",
                "tree": "[.S [.DP Frodo ] [.VP [.V loves ] [.DP [.DP Sam ] [.D1 [.D 's ] [.NP horse ] ] ] ] ]",
                "targets": [
                  "∃e[love(e,f,ιy[poss(s,y) ∧ horse(y)])]"
                ]
              },
              {
                "sentence": "Gandalf helps the hobbit who sleeps.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V helps ] [.DP [.D the ] [.NP [.NP hobbit ] [.CP [.C who ] [.LP 1 [.S [.DP t1 ] [.VP sleeps ] ] ] ] ] ] ] ]",
                "targets": [
                  "∃e[help(e,g,ιx[hobbit(x) ∧ ∃e'[sleep(e',x)]])]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch11.3-neodav",
      "title": "Neo-Davidsonian Event Semantics (§11.3)",
      "content": {
        "compose": 1,
        "id": "ch11-neodav",
        "title": "Neo-Davidsonian Event Semantics (§11.3)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr x1 x2"
          },
          "variables": {
            "e": "x y z",
            "et": "X Y Z P Q R F G H",
            "t": "p q",
            "v": "e"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "runE"
            ],
            "denotation": "Le.run(e)"
          },
          {
            "words": [
              "singE"
            ],
            "denotation": "Le.sing(e)"
          },
          {
            "words": [
              "sleepE"
            ],
            "denotation": "Le.sleep(e)"
          },
          {
            "words": [
              "loveE"
            ],
            "denotation": "Le.love(e)"
          },
          {
            "words": [
              "helpE"
            ],
            "denotation": "Le.help(e)"
          },
          {
            "words": [
              "fearE"
            ],
            "denotation": "Le.fear(e)"
          },
          {
            "words": [
              "Agent"
            ],
            "denotation": "Lx.Le.agent(e,x)"
          },
          {
            "words": [
              "Theme"
            ],
            "denotation": "Lx.Le.theme(e,x)"
          },
          {
            "words": [
              "slowly"
            ],
            "denotation": "Le.slow(e)"
          },
          {
            "words": [
              "quickly"
            ],
            "denotation": "Le.quick(e)"
          },
          {
            "words": [
              "in"
            ],
            "denotation": "Ly.Le.in(e,y)"
          },
          {
            "words": [
              "Mordor"
            ],
            "denotation": "o"
          },
          {
            "words": [
              "horse"
            ],
            "denotation": "Lx.horse(x)"
          },
          {
            "words": [
              "'s",
              "POSS"
            ],
            "denotation": "LP.Lx.ιy[poss(x,y) & P(y)]"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "orc"
            ],
            "denotation": "Lx.orc(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Intransitive verbs",
            "instructions": "The Agent head combines with the subject to give λe.agent(e,f). Predicate Modification conjoins it with the verb's event predicate; EC binds the event.",
            "items": [
              {
                "sentence": "Frodo runs.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP runE ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ run(e)]"
                ]
              },
              {
                "sentence": "Gandalf sings.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP singE ] ]",
                "targets": [
                  "∃e[agent(e,g) ∧ sing(e)]"
                ]
              },
              {
                "sentence": "Sam sleeps.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Sam ] ] [.VP sleepE ] ]",
                "targets": [
                  "∃e[agent(e,s) ∧ sleep(e)]"
                ]
              }
            ]
          },
          {
            "title": "B. Transitive verbs",
            "instructions": "The Theme head introduces the object as λe.theme(e,x). The verb, its Theme phrase and the Agent phrase are all event predicates combined by Predicate Modification, then closed by EC.",
            "items": [
              {
                "sentence": "Frodo loves Sam.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP Sam ] ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ love(e) ∧ theme(e,s)]"
                ]
              },
              {
                "sentence": "Aragorn helps Boromir.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Aragorn ] ] [.VP [.VP helpE ] [.ThemeP [.Theme Theme ] [.DP Boromir ] ] ] ]",
                "targets": [
                  "∃e[agent(e,a) ∧ help(e) ∧ theme(e,b)]"
                ]
              },
              {
                "sentence": "Gimli fears Sauron.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gimli ] ] [.VP [.VP fearE ] [.ThemeP [.Theme Theme ] [.DP Sauron ] ] ] ]",
                "targets": [
                  "∃e[agent(e,m) ∧ fear(e) ∧ theme(e,n)]"
                ]
              }
            ]
          },
          {
            "title": "C. Adverbial modification",
            "instructions": "A manner adverb is one more event predicate ⟨v,t⟩. It joins the others by Predicate Modification before Existential Closure.",
            "items": [
              {
                "sentence": "Frodo runs quickly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.Adv quickly ] [.VP runE ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ run(e) ∧ quick(e)]"
                ]
              },
              {
                "sentence": "Gandalf sings slowly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP [.Adv slowly ] [.VP singE ] ] ]",
                "targets": [
                  "∃e[agent(e,g) ∧ sing(e) ∧ slow(e)]"
                ]
              },
              {
                "sentence": "Frodo loves Sam slowly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.Adv slowly ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP Sam ] ] ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ love(e) ∧ theme(e,s) ∧ slow(e)]"
                ]
              }
            ]
          },
          {
            "title": "D. Quantified subjects",
            "instructions": "The Agent head needs a type-e subject, so a quantified subject must raise. Quantifier-raise the subject DP, leaving a trace; build the full event predicate by Predicate Modification, then apply EC LOW (at the ⟨v,t⟩ node) so the event closes below the quantifier. Predicate Abstraction over the trace gives an ⟨e,t⟩ predicate the quantifier binds.",
            "items": [
              {
                "sentence": "Every hobbit runs.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D every ] [.NP hobbit ] ] ] [.VP runE ] ]",
                "targets": [
                  "∀x[hobbit(x) → ∃e[agent(e,x) ∧ run(e)]]"
                ]
              },
              {
                "sentence": "Some elf helps Frodo.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D some ] [.NP elf ] ] ] [.VP [.VP helpE ] [.ThemeP [.Theme Theme ] [.DP Frodo ] ] ] ]",
                "targets": [
                  "∃x[elf(x) ∧ ∃e[agent(e,x) ∧ help(e) ∧ theme(e,f)]]"
                ]
              },
              {
                "sentence": "No brave dwarf runs.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D no ] [.NP [.AP brave ] [.NP dwarf ] ] ] ] [.VP runE ] ]",
                "targets": [
                  "¬∃x[brave(x) ∧ dwarf(x) ∧ ∃e[agent(e,x) ∧ run(e)]]"
                ]
              }
            ]
          },
          {
            "title": "E. Quantified objects",
            "instructions": "A quantified object enters via the Theme head, which needs a type-e argument. Quantifier-raise the object DP, leaving a trace; build the event predicate by Predicate Modification, apply EC LOW, then Predicate Abstraction lets the object quantifier bind.",
            "items": [
              {
                "sentence": "Frodo loves every elf.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP [.D every ] [.NP elf ] ] ] ] ]",
                "targets": [
                  "∀x[elf(x) → ∃e[agent(e,f) ∧ love(e) ∧ theme(e,x)]]"
                ]
              },
              {
                "sentence": "Aragorn helps some brave dwarf.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Aragorn ] ] [.VP [.VP helpE ] [.ThemeP [.Theme Theme ] [.DP [.D some ] [.NP [.AP brave ] [.NP dwarf ] ] ] ] ] ]",
                "targets": [
                  "∃x[brave(x) ∧ dwarf(x) ∧ ∃e[agent(e,a) ∧ help(e) ∧ theme(e,x)]]"
                ]
              },
              {
                "sentence": "Frodo helps no brave orc.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP helpE ] [.ThemeP [.Theme Theme ] [.DP [.D no ] [.NP [.AP brave ] [.NP orc ] ] ] ] ] ]",
                "targets": [
                  "¬∃x[brave(x) ∧ orc(x) ∧ ∃e[agent(e,f) ∧ help(e) ∧ theme(e,x)]]"
                ]
              }
            ]
          },
          {
            "title": "F. Two quantifiers",
            "instructions": "With quantifiers in both positions, raise both DPs. The order of raising fixes the scope; EC stays lowest, so the event closes under both quantifiers. Derive each target reading.",
            "items": [
              {
                "sentence": "Every hobbit loves some elf.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D every ] [.NP hobbit ] ] ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP [.D some ] [.NP elf ] ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[hobbit(x) → ∃y[elf(y) ∧ ∃e[agent(e,x) ∧ love(e) ∧ theme(e,y)]]]",
                  "some > every (inverse): ∃y[elf(y) ∧ ∀x[hobbit(x) → ∃e[agent(e,x) ∧ love(e) ∧ theme(e,y)]]]"
                ]
              },
              {
                "sentence": "Some dwarf helps every hobbit.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D some ] [.NP dwarf ] ] ] [.VP [.VP helpE ] [.ThemeP [.Theme Theme ] [.DP [.D every ] [.NP hobbit ] ] ] ] ]",
                "targets": [
                  "some > every (linear): ∃x[dwarf(x) ∧ ∀y[hobbit(y) → ∃e[agent(e,x) ∧ help(e) ∧ theme(e,y)]]]",
                  "every > some (inverse): ∀y[hobbit(y) → ∃x[dwarf(x) ∧ ∃e[agent(e,x) ∧ help(e) ∧ theme(e,y)]]]"
                ]
              },
              {
                "sentence": "Every brave hobbit loves some elf.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D every ] [.NP [.AP brave ] [.NP hobbit ] ] ] ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP [.D some ] [.NP elf ] ] ] ] ]",
                "targets": [
                  "every > some (linear): ∀x[brave(x) ∧ hobbit(x) → ∃y[elf(y) ∧ ∃e[agent(e,x) ∧ love(e) ∧ theme(e,y)]]]",
                  "some > every (inverse): ∃y[elf(y) ∧ ∀x[brave(x) ∧ hobbit(x) → ∃e[agent(e,x) ∧ love(e) ∧ theme(e,y)]]]"
                ]
              }
            ]
          },
          {
            "title": "G. Locative modifiers & complex arguments",
            "instructions": "A locative PP is just one more event predicate ⟨v,t⟩: \"in Mordor\" = λe.in(e,o), conjoined by Predicate Modification. A possessive object (type e) enters through the Theme head. EC closes the event last.",
            "items": [
              {
                "sentence": "Frodo runs in Mordor.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP runE ] [.PP [.P in ] [.DP Mordor ] ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ run(e) ∧ in(e,o)]"
                ]
              },
              {
                "sentence": "Aragorn loves Sam's horse.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Aragorn ] ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP [.DP Sam ] [.D1 [.D 's ] [.NP horse ] ] ] ] ] ]",
                "targets": [
                  "∃e[agent(e,a) ∧ love(e) ∧ theme(e,ιy[poss(s,y) ∧ horse(y)])]"
                ]
              },
              {
                "sentence": "Frodo loves Sam in Mordor.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP Sam ] ] ] [.PP [.P in ] [.DP Mordor ] ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ love(e) ∧ theme(e,s) ∧ in(e,o)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch11.4-continuation",
      "title": "Event Quantifiers — the Continuation Approach (§11.4–11.6)",
      "content": {
        "compose": 1,
        "id": "ch11-cont",
        "title": "Event Quantifiers — the Continuation Approach (§11.4–11.6)",
        "subtitle": "Champollion's verbs-as-event-quantifiers fragment: Quantifier Closure, in-situ quantifiers, conjunction & negation",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w bi st pi tm el sr mr"
          },
          "variables": {
            "e": "x y z",
            "v": "e",
            "<v,t>": "k r",
            "<<v,t>,t>": "V W",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Mordor"
            ],
            "denotation": "o"
          },
          {
            "words": [
              "runs",
              "run"
            ],
            "denotation": "Lk.Ee[run(e) & k(e)]"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lk.Ee[sing(e) & k(e)]"
          },
          {
            "words": [
              "sleeps",
              "sleep"
            ],
            "denotation": "Lk.Ee[sleep(e) & k(e)]"
          },
          {
            "words": [
              "smokes",
              "smoked",
              "smoke"
            ],
            "denotation": "Lk.Ee[smoke(e) & k(e)]"
          },
          {
            "words": [
              "drinks",
              "drank",
              "drink"
            ],
            "denotation": "Lk.Ee[drink(e) & k(e)]"
          },
          {
            "words": [
              "barks",
              "bark"
            ],
            "denotation": "Lk.Ee[bark(e) & k(e)]"
          },
          {
            "words": [
              "loves",
              "love"
            ],
            "denotation": "Lk.Ee[love(e) & k(e)]"
          },
          {
            "words": [
              "helps",
              "help"
            ],
            "denotation": "Lk.Ee[help(e) & k(e)]"
          },
          {
            "words": [
              "fears",
              "fear"
            ],
            "denotation": "Lk.Ee[fear(e) & k(e)]"
          },
          {
            "words": [
              "praises",
              "praise"
            ],
            "denotation": "Lk.Ee[praise(e) & k(e)]"
          },
          {
            "words": [
              "Agent"
            ],
            "denotation": "Lx.LV.Lk.V(Le[agent(e,x) & k(e)])"
          },
          {
            "words": [
              "Theme"
            ],
            "denotation": "Lx.LV.Lk.V(Le[theme(e,x) & k(e)])"
          },
          {
            "words": [
              "slowly"
            ],
            "denotation": "LV.Lk.V(Le[slow(e) & k(e)])"
          },
          {
            "words": [
              "quickly"
            ],
            "denotation": "LV.Lk.V(Le[quick(e) & k(e)])"
          },
          {
            "words": [
              "loudly"
            ],
            "denotation": "LV.Lk.V(Le[loud(e) & k(e)])"
          },
          {
            "words": [
              "in"
            ],
            "denotation": "Ly.LV.Lk.V(Le[in(e,y) & k(e)])"
          },
          {
            "words": [
              "did"
            ],
            "denotation": "LV.Lk.V(k)"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "LV.Lk.~V(k)"
          },
          {
            "words": [
              "andVP",
              "and"
            ],
            "denotation": "LW.LV.Lk.(V(k) & W(k))"
          },
          {
            "words": [
              "orVP",
              "or"
            ],
            "denotation": "LW.LV.Lk.(V(k) ∨ W(k))"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "no",
              "No"
            ],
            "denotation": "LX.LY.~Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "dog"
            ],
            "denotation": "Lx.dog(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "dwarf"
            ],
            "denotation": "Lx.dwarf(x)"
          },
          {
            "words": [
              "orc"
            ],
            "denotation": "Lx.orc(x)"
          },
          {
            "words": [
              "brave"
            ],
            "denotation": "Lx.brave(x)"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": false,
            "predicateAbstraction": false
          },
          "typeShifts": [
            "qc",
            "raiseTheta"
          ],
          "quantifierRaising": false
        },
        "exercises": [
          {
            "title": "A. Intransitives & Quantifier Closure",
            "instructions": "On Champollion's approach a verb is not a predicate of events but a generalized quantifier over them: barks ↝ λk.∃e[bark(e) ∧ k(e)], type ⟨⟨v,t⟩,t⟩. The variable k is a CONTINUATION — it stands for the rest of the derivation. The Agent head threads its participant into k by Function Application (no Predicate Modification here). The root comes out at type ⟨⟨v,t⟩,t⟩; close it with the Quantifier Closure type-shift, which feeds it the trivial continuation λe.⊤ (the set of all events) and returns a truth value.",
            "items": [
              {
                "sentence": "Frodo runs.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP runs ] ]",
                "targets": [
                  "∃e[run(e) ∧ agent(e,f)]"
                ]
              },
              {
                "sentence": "Gandalf sings.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP sings ] ]",
                "targets": [
                  "∃e[sing(e) ∧ agent(e,g)]"
                ]
              },
              {
                "sentence": "Sam sleeps.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Sam ] ] [.VP sleeps ] ]",
                "targets": [
                  "∃e[sleep(e) ∧ agent(e,s)]"
                ]
              }
            ]
          },
          {
            "title": "B. Transitive verbs",
            "instructions": "The object enters through the Theme head, which threads it into the same continuation k by Function Application. Verb, ThemeP and AgentP are all combined by FA — none of them changes the ⟨⟨v,t⟩,t⟩ type of the verbal projection. Quantifier Closure at the root binds the event.",
            "items": [
              {
                "sentence": "Frodo loves Sam.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP loves ] [.ThemeP [.Theme Theme ] [.DP Sam ] ] ] ]",
                "targets": [
                  "∃e[love(e) ∧ theme(e,s) ∧ agent(e,f)]"
                ]
              },
              {
                "sentence": "Aragorn helps Boromir.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Aragorn ] ] [.VP [.VP helps ] [.ThemeP [.Theme Theme ] [.DP Boromir ] ] ] ]",
                "targets": [
                  "∃e[help(e) ∧ theme(e,b) ∧ agent(e,a)]"
                ]
              },
              {
                "sentence": "Gimli fears Sauron.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gimli ] ] [.VP [.VP fears ] [.ThemeP [.Theme Theme ] [.DP Sauron ] ] ] ]",
                "targets": [
                  "∃e[fear(e) ∧ theme(e,n) ∧ agent(e,m)]"
                ]
              }
            ]
          },
          {
            "title": "C. Adverbs & locatives as continuized modifiers",
            "instructions": "An adjunct now has exactly the same type as the Agent and Theme heads: slowly ↝ λVλk.V(λe[slow(e) ∧ k(e)]), type ⟨⟨⟨v,t⟩,t⟩,⟨⟨v,t⟩,t⟩⟩. It combines with the VP by Function Application and adds one more conjunct under the event quantifier. A locative PP works the same way: in Mordor ↝ λVλk.V(λe[in(e,o) ∧ k(e)]).",
            "items": [
              {
                "sentence": "Frodo runs slowly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.AdvP slowly ] [.VP runs ] ] ]",
                "targets": [
                  "∃e[run(e) ∧ slow(e) ∧ agent(e,f)]"
                ]
              },
              {
                "sentence": "Gandalf sings loudly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP [.AdvP loudly ] [.VP sings ] ] ]",
                "targets": [
                  "∃e[sing(e) ∧ loud(e) ∧ agent(e,g)]"
                ]
              },
              {
                "sentence": "Frodo runs in Mordor.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP runs ] [.PP [.P in ] [.DP Mordor ] ] ] ]",
                "targets": [
                  "∃e[run(e) ∧ in(e,o) ∧ agent(e,f)]"
                ]
              }
            ]
          },
          {
            "title": "D. Quantifiers in situ — RaiseO on the θ-head",
            "instructions": "Because the event quantifier sits inside the verb, a quantificational DP already takes syntactic scope over it — so we do NOT need Quantifier Raising. Instead, raise the θ-head: the RaiseO (θ-head) type-shift turns Agent (or Theme) from ⟨e,…⟩ into ⟨⟨⟨e,t⟩,t⟩,…⟩, so a generalized quantifier can fill the participant slot directly. Apply the shift to the θ-head, combine with the quantifier DP by FA, finish the clause, then close with Quantifier Closure. Note the event quantifier stays trapped below the DP quantifier — the only available reading.",
            "items": [
              {
                "sentence": "No dog barks.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D no ] [.NP dog ] ] ] [.VP barks ] ]",
                "targets": [
                  "¬∃x[dog(x) ∧ ∃e[bark(e) ∧ agent(e,x)]]"
                ]
              },
              {
                "sentence": "Every hobbit sings.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP [.D every ] [.NP hobbit ] ] ] [.VP sings ] ]",
                "targets": [
                  "∀x[hobbit(x) → ∃e[sing(e) ∧ agent(e,x)]]"
                ]
              },
              {
                "sentence": "Frodo loves every elf.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP loves ] [.ThemeP [.Theme Theme ] [.DP [.D every ] [.NP elf ] ] ] ] ]",
                "targets": [
                  "∀x[elf(x) → ∃e[love(e) ∧ theme(e,x) ∧ agent(e,f)]]"
                ]
              }
            ]
          },
          {
            "title": "E. Conjunction (§11.5)",
            "instructions": "VP-and on the continuation approach is andVP ↝ λW.λV.λk.[V(k) ∧ W(k)]: each conjunct is handed its OWN copy of the continuation, so each gets its own event quantifier. This is exactly what we want — \"Frodo smoked and drank\" describes two events, not one, so the contradictory modifiers in the second item attach to different events and no contradiction arises (textbook Exercise 3).",
            "items": [
              {
                "sentence": "Frodo smoked and drank.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP smoked ] [.CoordP [.Coord andVP ] [.VP drank ] ] ] ]",
                "targets": [
                  "∃e[smoke(e) ∧ agent(e,f)] ∧ ∃e[drink(e) ∧ agent(e,f)]"
                ]
              },
              {
                "sentence": "Frodo smoked slowly and drank quickly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP [.AdvP slowly ] [.VP smoked ] ] [.CoordP [.Coord andVP ] [.VP [.AdvP quickly ] [.VP drank ] ] ] ] ]",
                "targets": [
                  "∃e[smoke(e) ∧ slow(e) ∧ agent(e,f)] ∧ ∃e[drink(e) ∧ quick(e) ∧ agent(e,f)]"
                ]
              }
            ]
          },
          {
            "title": "F. Negation (§11.6)",
            "instructions": "Sentential negation is not ↝ λV.λk.¬V(k): it negates the whole event quantifier, so the existential stays trapped inside the negation and we get \"there is no such event\" — the only attested reading. (Aux did ↝ λV.λk.V(k) is the identity.) Contrast this with the event-predicate approach of §11.3, which can only produce the far-too-weak \"there is an event that isn't a barking.\"",
            "items": [
              {
                "sentence": "Sam didn't sleep.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Sam ] ] [.VP [.Aux did ] [.VP [.Neg not ] [.VP sleeps ] ] ] ]",
                "targets": [
                  "¬∃e[sleep(e) ∧ agent(e,s)]"
                ]
              },
              {
                "sentence": "Frodo didn't love Sam.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.Aux did ] [.VP [.Neg not ] [.VP [.VP loves ] [.ThemeP [.Theme Theme ] [.DP Sam ] ] ] ] ] ]",
                "targets": [
                  "¬∃e[love(e) ∧ theme(e,s) ∧ agent(e,f)]"
                ]
              },
              {
                "sentence": "Gandalf didn't sing loudly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP [.Aux did ] [.VP [.Neg not ] [.VP [.AdvP loudly ] [.VP sings ] ] ] ] ]",
                "targets": [
                  "¬∃e[sing(e) ∧ loud(e) ∧ agent(e,g)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch11.5-conjneg",
      "title": "Conjunction & Negation in Event Semantics (§11.5–11.6)",
      "content": {
        "compose": 1,
        "id": "ch11-conjneg",
        "title": "Conjunction & Negation in Event Semantics (§11.5–11.6)",
        "subtitle": "The event-predicate fragment of §11.3, applied to VP coordination and sentential negation — and the diagnostics that motivate the continuation approach.",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w sp"
          },
          "variables": {
            "e": "x y z",
            "v": "e",
            "<v,t>": "P Q R",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Spot"
            ],
            "denotation": "sp"
          },
          {
            "words": [
              "runE"
            ],
            "denotation": "Le.run(e)"
          },
          {
            "words": [
              "singE"
            ],
            "denotation": "Le.sing(e)"
          },
          {
            "words": [
              "sleepE"
            ],
            "denotation": "Le.sleep(e)"
          },
          {
            "words": [
              "smokeE"
            ],
            "denotation": "Le.smoke(e)"
          },
          {
            "words": [
              "drinkE"
            ],
            "denotation": "Le.drink(e)"
          },
          {
            "words": [
              "barkE"
            ],
            "denotation": "Le.bark(e)"
          },
          {
            "words": [
              "loveE"
            ],
            "denotation": "Le.love(e)"
          },
          {
            "words": [
              "helpE"
            ],
            "denotation": "Le.help(e)"
          },
          {
            "words": [
              "fearE"
            ],
            "denotation": "Le.fear(e)"
          },
          {
            "words": [
              "Agent"
            ],
            "denotation": "Lx.Le.agent(e,x)"
          },
          {
            "words": [
              "Theme"
            ],
            "denotation": "Lx.Le.theme(e,x)"
          },
          {
            "words": [
              "slowly"
            ],
            "denotation": "Le.slow(e)"
          },
          {
            "words": [
              "quickly"
            ],
            "denotation": "Le.quick(e)"
          },
          {
            "words": [
              "loudly"
            ],
            "denotation": "Le.loud(e)"
          },
          {
            "words": [
              "andVP",
              "and"
            ],
            "denotation": "LQ.LP.Le.[P(e) & Q(e)]"
          },
          {
            "words": [
              "notVP"
            ],
            "denotation": "LP.Le.~P(e)"
          },
          {
            "words": [
              "not"
            ],
            "denotation": "Lp.~p"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": false
          },
          "typeShifts": [
            "ec-v"
          ],
          "quantifierRaising": false
        },
        "exercises": [
          {
            "title": "A. VP conjunction — one shared event",
            "instructions": "On the event-predicate approach (§11.3) a VP is a set of events ⟨v,t⟩. Conjunction follows the Partee & Rooth schema instantiated at that type: andVP ↝ λQ.λP.λe.[P(e) ∧ Q(e)], type ⟨⟨v,t⟩,⟨⟨v,t⟩,⟨v,t⟩⟩⟩. The Coord head applies to the right conjunct by FA, then to the left conjunct by FA, giving one event predicate. The Agent head joins by Predicate Modification and Existential Closure binds the single event. Note what this predicts: ONE event that is both a smoking and a drinking.",
            "items": [
              {
                "sentence": "Frodo smoked and drank.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP smokeE ] [.CoordP [.Coord andVP ] [.VP drinkE ] ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ smoke(e) ∧ drink(e)]"
                ]
              },
              {
                "sentence": "Gandalf sang and slept.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP [.VP singE ] [.CoordP [.Coord andVP ] [.VP sleepE ] ] ] ]",
                "targets": [
                  "∃e[agent(e,g) ∧ sing(e) ∧ sleep(e)]"
                ]
              },
              {
                "sentence": "Sam ran and sang.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Sam ] ] [.VP [.VP runE ] [.CoordP [.Coord andVP ] [.VP singE ] ] ] ]",
                "targets": [
                  "∃e[agent(e,s) ∧ run(e) ∧ sing(e)]"
                ]
              }
            ]
          },
          {
            "title": "B. Why one event is too strong",
            "instructions": "Add a manner adverb to each conjunct. Because the single-event entry forces both predicates onto the SAME event, the derivation makes that one event both slow and quick — a near-contradiction. This is the textbook's argument (Exercise 3) that VP-and cannot denote a single shared event; the continuation fragment of §11.4 fixes it by handing each conjunct its own event quantifier.",
            "items": [
              {
                "sentence": "Frodo smoked slowly and drank quickly.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP [.AdvP slowly ] [.VP smokeE ] ] [.CoordP [.Coord andVP ] [.VP [.AdvP quickly ] [.VP drinkE ] ] ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ slow(e) ∧ smoke(e) ∧ quick(e) ∧ drink(e)]"
                ],
                "note": "One event e is forced to be both slow and quick — the wrong prediction. Contrast with the two-event reading the continuation approach derives (§11.4, group E)."
              }
            ]
          },
          {
            "title": "C. Negation the naïve way — and why it is too weak",
            "instructions": "Suppose we negate inside the VP with truth-functional negation: notVP ↝ λP.λe.¬P(e), type ⟨⟨v,t⟩,⟨v,t⟩⟩. It maps the verb's event set to its complement, then the Agent head and Existential Closure apply as usual. The result asserts only that SOME event by the subject is not a barking — true if Spot did anything at all instead of, or in addition to, barking. This is the disastrously weak reading the textbook rejects (tree 70).",
            "items": [
              {
                "sentence": "Spot didn't bark.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Spot ] ] [.VP [.Neg notVP ] [.VP barkE ] ] ]",
                "targets": [
                  "∃e[agent(e,sp) ∧ ¬bark(e)]"
                ],
                "note": "Too weak: true whenever Spot does anything that is not a barking."
              },
              {
                "sentence": "Frodo didn't sing.",
                "tree": "[.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.Neg notVP ] [.VP singE ] ] ]",
                "targets": [
                  "∃e[agent(e,f) ∧ ¬sing(e)]"
                ],
                "note": "Same problem: any non-singing event by Frodo verifies it."
              }
            ]
          },
          {
            "title": "D. Negation done right — above the event quantifier",
            "instructions": "The attested reading needs negation to scope ABOVE the existential event quantifier. Build the clause down to an event predicate ⟨v,t⟩ (Agent by Predicate Modification), apply Existential Closure FIRST to reach a truth value ∃e[…], and only THEN apply sentential negation not ↝ λp.¬p by Function Application. The result, ¬∃e[…], says there is no such event — exactly what \"Spot didn't bark\" means.",
            "items": [
              {
                "sentence": "Spot didn't bark.",
                "tree": "[.S [.Neg not ] [.S [.AgentP [.Agent Agent ] [.DP Spot ] ] [.VP barkE ] ] ]",
                "targets": [
                  "¬∃e[agent(e,sp) ∧ bark(e)]"
                ]
              },
              {
                "sentence": "Frodo didn't love Sam.",
                "tree": "[.S [.Neg not ] [.S [.AgentP [.Agent Agent ] [.DP Frodo ] ] [.VP [.VP loveE ] [.ThemeP [.Theme Theme ] [.DP Sam ] ] ] ] ]",
                "targets": [
                  "¬∃e[agent(e,f) ∧ love(e) ∧ theme(e,s)]"
                ]
              },
              {
                "sentence": "Gandalf didn't sing.",
                "tree": "[.S [.Neg not ] [.S [.AgentP [.Agent Agent ] [.DP Gandalf ] ] [.VP singE ] ] ]",
                "targets": [
                  "¬∃e[agent(e,g) ∧ sing(e)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch12.1-times",
      "title": "Tense (§12.2.2.4)",
      "content": {
        "compose": 1,
        "id": "ch12-tense",
        "title": "Tense (§12.2.2.4)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w",
            "i": "now dawn dusk noon"
          },
          "variables": {
            "e": "x y z",
            "i": "t t' t'' t1 t2 t3",
            "it": "P Q R",
            "et": "X Y Z",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "now"
            ],
            "denotation": "now"
          },
          {
            "words": [
              "dawn"
            ],
            "denotation": "dawn"
          },
          {
            "words": [
              "dusk"
            ],
            "denotation": "dusk"
          },
          {
            "words": [
              "noon"
            ],
            "denotation": "noon"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.Lt.ride(t,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.Lt.sing(t,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.Lt.rest(t,x)"
          },
          {
            "words": [
              "forges",
              "forge"
            ],
            "denotation": "Ly.Lx.Lt.forge(t,x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.Lt.read(t,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.Lt.guard(t,x,y)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "PFV"
            ],
            "denotation": "LP.Lt.Et'[t'⊆t & P(t')]"
          },
          {
            "words": [
              "PROG"
            ],
            "denotation": "LP.Lt.Et'[t⊆t' & P(t')]"
          },
          {
            "words": [
              "PAST"
            ],
            "denotation": "LP.Lt.[t=t1 & ∂(t1<now) & P(t1)]"
          },
          {
            "words": [
              "PRES"
            ],
            "denotation": "LP.Lt.[t=now & P(t)]"
          },
          {
            "words": [
              "at"
            ],
            "denotation": "Lt.t"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Past tense",
            "instructions": "PAST takes the AspP (a predicate of times ⟨i,t⟩) and returns another ⟨i,t⟩. Its lexical entry is λPλt.[t=t1 ∧ ∂(t1<now) ∧ P(t1)]. Crucially, the pastness condition t1<now sits under the ∂ (‘presupposing that’) operator: PAST does not assert that the reference time is past, it PRESUPPOSES it — just like a gender feature on a pronoun. (If it were asserted, negation could target it, wrongly making ‘Frodo didn’t forge the sword’ true merely because some non-past time exists.) Apply EC at the TenseP root to bind the open time t.",
            "items": [
              {
                "sentence": "Frodo forged the sword.",
                "tree": "[.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ forge(t',f,ιz[sword(z)])]]"
                ]
              },
              {
                "sentence": "Gandalf read the map.",
                "tree": "[.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ read(t',g,ιz[map(z)])]]"
                ]
              }
            ]
          },
          {
            "title": "B. Present tense",
            "instructions": "PRES anchors the reference time to the speech time now. With progressive aspect, the event time properly includes now, so the event is in progress at the moment of speech. Close the open time with EC.",
            "items": [
              {
                "sentence": "Frodo is forging the sword.",
                "tree": "[.TenseP [.Tense PRES ] [.AspP [.Asp PROG ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t⊆t' ∧ forge(t',f,ιz[sword(z)])]]"
                ]
              },
              {
                "sentence": "Gandalf is reading the map.",
                "tree": "[.TenseP [.Tense PRES ] [.AspP [.Asp PROG ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t⊆t' ∧ read(t',g,ιz[map(z)])]]"
                ]
              }
            ]
          },
          {
            "title": "C. Temporal modifiers",
            "instructions": "A modifier \"at dawn\" denotes a time (dawn, type i); \"at\" = λt.t lets it compose. It saturates the TenseP's open time slot directly by Function Application — so the result is already type t and NO Existential Closure is needed. The free variable t1 is identified with the named time.",
            "items": [
              {
                "sentence": "At dawn, Frodo forged the sword.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ]",
                "targets": [
                  "dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ forge(t',f,ιz[sword(z)])]"
                ]
              },
              {
                "sentence": "At dusk, Gandalf read the map.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] [.PP [.P at ] [.DP dusk ] ] ]",
                "targets": [
                  "dusk=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ read(t',g,ιz[map(z)])]"
                ]
              }
            ]
          },
          {
            "title": "D. Past progressive (no completion inference)",
            "instructions": "Swap PFV for PROG under the past tense. PROG ⇝ λPλt.∃t'[t⊆t' ∧ P(t')] makes the reference time t fall INSIDE the event time t', so the event need not have finished by the reference time. With ‘at dawn’ fixing t1, the result is type t (no EC). Compare with C: the perfective there put the event time inside the reference time (completion); here the reference time is inside the event time (in progress) — so this carries no completion inference. (Textbook Exercise 4.)",
            "items": [
              {
                "sentence": "At dawn, Frodo was forging the sword.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PROG ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ]",
                "targets": [
                  "dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t1⊆t' ∧ forge(t',f,ιz[sword(z)])]"
                ]
              },
              {
                "sentence": "At dusk, Gandalf was reading the map.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PROG ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] [.PP [.P at ] [.DP dusk ] ] ]",
                "targets": [
                  "dusk=t1 ∧ ∂(t1<now) ∧ ∃t'[t1⊆t' ∧ read(t',g,ιz[map(z)])]"
                ]
              }
            ]
          },
          {
            "title": "E. Simple present with perfective",
            "instructions": "The simple present of a dynamic verb combines PRES with PFV. PRES sets t=now; PFV requires an event time t' contained in now. Since the speech time now is treated as a mere instant, the event must fit entirely within an instant — which is why the English simple present is odd for an event happening right now (‘#Frodo forges the sword’ as a play-by-play) and instead gets a habitual reading. Close the open time with EC. (Textbook Exercise 6.)",
            "items": [
              {
                "sentence": "Frodo forges the sword. (simple present)",
                "tree": "[.TenseP [.Tense PRES ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t'⊆t ∧ forge(t',f,ιz[sword(z)])]]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch12.2-aspects",
      "title": "The Perfect (§12.2.2.5)",
      "content": {
        "compose": 1,
        "id": "ch12-perfect",
        "title": "The Perfect (§12.2.2.5)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w",
            "i": "now dawn dusk noon"
          },
          "variables": {
            "e": "x y z",
            "i": "t t' t'' t1 t2 t3",
            "it": "P Q R",
            "et": "X Y Z",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "now"
            ],
            "denotation": "now"
          },
          {
            "words": [
              "dawn"
            ],
            "denotation": "dawn"
          },
          {
            "words": [
              "dusk"
            ],
            "denotation": "dusk"
          },
          {
            "words": [
              "noon"
            ],
            "denotation": "noon"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.Lt.ride(t,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.Lt.sing(t,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.Lt.rest(t,x)"
          },
          {
            "words": [
              "forges",
              "forge"
            ],
            "denotation": "Ly.Lx.Lt.forge(t,x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.Lt.read(t,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.Lt.guard(t,x,y)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "PFV"
            ],
            "denotation": "LP.Lt.Et'[t'⊆t & P(t')]"
          },
          {
            "words": [
              "PROG"
            ],
            "denotation": "LP.Lt.Et'[t⊆t' & P(t')]"
          },
          {
            "words": [
              "PAST"
            ],
            "denotation": "LP.Lt.[t=t1 & ∂(t1<now) & P(t1)]"
          },
          {
            "words": [
              "PRES"
            ],
            "denotation": "LP.Lt.[t=now & P(t)]"
          },
          {
            "words": [
              "PERFECT"
            ],
            "denotation": "LP.Lt.Et'[t'<t & P(t')]"
          },
          {
            "words": [
              "at"
            ],
            "denotation": "Lt.t"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Past perfect",
            "instructions": "Stack Tense > Perfect > Asp > vP. PFV builds the event time, PERFECT shifts it before the reference time t1, and PAST fixes t1 before now. \"At dawn\" anchors t1, so the result is type t — no EC. Read it as: before dawn, the sword-forging was already complete.",
            "items": [
              {
                "sentence": "At dawn, Frodo had forged the sword.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.PerfP [.Perf PERFECT ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ]",
                "targets": [
                  "dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t'<t1 ∧ ∃t''[t''⊆t' ∧ forge(t'',f,ιz[sword(z)])]]"
                ]
              }
            ]
          },
          {
            "title": "B. Present perfect",
            "instructions": "Present perfect anchors the reference time to now: the event lies before the moment of speech, but is viewed from now. Close the open time with EC.",
            "items": [
              {
                "sentence": "Frodo has forged the sword.",
                "tree": "[.TenseP [.Tense PRES ] [.PerfP [.Perf PERFECT ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t'<t ∧ ∃t''[t''⊆t' ∧ forge(t'',f,ιz[sword(z)])]]]"
                ]
              }
            ]
          },
          {
            "title": "C. Perfect progressive",
            "instructions": "The perfect can stack over the progressive: \"has been reading\". PROG makes the event time properly include its reference time t′, PERFECT puts t′ before now, and PRES anchors to now. Close with EC.",
            "items": [
              {
                "sentence": "Gandalf has been reading the map.",
                "tree": "[.TenseP [.Tense PRES ] [.PerfP [.Perf PERFECT ] [.AspP [.Asp PROG ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t'<t ∧ ∃t''[t'⊆t'' ∧ read(t'',g,ιz[map(z)])]]]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch12.3-future",
      "title": "The Future: WOLL, will & would (§12.2.2.4)",
      "content": {
        "compose": 1,
        "id": "ch12-future",
        "title": "The Future: WOLL, will & would (§12.2.2.4)",
        "subtitle": "The future is not a tense — will = PRES + WOLL, would = PAST + WOLL",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w",
            "i": "now dawn dusk noon"
          },
          "variables": {
            "e": "x y z",
            "i": "t t' t'' t1 t2 t3",
            "it": "P Q R",
            "et": "X Y Z",
            "t": "p q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "now"
            ],
            "denotation": "now"
          },
          {
            "words": [
              "dawn"
            ],
            "denotation": "dawn"
          },
          {
            "words": [
              "dusk"
            ],
            "denotation": "dusk"
          },
          {
            "words": [
              "noon"
            ],
            "denotation": "noon"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.Lt.ride(t,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.Lt.sing(t,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.Lt.rest(t,x)"
          },
          {
            "words": [
              "forges",
              "forge"
            ],
            "denotation": "Ly.Lx.Lt.forge(t,x,y)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.Lt.read(t,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.Lt.guard(t,x,y)"
          },
          {
            "words": [
              "sword"
            ],
            "denotation": "Lx.sword(x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(x)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "PFV"
            ],
            "denotation": "LP.Lt.Et'[t'⊆t & P(t')]"
          },
          {
            "words": [
              "PROG"
            ],
            "denotation": "LP.Lt.Et'[t⊆t' & P(t')]"
          },
          {
            "words": [
              "PAST"
            ],
            "denotation": "LP.Lt.[t=t1 & ∂(t1<now) & P(t1)]"
          },
          {
            "words": [
              "PRES",
              "PRESENT"
            ],
            "denotation": "LP.Lt.[t=now & P(t)]"
          },
          {
            "words": [
              "WOLL"
            ],
            "denotation": "LP.Lt.Et'[t<t' & P(t')]"
          },
          {
            "words": [
              "at"
            ],
            "denotation": "Lt.t"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          },
          "typeShifts": [
            "ec-i"
          ]
        },
        "exercises": [
          {
            "title": "A. WOLL — the future as an aspectual operator",
            "instructions": "Following Abusch (1997), the English future is not a tense. There is an underlying modal-like head WOLL ↝ λP⟨i,t⟩λt.∃t′[t<t′ ∧ P(t′)], which sits in a Mod(al) projection between Tense and Asp: it takes an event-time predicate and shifts the event after the reference time t. Compose vP → ModP (WOLL) → TenseP, then close the open reference time with EC. Here we ignore aspect (no Asp layer), matching the book's Figure 12.2.",
            "items": [
              {
                "sentence": "Frodo will forge the sword. (ignoring aspect)",
                "tree": "[.TenseP [.Tense PRESENT ] [.ModP [.Mod WOLL ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t<t' ∧ forge(t',f,ιz[sword(z)])]]"
                ]
              },
              {
                "sentence": "Gandalf will read the map. (ignoring aspect)",
                "tree": "[.TenseP [.Tense PRESENT ] [.ModP [.Mod WOLL ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t<t' ∧ read(t',g,ιz[map(z)])]]"
                ]
              }
            ]
          },
          {
            "title": "B. will = PRES + WOLL, with perfective aspect",
            "instructions": "will is the PRESENT-tense form of WOLL. Stack Tense > Mod > Asp > vP, so the future composes with viewpoint aspect. PFV puts the event time inside the shifted time t′. This is the book's Exercise 7: I will mail the letter with perfective aspect.",
            "items": [
              {
                "sentence": "Frodo will forge the sword. (perfective)",
                "tree": "[.TenseP [.Tense PRESENT ] [.ModP [.Mod WOLL ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ] ]",
                "targets": [
                  "∃t[t=now ∧ ∃t'[t<t' ∧ ∃t''[t''⊆t' ∧ forge(t'',f,ιz[sword(z)])]]]"
                ]
              }
            ]
          },
          {
            "title": "C. would = PAST + WOLL",
            "instructions": "would is the PAST-tense form of the very same WOLL head — this is the key evidence that the future is not a tense but a modal that combines with either present or past morphology. With PAST, the reference time t1 is presupposed past (∂(t1<now)), and WOLL still shifts the event after it. \"At dawn\" fixes t1, so the result is type t (no EC). This is the book's Exercise 8: At 5pm, I would mail the letter.",
            "items": [
              {
                "sentence": "At dawn, Frodo would forge the sword.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.ModP [.Mod WOLL ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP [.V forges ] [.DP [.D the ] [.NP sword ] ] ] ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ]",
                "targets": [
                  "dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t1<t' ∧ ∃t''[t''⊆t' ∧ forge(t'',f,ιz[sword(z)])]]"
                ]
              },
              {
                "sentence": "At dusk, Gandalf would read the map.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.ModP [.Mod WOLL ] [.AspP [.Asp PFV ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] ] [.PP [.P at ] [.DP dusk ] ] ]",
                "targets": [
                  "dusk=t1 ∧ ∂(t1<now) ∧ ∃t'[t1<t' ∧ ∃t''[t''⊆t' ∧ read(t'',g,ιz[map(z)])]]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.1-worlds",
      "title": "World-Indexed Predicates (§13.4)",
      "content": {
        "compose": 1,
        "id": "ch13-worlds",
        "title": "World-Indexed Predicates (§13.4)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "s": "w0 w w' w''",
            "st": "p q",
            "et": "P Q",
            "set": "R S"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(w0,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(w0,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(w0,x)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(w0,x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(w0,x,y)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(w0,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(w0,x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(w0,x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(w0,x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(w0,x)"
          },
          {
            "words": [
              "dragon"
            ],
            "denotation": "Lx.dragon(w0,x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(w0,x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "necessarily"
            ],
            "denotation": "Lp.Aw'[acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly"
            ],
            "denotation": "Lp.Ew'[acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_deon"
            ],
            "denotation": "Lp.Aw'[deon_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_deon"
            ],
            "denotation": "Lp.Ew'[deon_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_meta"
            ],
            "denotation": "Lp.Aw'[meta_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_epist"
            ],
            "denotation": "Lp.Ew'[epist_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "possibly_meta"
            ],
            "denotation": "Lp.Ew'[meta_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_epist"
            ],
            "denotation": "Lp.Aw'[epist_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "seeks",
              "seek"
            ],
            "denotation": "LR.Lx.seek(w0,x,R)"
          },
          {
            "words": [
              "believes",
              "believe"
            ],
            "denotation": "Lp.Lx.Aw'[dox(w0)(x,w') -> p(w')]"
          },
          {
            "words": [
              "wants",
              "want"
            ],
            "denotation": "Lp.Lx.Aw'[boul(w0)(x,w') -> p(w')]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Intransitive predicates",
            "instructions": "All predicates now carry the evaluation world w0 as a free parameter. An intransitive sentence \"Frodo rides\" yields ride(w0,f): true in the current world just if Frodo rides in it. Compose by the familiar Function Application.",
            "items": [
              {
                "sentence": "Frodo rides.",
                "tree": "[.S [.DP Frodo ] [.VP rides ] ]",
                "targets": [
                  "ride(w0,f)"
                ]
              },
              {
                "sentence": "Gandalf sings.",
                "tree": "[.S [.DP Gandalf ] [.VP sings ] ]",
                "targets": [
                  "sing(w0,g)"
                ]
              },
              {
                "sentence": "Aragorn rests.",
                "tree": "[.S [.DP Aragorn ] [.VP rests ] ]",
                "targets": [
                  "rest(w0,a)"
                ]
              }
            ]
          },
          {
            "title": "B. Transitive predicates",
            "instructions": "A two-place verb takes the world w0 as first argument. The object is a definite description \"the ring\" = ιz[ring(w0,z)] — its referent is computed relative to the evaluation world. Compose by FA.",
            "items": [
              {
                "sentence": "Frodo finds the ring.",
                "tree": "[.S [.DP Frodo ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ]",
                "targets": [
                  "find(w0,f,ιz[ring(w0,z)])"
                ]
              },
              {
                "sentence": "Gandalf reads the map.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ]",
                "targets": [
                  "read(w0,g,ιz[map(w0,z)])"
                ]
              },
              {
                "sentence": "Sam sees the gate.",
                "tree": "[.S [.DP Sam ] [.VP [.V sees ] [.DP [.D the ] [.NP gate ] ] ] ]",
                "targets": [
                  "see(w0,s,ιz[gate(w0,z)])"
                ]
              }
            ]
          },
          {
            "title": "C. Quantified subjects",
            "instructions": "A quantified DP cannot fill the e-type subject slot directly. Raise it to S level (QR), leaving a type-e trace; apply Predicate Abstraction; then FA with the quantifier. The resulting truth conditions universally/existentially quantify over individuals in the evaluation world w0.",
            "items": [
              {
                "sentence": "Every hobbit rides.",
                "tree": "[.S [.DP [.D every ] [.NP hobbit ] ] [.VP rides ] ]",
                "targets": [
                  "∀x[hobbit(w0,x) → ride(w0,x)]"
                ]
              },
              {
                "sentence": "Some elf sings.",
                "tree": "[.S [.DP [.D some ] [.NP elf ] ] [.VP sings ] ]",
                "targets": [
                  "∃x[elf(w0,x) ∧ sing(w0,x)]"
                ]
              },
              {
                "sentence": "Gandalf finds some ring.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V finds ] [.DP [.D some ] [.NP ring ] ] ] ]",
                "targets": [
                  "∃x[ring(w0,x) ∧ find(w0,g,x)]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.2-modals",
      "title": "Modals: Necessity & Possibility (§13.4.4)",
      "content": {
        "compose": 1,
        "id": "ch13-modals",
        "title": "Modals: Necessity & Possibility (§13.4.4)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "s": "w0 w w' w''",
            "st": "p q",
            "et": "P Q",
            "set": "R S"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(w0,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(w0,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(w0,x)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(w0,x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(w0,x,y)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(w0,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(w0,x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(w0,x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(w0,x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(w0,x)"
          },
          {
            "words": [
              "dragon"
            ],
            "denotation": "Lx.dragon(w0,x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(w0,x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "necessarily"
            ],
            "denotation": "Lp.Aw'[acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly"
            ],
            "denotation": "Lp.Ew'[acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_deon"
            ],
            "denotation": "Lp.Aw'[deon_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_deon"
            ],
            "denotation": "Lp.Ew'[deon_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_meta"
            ],
            "denotation": "Lp.Aw'[meta_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_epist"
            ],
            "denotation": "Lp.Ew'[epist_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "possibly_meta"
            ],
            "denotation": "Lp.Ew'[meta_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_epist"
            ],
            "denotation": "Lp.Aw'[epist_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "seeks",
              "seek"
            ],
            "denotation": "LR.Lx.seek(w0,x,R)"
          },
          {
            "words": [
              "believes",
              "believe"
            ],
            "denotation": "Lp.Lx.Aw'[dox(w0)(x,w') -> p(w')]"
          },
          {
            "words": [
              "wants",
              "want"
            ],
            "denotation": "Lp.Lx.Aw'[boul(w0)(x,w') -> p(w')]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Necessarily (IFA)",
            "instructions": "necessarily ↝ λp⟨s,t⟩.∀w′[acc(w0)(w′) → p(w′)] has type ⟨⟨s,t⟩,t⟩. Its sister has type t (with w0 free). IFA wraps the sister as λw0.φ before applying necessarily — this is the intension of the embedded clause, a proposition (function from worlds to truth values).",
            "items": [
              {
                "sentence": "Necessarily, Frodo rides.",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP Frodo ] [.VP rides ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → ride(w',f)]"
                ]
              },
              {
                "sentence": "Necessarily, Gandalf sings.",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP Gandalf ] [.VP sings ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → sing(w',g)]"
                ]
              },
              {
                "sentence": "Necessarily, Frodo finds the ring.",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP Frodo ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → find(w',f,ιz[ring(w',z)])]"
                ]
              }
            ]
          },
          {
            "title": "B. Possibly (IFA)",
            "instructions": "possibly ↝ λp⟨s,t⟩.∃w′[acc(w0)(w′) ∧ p(w′)] is the existential dual of necessarily. Apply IFA in the same way — the two derivations are identical in structure, only the truth conditions differ: ∃ instead of ∀. Note how possibly does NOT entail the truth of its argument in the actual world.",
            "items": [
              {
                "sentence": "Possibly, Aragorn rests.",
                "tree": "[.IP [.Adv possibly ] [.S [.DP Aragorn ] [.VP rests ] ] ]",
                "targets": [
                  "∃w'[acc(w0)(w') ∧ rest(w',a)]"
                ]
              },
              {
                "sentence": "Possibly, Gandalf finds the ring.",
                "tree": "[.IP [.Adv possibly ] [.S [.DP Gandalf ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ]",
                "targets": [
                  "∃w'[acc(w0)(w') ∧ find(w',g,ιz[ring(w',z)])]"
                ]
              }
            ]
          },
          {
            "title": "C. Modal flavor",
            "instructions": "Different accessibility relations capture different modal flavors. Deontic accessibility (deon_acc) ranges over worlds compatible with the prevailing rules; metaphysical (meta_acc) ranges over worlds metaphysically possible from here; epistemic (epist_acc) ranges over worlds compatible with what is known. The derivation is identical across flavors; only the accessibility constant changes.",
            "items": [
              {
                "sentence": "It is obligatory that Frodo guards the gate. (deontic)",
                "tree": "[.IP [.Adv necessarily_deon ] [.S [.DP Frodo ] [.VP [.V guards ] [.DP [.D the ] [.NP gate ] ] ] ] ]",
                "targets": [
                  "∀w'[deon_acc(w0)(w') → guard(w',f,ιz[gate(w',z)])]"
                ]
              },
              {
                "sentence": "It is metaphysically possible that Sam sings. (metaphysical)",
                "tree": "[.IP [.Adv possibly_meta ] [.S [.DP Sam ] [.VP sings ] ] ]",
                "targets": [
                  "∃w'[meta_acc(w0)(w') ∧ sing(w',s)]"
                ]
              },
              {
                "sentence": "It is epistemically possible that an elf finds the ring.",
                "tree": "[.IP [.Adv possibly_epist ] [.S [.DP [.D the ] [.NP elf ] ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ]",
                "targets": [
                  "∃w'[epist_acc(w0)(w') ∧ find(w',ιx[elf(w',x)],ιz[ring(w',z)])]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.3-intensional",
      "title": "Intensional Transitive Verbs (§13.4.4)",
      "content": {
        "compose": 1,
        "id": "ch13-intensional",
        "title": "Intensional Transitive Verbs (§13.4.4)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "s": "w0 w w' w''",
            "st": "p q",
            "et": "P Q",
            "set": "R S"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(w0,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(w0,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(w0,x)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(w0,x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(w0,x,y)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(w0,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(w0,x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(w0,x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(w0,x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(w0,x)"
          },
          {
            "words": [
              "dragon"
            ],
            "denotation": "Lx.dragon(w0,x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(w0,x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "necessarily"
            ],
            "denotation": "Lp.Aw'[acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly"
            ],
            "denotation": "Lp.Ew'[acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_deon"
            ],
            "denotation": "Lp.Aw'[deon_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_deon"
            ],
            "denotation": "Lp.Ew'[deon_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_meta"
            ],
            "denotation": "Lp.Aw'[meta_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_epist"
            ],
            "denotation": "Lp.Ew'[epist_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "possibly_meta"
            ],
            "denotation": "Lp.Ew'[meta_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_epist"
            ],
            "denotation": "Lp.Aw'[epist_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "seeks",
              "seek"
            ],
            "denotation": "LR.Lx.seek(w0,x,R)"
          },
          {
            "words": [
              "believes",
              "believe"
            ],
            "denotation": "Lp.Lx.Aw'[dox(w0)(x,w') -> p(w')]"
          },
          {
            "words": [
              "wants",
              "want"
            ],
            "denotation": "Lp.Lx.Aw'[boul(w0)(x,w') -> p(w')]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Extensional verbs (FA)",
            "instructions": "An extensional verb like finds takes a type-e individual as object. Compose by Function Application. The resulting truth conditions require the object to exist in the evaluation world w0: find(w0,f,ιz[ring(w0,z)]) is false if there is no ring in w0.",
            "items": [
              {
                "sentence": "Frodo finds the ring.",
                "tree": "[.S [.DP Frodo ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ]",
                "targets": [
                  "find(w0,f,ιz[ring(w0,z)])"
                ]
              },
              {
                "sentence": "Gandalf sees the dragon.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V sees ] [.DP [.D the ] [.NP dragon ] ] ] ]",
                "targets": [
                  "see(w0,g,ιz[dragon(w0,z)])"
                ]
              }
            ]
          },
          {
            "title": "B. Intensional verb (IFA)",
            "instructions": "seeks takes a property INTENSION ⟨s,⟨e,t⟩⟩, not an individual. The bare NP \"dragon\" has extension ⟨e,t⟩; IFA wraps it as λw0.λz.dragon(w0,z) before applying seeks. The result seek(w0,f,λw.λz.dragon(w,z)) is true even if no dragon exists in w0 — Frodo merely seeks relief from dragon-lessness (cf. Quine 1956 on unicornlessness).",
            "items": [
              {
                "sentence": "Frodo seeks a dragon.",
                "tree": "[.S [.DP Frodo ] [.VP [.V seeks ] [.NP dragon ] ] ]",
                "targets": [
                  "seek(w0,f,λw.λz.dragon(w,z))"
                ]
              },
              {
                "sentence": "Sam seeks the ring.",
                "tree": "[.S [.DP Sam ] [.VP [.V seeks ] [.NP ring ] ] ]",
                "targets": [
                  "seek(w0,s,λw.λz.ring(w,z))"
                ]
              }
            ]
          },
          {
            "title": "C. Existential import — finds vs. seeks",
            "instructions": "Compare the two verbs directly. \"Frodo finds a dragon\" requires an actual dragon (QR the DP to get existential quantification over w0-individuals). \"Frodo seeks a dragon\" (IFA) carries no such commitment. Note the different shapes of the truth conditions: existential quantification ∃x vs. application to a property intension seek(w0,f,λw.…).",
            "items": [
              {
                "sentence": "Frodo finds a dragon. (existential import — QR the object DP)",
                "tree": "[.S [.DP Frodo ] [.VP [.V finds ] [.DP [.D a ] [.NP dragon ] ] ] ]",
                "targets": [
                  "∃x[dragon(w0,x) ∧ find(w0,f,x)]"
                ]
              },
              {
                "sentence": "Frodo seeks a dragon. (no existential import — IFA)",
                "tree": "[.S [.DP Frodo ] [.VP [.V seeks ] [.NP dragon ] ] ]",
                "targets": [
                  "seek(w0,f,λw.λz.dragon(w,z))"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.4-attitudes",
      "title": "Propositional Attitudes (§13.5.2)",
      "content": {
        "compose": 1,
        "id": "ch13-attitudes",
        "title": "Propositional Attitudes (§13.5.2)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "s": "w0 w w' w''",
            "st": "p q",
            "et": "P Q",
            "set": "R S"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(w0,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(w0,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(w0,x)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(w0,x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(w0,x,y)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(w0,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(w0,x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(w0,x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(w0,x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(w0,x)"
          },
          {
            "words": [
              "dragon"
            ],
            "denotation": "Lx.dragon(w0,x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(w0,x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "necessarily"
            ],
            "denotation": "Lp.Aw'[acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly"
            ],
            "denotation": "Lp.Ew'[acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_deon"
            ],
            "denotation": "Lp.Aw'[deon_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_deon"
            ],
            "denotation": "Lp.Ew'[deon_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_meta"
            ],
            "denotation": "Lp.Aw'[meta_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_epist"
            ],
            "denotation": "Lp.Ew'[epist_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "possibly_meta"
            ],
            "denotation": "Lp.Ew'[meta_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_epist"
            ],
            "denotation": "Lp.Aw'[epist_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "seeks",
              "seek"
            ],
            "denotation": "LR.Lx.seek(w0,x,R)"
          },
          {
            "words": [
              "believes",
              "believe"
            ],
            "denotation": "Lp.Lx.Aw'[dox(w0)(x,w') -> p(w')]"
          },
          {
            "words": [
              "wants",
              "want"
            ],
            "denotation": "Lp.Lx.Aw'[boul(w0)(x,w') -> p(w')]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Believes (IFA)",
            "instructions": "believes ↝ λp⟨s,t⟩.λx.∀w′[dox(w0)(x,w′) → p(w′)] type ⟨⟨s,t⟩,⟨e,t⟩⟩. The embedded clause has type t (with w0 free); IFA wraps it as λw0.φ to form the ⟨s,t⟩ proposition argument, then FA with the subject. The truth conditions say that the proposition holds across all of the subject's belief worlds.",
            "items": [
              {
                "sentence": "Gandalf believes Frodo rides.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V believes ] [.CP [.S [.DP Frodo ] [.VP rides ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(g,w') → ride(w',f)]"
                ]
              },
              {
                "sentence": "Frodo believes Sam sings.",
                "tree": "[.S [.DP Frodo ] [.VP [.V believes ] [.CP [.S [.DP Sam ] [.VP sings ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(f,w') → sing(w',s)]"
                ]
              },
              {
                "sentence": "Sam believes Gandalf reads the map.",
                "tree": "[.S [.DP Sam ] [.VP [.V believes ] [.CP [.S [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(s,w') → read(w',g,ιz[map(w',z)])]"
                ]
              }
            ]
          },
          {
            "title": "B. Wants (IFA)",
            "instructions": "wants ↝ λp⟨s,t⟩.λx.∀w′[boul(w0)(x,w′) → p(w′)]. The derivation is identical to believes; only the accessibility relation changes (boul for bouletic/desire instead of dox for doxastic/belief). The proposition holds in all worlds where the agent's desires are fulfilled.",
            "items": [
              {
                "sentence": "Frodo wants Sam to sing.",
                "tree": "[.S [.DP Frodo ] [.VP [.V wants ] [.CP [.S [.DP Sam ] [.VP sings ] ] ] ] ]",
                "targets": [
                  "∀w'[boul(w0)(f,w') → sing(w',s)]"
                ]
              },
              {
                "sentence": "Gandalf wants Frodo to find the ring.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V wants ] [.CP [.S [.DP Frodo ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ] ] ]",
                "targets": [
                  "∀w'[boul(w0)(g,w') → find(w',f,ιz[ring(w',z)])]"
                ]
              }
            ]
          },
          {
            "title": "C. Stacked intensional operators",
            "instructions": "Modal adverbs and attitude verbs can nest. \"Necessarily Gandalf believes φ\" applies IFA twice — once for necessarily and once for believes — with the embedded clause's world variable successively abstracted. Notice how the final formula contains two distinct accessible-world quantifiers.",
            "items": [
              {
                "sentence": "Necessarily, Gandalf believes Frodo rides.",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP Gandalf ] [.VP [.V believes ] [.CP [.S [.DP Frodo ] [.VP rides ] ] ] ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → ∀w''[dox(w')(g,w'') → ride(w'',f)]]"
                ]
              },
              {
                "sentence": "Gandalf believes Sam necessarily sings.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V believes ] [.CP [.IP [.Adv necessarily ] [.S [.DP Sam ] [.VP sings ] ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(g,w') → ∀w''[acc(w')(w'') → sing(w'',s)]]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.5-dere",
      "title": "De dicto vs. De re (§13.6)",
      "content": {
        "compose": 1,
        "id": "ch13-dere",
        "title": "De dicto vs. De re (§13.6)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b l m o w"
          },
          "variables": {
            "e": "x y z",
            "s": "w0 w w' w''",
            "st": "p q",
            "et": "P Q",
            "set": "R S"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(w0,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(w0,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(w0,x)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.read(w0,x,y)"
          },
          {
            "words": [
              "finds",
              "find"
            ],
            "denotation": "Ly.Lx.find(w0,x,y)"
          },
          {
            "words": [
              "sees",
              "see"
            ],
            "denotation": "Ly.Lx.see(w0,x,y)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(w0,x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(w0,x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(w0,x)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(w0,x)"
          },
          {
            "words": [
              "dragon"
            ],
            "denotation": "Lx.dragon(w0,x)"
          },
          {
            "words": [
              "hobbit"
            ],
            "denotation": "Lx.hobbit(w0,x)"
          },
          {
            "words": [
              "elf"
            ],
            "denotation": "Lx.elf(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "every",
              "Every"
            ],
            "denotation": "LX.LY.Ax[X(x) -> Y(x)]"
          },
          {
            "words": [
              "some",
              "Some"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "a"
            ],
            "denotation": "LX.LY.Ex[X(x) & Y(x)]"
          },
          {
            "words": [
              "necessarily"
            ],
            "denotation": "Lp.Aw'[acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly"
            ],
            "denotation": "Lp.Ew'[acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_deon"
            ],
            "denotation": "Lp.Aw'[deon_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_deon"
            ],
            "denotation": "Lp.Ew'[deon_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_meta"
            ],
            "denotation": "Lp.Aw'[meta_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly_epist"
            ],
            "denotation": "Lp.Ew'[epist_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "possibly_meta"
            ],
            "denotation": "Lp.Ew'[meta_acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "necessarily_epist"
            ],
            "denotation": "Lp.Aw'[epist_acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "seeks",
              "seek"
            ],
            "denotation": "LR.Lx.seek(w0,x,R)"
          },
          {
            "words": [
              "believes",
              "believe"
            ],
            "denotation": "Lp.Lx.Aw'[dox(w0)(x,w') -> p(w')]"
          },
          {
            "words": [
              "wants",
              "want"
            ],
            "denotation": "Lp.Lx.Aw'[boul(w0)(x,w') -> p(w')]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. De dicto readings (IFA without QR across attitude verb)",
            "instructions": "For the DE DICTO reading, apply IFA directly to combine the attitude verb with the embedded clause. Any quantifier inside the embedded clause is interpreted inside the belief/desire worlds. There is no commitment to the existence of the object in the actual world w0.",
            "items": [
              {
                "sentence": "Gandalf believes a dragon rides. (de dicto — no particular dragon)",
                "tree": "[.S [.DP Gandalf ] [.VP [.V believes ] [.CP [.S [.DP [.D a ] [.NP dragon ] ] [.VP rides ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(g,w') → ∃x[dragon(w',x) ∧ ride(w',x)]]"
                ]
              },
              {
                "sentence": "Frodo wants some elf to sing. (de dicto — any elf in desire worlds)",
                "tree": "[.S [.DP Frodo ] [.VP [.V wants ] [.CP [.S [.DP [.D some ] [.NP elf ] ] [.VP sings ] ] ] ] ]",
                "targets": [
                  "∀w'[boul(w0)(f,w') → ∃x[elf(w',x) ∧ sing(w',x)]]"
                ]
              },
              {
                "sentence": "Sam believes every hobbit finds the ring. (de dicto)",
                "tree": "[.S [.DP Sam ] [.VP [.V believes ] [.CP [.S [.DP [.D every ] [.NP hobbit ] ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(s,w') → ∀x[hobbit(w',x) → find(w',x,ιz[ring(w',z)])]]"
                ]
              }
            ]
          },
          {
            "title": "B. De re readings (QR above attitude verb, then IFA)",
            "instructions": "For the DE RE reading, QR the object DP to sentence level — ABOVE the attitude verb — before applying IFA. The raised DP is interpreted in the evaluation world w0; the trace inside the embedded clause is a rigid individual that the attitude is about. Existential quantification over w0-individuals appears in the OUTERMOST position, outside the attitude.",
            "items": [
              {
                "sentence": "Gandalf believes a dragon rides. (de re — a particular actual dragon)",
                "tree": "[.S [.DP Gandalf ] [.VP [.V believes ] [.CP [.S [.DP [.D a ] [.NP dragon ] ] [.VP rides ] ] ] ] ]",
                "targets": [
                  "∃x[dragon(w0,x) ∧ ∀w'[dox(w0)(g,w') → ride(w',x)]]"
                ]
              },
              {
                "sentence": "Frodo wants some elf to sing. (de re — a particular actual elf)",
                "tree": "[.S [.DP Frodo ] [.VP [.V wants ] [.CP [.S [.DP [.D some ] [.NP elf ] ] [.VP sings ] ] ] ] ]",
                "targets": [
                  "∃x[elf(w0,x) ∧ ∀w'[boul(w0)(f,w') → sing(w',x)]]"
                ]
              },
              {
                "sentence": "Sam believes a hobbit finds the ring. (de re — a particular actual hobbit)",
                "tree": "[.S [.DP Sam ] [.VP [.V believes ] [.CP [.S [.DP [.D a ] [.NP hobbit ] ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ] ] ]",
                "targets": [
                  "∃x[hobbit(w0,x) ∧ ∀w'[dox(w0)(s,w') → find(w',x,ιz[ring(w',z)])]]"
                ]
              }
            ]
          },
          {
            "title": "C. Comparing the readings",
            "instructions": "Two derivations of the same sentence, two different truth conditions. Compare the de dicto target (object exists in attitude worlds) with the de re target (object exists in actual world w0). A sentence is de re ambiguous when QR of a DP can land either inside or outside the intensional operator's scope.",
            "items": [
              {
                "sentence": "Necessarily, Frodo rides. — apply IFA directly (de dicto / wide scope necessity)",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP Frodo ] [.VP rides ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → ride(w',f)]"
                ]
              },
              {
                "sentence": "Necessarily some hobbit finds the ring. (de dicto — QR inside necessity scope)",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP [.D some ] [.NP hobbit ] ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → ∃x[hobbit(w',x) ∧ find(w',x,ιz[ring(w',z)])]]"
                ]
              },
              {
                "sentence": "Necessarily some hobbit finds the ring. (de re — QR above necessity scope)",
                "tree": "[.IP [.Adv necessarily ] [.S [.DP [.D some ] [.NP hobbit ] ] [.VP [.V finds ] [.DP [.D the ] [.NP ring ] ] ] ] ]",
                "targets": [
                  "∃x[hobbit(w0,x) ∧ ∀w'[acc(w0)(w') → find(w',x,ιz[ring(w',z)])]]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.6-worlds-times",
      "title": "Worlds & Times Combined (§12–13)",
      "content": {
        "compose": 1,
        "id": "ch13-worlds-times",
        "title": "Worlds & Times Combined (§12–13)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b",
            "i": "now dawn dusk"
          },
          "variables": {
            "e": "x y z",
            "i": "t t' t'' t1 t2",
            "s": "w0 w w' w''",
            "st": "p q",
            "it": "H J",
            "et": "P Q",
            "set": "R"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "Legolas"
            ],
            "denotation": "l"
          },
          {
            "words": [
              "Gimli"
            ],
            "denotation": "m"
          },
          {
            "words": [
              "Galadriel"
            ],
            "denotation": "w"
          },
          {
            "words": [
              "Bilbo"
            ],
            "denotation": "bi"
          },
          {
            "words": [
              "Strider"
            ],
            "denotation": "st"
          },
          {
            "words": [
              "Pippin"
            ],
            "denotation": "pi"
          },
          {
            "words": [
              "Tom"
            ],
            "denotation": "tm"
          },
          {
            "words": [
              "Elrond"
            ],
            "denotation": "el"
          },
          {
            "words": [
              "Saruman"
            ],
            "denotation": "sr"
          },
          {
            "words": [
              "Moria"
            ],
            "denotation": "mr"
          },
          {
            "words": [
              "now"
            ],
            "denotation": "now"
          },
          {
            "words": [
              "dawn"
            ],
            "denotation": "dawn"
          },
          {
            "words": [
              "dusk"
            ],
            "denotation": "dusk"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.Lt.ride(w0,t,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.Lt.sing(w0,t,x)"
          },
          {
            "words": [
              "reads",
              "read"
            ],
            "denotation": "Ly.Lx.Lt.read(w0,t,x,y)"
          },
          {
            "words": [
              "ring"
            ],
            "denotation": "Lx.ring(w0,x)"
          },
          {
            "words": [
              "map"
            ],
            "denotation": "Lx.map(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "PFV"
            ],
            "denotation": "LH.Lt.Et'[t'⊆t & H(t')]"
          },
          {
            "words": [
              "PROG"
            ],
            "denotation": "LH.Lt.Et'[t⊆t' & H(t')]"
          },
          {
            "words": [
              "PAST"
            ],
            "denotation": "LH.Lt.[t=t1 & ∂(t1<now) & H(t1)]"
          },
          {
            "words": [
              "PRES"
            ],
            "denotation": "LH.Lt.[t=now & H(t)]"
          },
          {
            "words": [
              "PERFECT"
            ],
            "denotation": "LH.Lt.Et'[t'<t & H(t')]"
          },
          {
            "words": [
              "at"
            ],
            "denotation": "Lt.t"
          },
          {
            "words": [
              "necessarily"
            ],
            "denotation": "Lp.Aw'[acc(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "possibly"
            ],
            "denotation": "Lp.Ew'[acc(w0)(w') & p(w')]"
          },
          {
            "words": [
              "believes",
              "believe"
            ],
            "denotation": "Lp.Lx.Aw'[dox(w0)(x,w') -> p(w')]"
          },
          {
            "words": [
              "wants",
              "want"
            ],
            "denotation": "Lp.Lx.Aw'[boul(w0)(x,w') -> p(w')]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateAbstraction": true
          }
        },
        "exercises": [
          {
            "title": "A. Tense with world-indexed predicates",
            "instructions": "With doubly-indexed predicates, the tense and aspect machinery from Ch. 12 applies without change — the world variable w0 is simply free throughout. Build the TenseP using a temporal modifier to saturate the time slot directly (no EC needed). The result is type t with w0 free: a claim about what happens at a particular time in the evaluation world.",
            "items": [
              {
                "sentence": "At dawn, Frodo rode.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP rides ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ]",
                "targets": [
                  "dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ ride(w0,t',f)]"
                ]
              },
              {
                "sentence": "At dusk, Gandalf read the map.",
                "tree": "[.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] [.PP [.P at ] [.DP dusk ] ] ]",
                "targets": [
                  "dusk=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ read(w0,t',g,ιz[map(w0,z)])]"
                ]
              }
            ]
          },
          {
            "title": "B. Necessity over a tensed clause",
            "instructions": "A TenseP with a temporal modifier has type t with w0 free. Applying IFA with necessarily wraps this as λw0.φ — the temporal structure (dawn, t1, t′) stays intact inside the bound world. The truth conditions assert that across all accessible worlds, the temporal claim holds — but the time constants (dawn, t1) are rigid: the same time in every world.",
            "items": [
              {
                "sentence": "Necessarily, at dawn, Frodo rode.",
                "tree": "[.NecP [.Adv necessarily ] [.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP rides ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ] ]",
                "targets": [
                  "∀w'[acc(w0)(w') → dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ ride(w',t',f)]]"
                ]
              },
              {
                "sentence": "Possibly, at dusk, Gandalf read the map.",
                "tree": "[.PossP [.Adv possibly ] [.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Gandalf ] [.VP [.V reads ] [.DP [.D the ] [.NP map ] ] ] ] ] ] [.PP [.P at ] [.DP dusk ] ] ] ]",
                "targets": [
                  "∃w'[acc(w0)(w') ∧ dusk=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ read(w',t',g,ιz[map(w',z)])]]"
                ]
              }
            ]
          },
          {
            "title": "C. Attitudes over tensed clauses",
            "instructions": "Attitude verbs interact with tense: \"Gandalf believes Frodo rode at dawn\" — the embedded TenseP has type t (after modifier saturation), w0 free. IFA with believes wraps it as λw0.φ and applies to the accessibility relation: in all of Gandalf's belief worlds, the temporal claim holds. The time constants and the tense variable t1 are the same across belief worlds.",
            "items": [
              {
                "sentence": "Gandalf believes Frodo rode at dawn.",
                "tree": "[.S [.DP Gandalf ] [.VP [.V believes ] [.CP [.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP rides ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ] ] ] ]",
                "targets": [
                  "∀w'[dox(w0)(g,w') → dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ ride(w',t',f)]]"
                ]
              },
              {
                "sentence": "Frodo wants to ride at dawn.",
                "tree": "[.S [.DP Frodo ] [.VP [.V wants ] [.CP [.TenseP [.TenseP [.Tense PAST ] [.AspP [.Asp PFV ] [.vP [.DP Frodo ] [.VP rides ] ] ] ] [.PP [.P at ] [.DP dawn ] ] ] ] ] ]",
                "targets": [
                  "∀w'[boul(w0)(f,w') → dawn=t1 ∧ ∂(t1<now) ∧ ∃t'[t'⊆t1 ∧ ride(w',t',f)]]"
                ]
              }
            ]
          }
        ]
      }
    },
    {
      "key": "ch13.7-haveto",
      "title": "Contextual Modal Base & Presupposition: have to (§13.5.1)",
      "content": {
        "compose": 1,
        "id": "ch13-haveto",
        "title": "Contextual Modal Base & Presupposition: have to (§13.5.1)",
        "subtitle": "A context-supplied accessibility relation R, with a ∂-presupposition that R is deontic (the book's eq. 55 + the ∂ extension it suggests)",
        "domain": {
          "multiLetterNames": true,
          "constants": {
            "e": "f s g n a b"
          },
          "variables": {
            "e": "x y z",
            "s": "w0 w w' w''",
            "<s,t>": "p q",
            "<s,<s,t>>": "R",
            "et": "P Q"
          }
        },
        "lexicon": [
          {
            "words": [
              "Frodo"
            ],
            "denotation": "f"
          },
          {
            "words": [
              "Sam"
            ],
            "denotation": "s"
          },
          {
            "words": [
              "Gandalf"
            ],
            "denotation": "g"
          },
          {
            "words": [
              "Sauron"
            ],
            "denotation": "n"
          },
          {
            "words": [
              "Aragorn"
            ],
            "denotation": "a"
          },
          {
            "words": [
              "Boromir"
            ],
            "denotation": "b"
          },
          {
            "words": [
              "rides",
              "ride"
            ],
            "denotation": "Lx.ride(w0,x)"
          },
          {
            "words": [
              "sings",
              "sing"
            ],
            "denotation": "Lx.sing(w0,x)"
          },
          {
            "words": [
              "rests",
              "rest"
            ],
            "denotation": "Lx.rest(w0,x)"
          },
          {
            "words": [
              "guards",
              "guard"
            ],
            "denotation": "Ly.Lx.guard(w0,x,y)"
          },
          {
            "words": [
              "gate"
            ],
            "denotation": "Lx.gate(w0,x)"
          },
          {
            "words": [
              "the"
            ],
            "denotation": "LX.Ix.X(x)"
          },
          {
            "words": [
              "have_to_bare",
              "must_bare"
            ],
            "denotation": "Lp.Aw'[R(w0)(w') -> p(w')]"
          },
          {
            "words": [
              "have_to",
              "has_to",
              "must"
            ],
            "denotation": "Lp.[∂(deontic(R)) & Aw'[R(w0)(w') -> p(w')]]"
          },
          {
            "words": [
              "allowed_to",
              "may"
            ],
            "denotation": "Lp.[∂(deontic(R)) & Ew'[R(w0)(w') & p(w')]]"
          }
        ],
        "rules": {
          "composition": {
            "functionApplication": true,
            "nonBranchingNodes": true,
            "predicateModification": false,
            "predicateAbstraction": true,
            "intensionalFunctionApplication": true
          },
          "quantifierRaising": true
        },
        "exercises": [
          {
            "title": "A. have to — a contextual modal base (book eq. 55)",
            "instructions": "The modal verb have to is unambiguously deontic in flavor, but WHICH rules are in force varies with context (the rules of the country, the rules of the house, …). The book models this with a free variable R of type ⟨s,⟨s,t⟩⟩ whose value the context supplies — a relation between worlds: have_to_bare ↝ λp.∀w′[R(ẇ)(w′) → p(w′)]. R(ẇ)(w′) says w′ conforms to the contextually relevant rules in force at the evaluation world ẇ. The modal takes the intension of its clausal sister by IFA, exactly like necessarily.",
            "items": [
              {
                "sentence": "Frodo has to ride. (context-supplied rules, no presupposition)",
                "tree": "[.ModP [.Mod have_to_bare ] [.S [.DP Frodo ] [.VP rides ] ] ]",
                "targets": [
                  "∀w'[R(w0)(w') → ride(w',f)]"
                ]
              },
              {
                "sentence": "Gandalf has to guard the gate. (context-supplied rules)",
                "tree": "[.ModP [.Mod have_to_bare ] [.S [.DP Gandalf ] [.VP [.V guards ] [.DP [.D the ] [.NP gate ] ] ] ] ]",
                "targets": [
                  "∀w'[R(w0)(w') → guard(w',g,ιz[gate(w',z)])]"
                ]
              }
            ]
          },
          {
            "title": "B. Presupposing that R is deontic (the ∂ extension)",
            "instructions": "The bare entry in A places no constraints on R at all — context could in principle supply any relation. The book notes that a presupposition that R is of a DEONTIC nature could be added in a system that supports the ∂ operator. Now that we have ∂, we can: have_to ↝ λp.[∂(deontic(R)) ∧ ∀w′[R(ẇ)(w′) → p(w′)]]. The ∂(deontic(R)) conjunct presupposes (does not assert) that the contextual relation is a genuinely deontic one. Compare the result with A: the only difference is the presuppositional ∂ conjunct.",
            "items": [
              {
                "sentence": "Frodo has to ride. (presupposing R is deontic)",
                "tree": "[.ModP [.Mod have_to ] [.S [.DP Frodo ] [.VP rides ] ] ]",
                "targets": [
                  "∂(deontic(R)) ∧ ∀w'[R(w0)(w') → ride(w',f)]"
                ]
              },
              {
                "sentence": "Gandalf has to guard the gate. (presupposing R is deontic)",
                "tree": "[.ModP [.Mod have_to ] [.S [.DP Gandalf ] [.VP [.V guards ] [.DP [.D the ] [.NP gate ] ] ] ] ]",
                "targets": [
                  "∂(deontic(R)) ∧ ∀w'[R(w0)(w') → guard(w',g,ιz[gate(w',z)])]"
                ]
              }
            ]
          },
          {
            "title": "C. allowed to — the existential (deontic) dual",
            "instructions": "Deontic possibility (permission) is the existential dual of deontic necessity (obligation), over the same contextual modal base R: allowed_to ↝ λp.[∂(deontic(R)) ∧ ∃w′[R(ẇ)(w′) ∧ p(w′)]]. The presupposition is identical; the force flips from ∀…→ to ∃…∧. Note that have to and allowed to relate as duals exactly as necessarily and possibly do.",
            "items": [
              {
                "sentence": "Frodo is allowed to ride.",
                "tree": "[.ModP [.Mod allowed_to ] [.S [.DP Frodo ] [.VP rides ] ] ]",
                "targets": [
                  "∂(deontic(R)) ∧ ∃w'[R(w0)(w') ∧ ride(w',f)]"
                ]
              },
              {
                "sentence": "Sam is allowed to guard the gate.",
                "tree": "[.ModP [.Mod allowed_to ] [.S [.DP Sam ] [.VP [.V guards ] [.DP [.D the ] [.NP gate ] ] ] ] ]",
                "targets": [
                  "∂(deontic(R)) ∧ ∃w'[R(w0)(w') ∧ guard(w',s,ιz[gate(w',z)])]"
                ]
              }
            ]
          }
        ]
      }
    }
  ]
}
