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

<span class="kw">let </span><font color="Maroon" title="c1">S</font> be   non  <a href="struct_0.html#V2" title="STRUCT_0:attr.2">empty</a>   non  <a href="struct_0.html#V11" title="STRUCT_0:attr.11">void</a>   <a href="msualg_1.html#L1" title="MSUALG_1:struct.1">ManySortedSign</a> ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  for <font color="Olive" title="b1">U1</font> being   <a href="msualg_1.html#V4" title="MSUALG_1:attr.4">non-empty</a>   <a href="msualg_1.html#L3" title="MSUALG_1:struct.3">MSAlgebra</a> over <font color="Maroon" title="c1">S</font>  ex <font color="Olive" title="b2">U0</font> being   <a href="msualg_1.html#V3" title="MSUALG_1:attr.3">strict</a>   <a href="msualg_1.html#V4" title="MSUALG_1:attr.4">non-empty</a>   <a href="msafree.html#V2" title="MSAFREE:attr.2">free</a>   <a href="msualg_1.html#L3" title="MSUALG_1:struct.3">MSAlgebra</a> over <font color="Maroon" title="c1">S</font> ex <font color="Olive" title="b3">F</font> being   <a href="msualg_3.html#NM1" title="MSUALG_3:NM.1">ManySortedFunction</a> of <font color="Olive" title="b2">U0</font>,<font color="Olive" title="b1">U1</font> st <font color="Olive" title="b3">F</font> <a href="msualg_3.html#R2" title="MSUALG_3:pred.2">is_epimorphism</a> <font color="Olive" title="b2">U0</font>,<font color="Olive" title="b1">U1</font></span><br/><span class="kw">let </span><font color="Maroon" title="c2">U1</font> be   <a href="msualg_1.html#V4" title="MSUALG_1:attr.4">non-empty</a>   <a href="msualg_1.html#L3" title="MSUALG_1:struct.3">MSAlgebra</a> over <font color="Maroon" title="c1">S</font>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  ex <font color="Olive" title="b1">U0</font> being   <a href="msualg_1.html#V3" title="MSUALG_1:attr.3">strict</a>   <a href="msualg_1.html#V4" title="MSUALG_1:attr.4">non-empty</a>   <a href="msafree.html#V2" title="MSAFREE:attr.2">free</a>   <a href="msualg_1.html#L3" title="MSUALG_1:struct.3">MSAlgebra</a> over <font color="Maroon" title="c1">S</font> ex <font color="Olive" title="b2">F</font> being   <a href="msualg_3.html#NM1" title="MSUALG_3:NM.1">ManySortedFunction</a> of <font color="Olive" title="b1">U0</font>,<font color="Maroon" title="c2">U1</font> st <font color="Olive" title="b2">F</font> <a href="msualg_3.html#R2" title="MSUALG_3:pred.2">is_epimorphism</a> <font color="Olive" title="b1">U0</font>,<font color="Maroon" title="c2">U1</font></span><br/>



<span class="kw">set </span><font color="Maroon" title="c3">S1</font> =  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>;<br/>
<span class="kw">set </span><font color="Maroon" title="c4">FA</font> =  <a href="msafree.html#K11" title="MSAFREE:func.11">FreeMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>;<br/>
<span class="kw">set </span><font color="Maroon" title="c5">FG</font> =  <a href="msafree.html#K13" title="MSAFREE:func.13">FreeGen</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>;<br/>
<span class="kw">reconsider </span><font color="Maroon" title="c6">fa</font> =  <a href="msafree.html#K11" title="MSAFREE:func.11">FreeMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> as   <a href="msualg_1.html#V3" title="MSUALG_1:attr.3">strict</a>   <a href="msualg_1.html#V4" title="MSUALG_1:attr.4">non-empty</a>   <a href="msafree.html#V2" title="MSAFREE:attr.2">free</a>   <a href="msualg_1.html#L3" title="MSUALG_1:struct.3">MSAlgebra</a> over <font color="Maroon" title="c1">S</font> <span class="kw">by</span> <span class="lab"><a class="ref" href="msafree.html#T17" target="_self" onmouseover="rs('msafree/T17')" onmouseout="rh()">Th17</a></span>;<br/>
<span class="kw">set </span><font color="Maroon" title="c7">f</font> =  <a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>;<br/>
<span class="kw">take </span>
<font color="Maroon" title="c6">fa</font>
; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  ex <font color="Olive" title="b1">F</font> being   <a href="msualg_3.html#NM1" title="MSUALG_3:NM.1">ManySortedFunction</a> of <font color="Maroon" title="c6">fa</font>,<font color="Maroon" title="c2">U1</font> st <font color="Olive" title="b1">F</font> <a href="msualg_3.html#R2" title="MSUALG_3:pred.2">is_epimorphism</a> <font color="Maroon" title="c6">fa</font>,<font color="Maroon" title="c2">U1</font></span><br/>

<a NAME="E2:52"/>
 <a href="msafree.html#K13" title="MSAFREE:func.13">FreeGen</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> is  <a href="msafree.html#V1" title="MSAFREE:attr.1">free</a> 
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="msafree.html#T16" target="_self" onmouseover="rs('msafree/T16')" onmouseout="rh()">Th16</a></span>;<br/>
<span class="kw">then </span><span class="kw">consider </span><font color="Maroon" title="c8">F</font> being   <a href="msualg_3.html#NM1" title="MSUALG_3:NM.1">ManySortedFunction</a> of <span class="p1">(<span class="default"><a href="msafree.html#K11" title="MSAFREE:func.11">FreeMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span>,<font color="Maroon" title="c2">U1</font><span class="kw"> such that </span><br/><a NAME="E4:52"/><span class="lab"><font color="Green" title="E31">A1</font></span>: 
<font color="Maroon" title="c8">F</font> <a href="msualg_3.html#R1" title="MSUALG_3:pred.1">is_homomorphism</a>  <a href="msafree.html#K11" title="MSAFREE:func.11">FreeMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>,<font color="Maroon" title="c2">U1</font>
 <span class="kw">and </span><br/><a NAME="E5:52"/><span class="lab"><font color="Green" title="E32">A2</font></span>: 
<font color="Maroon" title="c8">F</font> <a href="msafree.html#K1" title="MSAFREE:func.1">||</a> <span class="p1">(<span class="default"><a href="msafree.html#K13" title="MSAFREE:func.13">FreeGen</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="pboole.html#R8" title="PBOOLE:pred.8">=</a>  <a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>
 ;<br/>
<span class="kw">reconsider </span><font color="Maroon" title="c9">a</font> = <font color="Maroon" title="c8">F</font> as   <a href="msualg_3.html#NM1" title="MSUALG_3:NM.1">ManySortedFunction</a> of <font color="Maroon" title="c6">fa</font>,<font color="Maroon" title="c2">U1</font> ;<br/>
<span class="kw">take </span>
<font color="Maroon" title="c9">a</font>
; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <font color="Maroon" title="c9">a</font> <a href="msualg_3.html#R2" title="MSUALG_3:pred.2">is_epimorphism</a> <font color="Maroon" title="c6">fa</font>,<font color="Maroon" title="c2">U1</font></span><br/>

<span class="kw">thus </span><a NAME="E7:52"/>
<font color="Maroon" title="c9">a</font> <a href="msualg_3.html#R1" title="MSUALG_3:pred.1">is_homomorphism</a> <font color="Maroon" title="c6">fa</font>,<font color="Maroon" title="c2">U1</font>
 <span class="kw">by</span> <span class="lab"><a class="txt" href="#E4:52"><span class="lab"><font color="Green" title="E31">A1</font></span></a></span>; <span class="comment"><font color="firebrick">:: according to </font></span><a class="ref" href="msualg_3.html#D8" onmouseover="rs('msualg_3/D8')" onmouseout="rh()">MSUALG_3:def 8</a> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <font color="Maroon" title="c9">a</font> is  <a href="msualg_3.html#V2" title="MSUALG_3:attr.2">"onto"</a> </span><br/>

<span class="kw">thus </span><a NAME="E8:52"/>
<font color="Maroon" title="c9">a</font> is  <a href="msualg_3.html#V2" title="MSUALG_3:attr.2">"onto"</a> 
  <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> verum</span><div><a class="txt" onmouseover="tooltip.show('hs2',this)" onmouseout="tooltip.hide()" onclick="hs2(this)" href="javascript:()" title="52_1"><span class="kw">proof </span></a><div class="add">

<span class="kw">let </span><font color="Maroon" title="c10">s</font> be    <a href="hidden.html#M2" title="HIDDEN:mode.2">set</a> ; <span class="comment"><font color="firebrick">:: according to </font></span><a class="ref" href="msualg_3.html#D3" onmouseover="rs('msualg_3/D3')" onmouseout="rh()">MSUALG_3:def 3</a> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> (  not <font color="Maroon" title="c10">s</font> <a href="tarski.html#R2" title="TARSKI:pred.2">in</a>  the <a href="struct_0.html#U1" title="STRUCT_0:sel.1">carrier</a> of <font color="Maroon" title="c1">S</font> or  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">proj2</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font> )</span><br/>

<span class="kw">assume </span><a NAME="E1:52_1"/>
<font color="Maroon" title="c10">s</font> <a href="tarski.html#R2" title="TARSKI:pred.2">in</a>  the <a href="struct_0.html#U1" title="STRUCT_0:sel.1">carrier</a> of <font color="Maroon" title="c1">S</font>
 ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">proj2</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span><br/>

<span class="kw">then </span><span class="kw">reconsider </span><font color="Maroon" title="c11">s0</font> = <font color="Maroon" title="c10">s</font> as   <a href="msualg_1.html#NM1" title="MSUALG_1:NM.1">SortSymbol</a> of <font color="Maroon" title="c1">S</font> ;<br/>
<span class="kw">reconsider </span><font color="Maroon" title="c12">g</font> = <font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font> as   <a href="funct_2.html#NM1" title="FUNCT_2:NM.1">Function</a> of <span class="p1">(<span class="default"> the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c6">fa</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span>,<span class="p1">(<span class="default"> the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span> <span class="kw">by</span> <span class="lab"><a class="ref" href="pboole.html#D15" onmouseover="rs('pboole/D15')" onmouseout="rh()">PBOOLE:def 15</a></span>;<br/>
<a NAME="E4:52_1"/><span class="lab"><font color="Green" title="E33">A3</font></span>: 
<span class="p1">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c12">g</font> <a href="partfun1.html#K2" title="PARTFUN1:func.2">|</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msafree.html#K13" title="MSAFREE:func.13">FreeGen</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span>
 
<span class="kw">by</span> <span class="lab"><a class="txt" href="#E5:52"><span class="lab"><font color="Green" title="E32">A2</font></span></a>, <a class="ref" href="msafree.html#D1" target="_self" onmouseover="rs('msafree/D1')" onmouseout="rh()">Def1</a></span>;<br/>
<a NAME="E5:52_1"/><span class="kw">then </span><span class="lab"><font color="Green" title="E34">A4</font></span>: 
 <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">rng</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span> <a href="tarski.html#R1" title="TARSKI:pred.1">c=</a>  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">rng</a> <font color="Maroon" title="c12">g</font>
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="relat_1.html#T70" onmouseover="rs('relat_1/T70')" onmouseout="rh()">RELAT_1:70</a></span>;<br/>
<span class="kw">thus </span><a NAME="E6:52_1"/>
 <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">rng</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span> <a href="tarski.html#R1" title="TARSKI:pred.1">c=</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font>
 <span class="kw">by</span> <span class="lab"><a class="txt" href="#E4:52_1"><span class="lab"><font color="Green" title="E33">A3</font></span></a>, <a class="ref" href="relat_1.html#D19" onmouseover="rs('relat_1/D19')" onmouseout="rh()">RELAT_1:def 19</a></span>; <span class="comment"><font color="firebrick">:: according to </font></span><a class="ref" href="xboole_0.html#D10" onmouseover="rs('xboole_0/D10')" onmouseout="rh()">XBOOLE_0:def 10</a> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font> <a href="tarski.html#R1" title="TARSKI:pred.1">c=</a>  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">proj2</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span></span><br/>

<span class="kw">let </span><font color="Maroon" title="c13">x</font> be    <a href="hidden.html#M1" title="HIDDEN:mode.1">object</a> ; <span class="comment"><font color="firebrick">:: according to </font></span><a class="ref" href="tarski.html#D3" onmouseover="rs('tarski/D3')" onmouseout="rh()">TARSKI:def 3</a> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> (  not <font color="Maroon" title="c13">x</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font> or <font color="Maroon" title="c13">x</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">proj2</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span> )</span><br/>

<span class="kw">set </span><font color="Maroon" title="c14">D</font> =  <a href="msafree.html#K5" title="MSAFREE:func.5">DTConMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>;<br/>
<span class="kw">set </span><font color="Maroon" title="c15">t</font> = <span class="p1"><a href="tarski.html#K4" title="TARSKI:func.4">[</a><span class="default"><font color="Maroon" title="c13">x</font>,<font color="Maroon" title="c11">s0</font></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span>;<br/>
<span class="kw">assume </span><a NAME="E7:52_1"/>
<font color="Maroon" title="c13">x</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font>
 ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <font color="Maroon" title="c13">x</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">proj2</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span></span><br/>

<a NAME="E8:52_1"/><span class="kw">then </span><span class="lab"><font color="Green" title="E35">A5</font></span>: 
<span class="p1"><a href="tarski.html#K4" title="TARSKI:func.4">[</a><span class="default"><font color="Maroon" title="c13">x</font>,<font color="Maroon" title="c11">s0</font></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  <a href="dtconstr.html#K6" title="DTCONSTR:func.6">Terminals</a> <span class="p1">(<span class="default"><a href="msafree.html#K5" title="MSAFREE:func.5">DTConMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span>
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="msafree.html#T7" target="_self" onmouseover="rs('msafree/T7')" onmouseout="rh()">Th7</a></span>;<br/>
<span class="kw">then </span><span class="kw">reconsider </span><font color="Maroon" title="c16">t</font> = <span class="p1"><a href="tarski.html#K4" title="TARSKI:func.4">[</a><span class="default"><font color="Maroon" title="c13">x</font>,<font color="Maroon" title="c11">s0</font></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span> as   <a href="lang1.html#NM1" title="LANG1:NM.1">Symbol</a> of <span class="p1">(<span class="default"><a href="msafree.html#K5" title="MSAFREE:func.5">DTConMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> ;<br/>
<a NAME="E10:52_1"/>
<font color="Maroon" title="c16">t</font> <a href="xtuple_0.html#K2" title="XTUPLE_0:func.2">`2</a>  <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c11">s0</font>
 
;<br/>
<a NAME="E11:52_1"/><span class="kw">then </span>
 <a href="trees_4.html#K2" title="TREES_4:func.2">root-tree</a> <font color="Maroon" title="c16">t</font> <a href="tarski.html#R2" title="TARSKI:pred.2">in</a> <span class="p1"> { <span class="default"> <span class="p2">(<span class="default"><a href="trees_4.html#K2" title="TREES_4:func.2">root-tree</a> <font color="Olive" title="b1">tt</font></span>)</span> where <font color="Olive" title="b1">tt</font> is   <a href="lang1.html#NM1" title="LANG1:NM.1">Symbol</a> of <span class="p1">(<span class="default"><a href="msafree.html#K5" title="MSAFREE:func.5">DTConMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> : ( <font color="Olive" title="b1">tt</font> <a href="tarski.html#R2" title="TARSKI:pred.2">in</a>  <a href="dtconstr.html#K6" title="DTCONSTR:func.6">Terminals</a> <span class="p1">(<span class="default"><a href="msafree.html#K5" title="MSAFREE:func.5">DTConMSA</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> &amp; <font color="Olive" title="b1">tt</font> <a href="xtuple_0.html#K2" title="XTUPLE_0:func.2">`2</a>  <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c11">s0</font> ) </span> } </span> 
 
<span class="kw">by</span> <span class="lab"><a class="txt" href="#E8:52_1"><span class="lab"><font color="Green" title="E35">A5</font></span></a></span>;<br/>
<a NAME="E12:52_1"/><span class="kw">then </span><span class="lab"><font color="Green" title="E36">A6</font></span>: 
 <a href="trees_4.html#K2" title="TREES_4:func.2">root-tree</a> <font color="Maroon" title="c16">t</font> <a href="tarski.html#R2" title="TARSKI:pred.2">in</a>  <a href="msafree.html#K12" title="MSAFREE:func.12">FreeGen</a> (<font color="Maroon" title="c11">s0</font>, the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>)
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="msafree.html#T13" target="_self" onmouseover="rs('msafree/T13')" onmouseout="rh()">Th13</a></span>;<br/>
<a NAME="E13:52_1"/><span class="lab"><font color="Green" title="E37">A7</font></span>: 
<span class="p1">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font> <a href="funct_2.html#R1" title="FUNCT_2:pred.1">=</a>  <a href="msafree.html#K14" title="MSAFREE:func.14">Reverse</a> (<font color="Maroon" title="c11">s0</font>, the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>)
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="msafree.html#D18" target="_self" onmouseover="rs('msafree/D18')" onmouseout="rh()">Def18</a></span>;<br/>
<a NAME="E14:52_1"/><span class="kw">then </span>
 <a href="relset_1.html#K1" title="RELSET_1:func.1">dom</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  <a href="msafree.html#K12" title="MSAFREE:func.12">FreeGen</a> (<font color="Maroon" title="c11">s0</font>, the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font>)
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="funct_2.html#D1" onmouseover="rs('funct_2/D1')" onmouseout="rh()">FUNCT_2:def 1</a></span>;<br/>
<a NAME="E15:52_1"/><span class="kw">then </span><span class="lab"><font color="Green" title="E38">A8</font></span>: 
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><a href="trees_4.html#K2" title="TREES_4:func.2">root-tree</a> <font color="Maroon" title="c16">t</font></span>)</span> <a href="tarski.html#R2" title="TARSKI:pred.2">in</a>  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">rng</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span>
 
<span class="kw">by</span> <span class="lab"><a class="txt" href="#E12:52_1"><span class="lab"><font color="Green" title="E36">A6</font></span></a>, <a class="ref" href="funct_1.html#D3" onmouseover="rs('funct_1/D3')" onmouseout="rh()">FUNCT_1:def 3</a></span>;<br/>
<span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="msafree.html#K15" title="MSAFREE:func.15">Reverse</a>  the <a href="msualg_1.html#U3" title="MSUALG_1:sel.3">Sorts</a> of <font color="Maroon" title="c2">U1</font></span>)</span> <a href="msualg_3.html#K1" title="MSUALG_3:func.1">.</a> <font color="Maroon" title="c11">s0</font></span>)</span> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><a href="trees_4.html#K2" title="TREES_4:func.2">root-tree</a> <font color="Maroon" title="c16">t</font></span>)</span> = 
<font color="Maroon" title="c16">t</font> <a href="xtuple_0.html#K1" title="XTUPLE_0:func.1">`1</a> 
<span class="kw">by</span> <span class="lab"><a class="txt" href="#E13:52_1"><span class="lab"><font color="Green" title="E37">A7</font></span></a>, <a class="txt" href="#E12:52_1"><span class="lab"><font color="Green" title="E36">A6</font></span></a>, <a class="ref" href="msafree.html#D17" target="_self" onmouseover="rs('msafree/D17')" onmouseout="rh()">Def17</a></span>
<br/>.= 
<font color="Maroon" title="c13">x</font>

;<br/>
<span class="kw">hence </span><a NAME="E17:52_1"/>
<font color="Maroon" title="c13">x</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  <a href="xtuple_0.html#K10" title="XTUPLE_0:func.10">proj2</a> <span class="p1">(<span class="default"><font color="Maroon" title="c9">a</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c10">s</font></span>)</span>
 <span class="kw">by</span> <span class="lab"><a class="txt" href="#E5:52_1"><span class="lab"><font color="Green" title="E34">A4</font></span></a>, <a class="txt" href="#E15:52_1"><span class="lab"><font color="Green" title="E38">A8</font></span></a></span>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> verum</span><br/>


</div><span class="kw">end;</span></div>


</div>
