<?xml version="1.0"?>
<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">i</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>let </b><font color="Maroon">F</font> be   <a href="group_7.html#NM1">HGrStr-Family</a> of <font color="Maroon">I</font>;<br/><b>let </b><font color="Maroon">G</font> be  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a> ;<br/>







<b>assume </b><b>that </b><br/><a NAME="E1:22"/><i><font color="Green">E29</font></i>: 
( <font color="Maroon">i</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> &amp; <font color="Maroon">G</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> )
 <b>and </b><br/><a NAME="E2:22"/><i><font color="Green">E40</font></i>: 
for <font color="Olive">x</font>, <font color="Olive">y</font>, <font color="Olive">z</font> being  <a href="struct_0.html#NM1">Element</a> of <span class="p1">(<span class="default"><a href="group_7.html#K2" target="_self">product</a> <font color="Maroon">F</font></span>)</span> holds  <span class="p1">(<span class="default"><font color="Olive">x</font> <a href="group_1.html#K1">*</a> <font color="Olive">y</font></span>)</span> <a href="group_1.html#K1">*</a> <font color="Olive">z</font> <a href="hidden.html#R1">=</a> <font color="Olive">x</font> <a href="group_1.html#K1">*</a> <span class="p1">(<span class="default"><font color="Olive">y</font> <a href="group_1.html#K1">*</a> <font color="Olive">z</font></span>)</span>
 ; <i><font color="Red">:: according to </font></i><a class="ref" href="group_1.html#D4">GROUP_1:def 4</a><br/>

<b>set </b><font color="Maroon">GP</font> =  <a href="group_7.html#K2" target="_self">product</a> <font color="Maroon">F</font>;<br/>
<b>let </b><font color="Maroon">x</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>, <font color="Maroon">y</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>, <font color="Maroon">z</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>; <i><font color="Red">:: according to </font></i><a class="ref" href="group_1.html#D4">GROUP_1:def 4</a><br/>

<b>defpred </b><font color="Maroon">S<sub>1</sub></font>[   <a href="hidden.html#M1">set</a> ,   <a href="hidden.html#M1">set</a> ] <b>means </b>( ( <font color="Maroon">a<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> implies <font color="Maroon">a<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font> ) &amp; ( <font color="Maroon">a<sub>1</sub></font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> implies  ex <font color="Olive">H</font> being non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  ex <font color="Olive">a</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Olive">H</font> st <br/>( <font color="Olive">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font> &amp; <font color="Maroon">a<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">a</font> ) ) );<br/>
<a NAME="E3:22"/><i><font color="Green">E48</font></i>: 
for <font color="Olive">j</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> holds <br/> ex <font color="Olive">k</font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive">j</font>,<font color="Olive">k</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_1"><b>proof </b></a><div class="add">

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

<b>assume </b><a NAME="E1:22_1"/><i><font color="Green">E50</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font>
 ;<br/>

<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_1_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:22_1_1"/>
( <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> or <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_1_1_1"><b>suppose </b></a><a NAME="E1:22_1_1_1"/>
<font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><b>hence </b><a NAME="E2:22_1_1_1"/>
 ex <font color="Olive">k</font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon">j</font>,<font color="Olive">k</font>]
 ;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_1_1_2"><b>suppose </b></a><a NAME="E1:22_1_1_2"/><i><font color="Green">E54</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><a NAME="E2:22_1_1_2"/>
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">F</font>
 <b>by </b><i>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/><a NAME="E3:22_1_1_2"/><b>then </b>
<font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font>
 <b>by </b><i><a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/><b>then reconsider </b><font color="Maroon">Fj</font> = <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> as  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  <b>by </b><i/>;<br/><b>consider </b><font color="Maroon">a</font> being   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">Fj</font>;<br/><b>take </b>
<font color="Maroon">a</font>
;<br/><b>thus </b><a NAME="E6:22_1_1_2"/>
( <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> implies <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font> )
 <b>by </b><i/>;<br/><b>thus </b><a NAME="E7:22_1_1_2"/>
( <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> implies  ex <font color="Olive">H</font> being non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  ex <font color="Olive">a</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Olive">H</font> st <br/>( <font color="Olive">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Olive">a</font> ) )
 ;<br/></div><b>end;</b></div></div><b>end;</b></div>

</div><b>end;</b></div>
<b>consider </b><font color="Maroon">gx</font> being    <a href="pboole.html#M1">ManySortedSet</a> of <font color="Maroon">I</font><b> such that </b><br/><a NAME="E5:22"/><i><font color="Green">E55</font></i>: 
for <font color="Olive">j</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> holds <br/><font color="Maroon">S<sub>1</sub></font>[<font color="Olive">j</font>,<font color="Maroon">gx</font> <a href="funct_1.html#K1">.</a> <font color="Olive">j</font>]
 <b>from </b><i><a class="ref" href="pboole.html#S3">PBOOLE:sch 3</a>();<br/></i>
<b>defpred </b><font color="Maroon">S<sub>2</sub></font>[   <a href="hidden.html#M1">set</a> ,   <a href="hidden.html#M1">set</a> ] <b>means </b>( ( <font color="Maroon">a<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> implies <font color="Maroon">a<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">y</font> ) &amp; ( <font color="Maroon">a<sub>1</sub></font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> implies  ex <font color="Olive">H</font> being non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  ex <font color="Olive">a</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Olive">H</font> st <br/>( <font color="Olive">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font> &amp; <font color="Maroon">a<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">a</font> ) ) );<br/>
<a NAME="E6:22"/><i><font color="Green">E56</font></i>: 
for <font color="Olive">j</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> holds <br/> ex <font color="Olive">k</font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>2</sub></font>[<font color="Olive">j</font>,<font color="Olive">k</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_2"><b>proof </b></a><div class="add">

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

<b>assume </b><a NAME="E1:22_2"/><i><font color="Green">E57</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font>
 ;<br/>

<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_2_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:22_2_1"/>
( <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> or <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_2_1_1"><b>suppose </b></a><a NAME="E1:22_2_1_1"/>
<font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><b>hence </b><a NAME="E2:22_2_1_1"/>
 ex <font color="Olive">k</font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>2</sub></font>[<font color="Maroon">j</font>,<font color="Olive">k</font>]
 ;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_2_1_2"><b>suppose </b></a><a NAME="E1:22_2_1_2"/><i><font color="Green">E58</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><a NAME="E2:22_2_1_2"/>
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">F</font>
 <b>by </b><i>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/><a NAME="E3:22_2_1_2"/><b>then </b>
<font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font>
 <b>by </b><i><a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/><b>then reconsider </b><font color="Maroon">Fj</font> = <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> as  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  <b>by </b><i/>;<br/><b>consider </b><font color="Maroon">a</font> being   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">Fj</font>;<br/><b>take </b>
<font color="Maroon">a</font>
;<br/><b>thus </b><a NAME="E6:22_2_1_2"/>
( <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> implies <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">y</font> )
 <b>by </b><i/>;<br/><b>thus </b><a NAME="E7:22_2_1_2"/>
( <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> implies  ex <font color="Olive">H</font> being non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  ex <font color="Olive">a</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Olive">H</font> st <br/>( <font color="Olive">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Olive">a</font> ) )
 ;<br/></div><b>end;</b></div></div><b>end;</b></div>

</div><b>end;</b></div>
<b>consider </b><font color="Maroon">gy</font> being    <a href="pboole.html#M1">ManySortedSet</a> of <font color="Maroon">I</font><b> such that </b><br/><a NAME="E8:22"/><i><font color="Green">E59</font></i>: 
for <font color="Olive">j</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> holds <br/><font color="Maroon">S<sub>2</sub></font>[<font color="Olive">j</font>,<font color="Maroon">gy</font> <a href="funct_1.html#K1">.</a> <font color="Olive">j</font>]
 <b>from </b><i><a class="ref" href="pboole.html#S3">PBOOLE:sch 3</a>();<br/></i>
<b>defpred </b><font color="Maroon">S<sub>3</sub></font>[   <a href="hidden.html#M1">set</a> ,   <a href="hidden.html#M1">set</a> ] <b>means </b>( ( <font color="Maroon">a<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> implies <font color="Maroon">a<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">z</font> ) &amp; ( <font color="Maroon">a<sub>1</sub></font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> implies  ex <font color="Olive">H</font> being non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  ex <font color="Olive">a</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Olive">H</font> st <br/>( <font color="Olive">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font> &amp; <font color="Maroon">a<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">a</font> ) ) );<br/>
<a NAME="E9:22"/><i><font color="Green">E60</font></i>: 
for <font color="Olive">j</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> holds <br/> ex <font color="Olive">k</font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>3</sub></font>[<font color="Olive">j</font>,<font color="Olive">k</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_3"><b>proof </b></a><div class="add">

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

<b>assume </b><a NAME="E1:22_3"/><i><font color="Green">E61</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font>
 ;<br/>

<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_3_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:22_3_1"/>
( <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> or <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_3_1_1"><b>suppose </b></a><a NAME="E1:22_3_1_1"/>
<font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><b>hence </b><a NAME="E2:22_3_1_1"/>
 ex <font color="Olive">k</font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>3</sub></font>[<font color="Maroon">j</font>,<font color="Olive">k</font>]
 ;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_3_1_2"><b>suppose </b></a><a NAME="E1:22_3_1_2"/><i><font color="Green">E63</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><a NAME="E2:22_3_1_2"/>
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">F</font>
 <b>by </b><i>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/><a NAME="E3:22_3_1_2"/><b>then </b>
<font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <font color="Maroon">F</font>
 <b>by </b><i><a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/><b>then reconsider </b><font color="Maroon">Fj</font> = <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> as  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  <b>by </b><i/>;<br/><b>consider </b><font color="Maroon">a</font> being   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">Fj</font>;<br/><b>take </b>
<font color="Maroon">a</font>
;<br/><b>thus </b><a NAME="E6:22_3_1_2"/>
( <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">i</font> implies <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">z</font> )
 <b>by </b><i/>;<br/><b>thus </b><a NAME="E7:22_3_1_2"/>
( <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> implies  ex <font color="Olive">H</font> being non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a>  ex <font color="Olive">a</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Olive">H</font> st <br/>( <font color="Olive">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Olive">a</font> ) )
 ;<br/></div><b>end;</b></div></div><b>end;</b></div>

</div><b>end;</b></div>
<b>consider </b><font color="Maroon">gz</font> being    <a href="pboole.html#M1">ManySortedSet</a> of <font color="Maroon">I</font><b> such that </b><br/><a NAME="E11:22"/><i><font color="Green">E64</font></i>: 
for <font color="Olive">j</font> being   <a href="hidden.html#M1">set</a>   st <font color="Olive">j</font> <a href="hidden.html#R2">in</a> <font color="Maroon">I</font> holds <br/><font color="Maroon">S<sub>3</sub></font>[<font color="Olive">j</font>,<font color="Maroon">gz</font> <a href="funct_1.html#K1">.</a> <font color="Olive">j</font>]
 <b>from </b><i><a class="ref" href="pboole.html#S3">PBOOLE:sch 3</a>();<br/></i>
<a NAME="E12:22"/><i><font color="Green">E65</font></i>: 
(  <a href="relat_1.html#K1">dom</a> <font color="Maroon">gx</font> <a href="hidden.html#R1">=</a> <font color="Maroon">I</font> &amp;  <a href="relat_1.html#K1">dom</a> <font color="Maroon">gy</font> <a href="hidden.html#R1">=</a> <font color="Maroon">I</font> &amp;  <a href="relat_1.html#K1">dom</a> <font color="Maroon">gz</font> <a href="hidden.html#R1">=</a> <font color="Maroon">I</font> )
 
<b>by </b><i><a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/>
<a NAME="E13:22"/><i><font color="Green">E66</font></i>: 
 <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="hidden.html#R1">=</a> <font color="Maroon">I</font>
 
<b>by </b><i><a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_4"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">j</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:22_4"/><i><font color="Green">E67</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">gx</font>
 ;<br/><b>then consider </b><font color="Maroon">R</font> being    <a href="struct_0.html#L1">1-sorted</a> <b> such that </b><br/><a NAME="E3:22_4"/><i><font color="Green">E68</font></i>: 
( <font color="Maroon">R</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">R</font> )
 <b>by </b><i>, <a class="ref" href="pralg_1.html#D13">PRALG_1:def 13</a></i>;<br/><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_4_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:22_4_1"/>
( <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">j</font> or <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_4_1_1"><b>suppose </b></a><a NAME="E1:22_4_1_1"/><i><font color="Green">E71</font></i>: 
<font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">j</font>
 ;<br/><div class="add"><a NAME="E2:22_4_1_1"/><b>then </b>
<font color="Maroon">gx</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font>
 <b>by </b><i>, , </i>;<br/><b>hence </b><a NAME="E3:22_4_1_1"/>
<font color="Maroon">gx</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font>
 <b>by </b><i>, , </i>;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_4_1_2"><b>suppose </b></a><a NAME="E1:22_4_1_2"/>
<font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><b>then consider </b><font color="Maroon">H</font> being  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a> , <font color="Maroon">a</font> being   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">H</font><b> such that </b><br/><a NAME="E3:22_4_1_2"/><i><font color="Green">E72</font></i>: 
( <font color="Maroon">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <font color="Maroon">gx</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> )
 <b>by </b><i>, , </i>;<br/><b>thus </b><a NAME="E4:22_4_1_2"/>
<font color="Maroon">gx</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font>
 <b>by </b><i>, </i>;<br/></div><b>end;</b></div></div><b>end;</b></div></div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">gx</font> = <font color="Maroon">gx</font> as    <a href="pralg_2.html#M1">Element</a> of  <a href="card_3.html#K4">product</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <b>by </b><i>, , <a class="ref" href="card_3.html#T18">CARD_3:18</a></i>;<br/>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_5"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">j</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:22_5"/><i><font color="Green">E74</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">gy</font>
 ;<br/><b>then consider </b><font color="Maroon">R</font> being    <a href="struct_0.html#L1">1-sorted</a> <b> such that </b><br/><a NAME="E3:22_5"/><i><font color="Green">E75</font></i>: 
( <font color="Maroon">R</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">R</font> )
 <b>by </b><i>, <a class="ref" href="pralg_1.html#D13">PRALG_1:def 13</a></i>;<br/><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_5_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:22_5_1"/>
( <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">j</font> or <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_5_1_1"><b>suppose </b></a><a NAME="E1:22_5_1_1"/><i><font color="Green">E95</font></i>: 
<font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">j</font>
 ;<br/><div class="add"><a NAME="E2:22_5_1_1"/><b>then </b>
<font color="Maroon">gy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">y</font>
 <b>by </b><i>, , </i>;<br/><b>hence </b><a NAME="E3:22_5_1_1"/>
<font color="Maroon">gy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font>
 <b>by </b><i>, , </i>;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_5_1_2"><b>suppose </b></a><a NAME="E1:22_5_1_2"/>
<font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><b>then consider </b><font color="Maroon">H</font> being  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a> , <font color="Maroon">a</font> being   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">H</font><b> such that </b><br/><a NAME="E3:22_5_1_2"/><i><font color="Green">E97</font></i>: 
( <font color="Maroon">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <font color="Maroon">gy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> )
 <b>by </b><i>, , </i>;<br/><b>thus </b><a NAME="E4:22_5_1_2"/>
<font color="Maroon">gy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font>
 <b>by </b><i>, </i>;<br/></div><b>end;</b></div></div><b>end;</b></div></div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">gy</font> = <font color="Maroon">gy</font> as    <a href="pralg_2.html#M1">Element</a> of  <a href="card_3.html#K4">product</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <b>by </b><i>, , <a class="ref" href="card_3.html#T18">CARD_3:18</a></i>;<br/>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="22_6"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">j</font> be    <a href="hidden.html#M1">set</a> ;<br/><b>assume </b><a NAME="E1:22_6"/><i><font color="Green">E98</font></i>: 
<font color="Maroon">j</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">gz</font>
 ;<br/><b>then consider </b><font color="Maroon">R</font> being    <a href="struct_0.html#L1">1-sorted</a> <b> such that </b><br/><a NAME="E3:22_6"/><i><font color="Green">E99</font></i>: 
( <font color="Maroon">R</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">R</font> )
 <b>by </b><i>, <a class="ref" href="pralg_1.html#D13">PRALG_1:def 13</a></i>;<br/><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_6_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:22_6_1"/>
( <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">j</font> or <font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_6_1_1"><b>suppose </b></a><a NAME="E1:22_6_1_1"/><i><font color="Green">E100</font></i>: 
<font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">j</font>
 ;<br/><div class="add"><a NAME="E2:22_6_1_1"/><b>then </b>
<font color="Maroon">gz</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">z</font>
 <b>by </b><i>, , </i>;<br/><b>hence </b><a NAME="E3:22_6_1_1"/>
<font color="Maroon">gz</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font>
 <b>by </b><i>, , </i>;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="22_6_1_2"><b>suppose </b></a><a NAME="E1:22_6_1_2"/>
<font color="Maroon">j</font> <a href="hidden.html#NR2" target="_self">&lt;&gt;</a> <font color="Maroon">i</font>
 ;<br/><div class="add"><b>then consider </b><font color="Maroon">H</font> being  non <a href="struct_0.html#V3">empty</a>  <a href="group_1.html#L1">HGrStr</a> , <font color="Maroon">a</font> being   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">H</font><b> such that </b><br/><a NAME="E3:22_6_1_2"/><i><font color="Green">E101</font></i>: 
( <font color="Maroon">H</font> <a href="hidden.html#R1">=</a> <font color="Maroon">F</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> &amp; <font color="Maroon">gz</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> )
 <b>by </b><i>, , </i>;<br/><b>thus </b><a NAME="E4:22_6_1_2"/>
<font color="Maroon">gz</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font> <a href="hidden.html#R2">in</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">j</font>
 <b>by </b><i>, </i>;<br/></div><b>end;</b></div></div><b>end;</b></div></div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">gz</font> = <font color="Maroon">gz</font> as    <a href="pralg_2.html#M1">Element</a> of  <a href="card_3.html#K4">product</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <b>by </b><i>, , <a class="ref" href="card_3.html#T18">CARD_3:18</a></i>;<br/>
<b>reconsider </b><font color="Maroon">x1</font> = <font color="Maroon">gx</font>, <font color="Maroon">y1</font> = <font color="Maroon">gy</font>, <font color="Maroon">z1</font> = <font color="Maroon">gz</font> as   <a href="struct_0.html#NM1">Element</a> of <span class="p1">(<span class="default"><a href="group_7.html#K2" target="_self">product</a> <font color="Maroon">F</font></span>)</span> <b>by </b><i/>;<br/>
<b>reconsider </b><font color="Maroon">xy</font> = <font color="Maroon">x1</font> <a href="group_1.html#K1">*</a> <font color="Maroon">y1</font>, <font color="Maroon">xyz3</font> = <span class="p1">(<span class="default"><font color="Maroon">x1</font> <a href="group_1.html#K1">*</a> <font color="Maroon">y1</font></span>)</span> <a href="group_1.html#K1">*</a> <font color="Maroon">z1</font>, <font color="Maroon">yz</font> = <font color="Maroon">y1</font> <a href="group_1.html#K1">*</a> <font color="Maroon">z1</font>, <font color="Maroon">xyz5</font> = <font color="Maroon">x1</font> <a href="group_1.html#K1">*</a> <span class="p1">(<span class="default"><font color="Maroon">y1</font> <a href="group_1.html#K1">*</a> <font color="Maroon">z1</font></span>)</span> as    <a href="pralg_2.html#M1">Element</a> of  <a href="card_3.html#K4">product</a> <span class="p1">(<span class="default"><a href="pralg_1.html#K12">Carrier</a> <font color="Maroon">F</font></span>)</span> <b>by </b><i/>;<br/>
<b>reconsider </b><font color="Maroon">xyi</font> = <font color="Maroon">xy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font>, <font color="Maroon">yzi</font> = <font color="Maroon">yz</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> as   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font> <b>by </b><i>, </i>;<br/>
<a NAME="E23:22"/><i><font color="Green">E102</font></i>: 
<span class="p1">(<span class="default"><font color="Maroon">x1</font> <a href="group_1.html#K1">*</a> <font color="Maroon">y1</font></span>)</span> <a href="group_1.html#K1">*</a> <font color="Maroon">z1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x1</font> <a href="group_1.html#K1">*</a> <span class="p1">(<span class="default"><font color="Maroon">y1</font> <a href="group_1.html#K1">*</a> <font color="Maroon">z1</font></span>)</span>
 
<b>by </b><i/>;<br/>
<a NAME="E24:22"/><i><font color="Green">E104</font></i>: 
( <font color="Maroon">gx</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font> &amp; <font color="Maroon">gy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">y</font> &amp; <font color="Maroon">gz</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">z</font> )
 
<b>by </b><i>, , , </i>;<br/>
<a NAME="E25:22"/><b>then </b>
( <font color="Maroon">xy</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font> <a href="group_1.html#K1">*</a> <font color="Maroon">y</font> &amp; <font color="Maroon">xyi</font> <a href="group_1.html#K1">*</a> <font color="Maroon">z</font> <a href="hidden.html#R1">=</a> <font color="Maroon">xyz3</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> &amp; <font color="Maroon">x</font> <a href="group_1.html#K1">*</a> <font color="Maroon">yzi</font> <a href="hidden.html#R1">=</a> <font color="Maroon">xyz5</font> <a href="funct_1.html#K1">.</a> <font color="Maroon">i</font> )
 
<b>by </b><i>, </i>;<br/>
<b>hence </b><a NAME="E26:22"/>
<span class="p1">(<span class="default"><font color="Maroon">x</font> <a href="group_1.html#K1">*</a> <font color="Maroon">y</font></span>)</span> <a href="group_1.html#K1">*</a> <font color="Maroon">z</font> <a href="hidden.html#R1">=</a> <font color="Maroon">x</font> <a href="group_1.html#K1">*</a> <span class="p1">(<span class="default"><font color="Maroon">y</font> <a href="group_1.html#K1">*</a> <font color="Maroon">z</font></span>)</span>
 <b>by </b><i>, , , </i>;<br/>


</div>
