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

<b>set </b><font color="Maroon">rs</font> =  <a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font>;<br/>
<b>set </b><font color="Maroon">D</font> = the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>;<br/>
<b>deffunc </b><font color="Maroon">H<sub>1</sub></font>(   <a href="subset_1.html#M1">Element</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>) <b>-&gt; </b>  <a href="subset_1.html#NM2">Subset</a> of <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p2">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span></span>)</span> =  <a href="msualg_4.html#K3" target="_self">Class</a> <font color="Maroon">R</font>,<font color="Maroon">a<sub>1</sub></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:22_1_1"/><i><font color="Green">E28</font></i>: 
(  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> <a href="hidden.html#R1">=</a> the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span> &amp; ( for <font color="Olive">d</font> being   <a href="subset_1.html#M1">Element</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span> holds  <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">d</font> <a href="hidden.html#R1">=</a> <font color="Maroon">H<sub>1</sub></font>(<font color="Olive">d</font>) ) )
 <b>from </b><i><a class="ref" href="funct_1.html#S4">FUNCT_1:sch 4</a>();<br/></i>
<a NAME="E3:22_1_1"/><i><font color="Green">E33</font></i>: 
the <a href="msualg_1.html#U1">OperSymbols</a> of <font color="Maroon">S</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a>  <a href="xboole_0.html#K1">{}</a> 
 
<b>by </b><i><a class="ref" href="msualg_1.html#D5">MSUALG_1:def 5</a></i>;<br/>
<a NAME="E4:22_1_1"/><b>then </b><i><font color="Green">E42</font></i>: 
<font color="Maroon">o</font> <a href="hidden.html#R2">in</a> the <a href="msualg_1.html#U1">OperSymbols</a> of <font color="Maroon">S</font>
 
;<br/>
<a NAME="E5:22_1_1"/><i><font color="Green">E44</font></i>: 
(  <a href="relset_1.html#K4">dom</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font> <a href="hidden.html#R1">=</a> the <a href="msualg_1.html#U1">OperSymbols</a> of <font color="Maroon">S</font> &amp;  <a href="relset_1.html#K5">rng</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font> <a href="tarski.html#R1">c=</a> the <a href="struct_0.html#U1">carrier</a> of <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 NAME="E6:22_1_1"/>
<font color="Maroon">o</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="pboole.html#K7">*</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font></span>)</span>
 
<b>by </b><i>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/>
<b>then </b><i><font color="Green">E45</font></i>: <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="pboole.html#K7">*</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">o</font> = 
the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">o</font></span>)</span>
<b>by </b><i><a class="ref" href="funct_1.html#T22">FUNCT_1:22</a></i>
<br/>.= 
the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>
<b>by </b><i><a class="ref" href="msualg_1.html#D7">MSUALG_1:def 7</a></i>
;<br/>
<a NAME="E8:22_1_1"/>
 <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="pboole.html#K7">*</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font></span>)</span> <a href="hidden.html#R1">=</a>  <a href="relset_1.html#K4">dom</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font>
 
<b>by </b><i>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/>
<b>then </b><i><font color="Green">E47</font></i>: <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="pboole.html#K7">*</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">o</font> = 
<span class="p1">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">o</font></span>)</span>
<b>by </b><i>, , <a class="ref" href="funct_1.html#T22">FUNCT_1:22</a></i>
<br/>.= 
<span class="p1">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>
<b>by </b><i><a class="ref" href="msualg_1.html#D7">MSUALG_1:def 7</a></i>
;<br/>
<a NAME="E10:22_1_1"/>
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> the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span> holds <br/><font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">x</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_1_1_3"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">x</font> be    <a href="hidden.html#M1">set</a> ;<br/>

<b>assume </b><a NAME="E1:22_1_1_3"/>
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a> the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>
 ;<br/>

<b>then reconsider </b><font color="Maroon">x1</font> = <font color="Maroon">x</font> as    <a href="subset_1.html#M1">Element</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span> ;<br/>
<a NAME="E3:22_1_1_3"/>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x1</font> <a href="hidden.html#R1">=</a>  <a href="msualg_4.html#K3" target="_self">Class</a> <font color="Maroon">R</font>,<font color="Maroon">x1</font>
 
<b>by </b><i/>;<br/>
<a NAME="E4:22_1_1_3"/><b>then </b>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x1</font> <a href="hidden.html#R1">=</a>  <a href="eqrel_1.html#K7">Class</a> <span class="p1">(<span class="default"><font color="Maroon">R</font> <a href="msualg_4.html#K2" target="_self">.</a> <span class="p2">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span></span>)</span>,<font color="Maroon">x1</font>
 
;<br/>
<a NAME="E5:22_1_1_3"/><b>then </b>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x1</font> <a href="hidden.html#R2">in</a>  <a href="eqrel_1.html#K9">Class</a> <span class="p1">(<span class="default"><font color="Maroon">R</font> <a href="msualg_4.html#K2" target="_self">.</a> <span class="p2">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span></span>)</span>
 
<b>by </b><i><a class="ref" href="eqrel_1.html#D5">EQREL_1:def 5</a></i>;<br/>
<b>hence </b><a NAME="E6:22_1_1_3"/>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span>
 <b>by </b><i/>;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as   <a href="funct_2.html#NM1">Function</a> of <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="pboole.html#K7">*</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">o</font>,<span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msualg_4.html#K4" target="_self">Class</a> <font color="Maroon">R</font></span>)</span> <a href="pboole.html#K7">*</a> the <a href="msualg_1.html#U3">ResultSort</a> of <font color="Maroon">S</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">o</font> <b>by </b><i>, , , <a class="ref" href="funct_2.html#T5">FUNCT_2:5</a></i>;<br/>
<b>take </b>
<font color="Maroon">f</font>
;<br/>

<b>thus </b><a NAME="E12:22_1_1"/>
for <font color="Olive">x</font> being   <a href="subset_1.html#M1">Element</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">A</font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="msualg_1.html#K2">the_result_sort_of</a> <font color="Maroon">o</font></span>)</span> holds  <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">x</font> <a href="hidden.html#R1">=</a>  <a href="msualg_4.html#K3" target="_self">Class</a> <font color="Maroon">R</font>,<font color="Olive">x</font>
 <b>by </b><i/>;<br/>


</div>
