Scilab function
Last update : 00/00/0000

trans_closure - fermeture transitive

### Calling Sequence

  `g1 = trans_closure(g)`

### Parameters

- `g` : graphe (liste)
- `g1` : nouveau graphe (liste)

### Description

`trans_closure` renvoie sous forme d'un nouveau graphe `g1` la fermeture transitive du graphe `g`. Ce graphe doit être orienté et connecté. Si `<name>` est le nom du graphe `g`, `<name>_trans_closure` est le nom de la fermeture transitive.

### Examples

    ta=[2 3 3 5 3 4 4 5 8];
    he=[1 2 4 2 6 6 7 7 4];
    g=make_graph('foo',1,8,ta,he);
    g('node_x')=[129 200 283 281 128 366 122 333];
    g('node_y')=[61 125 129 189 173 135 236 249];
    show_graph(g);
    g1=trans_closure(g);
    vv=1*ones(ta); aa=sparse([ta' he'],vv');
    ta1=g1('tail'); he1=g1('head');
    ww=1*ones(ta1); bb=sparse([ta1' he1'],ww');
    dif=bb-aa; lim=size(ta1); edgecolor=0*ones(ta1);
    for i=1:lim(2)
     if dif(ta1(i),he1(i))==1 then edgecolor(i)=11; end;
    end;
    g1('edge_color')=edgecolor;
    x_message('Fermeture transitive du graphe');
    show_graph(g1);