Module Graph

Meta-data

Contents

data Graph (a : Type) where
    EmptyG  : Graph a
  ; Vertex  : a -> Graph a
  ; Overlay : (Graph a) -> (Graph a) -> Graph a
  ; Connect : (Graph a) -> (Graph a) -> Graph a

vertices : forall {a : Type} 
         . (List a) -> Graph a

edge : forall {a : Type} 
     . a -> a -> Graph a

mapG : forall {a : Type, b : Type} 
     . ((a -> b) [0..]) -> (Graph a) -> Graph b

foldG : forall {a : Type, b : Type} 
      . (b [0..]) -> ((a -> b) [0..]) -> ((b -> b -> b) [0..]) -> ((b -> b -> b) [0..]) -> (Graph a) -> b

isEmpty : forall {a : Type} 
        . (Graph (a [0])) -> Bool

hasVertex : (Int [0..]) -> (Graph Int) -> Bool

toList : forall {a : Type} 
       . (Graph a) -> List a

transpose : forall {a : Type} 
          . (Graph a) -> Graph a

add : Int -> Int -> Int

size : forall {a : Type} 
     . (Graph (a [0])) -> Int
Count number of leaves of the graph expression
vertexcount : forall {a : Type} 
            . (Graph (a [0])) -> Int