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

<b>deffunc </b><font color="Maroon">H<sub>4</sub></font>(   <a href="finseq_2.html#M2">Element</a> of <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> ,   <a href="finseq_2.html#M2">Element</a> of <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> ) <b>-&gt; </b>   <a href="finseq_2.html#M2">Element</a> of <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a>  = <font color="Maroon">a<sub>1</sub></font> <a href="monoid_0.html#K1" target="_self">^</a> <font color="Maroon">a<sub>2</sub></font>;<br/>
<b>consider </b><font color="Maroon">f</font> being   <a href="binop_1.html#NM2">BinOp</a> of <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> <b> such that </b><br/><a NAME="E2:126_1_1"/><i><font color="Green">E28</font></i>: 
for <font color="Olive">a</font>, <font color="Olive">b</font> being   <a href="finseq_2.html#M2">Element</a> of <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a>  holds  <font color="Maroon">f</font> <a href="binop_1.html#K2">.</a> <font color="Olive">a</font>,<font color="Olive">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">H<sub>4</sub></font>(<font color="Olive">a</font>,<font color="Olive">b</font>)
 <b>from </b><i><a class="ref" href="binop_1.html#S4">BINOP_1:sch 4</a>();<br/></i>
<b>set </b><font color="Maroon">G</font> =  <a href="group_1.html#G1">HGrStr</a>(# <span class="p1">(<span class="default"><font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> </span>)</span>,<font color="Maroon">f</font> #);<br/>
<a NAME="E3:126_1_1"/>
 <a href="group_1.html#G1">HGrStr</a>(# <span class="p1">(<span class="default"><font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> </span>)</span>,<font color="Maroon">f</font> #) is <a href="monoid_0.html#V2" target="_self">constituted-FinSeqs</a>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="126_1_1_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">x</font> be   <a href="struct_0.html#NM1">Element</a> of <a href="group_1.html#G1">HGrStr</a>(# <span class="p1">(<span class="default"><font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> </span>)</span>,<font color="Maroon">f</font> #); <i><font color="Red">:: according to </font></i><a class="ref" href="monoid_0.html#D2" target="_self">MONOID_0:def 2</a><br/>

<a NAME="E1:126_1_1_1"/>
<font color="Maroon">x</font> is    <a href="finseq_2.html#M2">Element</a> of <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> 
 
;<br/>
<b>hence </b><a NAME="E2:126_1_1_1"/>
<font color="Maroon">x</font> is   <a href="finseq_1.html#NM1">FinSequence</a>
 ;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">G</font> =  <a href="group_1.html#G1">HGrStr</a>(# <span class="p1">(<span class="default"><font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a> </span>)</span>,<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#V2" target="_self">constituted-FinSeqs</a>  <a href="group_1.html#L1">HGrStr</a>  ;<br/>
<a NAME="E5:126_1_1"/><i><font color="Green">E39</font></i>: 
for <font color="Olive">p</font>, <font color="Olive">q</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font> holds  <font color="Olive">p</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Olive">q</font> <a href="hidden.html#R1">=</a> <font color="Olive">p</font> <a href="finseq_1.html#K7">^</a> <font color="Olive">q</font>
 
<b>by </b><i><a class="txt" href="monoid_0.html#E28"><i><font color="Green">Lemma58</font></i></a></i>;<br/>
<a NAME="E6:126_1_1"/>
( <font color="Maroon">G</font> is <a href="group_1.html#V2">unital</a> &amp; <font color="Maroon">G</font> is <a href="group_1.html#V4">associative</a> &amp; <font color="Maroon">G</font> is <a href="monoid_0.html#V16" target="_self">cancelable</a> &amp; <font color="Maroon">G</font> is <a href="monoid_0.html#V17" target="_self">uniquely-decomposable</a> )
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="126_1_1_2"><b>proof </b></a><div class="add">

<b>set </b><font color="Maroon">N</font> = <font color="Maroon">G</font>;<br/>
<b>set </b><font color="Maroon">f</font> = <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>);<br/>
<a NAME="E1:126_1_1_2"/>
 <a href="finseq_1.html#K6">&lt;*&gt;</a> <font color="Maroon">D</font> <a href="hidden.html#R1">=</a>  <a href="xboole_0.html#K1">{}</a> 
 
;<br/>
<b>then reconsider </b><font color="Maroon">a</font> =  <a href="xboole_0.html#K1">{}</a>  as   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font> <b>by </b><i><a class="ref" href="finseq_1.html#D11">FINSEQ_1:def 11</a></i>;<br/>
<div><i><font color="Green">E40</font></i>: <a class="txt" onclick="hs2(this)" href="javascript:()" title="126_1_1_2_1"><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">G</font>;<br/><b>thus </b><font color="Maroon">a</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">b</font> = 
<font color="Maroon">a</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
<br/>.= 
<font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="finseq_1.html#T47">FINSEQ_1:47</a></i>
;<br/><b>thus </b><font color="Maroon">b</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">a</font> = 
<font color="Maroon">b</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">a</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
<br/>.= 
<font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="finseq_1.html#T47">FINSEQ_1:47</a></i>
;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E4:126_1_1_2"/>
<font color="Maroon">G</font> is <a href="group_1.html#V2">unital</a>
 <b>by </b><i/>;<br/>

<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="126_1_1_2_2"><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">G</font>, <font color="Maroon">b</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>, <font color="Maroon">c</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>;<br/><b>reconsider </b><font color="Maroon">p</font> = <font color="Maroon">a</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">b</font>, <font color="Maroon">q</font> = <font color="Maroon">b</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">c</font> as   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font> ;<br/><b>thus </b><span class="p1">(<span class="default"><font color="Maroon">a</font> <a href="group_1.html#K1">*</a> <font color="Maroon">b</font></span>)</span> <a href="group_1.html#K1">*</a> <font color="Maroon">c</font> = 
<font color="Maroon">p</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">c</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
<br/>.= 
<span class="p1">(<span class="default"><font color="Maroon">a</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">b</font></span>)</span> <a href="finseq_1.html#K7">^</a> <font color="Maroon">c</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
<br/>.= 
<font color="Maroon">a</font> <a href="finseq_1.html#K7">^</a> <span class="p1">(<span class="default"><font color="Maroon">b</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">c</font></span>)</span>
<b>by </b><i><a class="ref" href="finseq_1.html#T45">FINSEQ_1:45</a></i>
<br/>.= 
<font color="Maroon">a</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">q</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
<br/>.= 
<font color="Maroon">a</font> <a href="group_1.html#K1">*</a> <span class="p1">(<span class="default"><font color="Maroon">b</font> <a href="group_1.html#K1">*</a> <font color="Maroon">c</font></span>)</span>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E6:126_1_1_2"/>
<font color="Maroon">G</font> is <a href="group_1.html#V4">associative</a>
 <b>by </b><i/>;<br/>

<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="126_1_1_2_3"><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">G</font>, <font color="Maroon">b</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>, <font color="Maroon">c</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>;<br/><a NAME="E1:126_1_1_2_3"/>
( <font color="Maroon">a</font> <a href="group_1.html#K1">*</a> <font color="Maroon">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">b</font> &amp; <font color="Maroon">a</font> <a href="group_1.html#K1">*</a> <font color="Maroon">c</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">c</font> &amp; <font color="Maroon">b</font> <a href="group_1.html#K1">*</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">a</font> &amp; <font color="Maroon">c</font> <a href="group_1.html#K1">*</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">c</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">a</font> )
 <b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>;<br/><b>hence </b><a NAME="E2:126_1_1_2_3"/>
( ( <font color="Maroon">a</font> <a href="group_1.html#K1">*</a> <font color="Maroon">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a</font> <a href="group_1.html#K1">*</a> <font color="Maroon">c</font> or <font color="Maroon">b</font> <a href="group_1.html#K1">*</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">c</font> <a href="group_1.html#K1">*</a> <font color="Maroon">a</font> ) implies <font color="Maroon">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">c</font> )
 <b>by </b><i><a class="ref" href="finseq_1.html#T46">FINSEQ_1:46</a></i>;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E8:126_1_1_2"/>
<font color="Maroon">G</font> is <a href="monoid_0.html#V16" target="_self">cancelable</a>
 <b>by </b><i/>;<br/>

<a NAME="E9:126_1_1_2"/>
<font color="Maroon">G</font> is <a href="group_1.html#V2">unital</a>
 
<b>by </b><i><a class="ref" href="monoid_0.html#T12" target="_self">Th12</a>, </i>;<br/>
<b>hence </b><a NAME="E10:126_1_1_2"/>
<font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>) <a href="setwiseo.html#NR1" target="_self">has_a_unity</a> 
 <b>by </b><i/>; <i><font color="Red">:: according to </font></i><a class="ref" href="monoid_0.html#D9" target="_self">MONOID_0:def 9</a>,<a class="ref" href="monoid_0.html#D20" target="_self">MONOID_0:def 20</a><br/>

<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="126_1_1_2_4"><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">G</font>;<br/><a NAME="E1:126_1_1_2_4"/>
( <font color="Maroon">a</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">a</font>,<font color="Maroon">b</font> &amp; <font color="Maroon">b</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">b</font>,<font color="Maroon">a</font> )
 ;<br/><b>hence </b><a NAME="E2:126_1_1_2_4"/>
( <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">a</font>,<font color="Maroon">b</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</font> &amp; <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">b</font>,<font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</font> )
 <b>by </b><i><a class="ref" href="monoid_0.html#T12" target="_self">Th12</a></i>;<br/></div><b>end;</b></div>
<a NAME="E12:126_1_1_2"/><b>then </b><i><font color="Green">E41</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">G</font>)
 
<b>by </b><i><a class="ref" href="binop_1.html#T11">BINOP_1:11</a></i>;<br/>
<a NAME="E13:126_1_1_2"/><b>then </b><i><font color="Green">E42</font></i>: 
 <a href="binop_1.html#K3">the_unity_wrt</a> <font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</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/>
<b>let </b><font color="Maroon">a'</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>, <font color="Maroon">b</font> be   <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font>;<br/>

<b>assume </b><a NAME="E14:126_1_1_2"/>
<font color="Maroon">H<sub>2</sub></font>(<font color="Maroon">G</font>) <a href="binop_1.html#K2">.</a> <font color="Maroon">a'</font>,<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">G</font>)
 ;<br/>

<b>then </b> <a href="xboole_0.html#K1">{}</a>  = 
<font color="Maroon">a'</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T16" target="_self">Th16</a></i>
<br/>.= 
<font color="Maroon">a'</font> <a href="finseq_1.html#K7">^</a> <font color="Maroon">b</font>
<b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>
;<br/>
<a NAME="E16:126_1_1_2"/><b>then </b>
( <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">a'</font> &amp; <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">b</font> )
 
<b>by </b><i><a class="ref" href="finseq_1.html#T48">FINSEQ_1:48</a></i>;<br/>
<b>hence </b><a NAME="E17:126_1_1_2"/>
( <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> the <a href="group_1.html#U1">mult</a> of <font color="Maroon">G</font> )
 <b>by </b><i><a class="ref" href="monoid_0.html#T15" target="_self">Th15</a>, <a class="ref" href="binop_1.html#D8">BINOP_1:def 8</a></i>;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">G</font> = <font color="Maroon">G</font> as  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="group_1.html#V4">associative</a> <a href="monoid_0.html#V2" target="_self">constituted-FinSeqs</a> <a href="monoid_0.html#V16" target="_self">cancelable</a> <a href="monoid_0.html#V17" target="_self">uniquely-decomposable</a>  <a href="group_1.html#L1">HGrStr</a>  ;<br/>
<b>take </b>
<font color="Maroon">G</font>
;<br/>

<b>thus </b><a NAME="E8:126_1_1"/>
( the <a href="struct_0.html#U1">carrier</a> of <font color="Maroon">G</font> <a href="hidden.html#R1">=</a> <font color="Maroon">D</font> <a href="finseq_2.html#K3">*</a>  &amp; ( for <font color="Olive">p</font>, <font color="Olive">q</font> being  <a href="struct_0.html#NM1">Element</a> of <font color="Maroon">G</font> holds  <font color="Olive">p</font> <a href="monoid_0.html#K2" target="_self">[*]</a> <font color="Olive">q</font> <a href="hidden.html#R1">=</a> <font color="Olive">p</font> <a href="finseq_1.html#K7">^</a> <font color="Olive">q</font> ) )
 <b>by </b><i><a class="ref" href="monoid_0.html#T9" target="_self">Th9</a></i>;<br/>


</div>
