
Meta-data
- Description: Algebraic Graphs based on work by Andrey Mokhov
- Authors: Vilem-Benjamin Liepelt
- License: BSD3
- Copyright: (c) Authors 2018
- Issue-tracking: https://github.com/granule-project/granule/issues
- Repository: https://github.com/granule-project/granule
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