Documentation

Linglib.Theories.Semantics.Dynamic.Systems.CDRT.Basic

@[reducible, inline]

CDRT state: a register/assignment function.

Registers are indexed by natural numbers and store entity values.

Equations
Instances For

    Dynamic proposition: relates input and output states.

    ⟦φ⟧ : Register E → Register E → Prop

    Equations
    Instances For

      Static proposition (for embedding classical logic).

      Equations
      Instances For

        Embed a static proposition as a dynamic one (test).

        ⟦p⟧(i, o) iff i = o ∧ p(i)

        Equations
        Instances For
          def Semantics.Dynamic.CDRT.DProp.seq {E : Type u_1} (φ ψ : DProp E) :

          Dynamic conjunction: relational composition.

          ⟦φ; ψ⟧(i, o) iff ∃k. ⟦φ⟧(i, k) ∧ ⟦ψ⟧(k, o)

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

              New discourse referent introduction.

              [new n] extends the register at position n with an arbitrary value.

              Equations
              Instances For

                Dynamic negation: test for failure.

                ⟦¬φ⟧(i, o) iff i = o ∧ ¬∃k. ⟦φ⟧(i, k)

                Equations
                Instances For
                  def Semantics.Dynamic.CDRT.DProp.impl {E : Type u_1} (φ ψ : DProp E) :

                  Dynamic implication: if φ succeeds, ψ must succeed.

                  ⟦φ → ψ⟧(i, o) iff i = o ∧ ∀k. (⟦φ⟧(i, k) → ∃m. ⟦ψ⟧(k, m))

                  Equations
                  Instances For
                    @[reducible, inline]

                    Entity type: individuals.

                    Equations
                    Instances For

                      Generalized quantifier type.

                      Equations
                      Instances For
                        def Semantics.Dynamic.CDRT.indefinite {E : Type u_1} (n : ) (p q : EDProp E) :

                        Indefinite "a/an": introduces dref and applies predicate.

                        ⟦a⟧ = λP.λQ. new n; P(rn); Q(rn)

                        where rn is the register lookup at n.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Semantics.Dynamic.CDRT.pronoun {E : Type u_1} (n : ) :
                          Register EE

                          Pronoun: lookup register value.

                          ⟦heₙ⟧ = rn (returns the value at register n)

                          Equations
                          Instances For

                            A dynamic proposition is TRUE at state i if it can transition somewhere.

                            Equations
                            Instances For

                              Dynamic entailment: φ entails ψ if ψ is true after φ.

                              Equations
                              Instances For
                                theorem Semantics.Dynamic.CDRT.DProp.neg_output {E : Type u_1} {φ : DProp E} {i o : Register E} (h : φ.neg i o) :
                                o = i

                                The output of a negated DProp always equals the input register.

                                theorem Semantics.Dynamic.CDRT.DProp.impl_true_at {E : Type u_1} (φ ψ : DProp E) (i : Register E) :
                                (φ.impl ψ).true_at i ∀ (k : Register E), φ i kψ.true_at k

                                DProp.impl is true at i iff every antecedent extension satisfies the consequent.

                                A static DProp is true at i iff its static content holds.