Documentation

PGCL.ProofRules

def pGCL.AST {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] (C : pGCL Γ) :

A program is Almost Surely Terminating iff it's weakest pre-expectation without ticks of one is one is.

Equations
Instances For
    noncomputable def pGCL.cwp {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] (O : Optimization) (C : pGCL Γ) :
    (State ΓENNReal) →o State ΓENNReal
    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
          def pGCL.ertEnc {𝒱 : Type u_1} {Γ : 𝒱Type u_2} :
          pGCL ΓpGCL Γ

          Encodes a program for analyzing expected runtimes by removing all existing tick statements, and adding tick(1) to every existing non-tick statement.

          Equations
          Instances For
            noncomputable def pGCL.ert {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] (O : Optimization) (C : pGCL Γ) :
            (State ΓENNReal) →o State ΓENNReal
            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
                  def pGCL.ParkInvariant {𝒱 : Type u_1} {Γ : 𝒱Type u_2} (g : (State ΓENNReal) →o State ΓENNReal) (b : BExpr Γ) (φ I : State ΓENNReal) :

                  A Park invariant.

                  Equations
                  Instances For
                    theorem pGCL.ParkInduction {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] {O : Optimization} {b : BExpr Γ} {C : pGCL Γ} {φ I : State ΓENNReal} (h : ParkInvariant wp[O]⟦@C b φ I) :

                    Park induction.

                    def pGCL.ParkCoinvariant {𝒱 : Type u_1} {Γ : 𝒱Type u_2} (g : ProbExp Γ →o ProbExp Γ) (b : BExpr Γ) (φ I : ProbExp Γ) :

                    A Park coinvariant.

                    Equations
                    Instances For
                      theorem pGCL.ParkCoinduction {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] {O : Optimization} {b : BExpr Γ} {C : pGCL Γ} {φ I : ProbExp Γ} (h : ParkCoinvariant wlp'[O]⟦@C b φ I) :

                      Park coinduction.

                      def pGCL.ParkKInvariant {𝒱 : Type u_1} {Γ : 𝒱Type u_2} (g : (State ΓENNReal) →o State ΓENNReal) (b : BExpr Γ) (φ : State ΓENNReal) (k : ) (I : State ΓENNReal) :

                      A Park k-invariant.

                      Equations
                      Instances For
                        theorem pGCL.ParkKInduction {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] {O : Optimization} {b : BExpr Γ} {C : pGCL Γ} {φ I : State ΓENNReal} (k : ) (h : ParkKInvariant wp[O]⟦@C b φ k I) :

                        Park k-induction.

                        def pGCL.ParkKCoinvariant {𝒱 : Type u_1} {Γ : 𝒱Type u_2} (g : ProbExp Γ →o ProbExp Γ) (b : BExpr Γ) (φ : ProbExp Γ) (k : ) (I : ProbExp Γ) :

                        A Park k-coinvariant.

                        Equations
                        Instances For
                          theorem pGCL.ParkKCoinduction {𝒱 : Type u_1} {Γ : 𝒱Type u_2} [DecidableEq 𝒱] {O : Optimization} {b : BExpr Γ} {C : pGCL Γ} {φ I : ProbExp Γ} (k : ) (h : ParkKCoinvariant wlp'[O]⟦@C b φ k I) :

                          Park k-coinduction.