Budddy/exst

Dependency Graph

Closed this issue · 1 comments

generate and print dependency graph

Possibilities to print the graph:

Association Matrix

Dependency graph printed as association matrix.
In the rows the first entry is the id of the atom, then the name of the atom.
In the first row is a list of the ids of the atoms.

Example output as matrix:

Dependency Matrix: 
               23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 
23: color(1,r) -  X  X  -  X  -  X  -  -  X  -  -  -  -  -  -  -  -  -  -  -  
24: color(2,r) X  -  -  X  -  X  X  -  -  X  -  -  X  -  -  -  -  -  -  -  -  
25: color(1,g) X  -  -  X  X  -  -  X  -  -  X  -  -  -  -  -  -  -  -  -  -  
26: color(2,g) -  X  X  -  -  X  -  X  -  -  X  -  -  X  -  -  -  -  -  -  -  
27: color(1,b) X  -  X  -  -  X  -  -  X  -  -  X  -  -  -  -  -  -  -  -  -  
28: color(2,b) -  X  -  X  X  -  -  -  X  -  -  X  -  -  X  -  -  -  -  -  -  
29: color(3,r) X  X  -  -  -  -  -  X  X  -  -  -  X  -  -  X  -  -  -  -  -  
30: color(3,g) -  -  X  X  -  -  X  -  X  -  -  -  -  X  -  -  X  -  -  -  -  
31: color(3,b) -  -  -  -  X  X  X  X  -  -  -  -  -  -  X  -  -  X  -  -  -  
32: color(4,r) X  X  -  -  -  -  -  -  -  -  X  X  -  -  -  X  -  -  -  -  -  
33: color(4,g) -  -  X  X  -  -  -  -  -  X  -  X  -  -  -  -  X  -  -  -  -  
34: color(4,b) -  -  -  -  X  X  -  -  -  X  X  -  -  -  -  -  -  X  -  -  -  
35: color(7,r) -  X  -  -  -  -  X  -  -  -  -  -  -  X  X  -  -  -  X  -  -  
36: color(7,g) -  -  -  X  -  -  -  X  -  -  -  -  X  -  X  -  -  -  -  X  -  
37: color(7,b) -  -  -  -  -  X  -  -  X  -  -  -  X  X  -  -  -  -  -  -  X  
38: color(5,r) -  -  -  -  -  -  X  -  -  X  -  -  -  -  -  -  X  X  X  -  -  
39: color(5,g) -  -  -  -  -  -  -  X  -  -  X  -  -  -  -  X  -  X  -  X  -  
40: color(5,b) -  -  -  -  -  -  -  -  X  -  -  X  -  -  -  X  X  -  -  -  X  
41: color(6,r) -  -  -  -  -  -  -  -  -  -  -  -  X  -  -  X  -  -  -  X  X  
42: color(6,g) -  -  -  -  -  -  -  -  -  -  -  -  -  X  -  -  X  -  X  -  X  
43: color(6,b) -  -  -  -  -  -  -  -  -  -  -  -  -  -  X  -  -  X  X  X  -  

Edge List

The dependencies are printed as list, first the id of the atom then the name of the atom and then a list of the dependencies from the atom.

Example output as edge list:

Dependency List: 
0 :           
1 :           
2 : edge(1,2) 
3 : edge(1,3) 
4 : edge(1,4) 
5 : edge(2,3) 
6 : edge(2,4) 
7 : edge(2,7) 
8 : edge(3,5) 
9 : edge(3,7) 
10: edge(4,5) 
11: edge(5,6) 
12: edge(6,7) 
13: col(r)    
14: col(g)    
15: col(b)    
16: node(1)   
17: node(2)   
18: node(3)   
19: node(4)   
20: node(5)   
21: node(6)   
22: node(7)   
23: color(1,r)
color(1,r) -> color(2,r)
color(1,r) -> color(2,r)
color(1,r) -> color(3,r)
color(1,r) -> color(3,r)
color(1,r) -> color(4,r)
color(1,r) -> color(4,r)
color(1,r) -> color(1,g)
color(1,r) -> color(1,g)
color(1,r) -> color(1,b)
color(1,r) -> color(1,b)
24: color(2,r)
color(2,r) -> color(1,r)
color(2,r) -> color(1,r)
color(2,r) -> color(3,r)
color(2,r) -> color(3,r)
color(2,r) -> color(4,r)
color(2,r) -> color(4,r)
color(2,r) -> color(7,r)
color(2,r) -> color(7,r)
color(2,r) -> color(2,g)
color(2,r) -> color(2,g)
color(2,r) -> color(2,b)
color(2,r) -> color(2,b)
25: color(1,g)
color(1,g) -> color(2,g)
color(1,g) -> color(2,g)
color(1,g) -> color(3,g)
color(1,g) -> color(3,g)
color(1,g) -> color(4,g)
color(1,g) -> color(4,g)
color(1,g) -> color(1,r)
color(1,g) -> color(1,r)
color(1,g) -> color(1,b)
color(1,g) -> color(1,b)
26: color(2,g)
color(2,g) -> color(1,g)
color(2,g) -> color(1,g)
color(2,g) -> color(3,g)
color(2,g) -> color(3,g)
color(2,g) -> color(4,g)
color(2,g) -> color(4,g)
color(2,g) -> color(7,g)
color(2,g) -> color(7,g)
color(2,g) -> color(2,r)
color(2,g) -> color(2,r)
color(2,g) -> color(2,b)
color(2,g) -> color(2,b)
27: color(1,b)
color(1,b) -> color(2,b)
color(1,b) -> color(2,b)
color(1,b) -> color(3,b)
color(1,b) -> color(3,b)
color(1,b) -> color(4,b)
color(1,b) -> color(4,b)
color(1,b) -> color(1,r)
color(1,b) -> color(1,r)
color(1,b) -> color(1,g)
color(1,b) -> color(1,g)
28: color(2,b)
color(2,b) -> color(1,b)
color(2,b) -> color(1,b)
color(2,b) -> color(3,b)
color(2,b) -> color(3,b)
color(2,b) -> color(4,b)
color(2,b) -> color(4,b)
color(2,b) -> color(7,b)
color(2,b) -> color(7,b)
color(2,b) -> color(2,r)
color(2,b) -> color(2,r)
color(2,b) -> color(2,g)
color(2,b) -> color(2,g)
29: color(3,r)
color(3,r) -> color(1,r)
color(3,r) -> color(1,r)
color(3,r) -> color(2,r)
color(3,r) -> color(2,r)
color(3,r) -> color(5,r)
color(3,r) -> color(5,r)
color(3,r) -> color(7,r)
color(3,r) -> color(7,r)
color(3,r) -> color(3,g)
color(3,r) -> color(3,g)
color(3,r) -> color(3,b)
color(3,r) -> color(3,b)
30: color(3,g)
color(3,g) -> color(1,g)
color(3,g) -> color(1,g)
color(3,g) -> color(2,g)
color(3,g) -> color(2,g)
color(3,g) -> color(5,g)
color(3,g) -> color(5,g)
color(3,g) -> color(7,g)
color(3,g) -> color(7,g)
color(3,g) -> color(3,r)
color(3,g) -> color(3,r)
color(3,g) -> color(3,b)
color(3,g) -> color(3,b)
31: color(3,b)
color(3,b) -> color(1,b)
color(3,b) -> color(1,b)
color(3,b) -> color(2,b)
color(3,b) -> color(2,b)
color(3,b) -> color(5,b)
color(3,b) -> color(5,b)
color(3,b) -> color(7,b)
color(3,b) -> color(7,b)
color(3,b) -> color(3,r)
color(3,b) -> color(3,r)
color(3,b) -> color(3,g)
color(3,b) -> color(3,g)
32: color(4,r)
color(4,r) -> color(1,r)
color(4,r) -> color(1,r)
color(4,r) -> color(2,r)
color(4,r) -> color(2,r)
color(4,r) -> color(5,r)
color(4,r) -> color(5,r)
color(4,r) -> color(4,g)
color(4,r) -> color(4,g)
color(4,r) -> color(4,b)
color(4,r) -> color(4,b)
33: color(4,g)
color(4,g) -> color(1,g)
color(4,g) -> color(1,g)
color(4,g) -> color(2,g)
color(4,g) -> color(2,g)
color(4,g) -> color(5,g)
color(4,g) -> color(5,g)
color(4,g) -> color(4,r)
color(4,g) -> color(4,r)
color(4,g) -> color(4,b)
color(4,g) -> color(4,b)
34: color(4,b)
color(4,b) -> color(1,b)
color(4,b) -> color(1,b)
color(4,b) -> color(2,b)
color(4,b) -> color(2,b)
color(4,b) -> color(5,b)
color(4,b) -> color(5,b)
color(4,b) -> color(4,r)
color(4,b) -> color(4,r)
color(4,b) -> color(4,g)
color(4,b) -> color(4,g)
35: color(7,r)
color(7,r) -> color(2,r)
color(7,r) -> color(2,r)
color(7,r) -> color(3,r)
color(7,r) -> color(3,r)
color(7,r) -> color(6,r)
color(7,r) -> color(6,r)
color(7,r) -> color(7,g)
color(7,r) -> color(7,g)
color(7,r) -> color(7,b)
color(7,r) -> color(7,b)
36: color(7,g)
color(7,g) -> color(2,g)
color(7,g) -> color(2,g)
color(7,g) -> color(3,g)
color(7,g) -> color(3,g)
color(7,g) -> color(6,g)
color(7,g) -> color(6,g)
color(7,g) -> color(7,r)
color(7,g) -> color(7,r)
color(7,g) -> color(7,b)
color(7,g) -> color(7,b)
37: color(7,b)
color(7,b) -> color(2,b)
color(7,b) -> color(2,b)
color(7,b) -> color(3,b)
color(7,b) -> color(3,b)
color(7,b) -> color(6,b)
color(7,b) -> color(6,b)
color(7,b) -> color(7,r)
color(7,b) -> color(7,r)
color(7,b) -> color(7,g)
color(7,b) -> color(7,g)
38: color(5,r)
color(5,r) -> color(3,r)
color(5,r) -> color(3,r)
color(5,r) -> color(4,r)
color(5,r) -> color(4,r)
color(5,r) -> color(6,r)
color(5,r) -> color(6,r)
color(5,r) -> color(5,g)
color(5,r) -> color(5,g)
color(5,r) -> color(5,b)
color(5,r) -> color(5,b)
39: color(5,g)
color(5,g) -> color(3,g)
color(5,g) -> color(3,g)
color(5,g) -> color(4,g)
color(5,g) -> color(4,g)
color(5,g) -> color(6,g)
color(5,g) -> color(6,g)
color(5,g) -> color(5,r)
color(5,g) -> color(5,r)
color(5,g) -> color(5,b)
color(5,g) -> color(5,b)
40: color(5,b)
color(5,b) -> color(3,b)
color(5,b) -> color(3,b)
color(5,b) -> color(4,b)
color(5,b) -> color(4,b)
color(5,b) -> color(6,b)
color(5,b) -> color(6,b)
color(5,b) -> color(5,r)
color(5,b) -> color(5,r)
color(5,b) -> color(5,g)
color(5,b) -> color(5,g)
41: color(6,r)
color(6,r) -> color(5,r)
color(6,r) -> color(5,r)
color(6,r) -> color(7,r)
color(6,r) -> color(7,r)
color(6,r) -> color(6,g)
color(6,r) -> color(6,g)
color(6,r) -> color(6,b)
color(6,r) -> color(6,b)
42: color(6,g)
color(6,g) -> color(5,g)
color(6,g) -> color(5,g)
color(6,g) -> color(7,g)
color(6,g) -> color(7,g)
color(6,g) -> color(6,r)
color(6,g) -> color(6,r)
color(6,g) -> color(6,b)
color(6,g) -> color(6,b)
43: color(6,b)
color(6,b) -> color(5,b)
color(6,b) -> color(5,b)
color(6,b) -> color(7,b)
color(6,b) -> color(7,b)
color(6,b) -> color(6,r)
color(6,b) -> color(6,r)
color(6,b) -> color(6,g)
color(6,b) -> color(6,g)
44:           
45:           
46:           
47:           
48:           
49:           
50:           
51:           
52:           
53:           
54:           
55:           
56:           
57:           
58:           
59:           
60:           
61:           
62:           
63:           

Other possibilities that can be implemented to print the graph:

  • save a image of the graph
  • print graph as csv, xml ...
  • write a gui for clasp
  • draw as ascii graph (haven't found a library to do this yet)