Documentation

HexGraphIso.Nauty.Sparse.Search

Canonical rows and scratch storage carried by the shared search. Scratch is independent of the partition nest restored during backtracking.

Instances For
    def Hex.GraphIso.Nauty.Sparse.Storage.update {n : Nat} (g : Graph n) (s : Storage n) (lab : Array Nat) (same : Nat) :
    Equations
    Instances For
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def Hex.GraphIso.Nauty.Sparse.visit {n : Nat} (g : Graph n) (level numcells : Nat) (st : State n) :

        Count the node and run the sparse refinement dispatch.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def Hex.GraphIso.Nauty.Sparse.chooseTarget {n : Nat} (first : Bool) (g : Graph n) (tcLevel level numcells : Nat) (st : State n) :

          The shared target guards, with targetcell_sg as the graph dispatch.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            def Hex.GraphIso.Nauty.Sparse.classify {n : Nat} (g : Graph n) (level numcells : Nat) (st : State n) :

            nauty's five classifications, using sparse automorphism and canonical row tests. Every other transition is shared with dense nauty.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[instance_reducible]
              Equations
              • One or more equations did not get rendered due to their size.
              def Hex.GraphIso.Nauty.Sparse.initial {n : Nat} (g : Graph n) (lab : Array Nat) (ends : List Nat) :

              Initial shared bookkeeping and a compressed canonical store.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def Hex.GraphIso.Nauty.Sparse.runState {n : Nat} (g : Graph n) (lab : Array Nat) (ends : List Nat) :

                The pinned sparse search, retaining its final exit and diagnostic state.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def Hex.GraphIso.Nauty.Sparse.finish {n : Nat} (g : Graph n) (st : State n) :

                  Finish the pending canonical rows, preserving the raw sparse row order.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[specialize #[]]
                    def Hex.GraphIso.Nauty.Sparse.initialPartitionWith {α : Type u_1} (n k : Nat) (colors : Array α) (color : α → Nat) :

                    Stable colour buckets in O(n + k) time. Valid colourings use every bucket; the empty graph has no buckets.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For