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

<b>set </b><font color="Maroon">f</font> = <a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a> ;<br/>
<a NAME="E1:108_1_1"/>
( <span class="p1"><a href="mcart_1.html#K12">[:</a><span class="default"><a href="numbers.html#K5">NAT</a> ,<a href="numbers.html#K5">NAT</a> </span><a href="mcart_1.html#K12">:]</a></span> <a href="tarski.html#R1">c=</a> <span class="p1"><a href="zfmisc_1.html#K2">[:</a><span class="default"><a href="numbers.html#K4">INT</a> ,<a href="numbers.html#K4">INT</a> </span><a href="zfmisc_1.html#K2">:]</a></span> &amp;  <a href="relat_1.html#K1">dom</a> <a href="binop_2.html#K44">addint</a>  <a href="hidden.html#R1">=</a> <span class="p1"><a href="zfmisc_1.html#K2">[:</a><span class="default"><a href="numbers.html#K4">INT</a> ,<a href="numbers.html#K4">INT</a> </span><a href="zfmisc_1.html#K2">:]</a></span> )
 
<b>by </b><i><a class="ref" href="funct_2.html#D1">FUNCT_2:def 1</a>, <a class="ref" href="numbers.html#T17">NUMBERS:17</a>, <a class="ref" href="zfmisc_1.html#T119">ZFMISC_1:119</a></i>;<br/>
<a NAME="E2:108_1_1"/><b>then </b><i><font color="Green">E28</font></i>: 
 <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a> </span>)</span> <a href="hidden.html#R1">=</a> <span class="p1"><a href="mcart_1.html#K12">[:</a><span class="default"><a href="numbers.html#K5">NAT</a> ,<a href="numbers.html#K5">NAT</a> </span><a href="mcart_1.html#K12">:]</a></span>
 
<b>by </b><i><a class="ref" href="relat_1.html#T91">RELAT_1:91</a></i>;<br/>
<a NAME="E3:108_1_1"/>
 <a href="relat_1.html#K2">rng</a> <span class="p1">(<span class="default"><a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a> </span>)</span> <a href="tarski.html#R1">c=</a>  <a href="numbers.html#K5">NAT</a> 
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="108_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> ; <i><font color="Red">:: according to </font></i><a class="ref" href="tarski.html#D3">TARSKI:def 3</a><br/>

<b>assume </b><a NAME="E1:108_1_1_1"/>
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K2">rng</a> <span class="p1">(<span class="default"><a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a> </span>)</span>
 ;<br/>

<b>then consider </b><font color="Maroon">y</font> being    <a href="hidden.html#M1">set</a> <b> such that </b><br/><a NAME="E3:108_1_1_1"/><i><font color="Green">E39</font></i>: 
( <font color="Maroon">y</font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <span class="p1">(<span class="default"><a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a> </span>)</span> &amp; <font color="Maroon">x</font> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a> </span>)</span> <a href="funct_1.html#K1">.</a> <font color="Maroon">y</font> )
 <b>by </b><i><a class="ref" href="funct_1.html#D5">FUNCT_1:def 5</a></i>;<br/>
<b>reconsider </b><font color="Maroon">n1</font> = <font color="Maroon">y</font> <a href="mcart_1.html#K1">`1</a> , <font color="Maroon">n2</font> = <font color="Maroon">y</font> <a href="mcart_1.html#K2">`2</a>  as    <a href="subset_1.html#M2">Element</a> of  <a href="numbers.html#K5">NAT</a>  <b>by </b><i><a class="ref" href="monoid_0.html#D16" target="_self">Def16</a>, <a class="ref" href="monoid_0.html#D20" target="_self">Def20</a>, <a class="ref" href="mcart_1.html#T10">MCART_1:10</a></i>;<br/>
<b>reconsider </b><font color="Maroon">i1</font> = <font color="Maroon">n1</font>, <font color="Maroon">i2</font> = <font color="Maroon">n2</font> as   <a href="int_1.html#NM1">Integer</a> ;<br/>
<font color="Maroon">x</font> = 
<a href="binop_2.html#K44">addint</a>  <a href="funct_1.html#K1">.</a> <font color="Maroon">y</font>
<b>by </b><i><a class="ref" href="monoid_0.html#D20" target="_self">Def20</a>, <a class="ref" href="funct_1.html#T70">FUNCT_1:70</a></i>
<br/>.= 
<a href="binop_2.html#K44">addint</a>  <a href="binop_1.html#K1">.</a> <font color="Maroon">i1</font>,<font color="Maroon">i2</font>
<b>by </b><i><a class="ref" href="monoid_0.html#D16" target="_self">Def16</a>, <a class="ref" href="monoid_0.html#D20" target="_self">Def20</a>, <a class="ref" href="mcart_1.html#T23">MCART_1:23</a></i>
<br/>.= 
<font color="Maroon">n1</font> <a href="binop_2.html#K23">+</a> <font color="Maroon">n2</font>
<b>by </b><i><a class="ref" href="gr_cy_1.html#T14">GR_CY_1:14</a></i>
;<br/>
<b>hence </b><a NAME="E7:108_1_1_1"/>
<font color="Maroon">x</font> <a href="hidden.html#R2">in</a>  <a href="numbers.html#K5">NAT</a> 
 ;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">f</font> = <a href="binop_2.html#K44">addint</a>  <a href="realset1.html#K1">||</a> <a href="numbers.html#K5">NAT</a>  as   <a href="binop_1.html#NM2">BinOp</a> of  <a href="numbers.html#K5">NAT</a>  <b>by </b><i><a class="ref" href="monoid_0.html#D16" target="_self">Def16</a>, <a class="ref" href="funct_2.html#D1">FUNCT_2:def 1</a>, <a class="ref" href="relset_1.html#T11">RELSET_1:11</a></i>;<br/>
<a NAME="E5:108_1_1"/>
<font color="Maroon">f</font> <a href="funct_4.html#NR1" target="_self">&lt;=</a> <font color="Maroon">H<sub>2</sub></font>( <a href="monoid_0.html#K4" target="_self">INT.Group</a> )
 
<b>by </b><i><a class="ref" href="gr_cy_1.html#D4">GR_CY_1:def 4</a>, <a class="ref" href="relat_1.html#T88">RELAT_1:88</a></i>;<br/>
<b>then reconsider </b><font color="Maroon">N</font> =  <a href="group_1.html#G1">HGrStr</a>(# <a href="numbers.html#K5">NAT</a> ,<font color="Maroon">f</font> #) as  non <a href="struct_0.html#V3">empty</a> <a href="group_1.html#V1">strict</a>  <a href="monoid_0.html#M5" target="_self">SubStr</a> of  <a href="monoid_0.html#K4" target="_self">INT.Group</a>  <b>by </b><i/>;<br/>
<b>reconsider </b><font color="Maroon">a</font> = 0 as   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">N</font> ;<br/>
<div><i><font color="Green">E40</font></i>: <a class="txt" onclick="hs2(this)" href="javascript:()" title="108_1_1_2"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">b</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">N</font>;<br/><b>reconsider </b><font color="Maroon">n</font> = <font color="Maroon">b</font> as    <a href="subset_1.html#M2">Element</a> of  <a href="numbers.html#K5">NAT</a>  ;<br/><b>thus </b><font color="Maroon">a</font> <a href="group_1.html#K10">*</a> <font color="Maroon">b</font> = 
0 <a href="binop_2.html#K23">+</a> <font color="Maroon">n</font>
<b>by </b><i/>
<br/>.= 
<font color="Maroon">b</font>

;<br/><b>thus </b><font color="Maroon">b</font> <a href="group_1.html#K10">*</a> <font color="Maroon">a</font> = 
<font color="Maroon">n</font> <a href="binop_2.html#K23">+</a> 0
<b>by </b><i/>
<br/>.= 
<font color="Maroon">b</font>

;<br/></div><b>end;</b></div>
<a NAME="E9:108_1_1"/><b>then </b><i><font color="Green">E41</font></i>: 
<font color="Maroon">N</font> is <a href="group_1.html#V2">unital</a>
 
<b>by </b><i/>;<br/>
<a NAME="E10:108_1_1"/><b>then </b><i><font color="Green">E42</font></i>: 
<font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>) <a href="setwiseo.html#NR1" target="_self">has_a_unity</a> 
 
<b>by </b><i/>;<br/>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="108_1_1_3"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">b</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">N</font>;<br/><b>thus </b><font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">a</font>,<font color="Maroon">b</font> = 
<font color="Maroon">a</font> <a href="group_1.html#K10">*</a> <font color="Maroon">b</font>

<br/>.= 
<font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="monoid_0.html#D20" target="_self">Def20</a></i>
;<br/><b>thus </b><font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">b</font>,<font color="Maroon">a</font> = 
<font color="Maroon">b</font> <a href="group_1.html#K10">*</a> <font color="Maroon">a</font>

<br/>.= 
<font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="monoid_0.html#D20" target="_self">Def20</a></i>
;<br/></div><b>end;</b></div>
<a NAME="E12:108_1_1"/><b>then </b><i><font color="Green">E43</font></i>: 
<font color="Maroon">a</font> <a href="binop_1.html#R3">is_a_unity_wrt</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>)
 
<b>by </b><i><a class="ref" href="binop_1.html#T11">BINOP_1:11</a></i>;<br/>
<a NAME="E13:108_1_1"/><b>then </b><i><font color="Green">E44</font></i>: 
 <a href="binop_1.html#K3">the_unity_wrt</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>) <a href="hidden.html#R1">=</a> <font color="Maroon">a</font>
 
<b>by </b><i><a class="ref" href="binop_1.html#D8">BINOP_1:def 8</a></i>;<br/>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="108_1_1_4"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">a</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">N</font>, <font color="Maroon">b</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">N</font>;<br/><b>assume </b><a NAME="E1:108_1_1_4"/><i><font color="Green">E65</font></i>: 
<font color="Maroon">a</font> <a href="group_1.html#K10">*</a> <font color="Maroon">b</font> <a href="hidden.html#R1">=</a>  <a href="binop_1.html#K3">the_unity_wrt</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>)
 ;<br/><b>reconsider </b><font color="Maroon">n</font> = <font color="Maroon">a</font>, <font color="Maroon">m</font> = <font color="Maroon">b</font> as    <a href="subset_1.html#M2">Element</a> of  <a href="numbers.html#K5">NAT</a>  ;<br/><a NAME="E3:108_1_1_4"/>
<font color="Maroon">a</font> <a href="group_1.html#K10">*</a> <font color="Maroon">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">n</font> <a href="binop_2.html#K23">+</a> <font color="Maroon">m</font>
 <b>by </b><i/>;<br/><a NAME="E4:108_1_1_4"/><b>then </b>
( <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> 0 &amp; <font color="Maroon">b</font> <a href="hidden.html#R1">=</a> 0 )
 <b>by </b><i><a class="ref" href="monoid_0.html#T6" target="_self">Th6</a>, <a class="txt" href="monoid_0.html#E27"><i><font color="Green">Lemma57</font></i></a>, <a class="ref" href="nat_1.html#T23">NAT_1:23</a></i>;<br/><b>hence </b><a NAME="E5:108_1_1_4"/>
( <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</font> &amp; <font color="Maroon">b</font> <a href="hidden.html#R1">=</a>  <a href="binop_1.html#K3">the_unity_wrt</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">N</font>) )
 <b>by </b><i>, <a class="ref" href="binop_1.html#D8">BINOP_1:def 8</a></i>;<br/></div><b>end;</b></div>
<a NAME="E15:108_1_1"/><b>then </b>
<font color="Maroon">N</font> is <a href="monoid_0.html#V17" target="_self">uniquely-decomposable</a>
 
<b>by </b><i><a class="ref" href="monoid_0.html#T4" target="_self">Th4</a>, </i>;<br/>
<b>hence </b><a NAME="E16:108_1_1"/>
 ex <font color="Olive">b<sub>1</sub></font> being non <a href="struct_0.html#V3">empty</a> <a href="group_1.html#V1">strict</a> <a href="group_1.html#V2">unital</a> <a href="monoid_0.html#V17" target="_self">uniquely-decomposable</a>  <a href="monoid_0.html#M5" target="_self">SubStr</a> of  <a href="monoid_0.html#K4" target="_self">INT.Group</a>  st the <a href="struct_0.html#U1">carrier</a> of <font color="Olive">b<sub>1</sub></font> <a href="hidden.html#R1">=</a>  <a href="numbers.html#K5">NAT</a> 
 <b>by </b><i/>;<br/>


</div>
