Documentation

Bml.Partitions

def isPartInterpolant (LR : TNode) (θ : Formula) :
Equations
Instances For
    Equations
    Instances For
      theorem choice_property_in_image {α : Type u_1} {β : Type u_2} {f : αβ} {l : List α} {p : βProp} (p_in_image : yList.map f l, p y) :
      xl, p (f x)
      def InterpolantInductionStep {C : List TNode} (L R : Finset Formula) (ruleA : LocalRuleApp (L, R) C) (subθs : (c : TNode) → c CPartInterpolant c) :
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem projection_reflects_unsat_L_L {θ : Formula} {LR : TNode} {φ : Formula} (nBoxφ_in_L : ~(φ) LR.1) (notSatNotTheta : ¬HasSat.Satisfiable ((diamondProjectTNode (Sum.inl φ) LR).1 {~θ})) :
        theorem projection_reflects_unsat_L_R {θ : Formula} {LR : TNode} {φ : Formula} (nBoxφ_in_L : ~(φ) LR.1) (notSatNotTheta : ¬HasSat.Satisfiable ((diamondProjectTNode (Sum.inl φ) LR).2 {θ})) :
        theorem projection_reflects_unsat_R_L {θ : Formula} {LR : TNode} {φ : Formula} (nBoxφ_in_R : ~(φ) LR.2) (notSatNotTheta : ¬HasSat.Satisfiable ((diamondProjectTNode (Sum.inr φ) LR).1 {~θ})) :
        theorem projection_reflects_unsat_R_R {θ : Formula} {LR : TNode} {φ : Formula} (nBoxφ_in_R : ~(φ) LR.2) (notSatNotTheta : ¬HasSat.Satisfiable ((diamondProjectTNode (Sum.inr φ) LR).2 {θ})) :
        Equations
        Instances For
          Equations
          Instances For
            theorem endNodeOfChildIsEndNode {C : List TNode} {x : TNode} {h : x C} {E LR : TNode} (lrApp : LocalRuleApp LR C) (subTabs : (c : TNode) → c CLocalTableau c) (E_in : E endNodesOf x, subTabs x h) :
            E endNodesOf LR, LocalTableau.fromRule lrApp subTabs
            def childNext {C : List TNode} {LR : TNode} {lrApp : LocalRuleApp LR C} (subTabs : (c : TNode) → c CLocalTableau c) (next : (Y : TNode) → Y endNodesOf LR, LocalTableau.fromRule lrApp subTabsClosedTableau Y) (cLR : TNode) (c_in_C : cLR C) (Y : TNode) :
            Y endNodesOf cLR, subTabs cLR c_in_CClosedTableau Y
            Equations
            • childNext subTabs next cLR c_in_C Y Y_in = next Y
            Instances For
              theorem childNext_eq {C : List TNode} {LR : TNode} {lrApp : LocalRuleApp LR C} (subTabs : (c : TNode) → c CLocalTableau c) (next : (Y : TNode) → Y endNodesOf LR, LocalTableau.fromRule lrApp subTabsClosedTableau Y) (cLR : TNode) (c_in_C : cLR C) (Y : TNode) (Y_in : Y endNodesOf LR, LocalTableau.fromRule lrApp subTabs) (Y_in_child : Y endNodesOf cLR, subTabs cLR c_in_C) :
              childNext subTabs next cLR c_in_C Y Y_in_child = next Y Y_in
              theorem elem_lt_map_sum {α : Type u_1} {x : α} {l : List α} (h : x l) (f : α) :
              f x (List.map f l).sum
              theorem endNodesOfChildAreEndNodes {C : List TNode} {cLR LR : TNode} (subTabs : (c : TNode) → c CLocalTableau c) (c_in_C : cLR C) (lrApp : LocalRuleApp LR C) :
              endNodesOf cLR, subTabs cLR c_in_C endNodesOf LR, LocalTableau.fromRule lrApp subTabs
              theorem endNodesOfChildSublistEndNodes {C : List TNode} {cLR LR : TNode} (subTabs : (c : TNode) → c CLocalTableau c) (c_in_C : cLR C) (lrApp : LocalRuleApp LR C) :
              (endNodesOf cLR, subTabs cLR c_in_C).Sublist (endNodesOf LR, LocalTableau.fromRule lrApp subTabs)
              theorem Sublist.pmap {α : Type u_1} {β : Type u_2} {p p2 : αProp} {f : (a : α) → p aβ} {g : (a : α) → p2 aβ} {xs ys : List α} {H : axs, p a} {H2 : ays, p2 a} (h : xs.Sublist ys) (agree : ∀ (x : α) (h1 : p x) (h2 : p2 x), f x h1 = g x h2) :
              (List.pmap f xs H).Sublist (List.pmap g ys H2)
              theorem map_sum_le_map_sum {α : Type u_1} (xs ys : List α) (h : xs.Sublist ys) (f : { x : α // x xs }) (g : { x : α // x ys }) (agree : xxs.attach, ∀ (x_in_ys : x ys), f x = g x, x_in_ys) :
              (List.map f xs.attach).sum (List.map g ys.attach).sum
              theorem childNext_lt {C : List TNode} {LR : TNode} {lrApp : LocalRuleApp LR C} (subTabs : (c : TNode) → c CLocalTableau c) (next : (Y : TNode) → Y endNodesOf LR, LocalTableau.fromRule lrApp subTabsClosedTableau Y) (cLR : TNode) (c_in_C : cLR C) :
              (ClosedTableau.loc (subTabs cLR c_in_C) (childNext subTabs next cLR c_in_C)).length < (ClosedTableau.loc (LocalTableau.fromRule lrApp subTabs) next).length
              theorem simple_lt {LR cLR : TNode} (isSimple : Simple LR) (next : (Y : TNode) → Y endNodesOf LR, LocalTableau.fromSimple isSimpleClosedTableau Y) (h : cLR endNodesOf LR, LocalTableau.fromSimple isSimple) :
              (next cLR h).length < (ClosedTableau.loc (LocalTableau.fromSimple isSimple) next).length
              @[irreducible]
              def tabToInt {LR : TNode} (tab : ClosedTableau LR) :
              Equations
              Instances For