Documentation

Linglib.Theories.Semantics.Dynamic.TeamSemantics

Team Semantics Infrastructure #

@cite{aloni-2022} @cite{ciardelli-groenendijk-roelofsen-2018}

Team semantics evaluates formulas relative to sets of evaluation points (teams) rather than single points. This module provides the core infrastructure.

Background #

Team semantics originated in logic and has been applied to linguistics for:

Key Concepts #

Architecture #

This module provides general infrastructure. Specific applications:

@[reducible, inline]

A team is a set of worlds, represented as a characteristic function.

In team semantics, formulas are evaluated relative to teams rather than single worlds. A team represents an information state: the set of worlds compatible with current information.

This is equivalent to InfoState in Inquisitive Semantics.

Equations
Instances For

    The empty team (inconsistent information state)

    Equations
    Instances For

      The full team (no information / total ignorance)

      Equations
      Instances For

        Singleton team containing just one world

        Equations
        Instances For
          def Semantics.Dynamic.TeamSemantics.Team.isEmpty {W : Type u_1} (t : Team W) (worlds : List W) :

          Check if a team is empty (no worlds)

          Equations
          Instances For

            Check if a team is non-empty

            Equations
            Instances For

              Team membership: world w is in team t

              Equations
              Instances For
                def Semantics.Dynamic.TeamSemantics.Team.subset {W : Type u_1} (t t' : Team W) (worlds : List W) :

                Team subset: t ⊆ t'

                Equations
                Instances For

                  Team intersection: t ∩ t'

                  Equations
                  Instances For

                    Team union: t ∪ t'

                    Equations
                    Instances For

                      Team complement: W \ t

                      Equations
                      Instances For

                        Team difference: t \ t'

                        Equations
                        Instances For
                          def Semantics.Dynamic.TeamSemantics.Team.filter {W : Type u_1} (t : Team W) (p : WBool) :

                          Filter team by predicate

                          Equations
                          Instances For
                            def Semantics.Dynamic.TeamSemantics.Team.all {W : Type u_1} (t : Team W) (p : WBool) (worlds : List W) :

                            All worlds in team satisfy predicate

                            Equations
                            • t.all p worlds = worlds.all fun (w : W) => !t w || p w
                            Instances For
                              def Semantics.Dynamic.TeamSemantics.Team.any {W : Type u_1} (t : Team W) (p : WBool) (worlds : List W) :

                              Some world in team satisfies predicate

                              Equations
                              • t.any p worlds = worlds.any fun (w : W) => t w && p w
                              Instances For
                                def Semantics.Dynamic.TeamSemantics.Team.toList {W : Type u_1} (t : Team W) (worlds : List W) :

                                Convert team to list of worlds

                                Equations
                                Instances For

                                  Team from list of worlds

                                  Equations
                                  Instances For
                                    def Semantics.Dynamic.TeamSemantics.Team.beq {W : Type u_1} (t t' : Team W) (worlds : List W) :

                                    Team equality (extensional, given finite world list)

                                    Equations
                                    • t.beq t' worlds = worlds.all fun (w : W) => t w == t' w
                                    Instances For