Documentation

Validator.Certificate.BasicRules

@[irreducible]

Returns none if the formula is constant

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    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
          • One or more equations did not get rendered due to their size.
          Instances For
            @[irreducible]
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[irreducible]
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                @[irreducible]
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def Validator.Formalism.check_variables_subset1 {n : } {pt : STRIPS n} {R : Type} [F : Formalism pt R] [h1 : Formula.SententialEntailment (2 * n) R] [h2 : Formula.BoundedConjuction (2 * n) R] [Formula.Top (2 * n) R] [h3 : Formula.BoundedDisjunction (2 * n) R] [Formula.Bot (2 * n) R] (X1 : Variables pt R) (X2 : UnprimedVariables pt R) :
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    def Validator.Formalism.check_variables_subset2 {n : } {pt : STRIPS n} {R : Type} [F : Formalism pt R] [h1 : Formula.ClausalEntailment (2 * n) R] [h2 : Formula.BoundedConjuction (2 * n) R] [Formula.Top (2 * n) R] [h3 : Formula.ToCNF (2 * n) R] (X1 : Variables pt R) (X2 : UnprimedVariables pt R) :
                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem Validator.Formalism.check_variables_subset2_correct {n : } {pt : STRIPS n} {R : Type} [F : Formalism pt R] [h1 : Formula.ClausalEntailment (2 * n) R] [h2 : Formula.BoundedConjuction (2 * n) R] [Formula.Top (2 * n) R] [h3 : Formula.ToCNF (2 * n) R] (X1 : Variables pt R) (X2 : UnprimedVariables pt R) :
                      def Validator.Formalism.check_variables_subset3 {n : } {pt : STRIPS n} {R : Type} [F : Formalism pt R] [h1 : Formula.Implicant (2 * n) R] [h2 : Formula.BoundedDisjunction (2 * n) R] [Formula.Bot (2 * n) R] [h3 : Formula.ToDNF (2 * n) R] (X1 : Variables pt R) (X2 : UnprimedVariables pt R) :
                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        theorem Validator.Formalism.check_variables_subset3_correct {n : } {pt : STRIPS n} {R : Type} [F : Formalism pt R] [h1 : Formula.Implicant (2 * n) R] [h2 : Formula.BoundedDisjunction (2 * n) R] [Formula.Bot (2 * n) R] [h3 : Formula.ToDNF (2 * n) R] (X1 : Variables pt R) (X2 : UnprimedVariables pt R) :
                        def Validator.Formalism.check_variable_subset_pos_pos_1 {n : } {pt : STRIPS n} {R1 R2 : Type} [Formalism pt R1] [Formalism pt R2] [h1 : Formula.ToDNF (2 * n) R1] [h2 : Formula.Implicant (2 * n) R2] (x1 : UnprimedVariable pt R1) (x2 : UnprimedVariable pt R2) :
                        Result' ((↑x1).toStates (↑x2).toStates)
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Validator.Formalism.check_variable_subset_pos_pos_2 {n : } {pt : STRIPS n} {R1 R2 : Type} [Formalism pt R1] [Formalism pt R2] [h1 : Formula.ClausalEntailment (2 * n) R1] [h2 : Formula.ToCNF (2 * n) R2] (x1 : UnprimedVariable pt R1) (x2 : UnprimedVariable pt R2) :
                          Result' ((↑x1).toStates (↑x2).toStates)
                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def Validator.Formalism.check_variable_subset_pos_neg_1 {n : } {pt : STRIPS n} {R1 R2 : Type} [Formalism pt R1] [Formalism pt R2] [h1 : Formula.ToDNF (2 * n) R1] [h2 : Formula.ClausalEntailment (2 * n) R2] (x1 : UnprimedVariable pt R1) (x2 : UnprimedVariable pt R2) :
                            Result' ((↑x1).toStates (↑x2).toStates)
                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              def Validator.Formalism.check_variable_subset_pos_neg_2 {n : } {pt : STRIPS n} {R1 R2 : Type} [Formalism pt R1] [Formalism pt R2] [h1 : Formula.ClausalEntailment (2 * n) R1] [h2 : Formula.ToDNF (2 * n) R2] (x1 : UnprimedVariable pt R1) (x2 : UnprimedVariable pt R2) :
                              Result' ((↑x1).toStates (↑x2).toStates)
                              Equations
                              Instances For
                                def Validator.Formalism.check_variable_subset_neg_pos_1 {n : } {pt : STRIPS n} {R1 R2 : Type} [Formalism pt R1] [Formalism pt R2] [h1 : Formula.ToCNF (2 * n) R1] [h2 : Formula.Implicant (2 * n) R2] (x1 : UnprimedVariable pt R1) (x2 : UnprimedVariable pt R2) :
                                Result' ((↑x1).toStates (↑x2).toStates)
                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For
                                  def Validator.Formalism.check_variable_subset_neg_pos_2 {n : } {pt : STRIPS n} {R1 R2 : Type} [Formalism pt R1] [Formalism pt R2] [h1 : Formula.Implicant (2 * n) R1] [h2 : Formula.ToCNF (2 * n) R2] (x1 : UnprimedVariable pt R1) (x2 : UnprimedVariable pt R2) :
                                  Result' ((↑x1).toStates (↑x2).toStates)
                                  Equations
                                  Instances For
                                    Equations
                                    Instances For
                                      @[simp]
                                      theorem Validator.StateSetFormalism.mem_effectVarSet' {n : } {pt : STRIPS n} {aᵢ : Fin (List.length pt.actions')} {i : Fin n} :
                                      i (effectVarSet' aᵢ) i pt.actions'[aᵢ].add i pt.actions'[aᵢ].del
                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        Equations
                                        Instances For
                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            Equations
                                            Instances For
                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                @[irreducible]
                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For
                                                  def Validator.constraintB1 {n : } {pt : STRIPS n} {C : Certificate pt} (hC : C.validSets) (S1ᵢ S2ᵢ : ) :
                                                  Equations
                                                  • One or more equations did not get rendered due to their size.
                                                  Instances For
                                                    @[simp]
                                                    theorem Validator.constraintB1.prop_eq {n : } {pt : STRIPS n} {C : Certificate pt} {hC : C.validSets} {S1ᵢ S2ᵢ : } {a : Unit} :
                                                    (constraintB1 hC S1ᵢ S2ᵢ).prop a S1ᵢ < C.states.size S2ᵢ < C.states.size ∃ (hS1ᵢ : S1ᵢ < C.states.size) (hS2ᵢ : S2ᵢ < C.states.size), have R := hC.get_formalism [S1ᵢ, hS1ᵢ, S2ᵢ, hS2ᵢ]; Formalism.IsLiteralInter pt (StateSetFormalism.type pt R) (hC.getStates S1ᵢ, hS1ᵢ) Formalism.IsLiteralUnion pt (StateSetFormalism.type pt R) (hC.getStates S2ᵢ, hS2ᵢ) hC.getStates S1ᵢ, hS1ᵢ hC.getStates S2ᵢ, hS2ᵢ
                                                    def Validator.constraintB2 {n : } {pt : STRIPS n} {C : Certificate pt} (hC : C.validSets) (S1ᵢ S2ᵢ : ) :
                                                    Equations
                                                    • One or more equations did not get rendered due to their size.
                                                    Instances For
                                                      @[simp]
                                                      theorem Validator.constraintB2.prop_eq {n : } {pt : STRIPS n} {C : Certificate pt} {hC : C.validSets} {S1ᵢ S2ᵢ : } {a : Unit} :
                                                      (constraintB2 hC S1ᵢ S2ᵢ).prop a S1ᵢ < C.states.size S2ᵢ < C.states.size ∃ (hS1ᵢ : S1ᵢ < C.states.size) (hS2ᵢ : S2ᵢ < C.states.size), have R := hC.get_formalism [S1ᵢ, hS1ᵢ, S2ᵢ, hS2ᵢ]; Formalism.IsProgrInter pt (StateSetFormalism.type pt R) (hC.getStates S1ᵢ, hS1ᵢ) Formalism.IsLiteralUnion pt (StateSetFormalism.type pt R) (hC.getStates S2ᵢ, hS2ᵢ) hC.getStates S1ᵢ, hS1ᵢ hC.getStates S2ᵢ, hS2ᵢ
                                                      def Validator.constraintB3 {n : } {pt : STRIPS n} {C : Certificate pt} (hC : C.validSets) (S1ᵢ S2ᵢ : ) :
                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For
                                                        @[simp]
                                                        theorem Validator.constraintB3.prop_eq {n : } {pt : STRIPS n} {C : Certificate pt} {hC : C.validSets} {S1ᵢ S2ᵢ : } {a : Unit} :
                                                        (constraintB3 hC S1ᵢ S2ᵢ).prop a S1ᵢ < C.states.size S2ᵢ < C.states.size ∃ (hS1ᵢ : S1ᵢ < C.states.size) (hS2ᵢ : S2ᵢ < C.states.size), have R := hC.get_formalism [S1ᵢ, hS1ᵢ, S2ᵢ, hS2ᵢ]; Formalism.IsRegrInter pt (StateSetFormalism.type pt R) (hC.getStates S1ᵢ, hS1ᵢ) Formalism.IsLiteralUnion pt (StateSetFormalism.type pt R) (hC.getStates S2ᵢ, hS2ᵢ) hC.getStates S1ᵢ, hS1ᵢ hC.getStates S2ᵢ, hS2ᵢ
                                                        def Validator.constraintB4 {n : } {pt : STRIPS n} {C : Certificate pt} (hC : C.validSets) (S1ᵢ S2ᵢ : ) :
                                                        Equations
                                                        • One or more equations did not get rendered due to their size.
                                                        Instances For
                                                          @[simp]
                                                          theorem Validator.constraintB4.prop_eq {n : } {pt : STRIPS n} {C : Certificate pt} {hC : C.validSets} {S1ᵢ S2ᵢ : } {a : Unit} :
                                                          (constraintB4 hC S1ᵢ S2ᵢ).prop a S1ᵢ < C.states.size S2ᵢ < C.states.size ∃ (hS1ᵢ : S1ᵢ < C.states.size) (hS2ᵢ : S2ᵢ < C.states.size), have R1 := hC.get_formalism [S1ᵢ, hS1ᵢ]; have R2 := hC.get_formalism [S2ᵢ, hS2ᵢ]; Formalism.IsLiteral pt (StateSetFormalism.type pt R1) (hC.getStates S1ᵢ, hS1ᵢ) Formalism.IsLiteral pt (StateSetFormalism.type pt R2) (hC.getStates S2ᵢ, hS2ᵢ) hC.getStates S1ᵢ, hS1ᵢ hC.getStates S2ᵢ, hS2ᵢ
                                                          def Validator.constraintB5 {n : } {pt : STRIPS n} {C : Certificate pt} (hC : C.validSets) (A1ᵢ A2ᵢ : ) :
                                                          Equations
                                                          • One or more equations did not get rendered due to their size.
                                                          Instances For
                                                            @[simp]
                                                            theorem Validator.constraintB5.prop_eq {n : } {pt : STRIPS n} {C : Certificate pt} {hC : C.validSets} {A1ᵢ A2ᵢ : } {u : Unit} :
                                                            (constraintB5 hC A1ᵢ A2ᵢ).prop u A1ᵢ < C.actions.size A2ᵢ < C.actions.size ∃ (hA1ᵢ : A1ᵢ < C.actions.size) (hA2ᵢ : A2ᵢ < C.actions.size), hC.getActions A1ᵢ, hA1ᵢ hC.getActions A2ᵢ, hA2ᵢ