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

<b>let </b><font color="Maroon">U1</font> be   <a href="unialg_1.html#NM2">Universal_Algebra</a>;<br/><b>let </b><font color="Maroon">U2</font> be   <a href="unialg_1.html#NM2">Universal_Algebra</a>;<br/><b>let </b><font color="Maroon">f</font> be   <a href="struct_0.html#NM6">Function</a> of <font color="Maroon">U1</font>,<font color="Maroon">U2</font>;<br/>





<b>thus </b><a NAME="E1:12"/>
( <font color="Maroon">f</font> <a href="alg_1.html#R4" target="_self">is_isomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> implies ( <font color="Maroon">f</font> <a href="alg_1.html#R1" target="_self">is_homomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> &amp;  <a href="relset_1.html#K5">rng</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">U2</font> &amp; <font color="Maroon">f</font> is <a href="funct_1.html#V2">one-to-one</a> ) )
 <div><a class="txt" onclick="hs2(this)" href="javascript:()" title="12_1"><b>proof </b></a><div class="add">

<b>assume </b><a NAME="E1:12_1"/>
<font color="Maroon">f</font> <a href="alg_1.html#R4" target="_self">is_isomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font>
 ;<br/>

<a NAME="E2:12_1"/><b>then </b>
( <font color="Maroon">f</font> <a href="alg_1.html#R2" target="_self">is_monomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> &amp; <font color="Maroon">f</font> <a href="alg_1.html#R3" target="_self">is_epimorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> )
 
<b>by </b><i/>;<br/>
<b>hence </b><a NAME="E3:12_1"/>
( <font color="Maroon">f</font> <a href="alg_1.html#R1" target="_self">is_homomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> &amp;  <a href="relset_1.html#K5">rng</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">U2</font> &amp; <font color="Maroon">f</font> is <a href="funct_1.html#V2">one-to-one</a> )
 <b>by </b><i>, </i>;<br/>


</div><b>end;</b></div>

<b>assume </b><a NAME="E2:12"/>
( <font color="Maroon">f</font> <a href="alg_1.html#R1" target="_self">is_homomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> &amp;  <a href="relset_1.html#K5">rng</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">U2</font> &amp; <font color="Maroon">f</font> is <a href="funct_1.html#V2">one-to-one</a> )
 ;<br/>

<a NAME="E3:12"/><b>then </b>
( <font color="Maroon">f</font> <a href="alg_1.html#R2" target="_self">is_monomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> &amp; <font color="Maroon">f</font> <a href="alg_1.html#R3" target="_self">is_epimorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font> )
 
<b>by </b><i>, </i>;<br/>
<b>hence </b><a NAME="E4:12"/>
<font color="Maroon">f</font> <a href="alg_1.html#R4" target="_self">is_isomorphism</a> <font color="Maroon">U1</font>,<font color="Maroon">U2</font>
 <b>by </b><i/>;<br/>


</div>
