File: .lake/packages/lean4/src/lean/Lean/Util/SCC.lean

full_name: Lean.SCC.Data.index?
code: structure Data where
  index?   : Option Nat := none
  lowlink? : Option Nat := none
  onStack  : Bool       := false
goal: Option Nat

full_name: Lean.SCC.Data
code: structure Data where
  index?   : Option Nat := none
  lowlink? : Option Nat := none
  onStack  : Bool       := false
goal: Type

full_name: Lean.SCC.Data.onStack
code: structure Data where
  index?   : Option Nat := none
  lowlink? : Option Nat := none
  onStack  : Bool       := false
goal: Bool

full_name: Lean.SCC.Data.lowlink?
code: structure Data where
  index?   : Option Nat := none
  lowlink? : Option Nat := none
  onStack  : Bool       := false
goal: Option Nat

full_name: Lean.SCC.State.sccs
code: structure State where
  stack     : List α := []
  nextIndex : Nat := 0
  data      : HashMap α Data := {}
  sccs      : List (List α) := []
goal: List (List α)

full_name: Lean.SCC.State.data
code: structure State where
  stack     : List α := []
  nextIndex : Nat := 0
  data      : HashMap α Data := {}
  sccs      : List (List α) := []
goal: Lean.HashMap α Lean.SCC.Data

full_name: Lean.SCC.State.nextIndex
code: structure State where
  stack     : List α := []
  nextIndex : Nat := 0
  data      : HashMap α Data := {}
  sccs      : List (List α) := []
goal: Nat

full_name: Lean.SCC.State.stack
code: structure State where
  stack     : List α := []
  nextIndex : Nat := 0
  data      : HashMap α Data := {}
  sccs      : List (List α) := []
goal: List α

full_name: Lean.SCC.State
code: structure State where
  stack     : List α := []
  nextIndex : Nat := 0
  data      : HashMap α Data := {}
  sccs      : List (List α) := []
goal: Type

full_name: Lean.SCC.M
code: abbrev M 
goal: Type → Type

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.getDataOf
code: private def getDataOf (a : α) : M α Data 
goal: Lean.SCC.M α Lean.SCC.Data

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.push
code: private def push (a : α) : M α Unit 
goal: Lean.SCC.M α Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.modifyDataOf
code: private def modifyDataOf (a : α) (f : Data → Data) : M α Unit 
goal: Lean.SCC.M α Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.resetOnStack
code: private def resetOnStack (a : α) : M α Unit 
goal: Lean.SCC.M α Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.updateLowLinkOf
code: private def updateLowLinkOf (a : α) (v : Option Nat) : M α Unit 
goal: Lean.SCC.M α Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.addSCC.add
code: private def addSCC (a : α) : M α Unit 
goal: List α → List α → Lean.SCC.M α Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.addSCC
code: private def addSCC (a : α) : M α Unit 
goal: Lean.SCC.M α Unit

full_name: _private.«.lake».packages.lean4.src.lean.Lean.Util.SCC.0.Lean.SCC.sccAux
code: private partial def sccAux (successorsOf : α → List α) (a : α) : M α Unit 
goal: Lean.SCC.M α Unit

full_name: Lean.SCC.scc
code: def scc (vertices : List α) (successorsOf : α → List α) : List (List α) 
goal: List (List α)