<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> 
<!DOCTYPE MAN SYSTEM "../../manrev.dtd">
<MAN>
  <LANGUAGE>fr</LANGUAGE>
  <TITLE>trans_closure  </TITLE>
  <TYPE>Scilab function  </TYPE>
  <DATE>September 1995  </DATE>
  <SHORT_DESCRIPTION name="trans_closure"> fermeture transitive   </SHORT_DESCRIPTION>
  <CALLING_SEQUENCE>
  <CALLING_SEQUENCE_ITEM>g1 = trans_closure(g)  </CALLING_SEQUENCE_ITEM>
  </CALLING_SEQUENCE>
  <PARAM>
 <PARAM_INDENT>
  <PARAM_ITEM>
  <PARAM_NAME>g  </PARAM_NAME>
  <PARAM_DESCRIPTION>
  <SP>
    : graphe (liste)
</SP>
  </PARAM_DESCRIPTION> 
  </PARAM_ITEM>
  <PARAM_ITEM>
  <PARAM_NAME>g1  </PARAM_NAME>
  <PARAM_DESCRIPTION>
  <SP>
    : nouveau graphe (liste)
</SP>
  </PARAM_DESCRIPTION> 
  </PARAM_ITEM>
 </PARAM_INDENT>
  </PARAM>
  <DESCRIPTION>
  <P>
    <VERB>trans_closure</VERB> renvoie sous forme d&apos;un nouveau graphe <VERB>g1</VERB> la fermeture transitive
    du graphe <VERB>g</VERB>. Ce graphe doit être orienté et connecté.
    Si <VERB>&lt;name&gt;</VERB> est le nom du graphe <VERB>g</VERB>, 
    <VERB>&lt;name&gt;_trans_closure</VERB> est le nom de la fermeture transitive.
  </P>
  </DESCRIPTION>
  <EXAMPLE><![CDATA[
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);
 ]]></EXAMPLE>
</MAN>
