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

<b>set </b><font color="Maroon">V</font> = the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ;<br/>
<a NAME="E1:13_1"/><i><font color="Green">E67</font></i>: 
for <font color="Olive">A</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>() holds <br/> ( <font color="Maroon">P<sub>2</sub></font>[<font color="Olive">A</font>] iff for <font color="Olive">s</font> being  <a href="msualg_1.html#NM1">SortSymbol</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">e</font> being   <a href="subset_1.html#M1">Element</a> of <span class="p1">(<span class="default"><a href="equation.html#K4">Equations</a> <font color="Maroon">F<sub>1</sub></font>()</span>)</span> <a href="funct_1.html#K1">.</a> <font color="Olive">s</font>  st ( for <font color="Olive">B</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()  st <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">B</font>] holds <br/><font color="Olive">B</font> <a href="equation.html#R1">|=</a> <font color="Olive">e</font> ) holds <br/><font color="Olive">A</font> <a href="equation.html#R1">|=</a> <font color="Olive">e</font> )
 
<b>by </b><i/>;<br/>
<a NAME="E2:13_1"/><i><font color="Green">E69</font></i>: 
for <font color="Olive">A</font>, <font color="Olive">B</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()  st <font color="Olive">A</font>,<font color="Olive">B</font> <a href="msualg_3.html#R6">are_isomorphic</a>  &amp; <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">A</font>] holds <br/><font color="Maroon">P<sub>1</sub></font>[<font color="Olive">B</font>]
 
<b>by </b><i/>;<br/>
<a NAME="E3:13_1"/><i><font color="Green">E70</font></i>: 
for <font color="Olive">A</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">B</font> being <a href="msualg_1.html#V4">strict</a> <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_2.html#M1">MSSubAlgebra</a> of <font color="Olive">A</font>  st <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">A</font>] holds <br/><font color="Maroon">P<sub>1</sub></font>[<font color="Olive">B</font>]
 
<b>by </b><i/>;<br/>
<a NAME="E4:13_1"/><i><font color="Green">E71</font></i>: 
for <font color="Olive">I</font> being   <a href="hidden.html#M1">set</a> <br/> for <font color="Olive">F</font> being   <a href="pralg_2.html#M2">MSAlgebra-Family</a> of <font color="Olive">I</font>,<font color="Maroon">F<sub>1</sub></font>()  st ( for <font color="Olive">i</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">i</font> <a href="hidden.html#R2">in</a> <font color="Olive">I</font> holds <br/> ex <font color="Olive">A</font> being   <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>() st <br/>( <font color="Olive">A</font> <a href="hidden.html#R1">=</a> <font color="Olive">F</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font> &amp; <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">A</font>] ) ) holds <br/><font color="Maroon">P<sub>1</sub></font>[ <a href="pralg_2.html#K15">product</a> <font color="Olive">F</font>]
 
<b>by </b><i/>;<br/>
<b>consider </b><font color="Maroon">A</font> being  <a href="msualg_1.html#V4">strict</a> <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>(), <font color="Maroon">fi</font> being    <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font><b> such that </b><br/><a NAME="E6:13_1"/><i><font color="Green">E72</font></i>: 
<font color="Maroon">P<sub>1</sub></font>[<font color="Maroon">A</font>]
 <b>and </b><br/><a NAME="E7:13_1"/><i><font color="Green">E73</font></i>: 
for <font color="Olive">B</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">G</font> being   <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Olive">B</font>  st <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">B</font>] holds <br/> ex <font color="Olive">H</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">A</font>,<font color="Olive">B</font> st <br/>( <font color="Olive">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">A</font>,<font color="Olive">B</font> &amp; <font color="Olive">H</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">fi</font> <a href="pboole.html#R6">=</a> <font color="Olive">G</font> &amp; ( for <font color="Olive">K</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">A</font>,<font color="Olive">B</font>  st <font color="Olive">K</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">A</font>,<font color="Olive">B</font> &amp; <font color="Olive">K</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">fi</font> <a href="pboole.html#R6">=</a> <font color="Olive">G</font> holds <br/><font color="Olive">H</font> <a href="pboole.html#R6">=</a> <font color="Olive">K</font> ) )
 <b>from </b><i><a class="ref" href="birkhoff.html#S2" target="_self">BIRKHOFF:sch 2</a>(, , );<br/></i>
<a NAME="E8:13_1"/><i><font color="Green">E74</font></i>: 
<font color="Maroon">P<sub>2</sub></font>[<font color="Maroon">A</font>]
 
<b>from </b><i><a class="ref" href="birkhoff.html#S10" target="_self">BIRKHOFF:sch 10</a>(, );<br/></i>
<b>reconsider </b><font color="Maroon">phT</font> = <font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a>  as   <a href="msualg_3.html#NM1">ManySortedFunction</a> of <span class="p1">(<span class="default"><a href="equation.html#K3">TermAlg</a> <font color="Maroon">F<sub>1</sub></font>()</span>)</span>,<font color="Maroon">F<sub>2</sub></font>() ;<br/>
<a NAME="E10:13_1"/>
<font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a>  <a href="msualg_3.html#R1">is_homomorphism</a>  <a href="msafree.html#K11">FreeMSA</a> <span class="p1">(<span class="default">the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> </span>)</span>,<font color="Maroon">F<sub>2</sub></font>()
 
<b>by </b><i/>;<br/>
<a NAME="E11:13_1"/><b>then </b><i><font color="Green">E76</font></i>: 
<font color="Maroon">phT</font> <a href="msualg_3.html#R1">is_homomorphism</a>  <a href="equation.html#K3">TermAlg</a> <font color="Maroon">F<sub>1</sub></font>(),<font color="Maroon">F<sub>2</sub></font>()
 
;<br/>
<a NAME="E12:13_1"/><i><font color="Green">E77</font></i>: 
for <font color="Olive">C</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">G</font> being   <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Olive">C</font>  st <font color="Maroon">P<sub>2</sub></font>[<font color="Olive">C</font>] holds <br/> ex <font color="Olive">h</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">F<sub>2</sub></font>(),<font color="Olive">C</font> st <br/>( <font color="Olive">h</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Olive">C</font> &amp; <font color="Olive">G</font> <a href="pboole.html#R6">=</a> <font color="Olive">h</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">F<sub>3</sub></font>() )
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">C</font> be  <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>();<br/><b>let </b><font color="Maroon">G</font> be    <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">C</font>;<br/>



<b>assume </b><a NAME="E1:13_1_1"/>
<font color="Maroon">P<sub>2</sub></font>[<font color="Maroon">C</font>]
 ;<br/>

<b>then consider </b><font color="Maroon">h</font> being   <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">C</font><b> such that </b><br/><a NAME="E3:13_1_1"/><i><font color="Green">E81</font></i>: 
( <font color="Maroon">h</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">C</font> &amp; <font color="Maroon">G</font> <a href="pboole.html#R6">=</a> <font color="Maroon">h</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">F<sub>3</sub></font>() )
 <b>and </b><br/><a NAME="E4:13_1_1"/>
for <font color="Olive">K</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">C</font>  st <font color="Olive">K</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">C</font> &amp; <font color="Olive">K</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">F<sub>3</sub></font>() <a href="pboole.html#R6">=</a> <font color="Maroon">G</font> holds <br/><font color="Maroon">h</font> <a href="pboole.html#R6">=</a> <font color="Olive">K</font>
 <b>by </b><i/>;<br/>
<b>take </b>
<font color="Maroon">h</font>
;<br/>

<b>thus </b><a NAME="E5:13_1_1"/>
( <font color="Maroon">h</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">C</font> &amp; <font color="Maroon">G</font> <a href="pboole.html#R6">=</a> <font color="Maroon">h</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">F<sub>3</sub></font>() )
 <b>by </b><i/>;<br/>


</div><b>end;</b></div>
<a NAME="E13:13_1"/><i><font color="Green">E83</font></i>: 
for <font color="Olive">C</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">G</font> being   <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Olive">C</font>  st <font color="Maroon">P<sub>2</sub></font>[<font color="Olive">C</font>] holds <br/> ex <font color="Olive">H</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">F<sub>2</sub></font>(),<font color="Olive">C</font> st <br/>( <font color="Olive">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Olive">C</font> &amp; <font color="Olive">H</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">F<sub>3</sub></font>() <a href="pboole.html#R6">=</a> <font color="Olive">G</font> &amp; ( for <font color="Olive">K</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">F<sub>2</sub></font>(),<font color="Olive">C</font>  st <font color="Olive">K</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Olive">C</font> &amp; <font color="Olive">K</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">F<sub>3</sub></font>() <a href="pboole.html#R6">=</a> <font color="Olive">G</font> holds <br/><font color="Olive">H</font> <a href="pboole.html#R6">=</a> <font color="Olive">K</font> ) )
 
<b>by </b><i/>;<br/>
<a NAME="E14:13_1"/><i><font color="Green">E84</font></i>: 
<font color="Maroon">P<sub>2</sub></font>[<font color="Maroon">F<sub>2</sub></font>()]
 
<b>by </b><i/>;<br/>
<b>consider </b><font color="Maroon">H</font> being   <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">A</font><b> such that </b><br/><a NAME="E16:13_1"/><i><font color="Green">E85</font></i>: 
<font color="Maroon">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">A</font>
 <b>and </b><br/><a NAME="E17:13_1"/><i><font color="Green">E87</font></i>: 
<font color="Maroon">fi</font> <a href="birkhoff.html#K1" target="_self">-hash</a>  <a href="pboole.html#R6">=</a> <font color="Maroon">H</font> <a href="msualg_3.html#K3">**</a> <span class="p1">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span>
 <b>from </b><i><a class="ref" href="birkhoff.html#S3" target="_self">BIRKHOFF:sch 3</a>(, );<br/></i>
<a NAME="E18:13_1"/>
<font color="Maroon">H</font> <a href="msualg_3.html#R3">is_monomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">A</font>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_2"><b>proof </b></a><div class="add">

<b>thus </b><a NAME="E1:13_1_2"/>
<font color="Maroon">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">F<sub>2</sub></font>(),<font color="Maroon">A</font>
 <b>by </b><i/>; <i><font color="Red">:: according to </font></i><a class="ref" href="msualg_3.html#D11">MSUALG_3:def 11</a><br/>

<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_2_1"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">i</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:13_1_2_1"/>
<font color="Maroon">i</font> <a href="hidden.html#R2">in</a> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>()
 ;<br/><b>then reconsider </b><font color="Maroon">s</font> = <font color="Maroon">i</font> as   <a href="msualg_1.html#NM1">SortSymbol</a> of <font color="Maroon">F<sub>1</sub></font>() ;<br/><b>thus </b><a NAME="E3:13_1_2_1"/>
<font color="Maroon">H</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> is <a href="funct_1.html#V2">one-to-one</a>
 <div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_2_1_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">a</font> be    <a href="hidden.html#M1">set</a> , <font color="Maroon">b</font> be    <a href="hidden.html#M1">set</a> ; <i><font color="Red">:: according to </font></i><a class="ref" href="funct_1.html#D8">FUNCT_1:def 8</a><br/>

<b>assume </b><b>that </b><br/><a NAME="E1:13_1_2_1_1"/><i><font color="Green">E88</font></i>: 
<font color="Maroon">a</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><font color="Maroon">H</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font></span>)</span>
 <b>and </b><br/><a NAME="E2:13_1_2_1_1"/><i><font color="Green">E89</font></i>: 
<font color="Maroon">b</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><font color="Maroon">H</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font></span>)</span>
 <b>and </b><br/><a NAME="E3:13_1_2_1_1"/><i><font color="Green">E91</font></i>: 
<span class="p1">(<span class="default"><font color="Maroon">H</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><font color="Maroon">H</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">b</font>
 ;<br/>

<a NAME="E4:13_1_2_1_1"/><i><font color="Green">E93</font></i>: 
for <font color="Olive">D</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">E</font> being <a href="msualg_1.html#V4">strict</a> <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_2.html#M1">MSSubAlgebra</a> of <font color="Olive">D</font>  st <font color="Maroon">P<sub>2</sub></font>[<font color="Olive">D</font>] holds <br/><font color="Maroon">P<sub>2</sub></font>[<font color="Olive">E</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_2_1_1_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">D</font> be  <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>();<br/><b>let </b><font color="Maroon">E</font> be  <a href="msualg_1.html#V4">strict</a> <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_2.html#M1">MSSubAlgebra</a> of <font color="Maroon">D</font>;<br/>



<b>assume </b><a NAME="E1:13_1_2_1_1_1"/><i><font color="Green">E95</font></i>: 
<font color="Maroon">P<sub>2</sub></font>[<font color="Maroon">D</font>]
 ;<br/>

<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_2_1_1_1_1"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">s</font> be   <a href="msualg_1.html#NM1">SortSymbol</a> of <font color="Maroon">F<sub>1</sub></font>();<br/><b>let </b><font color="Maroon">e</font> be    <a href="subset_1.html#M1">Element</a> of <span class="p1">(<span class="default"><a href="equation.html#K4">Equations</a> <font color="Maroon">F<sub>1</sub></font>()</span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">s</font>;<br/><b>assume </b><a NAME="E1:13_1_2_1_1_1_1"/>
for <font color="Olive">B</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()  st <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">B</font>] holds <br/><font color="Olive">B</font> <a href="equation.html#R1">|=</a> <font color="Maroon">e</font>
 ;<br/><a NAME="E2:13_1_2_1_1_1_1"/><b>then </b>
<font color="Maroon">D</font> <a href="equation.html#R1">|=</a> <font color="Maroon">e</font>
 <b>by </b><i>, </i>;<br/><b>hence </b><a NAME="E3:13_1_2_1_1_1_1"/>
<font color="Maroon">E</font> <a href="equation.html#R1">|=</a> <font color="Maroon">e</font>
 <b>by </b><i><a class="ref" href="equation.html#T33">EQUATION:33</a></i>;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E3:13_1_2_1_1_1"/>
<font color="Maroon">P<sub>2</sub></font>[<font color="Maroon">E</font>]
 <b>by </b><i/>;<br/>


</div><b>end;</b></div>
<a NAME="E5:13_1_2_1_1"/>
<font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a>  <a href="msualg_3.html#R2">is_epimorphism</a>  <a href="msafree.html#K11">FreeMSA</a> <span class="p1">(<span class="default">the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> </span>)</span>,<font color="Maroon">F<sub>2</sub></font>()
 
<b>from </b><i><a class="ref" href="birkhoff.html#S6" target="_self">BIRKHOFF:sch 6</a>(, , );<br/></i>
<a NAME="E6:13_1_2_1_1"/><b>then </b><i><font color="Green">E96</font></i>: 
<font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a>  is <a href="msualg_3.html#V2">"onto"</a>
 
<b>by </b><i><a class="ref" href="msualg_3.html#D10">MSUALG_3:def 10</a></i>;<br/>
<i><font color="Green">E97</font></i>:  <a href="relset_1.html#K4">dom</a> <span class="p1">(<span class="default"><font color="Maroon">H</font> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> = 
the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">F<sub>2</sub></font>() <a href="funct_1.html#K1">.</a> <font color="Maroon">s</font>
<b>by </b><i><a class="ref" href="funct_2.html#D1">FUNCT_2:def 1</a></i>
<br/>.= 
 <a href="relset_1.html#K5">rng</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span>
<b>by </b><i>, <a class="ref" href="msualg_3.html#D3">MSUALG_3:def 3</a></i>
;<br/>
<b>then consider </b><font color="Maroon">t1</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E9:13_1_2_1_1"/><i><font color="Green">E98</font></i>: 
( <font color="Maroon">t1</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> &amp; <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">t1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> )
 <b>by </b><i>, <a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/>
<b>consider </b><font color="Maroon">t2</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E11:13_1_2_1_1"/><i><font color="Green">E99</font></i>: 
( <font color="Maroon">t2</font> <a href="hidden.html#R2">in</a>  <a href="relset_1.html#K4">dom</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> &amp; <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">t2</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</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">t1</font> = <font color="Maroon">t1</font>, <font color="Maroon">t2</font> = <font color="Maroon">t2</font> as    <a href="subset_1.html#M1">Element</a> of the <a href="msualg_1.html#U4">Sorts</a> of <span class="p1">(<span class="default"><a href="equation.html#K3">TermAlg</a> <font color="Maroon">F<sub>1</sub></font>()</span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">s</font> <b>by </b><i>, </i>;<br/>
<i><font color="Green">E100</font></i>: <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">fi</font> <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">t1</font> = 
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">H</font> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="partfun1.html#K1">*</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">t1</font>
<b>by </b><i>, <a class="ref" href="msualg_3.html#T2">MSUALG_3:2</a></i>
<br/>.= 
<span class="p1">(<span class="default"><font color="Maroon">H</font> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">a</font>
<b>by </b><i>, <a class="ref" href="funct_2.html#T21">FUNCT_2:21</a></i>
<br/>.= 
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">H</font> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="partfun1.html#K1">*</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">t2</font>
<b>by </b><i>, , <a class="ref" href="funct_2.html#T21">FUNCT_2:21</a></i>
<br/>.= 
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">fi</font> <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">t2</font>
<b>by </b><i>, <a class="ref" href="msualg_3.html#T2">MSUALG_3:2</a></i>
;<br/>
<a NAME="E14:13_1_2_1_1"/><i><font color="Green">E101</font></i>: 
for <font color="Olive">C</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()<br/> for <font color="Olive">G</font> being   <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Olive">C</font>  st <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">C</font>] holds <br/> ex <font color="Olive">H</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">A</font>,<font color="Olive">C</font> st <br/>( <font color="Olive">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">A</font>,<font color="Olive">C</font> &amp; <font color="Olive">G</font> <a href="pboole.html#R6">=</a> <font color="Olive">H</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">fi</font> )
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="13_1_2_1_1_4"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">C</font> be  <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>();<br/><b>let </b><font color="Maroon">G</font> be    <a href="pboole.html#M3">ManySortedFunction</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">F<sub>1</sub></font>() <a href="pre_circ.html#K2">--&gt;</a> <a href="numbers.html#K5">NAT</a> ,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">C</font>;<br/>



<b>assume </b><a NAME="E1:13_1_2_1_1_4"/>
<font color="Maroon">P<sub>1</sub></font>[<font color="Maroon">C</font>]
 ;<br/>

<b>then consider </b><font color="Maroon">H</font> being   <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">A</font>,<font color="Maroon">C</font><b> such that </b><br/><a NAME="E3:13_1_2_1_1_4"/><i><font color="Green">E103</font></i>: 
( <font color="Maroon">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">A</font>,<font color="Maroon">C</font> &amp; <font color="Maroon">H</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">fi</font> <a href="pboole.html#R6">=</a> <font color="Maroon">G</font> )
 <b>and </b><br/><a NAME="E4:13_1_2_1_1_4"/>
for <font color="Olive">K</font> being  <a href="msualg_3.html#NM1">ManySortedFunction</a> of <font color="Maroon">A</font>,<font color="Maroon">C</font>  st <font color="Olive">K</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">A</font>,<font color="Maroon">C</font> &amp; <font color="Olive">K</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">fi</font> <a href="pboole.html#R6">=</a> <font color="Maroon">G</font> holds <br/><font color="Maroon">H</font> <a href="pboole.html#R6">=</a> <font color="Olive">K</font>
 <b>by </b><i/>;<br/>
<b>take </b>
<font color="Maroon">H</font>
;<br/>

<b>thus </b><a NAME="E5:13_1_2_1_1_4"/>
( <font color="Maroon">H</font> <a href="msualg_3.html#R1">is_homomorphism</a> <font color="Maroon">A</font>,<font color="Maroon">C</font> &amp; <font color="Maroon">G</font> <a href="pboole.html#R6">=</a> <font color="Maroon">H</font> <a href="msualg_3.html#K3">**</a> <font color="Maroon">fi</font> )
 <b>by </b><i/>;<br/>


</div><b>end;</b></div>
<b>set </b><font color="Maroon">e</font> = <font color="Maroon">t1</font> <a href="equation.html#K5">'='</a> <font color="Maroon">t2</font>;<br/>
<a NAME="E15:13_1_2_1_1"/>
for <font color="Olive">B</font> being <a href="msualg_1.html#V5">non-empty</a>  <a href="msualg_1.html#L3">MSAlgebra</a> of <font color="Maroon">F<sub>1</sub></font>()  st <font color="Maroon">P<sub>1</sub></font>[<font color="Olive">B</font>] holds <br/><font color="Olive">B</font> <a href="equation.html#R1">|=</a> <font color="Maroon">t1</font> <a href="equation.html#K5">'='</a> <font color="Maroon">t2</font>
 
<b>from </b><i><a class="ref" href="birkhoff.html#S4" target="_self">BIRKHOFF:sch 4</a>(, );<br/></i>
<a NAME="E16:13_1_2_1_1"/><b>then </b><i><font color="Green">E104</font></i>: 
<font color="Maroon">F<sub>2</sub></font>() <a href="equation.html#R1">|=</a> <font color="Maroon">t1</font> <a href="equation.html#K5">'='</a> <font color="Maroon">t2</font>
 
<b>by </b><i>, </i>;<br/>
<b>thus </b><font color="Maroon">a</font> = 
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">t1</font> <a href="equation.html#K5">'='</a> <font color="Maroon">t2</font></span>)</span> <a href="mcart_1.html#K1">`1</a> </span>)</span>
<b>by </b><i>, <a class="ref" href="mcart_1.html#T7">MCART_1:7</a></i>
<br/>.= 
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">F<sub>3</sub></font>() <a href="birkhoff.html#K1" target="_self">-hash</a> </span>)</span> <a href="msualg_3.html#K1">.</a> <font color="Maroon">s</font></span>)</span> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">t1</font> <a href="equation.html#K5">'='</a> <font color="Maroon">t2</font></span>)</span> <a href="mcart_1.html#K2">`2</a> </span>)</span>
<b>by </b><i>, , <a class="ref" href="equation.html#D5">EQUATION:def 5</a></i>
<br/>.= 
<font color="Maroon">b</font>
<b>by </b><i>, <a class="ref" href="mcart_1.html#T7">MCART_1:7</a></i>
;<br/>


</div><b>end;</b></div></div><b>end;</b></div>
<b>hence </b><a NAME="E3:13_1_2"/>
<font color="Maroon">H</font> is <a href="msualg_3.html#V1">"1-1"</a>
 <b>by </b><i><a class="ref" href="msualg_3.html#T1">MSUALG_3:1</a></i>;<br/>


</div><b>end;</b></div>
<a NAME="E19:13_1"/><b>then </b>
<font color="Maroon">F<sub>2</sub></font>(), <a href="msualg_3.html#K7">Image</a> <font color="Maroon">H</font> <a href="msualg_3.html#R6">are_isomorphic</a> 
 
<b>by </b><i><a class="ref" href="msualg_9.html#T17">MSUALG_9:17</a></i>;<br/>
<a NAME="E20:13_1"/><b>then </b><i><font color="Green">E105</font></i>: 
 <a href="msualg_3.html#K7">Image</a> <font color="Maroon">H</font>,<font color="Maroon">F<sub>2</sub></font>() <a href="msualg_3.html#R6">are_isomorphic</a> 
 
<b>by </b><i><a class="ref" href="msualg_3.html#T17">MSUALG_3:17</a></i>;<br/>
<a NAME="E21:13_1"/>
<font color="Maroon">P<sub>1</sub></font>[ <a href="msualg_3.html#K7">Image</a> <font color="Maroon">H</font>]
 
<b>by </b><i>, </i>;<br/>
<b>hence </b><a NAME="E22:13_1"/>
<font color="Maroon">P<sub>1</sub></font>[<font color="Maroon">F<sub>2</sub></font>()]
 <b>by </b><i>, </i>;<br/>


</div>
