Documentation

Pdl.Syntax

Syntax (Section 2.1) #

inductive Formula :
Instances For
    inductive Program :
    Instances For

      Abbreviations and Notation #

      Equations
      Instances For

        □(αs,φ)

        Equations
        Instances For
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              Equations
              Instances For
                Equations
                Instances For
                  Equations
                  • One or more equations did not get rendered due to their size.
                  @[simp]
                  theorem Formula.boxes_nil {φ : Formula} :
                  @[simp]
                  theorem Formula.boxes_cons {β : Program} {δ : List Program} {φ : Formula} :
                  theorem boxes_last {δ : List Program} {α : Program} {φ : Formula} :

                  Loaded Formulas #

                  inductive AnyFormula :
                  Instances For
                    inductive LoadFormula :
                    Instances For
                      inductive AnyNegFormula :
                      Instances For
                        Equations
                        Instances For
                          @[simp]
                          @[simp]
                          theorem loadMulti_cons {β : Program} {δ : List Program} {α : Program} {φ : Formula} :
                          loadMulti (β :: δ) α φ = βAnyFormula.loaded (loadMulti δ α φ)
                          Equations
                          Instances For
                            @[simp]
                            theorem unload_loadMulti {δ : List Program} {α : Program} {φ : Formula} :
                            inductive NegLoadFormula :
                            Instances For
                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For
                                  Equations
                                  Instances For
                                    @[simp]

                                    Load a possibly already loaded formula χ with a sequence δ of boxes. The result is loaded iff δ≠[] or χ was loaded.

                                    Equations
                                    Instances For
                                      @[simp]
                                      @[simp]
                                      theorem AnyFormula.loadBoxes_cons {α : Program} {γ : List Program} {ξ : AnyFormula} :
                                      loadBoxes (α :: γ) ξ = loaded (αloadBoxes γ ξ)

                                      Spliting of loaded formulas #

                                      Split any formula into the list of loaded boxes and the free formula.

                                      Equations
                                      Instances For

                                        Split a loaded formula into the list of loaded boxes and the free formula.

                                        Equations
                                        Instances For
                                          @[simp]
                                          Equations
                                          Instances For
                                            @[simp]
                                            theorem loadMulti_nonEmpty_box {δ : List Program} {α : Program} {h' : α :: δ []} {φ : Formula} (h : δ []) :
                                            theorem LoadFormula.split_eq_loadMulti_nonEmpty' {δ : List Program} {φ : Formula} (lf : LoadFormula) (h : δ []) (h2 : lf.split = (δ, φ)) :
                                            theorem loadMulti_nonEmpty_eq_loadMulti {δ : List Program} {α : Program} {h : δ ++ [α] []} {φ : Formula} :
                                            loadMulti_nonEmpty (δ ++ [α]) h φ = loadMulti δ α φ
                                            theorem LoadFormula.split_eq_loadMulti (lf : LoadFormula) {δ : List Program} {α : Program} {φ : Formula} (h : lf.split = (δ ++ [α], φ)) :
                                            lf = loadMulti δ α φ