4.2 graph
(require karp/lib/graph) | package: Karp |
type-descriptor
(graph directedness)
directedness = #:undirected | #:directed
type-descriptor
(subgraph-of a-graph)
a-graph : value-descriptor? Graph?
value-descriptor / procedure
(edges-of a-graph)
(edges-of g)
a-graph : value-descriptor? Graph?
g : graph?
value-descriptor / procedure
(vertices-of a-graph)
(vertices-of g)
a-graph : value-descriptor? Graph?
g : graph?
procedure
(endpoints e) → (setof? any)
e : edge?
procedure
(-e- u v) → undirected-edge?
u : any v : any
NOT available inside verifier definitions
procedure
(-e-> u v) → directed-edge?
u : any v : any
NOT available inside verifier definitions
procedure
(has-edge? u v g) → boolean?
u : any v : any g : graph?
procedure
(e-u e) → any
e : edge
procedure
(e-v e) → any
e : edge?
procedure
(incident? e v) → boolean?
e : edge? v : any
procedure
(subgraph-of? g1 g2) → boolean?
g1 : graph? g2 : graph?
procedure
(neighbors g u) → (setof any)
g : graph? u : any
procedure
(in-neighbors g u) → (setof any)
g : graph? u : any
procedure
(create-graph V E [#:directed? directed]) → graph?
V : (setof any) E : (setof edge?) directed : boolean? = #f
procedure
(create-graph-from-edges E [ #:directed? directed]) → graph? E : (setof edge?) directed : boolean? = #f
procedure
(remove-edges g es) → graph?
g : graph? es : (setof edge)
procedure
(remove-vertices g vs) → graph?
g : graph? vs : (setof any)
procedure
(connected? g) → boolean?
g : graph?
procedure
(acyclic? g) → boolean?
g : graph?
procedure
(st-path? g s t) → boolean?
g : graph? s : any t : any