An intensional model extends a Montague model with possible worlds.
The base model provides the domain of entities (shared across worlds). The World type provides indices for evaluating intensions.
- base : Montague.Model
The underlying extensional model
- World : Type
The type of possible worlds
- worldDecEq : DecidableEq self.World
Decidable equality on worlds
Instances For
Make World decidable
Equations
An intension is a function from possible worlds to extensions.
Unified with Core.Intension — this is m.World → m.base.interpTy τ.
Equations
- Semantics.Intensional.Intension m τ = Core.Intension m.World (m.base.interpTy τ)
Instances For
A property intension: Core.Intension m.World (Entity → Bool).
Equations
Instances For
A relation intension: Core.Intension m.World (Entity → Entity → Bool).
Equations
- Semantics.Intensional.RelationIntension m = Core.Intension m.World (m.base.Entity → m.base.Entity → Bool)
Instances For
Full intensional type interpretation (@cite{gallin-1975}).
Equivalent to Intension m τ.
Equations
Instances For
Evaluate an intension at a world to get its extension.
Delegates to Core.Intension.evalAt.
Equations
- Semantics.Intensional.evalAt meaning w = Core.Intension.evalAt meaning w
Instances For
Evaluate a proposition at a world
Instances For
Check if a proposition is true at a world
Instances For
An intensional semantic derivation.
Packages a world-parameterized meaning with its surface form and type. This is what RSA needs: a meaning that can be evaluated at any world.
- ty : Montague.Ty
Instances For
Evaluate the derivation at a specific world
Instances For
For type t, get the truth value at a world
Instances For
Lift a constant extension to an intension (rigid designator).
Delegates to Core.Intension.rigid.
Equations
Instances For
Create a world-varying intension from a function.
Equations
Instances For
"Some" with world-varying property: ∃x. P(w)(x) ∧ Q(w)(x)
Equations
Instances For
"Every" with world-varying property: ∀x. P(w)(x) → Q(w)(x)
Equations
Instances For
"No" with world-varying property: ¬∃x. P(w)(x) ∧ Q(w)(x)
Equations
Instances For
Worlds for scalar implicature reasoning.
These represent different states of affairs:
- none: No individuals satisfy the predicate
- someNotAll: Some but not all satisfy
- all: All individuals satisfy
- none : ScalarWorld
- someNotAll : ScalarWorld
- all : ScalarWorld
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
A simple intensional model for scalar implicatures. Uses ToyEntity as the domain.
Equations
- Semantics.Intensional.scalarModel = { base := Semantics.Montague.toyModel, World := Semantics.Intensional.ScalarWorld, worldDecEq := inferInstance }
Instances For
Fintype instance for scalarModel.base
Equations
- One or more equations did not get rendered due to their size.
"Students" is a rigid property (doesn't vary by world). In the toy model, John and Mary are students.
Equations
Instances For
"Sleep" varies by world:
- none: nobody sleeps
- someNotAll: only John sleeps
- all: both John and Mary sleep
Equations
- One or more equations did not get rendered due to their size.
- Semantics.Intensional.sleep_varying Semantics.Intensional.ScalarWorld.none = fun (x : Semantics.Intensional.scalarModel.base.Entity) => false
Instances For
"Some students sleep" as an intensional derivation.
Meaning varies by world:
- none: false (no students sleep)
- someNotAll: true (John sleeps)
- all: true (both sleep)
Equations
- One or more equations did not get rendered due to their size.
Instances For
"Every student sleeps" as an intensional derivation.
Meaning varies by world:
- none: false (not all students sleep)
- someNotAll: false (Mary doesn't sleep)
- all: true (both sleep)
Equations
- One or more equations did not get rendered due to their size.
Instances For
Helper: directly evaluate "some students sleep" at a world
Equations
Instances For
Helper: directly evaluate "every student sleeps" at a world
Equations
Instances For
"Some students sleep" is false when no one sleeps
"Some students sleep" is true when some but not all sleep
"Some students sleep" is true when all sleep
"Every student sleeps" is false when no one sleeps
"Every student sleeps" is false when some but not all sleep
"Every student sleeps" is true when all sleep
The literal semantics function φ for RSA.
This is the key connection: RSA's φ(u, w) is just evaluating the intensional meaning at world w.
φ(u, w) = ⟦u⟧(w)
Equations
- Semantics.Intensional.phi d h w = d.trueAt h w
Instances For
Theorem: φ is definitionally equal to evaluating the meaning at the world.
Note: d.evalAt w has type m.base.interpTy d.ty, which equals Bool when d.ty =.t.
The phi function handles this type coercion.