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

<b>let </b><font color="Maroon">n</font> be    <a href="subset_1.html#M2">Element</a> of  <a href="numbers.html#K5">NAT</a> ;<br/><b>let </b><font color="Maroon">D</font> be  non <a href="xboole_0.html#V1">empty</a>  <a href="hidden.html#M1">set</a> ;<br/><b>let </b><font color="Maroon">E</font> be  non <a href="xboole_0.html#V1">empty</a>  <a href="hidden.html#M1">set</a> ;<br/>





<b>set </b><font color="Maroon">X</font> = <font color="Maroon">D</font>;<br/>
<b>set </b><font color="Maroon">Y</font> = <font color="Maroon">E</font>;<br/>
<b>let </b><font color="Maroon">F</font> be   <a href="funct_2.html#NM1">Function</a> of <font color="Maroon">D</font>, <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font>;<br/>

<b>assume </b><a NAME="E1:78"/><i><font color="Green">E48</font></i>: 
 <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font> is <a href="comput_1.html#V1" target="_self">compatible</a>
 ;<br/>

<b>assume </b><a NAME="E2:78"/><i><font color="Green">E49</font></i>: 
for <font color="Olive">x</font> being   <a href="subset_1.html#M1">Element</a> of <font color="Maroon">D</font> holds   <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><font color="Maroon">F</font> <a href="funct_2.html#K3">.</a> <font color="Olive">x</font></span>)</span> <a href="tarski.html#R1">c=</a> <font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font>
 ;<br/>

<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="78_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:78_1"/>
( <font color="Maroon">F</font> is <a href="xboole_0.html#V1">empty</a> or <font color="Maroon">F</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a>  <a href="xboole_0.html#K1">{}</a>  )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="78_1_1"><b>suppose </b></a><a NAME="E1:78_1_1"/><i><font color="Green">E51</font></i>: 
<font color="Maroon">F</font> is <a href="xboole_0.html#V1">empty</a>
 ;<br/><div class="add"><b>reconsider </b><font color="Maroon">f</font> =  <a href="xboole_0.html#K1">{}</a>  as    <a href="rfunct_3.html#M2">Element</a> of  <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font> <b>by </b><i/>;<br/><b>take </b>
<font color="Maroon">f</font>
;<br/><b>thus </b><a NAME="E3:78_1_1"/>
<font color="Maroon">f</font> <a href="hidden.html#R1">=</a>  <a href="card_3.html#K3">Union</a> <font color="Maroon">F</font>
 <b>by </b><i><a class="txt" href="comput_1.html#E2:78"><i><font color="Green">E49</font></i></a>, <a class="ref" href="card_3.html#D4">CARD_3:def 4</a>, <a class="ref" href="relat_1.html#T60">RELAT_1:60</a>, <a class="ref" href="zfmisc_1.html#T2">ZFMISC_1:2</a></i>;<br/><b>thus </b><a NAME="E4:78_1_1"/>
 <a href="relset_1.html#K4">dom</a> <font color="Maroon">f</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font>
 <b>by </b><i><a class="ref" href="relat_1.html#T60">RELAT_1:60</a>, <a class="ref" href="xboole_1.html#T2">XBOOLE_1:2</a></i>;<br/><b>thus </b><a NAME="E5:78_1_1"/>
verum
 ;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="78_1_2"><b>suppose </b></a><a NAME="E1:78_1_2"/><i><font color="Green">E52</font></i>: 
<font color="Maroon">F</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a>  <a href="xboole_0.html#K1">{}</a> 
 ;<br/><div class="add"><a NAME="E2:78_1_2"/><i><font color="Green">E53</font></i>: 
 <a href="card_3.html#K3">Union</a> <font color="Maroon">F</font> <a href="hidden.html#R1">=</a>  <a href="tarski.html#K3">union</a> <span class="p1">(<span class="default"><a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font></span>)</span>
 <b>by </b><i><a class="ref" href="card_3.html#D4">CARD_3:def 4</a></i>;<br/><a NAME="E3:78_1_2"/><i><font color="Green">E54</font></i>: 
 <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font> is <a href="fraenkel.html#V1">functional</a>
 <div><a class="txt" onclick="hs2(this)" href="javascript:()" title="78_1_2_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">x</font> be    <a href="hidden.html#M1">set</a> ; <i><font color="Red">:: according to </font></i><a class="ref" href="fraenkel.html#D1">FRAENKEL:def 1</a><br/>

<b>assume </b><a NAME="E1:78_1_2_1"/><i><font color="Green">E55</font></i>: 
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font>
 ;<br/>

<a NAME="E2:78_1_2_1"/>
 <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font> <a href="tarski.html#R1">c=</a>  <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font>
 
<b>by </b><i><a class="ref" href="relset_1.html#T12">RELSET_1:12</a></i>;<br/>
<a NAME="E3:78_1_2_1"/><b>then </b>
<font color="Maroon">x</font> is    <a href="rfunct_3.html#M2">Element</a> of  <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font>
 
<b>by </b><i><a class="txt" href="comput_1.html#E1:78_1_2"><i><font color="Green">E52</font></i></a></i>;<br/>
<b>hence </b><a NAME="E4:78_1_2_1"/>
<font color="Maroon">x</font> is    <a href="hidden.html#M1">set</a> 
 ;<br/>


</div><b>end;</b></div><b>then reconsider </b><font color="Maroon">f</font> =  <a href="card_3.html#K3">Union</a> <font color="Maroon">F</font> as   <a href="funct_1.html#NM1">Function</a> <b>by </b><i>, <a class="ref" href="comput_1.html#T5" target="_self">Th5</a>, </i>;<br/><b>reconsider </b><font color="Maroon">rngF</font> =  <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font> as  non <a href="xboole_0.html#V1">empty</a> <a href="fraenkel.html#V1">functional</a> <a href="comput_1.html#V1" target="_self">compatible</a>  <a href="hidden.html#M1">set</a>  <b>by </b><i>, <a class="txt" href="comput_1.html#E2:78"><i><font color="Green">E49</font></i></a>, , <a class="ref" href="relat_1.html#T64">RELAT_1:64</a></i>;<br/><b>set </b><font color="Maroon">D</font> = <span class="p1">{<span class="default"> <span class="p2">(<span class="default"><a href="relat_1.html#K1">dom</a> <font color="Olive">g</font></span>)</span> where <font color="Olive">g</font> is    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font> : verum </span>}</span> ;<br/><a NAME="E6:78_1_2"/><i><font color="Green">E57</font></i>: 
 <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font>
 <div><a class="txt" onclick="hs2(this)" href="javascript:()" title="78_1_2_2"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">x</font> be    <a href="hidden.html#M1">set</a> ; <i><font color="Red">:: according to </font></i><a class="ref" href="tarski.html#D3">TARSKI:def 3</a><br/>

<b>assume </b><a NAME="E1:78_1_2_2"/>
<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>
 ;<br/>

<a NAME="E2:78_1_2_2"/><b>then </b>
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="tarski.html#K3">union</a> <span class="p1">{<span class="default"> <span class="p2">(<span class="default"><a href="relat_1.html#K1">dom</a> <font color="Olive">g</font></span>)</span> where <font color="Olive">g</font> is    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font> : verum </span>}</span> 
 
<b>by </b><i><a class="ref" href="comput_1.html#T5" target="_self">Th5</a>, </i>;<br/>
<b>then consider </b><font color="Maroon">d</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E4:78_1_2_2"/><i><font color="Green">E58</font></i>: 
( <font color="Maroon">x</font> <a href="hidden.html#R2">in</a> <font color="Maroon">d</font> &amp; <font color="Maroon">d</font> <a href="hidden.html#R2">in</a> <span class="p1">{<span class="default"> <span class="p2">(<span class="default"><a href="relat_1.html#K1">dom</a> <font color="Olive">g</font></span>)</span> where <font color="Olive">g</font> is    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font> : verum </span>}</span>  )
 <b>by </b><i><a class="ref" href="tarski.html#D4">TARSKI:def 4</a></i>;<br/>
<b>consider </b><font color="Maroon">g</font> being    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font><b> such that </b><br/><a NAME="E6:78_1_2_2"/><i><font color="Green">E64</font></i>: 
<font color="Maroon">d</font> <a href="hidden.html#R1">=</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">g</font>
 <b>by </b><i><a class="txt" href="comput_1.html#E2:78_1_2"><i><font color="Green">E53</font></i></a></i>;<br/>
<b>consider </b><font color="Maroon">e</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E8:78_1_2_2"/><i><font color="Green">E65</font></i>: 
( <font color="Maroon">e</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <font color="Maroon">F</font> &amp; <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">e</font> <a href="hidden.html#R1">=</a> <font color="Maroon">g</font> )
 <b>by </b><i><a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/>
<b>reconsider </b><font color="Maroon">e</font> = <font color="Maroon">e</font> as    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">D</font> <b>by </b><i/>;<br/>
<a NAME="E10:78_1_2_2"/>
 <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><font color="Maroon">F</font> <a href="funct_2.html#K3">.</a> <font color="Maroon">e</font></span>)</span> <a href="tarski.html#R1">c=</a> <font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font>
 
<b>by </b><i><a class="txt" href="comput_1.html#E1:78"><i><font color="Green">E48</font></i></a></i>;<br/>
<b>hence </b><a NAME="E11:78_1_2_2"/>
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a> <font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font>
 <b>by </b><i><a class="txt" href="comput_1.html#E2:78_1_2"><i><font color="Green">E53</font></i></a>, <a class="txt" href="comput_1.html#E3:78_1_2"><i><font color="Green">E54</font></i></a>, </i>;<br/>


</div><b>end;</b></div><a NAME="E7:78_1_2"/>
<font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">E</font> <a href="finseq_2.html#K3">*</a> 
 <b>by </b><i><a class="ref" href="msualg_1.html#T12">MSUALG_1:12</a></i>;<br/><a NAME="E8:78_1_2"/><b>then </b><i><font color="Green">E66</font></i>: 
 <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">E</font> <a href="finseq_2.html#K3">*</a> 
 <b>by </b><i><a class="txt" href="comput_1.html#E1:78_1_2"><i><font color="Green">E52</font></i></a>, <a class="ref" href="xboole_1.html#T1">XBOOLE_1:1</a></i>;<br/><a NAME="E9:78_1_2"/>
 <a href="relat_1.html#K2">rng</a> <font color="Maroon">f</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">E</font>
 <div><a class="txt" onclick="hs2(this)" href="javascript:()" title="78_1_2_3"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">y</font> be    <a href="hidden.html#M1">set</a> ; <i><font color="Red">:: according to </font></i><a class="ref" href="tarski.html#D3">TARSKI:def 3</a><br/>

<b>assume </b><a NAME="E1:78_1_2_3"/>
<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:78_1_2_3"/><i><font color="Green">E67</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:78_1_2_3"/>
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="tarski.html#K3">union</a> <span class="p1">{<span class="default"> <span class="p2">(<span class="default"><a href="relat_1.html#K1">dom</a> <font color="Olive">g</font></span>)</span> where <font color="Olive">g</font> is    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font> : verum </span>}</span> 
 
<b>by </b><i><a class="ref" href="comput_1.html#T5" target="_self">Th5</a>, <a class="txt" href="comput_1.html#E3:78_1_2"><i><font color="Green">E54</font></i></a>, </i>;<br/>
<b>then consider </b><font color="Maroon">d</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E6:78_1_2_3"/><i><font color="Green">E136</font></i>: 
( <font color="Maroon">x</font> <a href="hidden.html#R2">in</a> <font color="Maroon">d</font> &amp; <font color="Maroon">d</font> <a href="hidden.html#R2">in</a> <span class="p1">{<span class="default"> <span class="p2">(<span class="default"><a href="relat_1.html#K1">dom</a> <font color="Olive">g</font></span>)</span> where <font color="Olive">g</font> is    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font> : verum </span>}</span>  )
 <b>by </b><i><a class="ref" href="tarski.html#D4">TARSKI:def 4</a></i>;<br/>
<b>consider </b><font color="Maroon">g</font> being    <a href="subset_1.html#M1">Element</a> of <font color="Maroon">rngF</font><b> such that </b><br/><a NAME="E8:78_1_2_3"/><i><font color="Green">E137</font></i>: 
<font color="Maroon">d</font> <a href="hidden.html#R1">=</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">g</font>
 <b>by </b><i/>;<br/>
<a NAME="E9:78_1_2_3"/>
( <font color="Maroon">g</font> <a href="hidden.html#R2">in</a> <font color="Maroon">rngF</font> &amp;  <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font> <a href="tarski.html#R1">c=</a>  <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font> )
 
<b>by </b><i><a class="ref" href="relset_1.html#T12">RELSET_1:12</a></i>;<br/>
<b>then reconsider </b><font color="Maroon">g</font> = <font color="Maroon">g</font> as    <a href="rfunct_3.html#M2">Element</a> of  <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font> ;<br/>
<a NAME="E11:78_1_2_3"/><i><font color="Green">E138</font></i>: 
<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">g</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font>
 
<b>by </b><i><a class="ref" href="comput_1.html#T5" target="_self">Th5</a>, , <a class="ref" href="comput_1.html#T6" target="_self">Th6</a>, </i>;<br/>
<a NAME="E12:78_1_2_3"/><i><font color="Green">E139</font></i>: 
 <a href="relat_1.html#K2">rng</a> <font color="Maroon">g</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">E</font>
 
<b>by </b><i><a class="ref" href="relset_1.html#T12">RELSET_1:12</a></i>;<br/>
<a NAME="E13:78_1_2_3"/>
<font color="Maroon">g</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <font color="Maroon">g</font>
 
<b>by </b><i>, <a class="ref" href="comput_1.html#T6" target="_self">Th6</a>, <a class="ref" href="funct_1.html#T12">FUNCT_1:12</a></i>;<br/>
<b>hence </b><a NAME="E14:78_1_2_3"/>
<font color="Maroon">y</font> <a href="hidden.html#R2">in</a> <font color="Maroon">E</font>
 <b>by </b><i><a class="txt" href="comput_1.html#E3:78_1_2"><i><font color="Green">E54</font></i></a>, <a class="txt" href="comput_1.html#E6:78_1_2"><i><font color="Green">E57</font></i></a>, </i>;<br/>


</div><b>end;</b></div><b>then reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as   <a href="partfun1.html#NM1">PartFunc</a> of <font color="Maroon">E</font> <a href="finseq_2.html#K3">*</a> ,<font color="Maroon">E</font> <b>by </b><i><a class="txt" href="comput_1.html#E2:78_1_2"><i><font color="Green">E53</font></i></a>, <a class="ref" href="relset_1.html#T11">RELSET_1:11</a></i>;<br/><b>reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as    <a href="rfunct_3.html#M2">Element</a> of  <a href="rfunct_3.html#K4">PFuncs</a> <span class="p1">(<span class="default"><font color="Maroon">E</font> <a href="finseq_2.html#K3">*</a> </span>)</span>,<font color="Maroon">E</font> <b>by </b><i><a class="ref" href="partfun1.html#T119">PARTFUN1:119</a></i>;<br/><a NAME="E12:78_1_2"/>
<font color="Maroon">f</font> is <a href="comput_1.html#V4" target="_self">homogeneous</a>
 <div><a class="txt" onclick="hs2(this)" href="javascript:()" title="78_1_2_4"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">x</font> be   <a href="finseq_1.html#NM1">FinSequence</a>, <font color="Maroon">y</font> be   <a href="finseq_1.html#NM1">FinSequence</a>; <i><font color="Red">:: according to </font></i><a class="ref" href="comput_1.html#D4" target="_self">COMPUT_1:def 4</a><br/>

<b>assume </b><a NAME="E1:78_1_2_4"/>
( <font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <font color="Maroon">f</font> &amp; <font color="Maroon">y</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <font color="Maroon">f</font> )
 ;<br/>

<a NAME="E2:78_1_2_4"/><b>then </b>
(  <a href="finseq_1.html#K3">len</a> <font color="Maroon">x</font> <a href="hidden.html#R1">=</a> <font color="Maroon">n</font> &amp;  <a href="finseq_1.html#K3">len</a> <font color="Maroon">y</font> <a href="hidden.html#R1">=</a> <font color="Maroon">n</font> )
 
<b>by </b><i><a class="txt" href="comput_1.html#E1:78_1_2"><i><font color="Green">E52</font></i></a>, <a class="ref" href="finseq_2.html#T109">FINSEQ_2:109</a></i>;<br/>
<b>hence </b><a NAME="E3:78_1_2_4"/>
 <a href="finseq_1.html#K3">len</a> <font color="Maroon">x</font> <a href="hidden.html#R1">=</a>  <a href="finseq_1.html#K3">len</a> <font color="Maroon">y</font>
 ;<br/>


</div><b>end;</b></div><a NAME="E13:78_1_2"/><b>then </b>
<font color="Maroon">f</font> <a href="hidden.html#R2">in</a> <span class="p1">{<span class="default"> <font color="Olive">g</font> where <font color="Olive">g</font> is    <a href="rfunct_3.html#M2">Element</a> of  <a href="rfunct_3.html#K4">PFuncs</a> <span class="p1">(<span class="default"><font color="Maroon">E</font> <a href="finseq_2.html#K3">*</a> </span>)</span>,<font color="Maroon">E</font> : <font color="Olive">g</font> is <a href="comput_1.html#V4" target="_self">homogeneous</a> </span>}</span> 
 ;<br/><b>then reconsider </b><font color="Maroon">f</font> =  <a href="card_3.html#K3">Union</a> <font color="Maroon">F</font> as    <a href="rfunct_3.html#M2">Element</a> of  <a href="comput_1.html#K5" target="_self">HFuncs</a> <font color="Maroon">E</font> ;<br/><b>take </b>
<font color="Maroon">f</font>
;<br/><b>thus </b><a NAME="E15:78_1_2"/>
<font color="Maroon">f</font> <a href="hidden.html#R1">=</a>  <a href="card_3.html#K3">Union</a> <font color="Maroon">F</font>
 ;<br/><b>thus </b><a NAME="E16:78_1_2"/>
 <a href="relset_1.html#K4">dom</a> <font color="Maroon">f</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">n</font> <a href="finseq_2.html#K4">-tuples_on</a> <font color="Maroon">E</font>
 <b>by </b><i><a class="txt" href="comput_1.html#E1:78_1_2"><i><font color="Green">E52</font></i></a></i>;<br/></div><b>end;</b></div></div><b>end;</b></div>

</div>
