graph:negate
List of: Scheme Extensions
Subjects: Graph Theory
Contents: Kernel

Action: Negates an ordered graph.

Filename: kern/kern_scm/graph_scm.cxx

Syntax: (graph:negate in-graph)

Arg Types: in-graph graph

Returns: graph

Description: For noncyclic ordered graphs, the highest numbered vertices are assigned 0 and new numbering for the vertices commences from there. For cyclic ordered graphs, the 0 vertex remains the same, but sequence or direction around the cycle changes.


in-graph specifies a graph.

Example: ; graph:negate

; Create a simple graph.

(define g1 (graph "a-b b-c c-e c-d c-f f-g f-h"))

;; g1

(graph:order-from g1 "a")

;; 4

(graph:show-order g1)

;; ("a 0" "b 1" "c 2" "e 3" "d 3" "f 3" "g 4" "h 4")

(define g2 (graph:negate g1))

;; g2

(graph:show-order g2)

;; ("a 4" "b 3" "c 2" "e 1" "d 1" "f 1" "g 0" "h 0")

; Create a simple cyclic example

(define g3 (graph "me-you you-us us-them


them-they me-they"))

;; g3

; CAREFUL: The order of the graph output may

; not be the same each time.

(graph:cycle? g3)

;; #t

(graph:order-cyclic g3 "me" "you")

;; 4

(graph:show-order g3)

;; ("me 0" "you 4" "us 3" "them 2" "they 1")

(define g4 (graph:negate g3))

;; g4

(graph:show-order g4)

;; ("me 0" "you 1" "us 2" "them 3" "they 4")
PDF/KERN/13SCF.PDF
HTM/DATA/KERN/KERN/13SCF/0055.HTM