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

<b>deffunc </b><font color="Maroon">H<sub>1</sub></font>(  <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">S</font>) <b>-&gt; </b>   <a href="relset_1.html#M2">Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font>,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font> =  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font></span>)</span>;<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:9_1_1"/><i><font color="Green">E33</font></i>: 
(  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> <a href="hidden.html#R1">=</a> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">S</font> &amp; ( for <font color="Olive">d</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">S</font> 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>
<b>reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as    <a href="pboole.html#M1">ManySortedSet</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">S</font> <b>by </b><i>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/>
<a NAME="E4:9_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>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">f</font> holds <br/><font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">x</font> is   <a href="relat_1.html#NM1">Relation</a>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="9_1_1_1"><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:9_1_1_1"/>
<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:9_1_1_1"/><b>then </b>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font> <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font></span>)</span>
 
<b>by </b><i/>;<br/>
<b>hence </b><a NAME="E3:9_1_1_1"/>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">x</font> is   <a href="relat_1.html#NM1">Relation</a>
 ;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as   <a href="msualg_4.html#NM1">ManySortedRelation</a> of the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">S</font> <b>by </b><i><a class="ref" href="msualg_4.html#D1">MSUALG_4:def 1</a></i>;<br/>
<a NAME="E6:9_1_1"/>
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> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">S</font> holds <br/><font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font> is    <a href="relset_1.html#M2">Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font>,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="9_1_1_2"><b>proof </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:9_1_1_2"/>
<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">S</font>
 ;<br/>

<a NAME="E2:9_1_1_2"/><b>then </b>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font></span>)</span>
 
<b>by </b><i/>;<br/>
<b>hence </b><a NAME="E3:9_1_1_2"/>
<font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> is    <a href="relset_1.html#M2">Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font>,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font>
 ;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as    <a href="msualg_4.html#M1">ManySortedRelation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font>,the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <b>by </b><i><a class="ref" href="msualg_4.html#D2">MSUALG_4:def 2</a></i>;<br/>
<b>reconsider </b><font color="Maroon">f</font> = <font color="Maroon">f</font> as   <a href="msualg_4.html#NM4">ManySortedRelation</a> of <font color="Maroon">U1</font> ;<br/>
<a NAME="E9:9_1_1"/>
for <font color="Olive">i</font> being   <a href="hidden.html#M1">set</a> <br/> for <font color="Olive">R</font> being  <a href="relset_1.html#NM3">Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font>  st <font color="Olive">i</font> <a href="hidden.html#R2">in</a> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">S</font> &amp; <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font> <a href="hidden.html#R1">=</a> <font color="Olive">R</font> holds <br/><font color="Olive">R</font> is   <a href="eqrel_1.html#NM2">Equivalence_Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Olive">i</font>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="9_1_1_3"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">i</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>let </b><font color="Maroon">R</font> be   <a href="relset_1.html#NM3">Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font>;<br/>



<b>assume </b><a NAME="E1:9_1_1_3"/>
( <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">S</font> &amp; <font color="Maroon">f</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">R</font> )
 ;<br/>

<a NAME="E2:9_1_1_3"/><b>then </b>
<font color="Maroon">R</font> <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default">the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font></span>)</span>
 
<b>by </b><i/>;<br/>
<b>hence </b><a NAME="E3:9_1_1_3"/>
<font color="Maroon">R</font> is   <a href="eqrel_1.html#NM2">Equivalence_Relation</a> of the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font>
 ;<br/>


</div><b>end;</b></div>
<a NAME="E10:9_1_1"/><b>then </b><i><font color="Green">E42</font></i>: 
<font color="Maroon">f</font> is <a href="msualg_4.html#V2">MSEquivalence_Relation-like</a>
 
<b>by </b><i><a class="ref" href="msualg_4.html#D3">MSUALG_4:def 3</a></i>;<br/>
<b>take </b>
<font color="Maroon">f</font>
;<br/>

<b>set </b><font color="Maroon">f1</font> = <font color="Maroon">f</font>;<br/>
<a NAME="E11:9_1_1"/>
<font color="Maroon">f</font> is <a href="osalg_4.html#V1" target="_self">os-compatible</a>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="9_1_1_4"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">s1</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">S</font>, <font color="Maroon">s2</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">S</font>; <i><font color="Red">:: according to </font></i><a class="ref" href="osalg_4.html#D1" target="_self">OSALG_4:def 1</a><br/>

<b>assume </b><a NAME="E1:9_1_1_4"/><i><font color="Green">E44</font></i>: 
<font color="Maroon">s1</font> <a href="orders_2.html#R3">&lt;=</a> <font color="Maroon">s2</font>
 ;<br/>

<b>reconsider </b><font color="Maroon">s3</font> = <font color="Maroon">s1</font>, <font color="Maroon">s4</font> = <font color="Maroon">s2</font> as   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">S</font> ;<br/>
<b>reconsider </b><font color="Maroon">X</font> = the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> as   <a href="osalg_1.html#NM4">OrderSortedSet</a> of <font color="Maroon">S</font> <b>by </b><i><a class="ref" href="osalg_1.html#T17">OSALG_1:17</a></i>;<br/>
<a NAME="E4:9_1_1_4"/>
<font color="Maroon">X</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s3</font> <a href="tarski.html#R1">c=</a> <font color="Maroon">X</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s4</font>
 
<b>by </b><i>, <a class="ref" href="osalg_1.html#D18">OSALG_1:def 18</a></i>;<br/>
<a NAME="E5:9_1_1_4"/><b>then </b><i><font color="Green">E45</font></i>: 
 <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default"><font color="Maroon">X</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s1</font></span>)</span> <a href="tarski.html#R1">c=</a>  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default"><font color="Maroon">X</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s2</font></span>)</span>
 
<b>by </b><i><a class="ref" href="sysrel.html#T33">SYSREL:33</a></i>;<br/>
<a NAME="E6:9_1_1_4"/><i><font color="Green">E61</font></i>: 
( <font color="Maroon">f</font> <a href="msualg_4.html#K1">.</a> <font color="Maroon">s1</font> <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default"><font color="Maroon">X</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s1</font></span>)</span> &amp; <font color="Maroon">f</font> <a href="msualg_4.html#K1">.</a> <font color="Maroon">s2</font> <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <span class="p1">(<span class="default"><font color="Maroon">X</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s2</font></span>)</span> )
 
<b>by </b><i/>;<br/>
<b>let </b><font color="Maroon">x</font> be    <a href="hidden.html#M1">set</a> , <font color="Maroon">y</font> be    <a href="hidden.html#M1">set</a> ;<br/>

<b>assume </b><a NAME="E7:9_1_1_4"/><i><font color="Green">E62</font></i>: 
( <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">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s1</font> &amp; <font color="Maroon">y</font> <a href="hidden.html#R2">in</a> the <a href="msualg_1.html#U4">Sorts</a> of <font color="Maroon">U1</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">s1</font> )
 ;<br/>

<b>thus </b><a NAME="E8:9_1_1_4"/>
( <span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">x</font>,<font color="Maroon">y</font></span><a href="tarski.html#K4">]</a></span> <a href="hidden.html#R2">in</a> <font color="Maroon">f</font> <a href="msualg_4.html#K1">.</a> <font color="Maroon">s1</font> implies <span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">x</font>,<font color="Maroon">y</font></span><a href="tarski.html#K4">]</a></span> <a href="hidden.html#R2">in</a> <font color="Maroon">f</font> <a href="msualg_4.html#K1">.</a> <font color="Maroon">s2</font> )
 <b>by </b><i>, </i>;<br/>

<b>assume </b><a NAME="E9:9_1_1_4"/>
<span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">x</font>,<font color="Maroon">y</font></span><a href="tarski.html#K4">]</a></span> <a href="hidden.html#R2">in</a> <font color="Maroon">f</font> <a href="msualg_4.html#K1">.</a> <font color="Maroon">s2</font>
 ;<br/>

<a NAME="E10:9_1_1_4"/><b>then </b>
<font color="Maroon">x</font> <a href="hidden.html#R1">=</a> <font color="Maroon">y</font>
 
<b>by </b><i>, <a class="ref" href="relat_1.html#D10">RELAT_1:def 10</a></i>;<br/>
<b>hence </b><a NAME="E11:9_1_1_4"/>
<span class="p1"><a href="tarski.html#K4">[</a><span class="default"><font color="Maroon">x</font>,<font color="Maroon">y</font></span><a href="tarski.html#K4">]</a></span> <a href="hidden.html#R2">in</a> <font color="Maroon">f</font> <a href="msualg_4.html#K1">.</a> <font color="Maroon">s1</font>
 <b>by </b><i>, , <a class="ref" href="relat_1.html#D10">RELAT_1:def 10</a></i>;<br/>


</div><b>end;</b></div>
<b>hence </b><a NAME="E12:9_1_1"/>
( <font color="Maroon">f</font> is    <a href="osalg_4.html#M1" target="_self">OrderSortedRelation</a> of <font color="Maroon">U1</font> &amp; <font color="Maroon">f</font> is <a href="msualg_4.html#V3">MSEquivalence-like</a> )
 <b>by </b><i>, , <a class="ref" href="msualg_4.html#D5">MSUALG_4:def 5</a></i>;<br/>


</div>
