Documentation

HexPermGroup.Search.BoundedChildren

inductive Hex.PermGroup.Search.Bounded.Status {n : Nat} {G : Group n} {P : Predicate n} (C : Constraint G P) (t : Node G) (a : Accumulator G P) (budget : Budget) :
Instances For
    structure Hex.PermGroup.Search.Bounded.Result {n : Nat} {G : Group n} {P : Predicate n} (C : Constraint G P) (t : Node G) (a : Accumulator G P) (budget : Budget) :

    Even on exhaustion the accumulated subgroup remains checked, satisfies the predicate, and contains every generator found before the stopping point.

    Instances For
      def Hex.PermGroup.Search.Bounded.Result.stop {n : Nat} {G : Group n} {P : Predicate n} {budget : Budget} (C : Constraint G P) (t : Node G) (a : Accumulator G P) (failure : Exhausted budget) :
      Result C t a budget
      Equations
      Instances For
        def Hex.PermGroup.Search.Bounded.Result.finish {n : Nat} {G : Group n} {P : Predicate n} {budget : Budget} (C : Constraint G P) (t : Node G) (a b : Accumulator G P) (grows : a.group.IsSubgroup b.group) (certificate : Unit → Certificate C.Reason) (checked : checkTree C b.group t (certificate ()) = true) (m : Meter budget) :
        Result C t a budget

        Reserve a certificate node before constructing it. Failure preserves the current subgroup, including any successful leaf just inserted into it.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          inductive Hex.PermGroup.Search.Bounded.ChildrenStatus {n : Nat} {G : Group n} {P : Predicate n} (C : Constraint G P) {size : Nat} (nodes : Fin size → Node G) (k : Nat) (hk : k ≤ size) (a : Accumulator G P) (budget : Budget) :
          Instances For
            structure Hex.PermGroup.Search.Bounded.Children {n : Nat} {G : Group n} {P : Predicate n} (C : Constraint G P) {size : Nat} (nodes : Fin size → Node G) (a : Accumulator G P) (k : Nat) (hk : k ≤ size) (budget : Budget) :
            Instances For
              def Hex.PermGroup.Search.Bounded.collect {n : Nat} {G : Group n} {P : Predicate n} {budget : Budget} (C : Constraint G P) {size : Nat} (nodes : Fin size → Node G) (visit : (a : Accumulator G P) → Meter budget → (i : Fin size) → Result C (nodes i) a budget) (a : Accumulator G P) (m : Meter budget) (k : Nat) (hk : k ≤ size) :
              Children C nodes a k hk budget

              Process children in orbit order. An incomplete child stops the loop and retains its lower bound; completed earlier certificates are transported along each enlargement of the accumulator.

              Equations
              Instances For