Documentation

Linglib.Theories.Semantics.Dynamic.Core.DynamicTy2

Dynamic Ty2 is parameterized by:

This follows Muskens's insight: instead of assignments being functions, they are atomic, and drefs are functions FROM assignments.

@[reducible, inline]
abbrev Semantics.Dynamic.Core.DynamicTy2.Dref (S : Type u_1) (E : Type u_2) :
Type (max u_1 u_2)

Discourse referent for individuals: type se in Dynamic Ty2

Equations
Instances For
    class Semantics.Dynamic.Core.DynamicTy2.AssignmentStructure (S : Type u_1) (E : Type u_2) :
    Type (max u_1 u_2)

    Random assignment axiom structure.

    In Dynamic Ty2, we need axioms ensuring S behaves like assignments. This structure captures the "Enough Assignments" axiom:

    ∀i ∀u ∀f. udref(u) → ∃j. i[u]j ∧ uj = f

    We model this via an extend operation.

    • extend : S(SE)ES

      Extend assignment i at dref u to value e, giving j

    • extend_at (i : S) (u : SE) (e : E) : u (extend i u e) = e

      The extended assignment has the new value at u

    • extend_other (i : S) (u v : SE) (e : E) : u vv (extend i u e) = v i

      The extended assignment agrees elsewhere

    Instances

      Random assignment DRS: [u] introduces dref u

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

          Existential DRS: ∃u(D) = [u]; D

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

              Universal condition: ∀u(D) = ~∃u(~D)

              Equations
              Instances For
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def Semantics.Dynamic.Core.DynamicTy2.atom1 {S : Type u_1} {E : Type u_2} (P : EProp) (u : Dref S E) :

                  Atomic condition from a predicate and drefs

                  Equations
                  Instances For
                    def Semantics.Dynamic.Core.DynamicTy2.atom2 {S : Type u_1} {E : Type u_2} (P : EEProp) (u v : Dref S E) :
                    Equations
                    Instances For
                      def Semantics.Dynamic.Core.DynamicTy2.atom3 {S : Type u_1} {E : Type u_2} (P : EEEProp) (u v w : Dref S E) :
                      Equations
                      Instances For
                        def Semantics.Dynamic.Core.DynamicTy2.eq' {S : Type u_1} {E : Type u_2} (u v : Dref S E) :

                        Equality condition

                        Equations
                        Instances For

                          Translating DPL into Dynamic Ty2 #

                          DPL variables xₙ become drefs uₙ : S → E (projection functions).

                          DPLDynamic Ty2
                          R(x₁,...,xₙ)[λi. R(u₁i,...,uₙi)]
                          x₁ = x₂[λi. u₁i = u₂i]
                          φ; ψTR(φ) ⨟ TR(ψ)
                          [∼TR(φ)]
                          [x][uₓ] (random assignment)

                          DPL's assignment functions g : Var → E become "flipped" to drefs u : S → E, where S plays the role of the assignment itself.

                          def Semantics.Dynamic.Core.DynamicTy2.specificDref {S : Type u_1} {E : Type u_2} (e : E) :
                          Dref S E

                          Specific dref: constant function (for proper names).

                          John := λi. john

                          A proper name denotes the same individual regardless of assignment.

                          Equations
                          Instances For
                            def Semantics.Dynamic.Core.DynamicTy2.properName {S : Type u_1} {E : Type u_2} [AssignmentStructure S E] (u : SE) (e : E) :
                            DRS S

                            Proper name introduction (indefinite-like analysis).

                            Johnu ↝ [u | u = John]

                            This introduces an unspecific dref constrained to equal the specific one.

                            Equations
                            Instances For

                              Axioms AX2–AX4: Variable vs Constant Registers #

                              @cite{muskens-1996} p. 156

                              AX1 is captured by AssignmentStructure.extend above. The remaining axioms:

                              theorem Semantics.Dynamic.Core.DynamicTy2.specificDref_constant {S : Type u_1} {E : Type u_2} (e : E) (i j : S) :

                              AX4: Specific (constant) drefs return the same value regardless of state.

                              theorem Semantics.Dynamic.Core.DynamicTy2.specificDref_extend_invariant {S : Type u_1} {E : Type u_2} [AssignmentStructure S E] (e : E) (u : SE) (d : E) (i : S) (h : specificDref e u) :

                              Specific drefs are invariant under extend (consequence of AX1 + AX4).