<?xml version="1.0"?>
<div class="add">

<b>set </b><font color="Maroon">D</font> = <span class="p1">(<span class="default"><a href="glib_000.html#K6">the_Vertices_of</a> <font color="Maroon">G</font></span>)</span> <a href="xboole_0.html#K2">\/</a> <span class="p1">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span>;<br/>
<div><i><font color="Green">E39</font></i>: <a class="txt" onclick="hs2(this)" href="javascript:()" title="144_1_1_1"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">W</font> be   <a href="glib_001.html#NM4">Trail</a> of <font color="Maroon">G</font>;<br/><b>consider </b><font color="Maroon">f</font> being   <a href="funct_1.html#NM1">Function</a><b> such that </b><br/><a NAME="E2:144_1_1_1"/><i><font color="Green">E40</font></i>: 
(  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> <a href="hidden.html#R1">=</a> <font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a>  &amp; ( for <font color="Olive">x</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">x</font> <a href="hidden.html#R2">in</a> <font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a>  holds <br/><font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">x</font> <a href="hidden.html#R1">=</a> <font color="Olive">x</font> <a href="mcart_1.html#K2">`2</a>  ) )
 <b>from </b><i><a class="ref" href="funct_1.html#S3">FUNCT_1:sch 3</a>();<br/></i><div><a class="txt" onclick="hs2(this)" href="javascript:()" title="144_1_1_1_1"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">y</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:144_1_1_1_1"/>
<font color="Maroon">y</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <font color="Maroon">f</font>
 ;<br/><b>then consider </b><font color="Maroon">x</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E3:144_1_1_1_1"/><i><font color="Green">E42</font></i>: 
( <font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> &amp; <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font> <a href="hidden.html#R1">=</a> <font color="Maroon">y</font> )
 <b>by </b><i><a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/><a NAME="E4:144_1_1_1_1"/><i><font color="Green">E43</font></i>: 
( <font color="Maroon">x</font> <a href="hidden.html#R2">in</a> <font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a>  &amp; <font color="Maroon">y</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font> <a href="mcart_1.html#K2">`2</a>  )
 <b>by </b><i>, </i>;<br/><b>consider </b><font color="Maroon">a</font> being    <a href="hidden.html#M1">set</a> , <font color="Maroon">b</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E6:144_1_1_1_1"/><i><font color="Green">E44</font></i>: 
<font color="Maroon">x</font> <a href="hidden.html#R1">=</a> <span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">a</font>,<font color="Maroon">b</font></span><a href="tarski.html#K4">]</a></span>
 <b>by </b><i>, , <a class="ref" href="relat_1.html#D1">RELAT_1:def 1</a></i>;<br/><a NAME="E7:144_1_1_1_1"/>
<font color="Maroon">y</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</font>
 <b>by </b><i>, , <a class="ref" href="mcart_1.html#D2">MCART_1:def 2</a></i>;<br/><a NAME="E8:144_1_1_1_1"/><b>then </b>
<font color="Maroon">y</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K5">rng</a> <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span>
 <b>by </b><i>, , , <a class="ref" href="relat_1.html#D5">RELAT_1:def 5</a></i>;<br/><b>hence </b><a NAME="E9:144_1_1_1_1"/>
<font color="Maroon">y</font> <a href="hidden.html#R2">in</a>  <a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font>
 ;<br/></div><b>end;</b></div><a NAME="E4:144_1_1_1"/><b>then </b><i><font color="Green">E45</font></i>: 
 <a href="relat_1.html#K2">rng</a> <font color="Maroon">f</font> <a href="tarski.html#R1">c=</a>  <a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font>
 <b>by </b><i><a class="ref" href="tarski.html#D3">TARSKI:def 3</a></i>;<br/><div><a class="txt" onclick="hs2(this)" href="javascript:()" title="144_1_1_1_2"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">x1</font> be    <a href="hidden.html#M1">set</a> , <font color="Maroon">x2</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:144_1_1_1_2"/><i><font color="Green">E46</font></i>: 
( <font color="Maroon">x1</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> &amp; <font color="Maroon">x2</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> &amp; <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x2</font> )
 ;<br/><a NAME="E2:144_1_1_1_2"/><b>then </b><i><font color="Green">E47</font></i>: 
( <font color="Maroon">x1</font> <a href="hidden.html#R2">in</a> <font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a>  &amp; <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x1</font> <a href="mcart_1.html#K2">`2</a>  &amp; <font color="Maroon">x2</font> <a href="hidden.html#R2">in</a> <font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a>  &amp; <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x2</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x2</font> <a href="mcart_1.html#K2">`2</a>  )
 <b>by </b><i/>;<br/><b>consider </b><font color="Maroon">a1</font> being    <a href="hidden.html#M1">set</a> , <font color="Maroon">b1</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E4:144_1_1_1_2"/><i><font color="Green">E48</font></i>: 
<font color="Maroon">x1</font> <a href="hidden.html#R1">=</a> <span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">a1</font>,<font color="Maroon">b1</font></span><a href="tarski.html#K4">]</a></span>
 <b>by </b><i>, , <a class="ref" href="relat_1.html#D1">RELAT_1:def 1</a></i>;<br/><b>consider </b><font color="Maroon">a2</font> being    <a href="hidden.html#M1">set</a> , <font color="Maroon">b2</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E6:144_1_1_1_2"/><i><font color="Green">E49</font></i>: 
<font color="Maroon">x2</font> <a href="hidden.html#R1">=</a> <span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">a2</font>,<font color="Maroon">b2</font></span><a href="tarski.html#K4">]</a></span>
 <b>by </b><i>, , <a class="ref" href="relat_1.html#D1">RELAT_1:def 1</a></i>;<br/><i><font color="Green">E51</font></i>: <font color="Maroon">b1</font> = 
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x1</font>
<b>by </b><i>, , <a class="ref" href="mcart_1.html#D2">MCART_1:def 2</a></i>
<br/>.= 
<font color="Maroon">b2</font>
<b>by </b><i>, , , <a class="ref" href="mcart_1.html#D2">MCART_1:def 2</a></i>
;<br/><a NAME="E8:144_1_1_1_2"/><i><font color="Green">E52</font></i>: 
<font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a>  is <a href="funct_1.html#V2">one-to-one</a>
 <b>by </b><i><a class="ref" href="glib_001.html#T1" target="_self">Th1</a></i>;<br/><a NAME="E9:144_1_1_1_2"/><i><font color="Green">E53</font></i>: 
( <font color="Maroon">a1</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> &amp; <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">a1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b1</font> )
 <b>by </b><i>, , , <a class="ref" href="funct_1.html#T8">FUNCT_1:8</a></i>;<br/><a NAME="E10:144_1_1_1_2"/>
( <font color="Maroon">a2</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> &amp; <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">a2</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b1</font> )
 <b>by </b><i>, , , , <a class="ref" href="funct_1.html#T8">FUNCT_1:8</a></i>;<br/><b>hence </b><a NAME="E11:144_1_1_1_2"/>
<font color="Maroon">x1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x2</font>
 <b>by </b><i>, , , <a class="ref" href="glib_001.html#D12" target="_self">Def12</a>, <a class="ref" href="glib_001.html#D14" target="_self">Def14</a>, <a class="ref" href="funct_1.html#D8">FUNCT_1:def 8</a></i>;<br/></div><b>end;</b></div><a NAME="E6:144_1_1_1"/><b>then </b>
<font color="Maroon">f</font> is <a href="funct_1.html#V2">one-to-one</a>
 <b>by </b><i><a class="ref" href="funct_1.html#D8">FUNCT_1:def 8</a></i>;<br/><a NAME="E7:144_1_1_1"/><b>then </b>
 <a href="card_1.html#K1">Card</a> <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> <a href="card_1.html#NR1" target="_self">&lt;=`</a>  <a href="card_1.html#K1">Card</a> <span class="p1">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span>
 <b>by </b><i>, , <a class="ref" href="card_1.html#T26">CARD_1:26</a></i>;<br/><a NAME="E8:144_1_1_1"/><b>then </b>
 <a href="finseq_1.html#K3">len</a> <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> <a href="xxreal_0.html#R1">&lt;=</a>  <a href="card_1.html#K4">card</a> <span class="p1">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span>
 <b>by </b><i><a class="ref" href="card_2.html#T57">CARD_2:57</a></i>;<br/><a NAME="E9:144_1_1_1"/><b>then </b>
 <a href="finseq_1.html#K3">len</a> <span class="p1">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> 
 <b>by </b><i><a class="ref" href="glib_000.html#D27">GLIB_000:def 27</a></i>;<br/><a NAME="E10:144_1_1_1"/><b>then </b>
2 <a href="nat_1.html#K2">*</a> <span class="p1">(<span class="default"><a href="finseq_1.html#K3">len</a> <span class="p2">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span></span>)</span> <a href="xxreal_0.html#R1">&lt;=</a> 2 <a href="nat_1.html#K2">*</a> <span class="p1">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span>
 <b>by </b><i><a class="ref" href="xreal_1.html#T66">XREAL_1:66</a></i>;<br/><a NAME="E11:144_1_1_1"/><b>then </b>
<span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><a href="finseq_1.html#K3">len</a> <span class="p3">(<span class="default"><font color="Maroon">W</font> <a href="glib_001.html#K12" target="_self">.edgeSeq()</a> </span>)</span></span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1 <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1
 <b>by </b><i><a class="ref" href="xreal_1.html#T9">XREAL_1:9</a></i>;<br/><b>hence </b><a NAME="E12:144_1_1_1"/>
 <a href="finseq_1.html#K3">len</a> <font color="Maroon">W</font> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1
 <b>by </b><i/>;<br/></div><b>end;</b></div>
<b>set </b><font color="Maroon">X</font> = <span class="p1">{<span class="default"> <font color="Olive">x</font> where <font color="Olive">x</font> is    <a href="finseq_2.html#M2">Element</a> of <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="glib_000.html#K6">the_Vertices_of</a> <font color="Maroon">G</font></span>)</span> <a href="xboole_0.html#K2">\/</a> <span class="p2">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span></span>)</span> <a href="finseq_2.html#K3">*</a>  :  <a href="finseq_1.html#K3">len</a> <font color="Olive">x</font> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1 </span>}</span> ;<br/>
<a NAME="E2:144_1_1"/><i><font color="Green">E56</font></i>: 
<span class="p1">{<span class="default"> <font color="Olive">x</font> where <font color="Olive">x</font> is    <a href="finseq_2.html#M2">Element</a> of <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="glib_000.html#K6">the_Vertices_of</a> <font color="Maroon">G</font></span>)</span> <a href="xboole_0.html#K2">\/</a> <span class="p2">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span></span>)</span> <a href="finseq_2.html#K3">*</a>  :  <a href="finseq_1.html#K3">len</a> <font color="Olive">x</font> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1 </span>}</span>  is <a href="finset_1.html#V1">finite</a>
 
<b>by </b><i><a class="ref" href="graph_5.html#T4">GRAPH_5:4</a></i>;<br/>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="144_1_1_2"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">e</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:144_1_1_2"/>
<font color="Maroon">e</font> <a href="hidden.html#R2">in</a> <font color="Maroon">G</font> <a href="glib_001.html#K22" target="_self">.allTrails()</a> 
 ;<br/><a NAME="E2:144_1_1_2"/><b>then </b>
<font color="Maroon">e</font> <a href="hidden.html#R2">in</a> <span class="p1">{<span class="default"> <font color="Olive">W</font> where <font color="Olive">W</font> is   <a href="glib_001.html#NM4">Trail</a> of <font color="Maroon">G</font> : verum </span>}</span> 
 ;<br/><b>then consider </b><font color="Maroon">W</font> being   <a href="glib_001.html#NM4">Trail</a> of <font color="Maroon">G</font><b> such that </b><br/><a NAME="E4:144_1_1_2"/><i><font color="Green">E88</font></i>: 
<font color="Maroon">W</font> <a href="hidden.html#R1">=</a> <font color="Maroon">e</font>
 ;<br/><a NAME="E5:144_1_1_2"/><i><font color="Green">E89</font></i>: 
<font color="Maroon">e</font> is    <a href="finseq_2.html#M2">Element</a> of <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="glib_000.html#K6">the_Vertices_of</a> <font color="Maroon">G</font></span>)</span> <a href="xboole_0.html#K2">\/</a> <span class="p2">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span></span>)</span> <a href="finseq_2.html#K3">*</a> 
 <b>by </b><i>, <a class="ref" href="finseq_1.html#D11">FINSEQ_1:def 11</a></i>;<br/><a NAME="E6:144_1_1_2"/>
 <a href="finseq_1.html#K3">len</a> <font color="Maroon">W</font> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1
 <b>by </b><i/>;<br/><b>hence </b><a NAME="E7:144_1_1_2"/>
<font color="Maroon">e</font> <a href="hidden.html#R2">in</a> <span class="p1">{<span class="default"> <font color="Olive">x</font> where <font color="Olive">x</font> is    <a href="finseq_2.html#M2">Element</a> of <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="glib_000.html#K6">the_Vertices_of</a> <font color="Maroon">G</font></span>)</span> <a href="xboole_0.html#K2">\/</a> <span class="p2">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span></span>)</span> <a href="finseq_2.html#K3">*</a>  :  <a href="finseq_1.html#K3">len</a> <font color="Olive">x</font> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1 </span>}</span> 
 <b>by </b><i>, </i>;<br/></div><b>end;</b></div>
<a NAME="E4:144_1_1"/><b>then </b>
<font color="Maroon">G</font> <a href="glib_001.html#K22" target="_self">.allTrails()</a>  <a href="tarski.html#R1">c=</a> <span class="p1">{<span class="default"> <font color="Olive">x</font> where <font color="Olive">x</font> is    <a href="finseq_2.html#M2">Element</a> of <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="glib_000.html#K6">the_Vertices_of</a> <font color="Maroon">G</font></span>)</span> <a href="xboole_0.html#K2">\/</a> <span class="p2">(<span class="default"><a href="glib_000.html#K7">the_Edges_of</a> <font color="Maroon">G</font></span>)</span></span>)</span> <a href="finseq_2.html#K3">*</a>  :  <a href="finseq_1.html#K3">len</a> <font color="Olive">x</font> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <span class="p2">(<span class="default"><font color="Maroon">G</font> <a href="glib_000.html#K18">.size()</a> </span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1 </span>}</span> 
 
<b>by </b><i><a class="ref" href="tarski.html#D3">TARSKI:def 3</a></i>;<br/>
<b>hence </b><a NAME="E5:144_1_1"/>
<font color="Maroon">G</font> <a href="glib_001.html#K22" target="_self">.allTrails()</a>  is <a href="finset_1.html#V1">finite</a>
 <b>by </b><i>, <a class="ref" href="finset_1.html#T13">FINSET_1:13</a></i>;<br/>


</div>
