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

<b>reconsider </b><font color="Maroon">c<sub>3</sub></font> = 0 as   <a href="funct_1.html#NM1">Function</a> ;<br/>
<b>defpred </b><font color="Maroon">S<sub>1</sub></font>[  <a href="nat_1.html#NM1">Nat</a>,   <a href="hidden.html#M1">set</a> ,   <a href="hidden.html#M1">set</a> ] means ( ( <font color="Maroon">a<sub>2</sub></font> is  not   <a href="funct_1.html#NM1">Function</a> &amp; <font color="Maroon">a<sub>3</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>3</sub></font> ) or ( <font color="Maroon">a<sub>2</sub></font> is   <a href="funct_1.html#NM1">Function</a> &amp; ( for <font color="Olive">b<sub>1</sub></font>, <font color="Olive">b<sub>2</sub></font> being  <a href="funct_1.html#NM1">Function</a> st <font color="Olive">b<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">a<sub>2</sub></font> &amp; <font color="Olive">b<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">a<sub>1</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> holds <br/><font color="Maroon">a<sub>3</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">b<sub>2</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Olive">b<sub>1</sub></font> ) ) );<br/>
<a NAME="E2:55_1_2"/><i><font color="Green">E19</font></i>: 
for <font color="Olive">b<sub>1</sub></font> being  <a href="nat_1.html#NM1">Nat</a><br/>for <font color="Olive">b<sub>2</sub></font> being   <a href="hidden.html#M1">set</a> ex <font color="Olive">b<sub>3</sub></font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive">b<sub>1</sub></font>,<font color="Olive">b<sub>2</sub></font>,<font color="Olive">b<sub>3</sub></font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="55_1_2_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">c<sub>4</sub></font> be   <a href="nat_1.html#NM1">Nat</a>;<br/><b>let </b><font color="Maroon">c<sub>5</sub></font> be    <a href="hidden.html#M1">set</a> ;<br/>



<b>reconsider </b><font color="Maroon">c<sub>6</sub></font> = <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>4</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> as   <a href="funct_1.html#NM1">Function</a> ;<br/>
<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="55_1_2_1_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:55_1_2_1_1"/>
( <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a> or  not <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="55_1_2_1_1_1"><b>suppose </b></a><a NAME="E1:55_1_2_1_1_1"/>
<font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a>
 ;<br/><div class="add"><b>then reconsider </b><font color="Maroon">c<sub>7</sub></font> = <font color="Maroon">c<sub>5</sub></font> as   <a href="funct_1.html#NM1">Function</a> ;<br/><b>take </b><font color="Maroon">c<sub>8</sub></font> = <font color="Maroon">c<sub>6</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Maroon">c<sub>7</sub></font>;<br/><b>thus </b><a NAME="E3:55_1_2_1_1_1"/>
( ( <font color="Maroon">c<sub>5</sub></font> is  not   <a href="funct_1.html#NM1">Function</a> &amp; <font color="Maroon">c<sub>8</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>3</sub></font> ) or ( <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a> &amp; ( for <font color="Olive">b<sub>1</sub></font>, <font color="Olive">b<sub>2</sub></font> being  <a href="funct_1.html#NM1">Function</a> st <font color="Olive">b<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>5</sub></font> &amp; <font color="Olive">b<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>4</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> holds <br/><font color="Maroon">c<sub>8</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">b<sub>2</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Olive">b<sub>1</sub></font> ) ) )
 ;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="55_1_2_1_1_2"><b>suppose </b></a><a NAME="E1:55_1_2_1_1_2"/><i><font color="Green">E20</font></i>: 
<font color="Maroon">c<sub>5</sub></font> is  not   <a href="funct_1.html#NM1">Function</a>
 ;<br/><div class="add"><b>take </b><font color="Maroon">c<sub>7</sub></font> = 0;<br/><b>thus </b><a NAME="E2:55_1_2_1_1_2"/>
( ( <font color="Maroon">c<sub>5</sub></font> is  not   <a href="funct_1.html#NM1">Function</a> &amp; <font color="Maroon">c<sub>7</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>3</sub></font> ) or ( <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a> &amp; ( for <font color="Olive">b<sub>1</sub></font>, <font color="Olive">b<sub>2</sub></font> being  <a href="funct_1.html#NM1">Function</a> st <font color="Olive">b<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>5</sub></font> &amp; <font color="Olive">b<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>4</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> holds <br/><font color="Maroon">c<sub>7</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">b<sub>2</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Olive">b<sub>1</sub></font> ) ) )
 <b>by </b><i><a class="txt" href="funct_7.html#E1:55_1_2_1_1_2"><i><font color="Green">E20</font></i></a></i>;<br/></div><b>end;</b></div></div><b>end;</b></div>

</div><b>end;</b></div>
<a NAME="E3:55_1_2"/><i><font color="Green">E20</font></i>: 
for <font color="Olive">b<sub>1</sub></font> being  <a href="nat_1.html#NM1">Nat</a><br/>for <font color="Olive">b<sub>2</sub></font>, <font color="Olive">b<sub>3</sub></font>, <font color="Olive">b<sub>4</sub></font> being   <a href="hidden.html#M1">set</a>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive">b<sub>1</sub></font>,<font color="Olive">b<sub>2</sub></font>,<font color="Olive">b<sub>3</sub></font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Olive">b<sub>1</sub></font>,<font color="Olive">b<sub>2</sub></font>,<font color="Olive">b<sub>4</sub></font>] holds <br/><font color="Olive">b<sub>3</sub></font> <a href="hidden.html#R1">=</a> <font color="Olive">b<sub>4</sub></font>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="55_1_2_2"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">c<sub>4</sub></font> be   <a href="nat_1.html#NM1">Nat</a>;<br/><b>let </b><font color="Maroon">c<sub>5</sub></font>, <font color="Maroon">c<sub>6</sub></font>, <font color="Maroon">c<sub>7</sub></font> be    <a href="hidden.html#M1">set</a> ;<br/>



<b>assume </b><a NAME="E1:55_1_2_2"/><i><font color="Green">E21</font></i>: 
( <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon">c<sub>4</sub></font>,<font color="Maroon">c<sub>5</sub></font>,<font color="Maroon">c<sub>6</sub></font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon">c<sub>4</sub></font>,<font color="Maroon">c<sub>5</sub></font>,<font color="Maroon">c<sub>7</sub></font>] )
 ;<br/>

<b>reconsider </b><font color="Maroon">c<sub>8</sub></font> = <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>4</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> as   <a href="funct_1.html#NM1">Function</a> ;<br/>
<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="55_1_2_2_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:55_1_2_2_1"/>
( <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a> or  not <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="55_1_2_2_1_1"><b>suppose </b></a><a NAME="E1:55_1_2_2_1_1"/>
<font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a>
 ;<br/><div class="add"><b>then reconsider </b><font color="Maroon">c<sub>9</sub></font> = <font color="Maroon">c<sub>5</sub></font> as   <a href="funct_1.html#NM1">Function</a> ;<br/><b>thus </b><font color="Maroon">c<sub>6</sub></font> = 
<font color="Maroon">c<sub>8</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Maroon">c<sub>9</sub></font>
<b>by </b><i><a class="txt" href="funct_7.html#E1:55_1_2_2"><i><font color="Green">E21</font></i></a></i>
<br/>.= 
<font color="Maroon">c<sub>7</sub></font>
<b>by </b><i><a class="txt" href="funct_7.html#E1:55_1_2_2"><i><font color="Green">E21</font></i></a></i>
;<br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="55_1_2_2_1_2"><b>suppose </b></a><a NAME="E1:55_1_2_2_1_2"/>
<font color="Maroon">c<sub>5</sub></font> is  not   <a href="funct_1.html#NM1">Function</a>
 ;<br/><div class="add"><b>hence </b><a NAME="E2:55_1_2_2_1_2"/>
<font color="Maroon">c<sub>6</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>7</sub></font>
 <b>by </b><i><a class="txt" href="funct_7.html#E1:55_1_2_2"><i><font color="Green">E21</font></i></a></i>;<br/></div><b>end;</b></div></div><b>end;</b></div>

</div><b>end;</b></div>
<b>consider </b><font color="Maroon">c<sub>4</sub></font> being   <a href="funct_1.html#NM1">Function</a><b> such that </b><br/><a NAME="E5:55_1_2"/><i><font color="Green">E21</font></i>: 
(  <a href="relat_1.html#K1">dom</a> <font color="Maroon">c<sub>4</sub></font> <a href="hidden.html#R1">=</a>  <a href="numbers.html#K5">NAT</a>  &amp; <font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> 0 <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <font color="Maroon">c<sub>1</sub></font> )
 <b>and </b><br/><a NAME="E6:55_1_2"/><i><font color="Green">E22</font></i>: 
for <font color="Olive">b<sub>1</sub></font> being  <a href="nat_1.html#NM1">Nat</a> holds <font color="Maroon">S<sub>1</sub></font>[<font color="Olive">b<sub>1</sub></font>,<font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <font color="Olive">b<sub>1</sub></font>,<font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Olive">b<sub>1</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span>]
 <b>from </b><i><a class="ref" href="recdef_1.html#S1">RECDEF_1:sch 1</a>(<a class="txt" href="funct_7.html#E2:55_1_2"><i><font color="Green">E19</font></i></a>, <a class="txt" href="funct_7.html#E3:55_1_2"><i><font color="Green">E20</font></i></a>);<br/></i>
<b>defpred </b><font color="Maroon">S<sub>2</sub></font>[  <a href="nat_1.html#NM1">Nat</a>] means <font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <font color="Maroon">a<sub>1</sub></font> is   <a href="funct_1.html#NM1">Function</a>;<br/>
<a NAME="E7:55_1_2"/><i><font color="Green">E23</font></i>: 
<font color="Maroon">S<sub>2</sub></font>[0]
 
<b>by </b><i><a class="txt" href="funct_7.html#E5:55_1_2"><i><font color="Green">E21</font></i></a></i>;<br/>
<a NAME="E8:55_1_2"/><i><font color="Green">E24</font></i>: 
for <font color="Olive">b<sub>1</sub></font> being  <a href="nat_1.html#NM1">Nat</a> st <font color="Maroon">S<sub>2</sub></font>[<font color="Olive">b<sub>1</sub></font>] holds <br/><font color="Maroon">S<sub>2</sub></font>[<font color="Olive">b<sub>1</sub></font> <a href="nat_1.html#K1">+</a> 1]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="55_1_2_3"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">c<sub>5</sub></font> be   <a href="nat_1.html#NM1">Nat</a>;<br/>

<b>assume </b><a NAME="E1:55_1_2_3"/>
<font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <font color="Maroon">c<sub>5</sub></font> is   <a href="funct_1.html#NM1">Function</a>
 ;<br/>

<b>then reconsider </b><font color="Maroon">c<sub>6</sub></font> = <font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <font color="Maroon">c<sub>5</sub></font> as   <a href="funct_1.html#NM1">Function</a> ;<br/>
<b>reconsider </b><font color="Maroon">c<sub>7</sub></font> = <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>5</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> as   <a href="funct_1.html#NM1">Function</a> ;<br/>
<a NAME="E4:55_1_2_3"/>
<font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>5</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>7</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Maroon">c<sub>6</sub></font>
 
<b>by </b><i><a class="txt" href="funct_7.html#E6:55_1_2"><i><font color="Green">E22</font></i></a></i>;<br/>
<b>hence </b><a NAME="E5:55_1_2_3"/>
<font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>5</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> is   <a href="funct_1.html#NM1">Function</a>
 ;<br/>


</div><b>end;</b></div>
<a NAME="E9:55_1_2"/><i><font color="Green">E25</font></i>: 
for <font color="Olive">b<sub>1</sub></font> being  <a href="nat_1.html#NM1">Nat</a> holds <font color="Maroon">S<sub>2</sub></font>[<font color="Olive">b<sub>1</sub></font>]
 
<b>from </b><i><a class="ref" href="nat_1.html#S1">NAT_1:sch 1</a>(<a class="txt" href="funct_7.html#E7:55_1_2"><i><font color="Green">E23</font></i></a>, <a class="txt" href="funct_7.html#E8:55_1_2"><i><font color="Green">E24</font></i></a>);<br/></i>
<b>then reconsider </b><font color="Maroon">c<sub>5</sub></font> = <font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="finseq_1.html#K3">len</a> <font color="Maroon">c<sub>2</sub></font></span>)</span> as   <a href="funct_1.html#NM1">Function</a> ;<br/>
<b>take </b>
<font color="Maroon">c<sub>5</sub></font>
;<br/>

<a NAME="E11:55_1_2"/>
<font color="Maroon">c<sub>4</sub></font> is <a href="funcop_1.html#V1">Function-yielding</a>
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="55_1_2_4"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon">c<sub>6</sub></font> be    <a href="hidden.html#M1">set</a> ; <i><font color="Red">:: according to </font></i><a class="ref" href="funcop_1.html#D6">FUNCOP_1:def 6</a><br/>

<b>assume </b><a NAME="E1:55_1_2_4"/>
<font color="Maroon">c<sub>6</sub></font> <a href="hidden.html#R2">in</a>  <a href="relat_1.html#K1">dom</a> <font color="Maroon">c<sub>4</sub></font>
 ;<br/>

<b>hence </b><a NAME="E2:55_1_2_4"/>
<font color="Maroon">c<sub>4</sub></font> <a href="funct_1.html#K1">.</a> <font color="Maroon">c<sub>6</sub></font> is    <a href="hidden.html#M1">set</a> 
 <b>by </b><i><a class="txt" href="funct_7.html#E5:55_1_2"><i><font color="Green">E21</font></i></a>, <a class="txt" href="funct_7.html#E9:55_1_2"><i><font color="Green">E25</font></i></a></i>;<br/>


</div><b>end;</b></div>
<b>then reconsider </b><font color="Maroon">c<sub>6</sub></font> = <font color="Maroon">c<sub>4</sub></font> as   <a href="pboole.html#NM2">ManySortedFunction</a> of  <a href="numbers.html#K5">NAT</a>  <b>by </b><i><a class="txt" href="funct_7.html#E5:55_1_2"><i><font color="Green">E21</font></i></a>, <a class="ref" href="pboole.html#D3">PBOOLE:def 3</a></i>;<br/>
<b>take </b>
<font color="Maroon">c<sub>6</sub></font>
;<br/>

<b>thus </b><a NAME="E13:55_1_2"/>
( <font color="Maroon">c<sub>5</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>6</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><a href="finseq_1.html#K3">len</a> <font color="Maroon">c<sub>2</sub></font></span>)</span> &amp; <font color="Maroon">c<sub>6</sub></font> <a href="funct_1.html#K1">.</a> 0 <a href="hidden.html#R1">=</a>  <a href="partfun1.html#K6">id</a> <font color="Maroon">c<sub>1</sub></font> )
 <b>by </b><i><a class="txt" href="funct_7.html#E5:55_1_2"><i><font color="Green">E21</font></i></a></i>;<br/>

<b>let </b><font color="Maroon">c<sub>7</sub></font> be   <a href="nat_1.html#NM1">Nat</a>;<br/>

<b>thus </b><a NAME="E14:55_1_2"/>
( <font color="Maroon">c<sub>7</sub></font> <a href="nat_1.html#K1">+</a> 1 <a href="hidden.html#R2">in</a>  <a href="finseq_1.html#K4">dom</a> <font color="Maroon">c<sub>2</sub></font> implies for <font color="Olive">b<sub>1</sub></font>, <font color="Olive">b<sub>2</sub></font> being  <a href="funct_1.html#NM1">Function</a> st <font color="Olive">b<sub>1</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>6</sub></font> <a href="funct_1.html#K1">.</a> <font color="Maroon">c<sub>7</sub></font> &amp; <font color="Olive">b<sub>2</sub></font> <a href="hidden.html#R1">=</a> <font color="Maroon">c<sub>2</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>7</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> holds <br/><font color="Maroon">c<sub>6</sub></font> <a href="funct_1.html#K1">.</a> <span class="p1">(<span class="default"><font color="Maroon">c<sub>7</sub></font> <a href="nat_1.html#K1">+</a> 1</span>)</span> <a href="hidden.html#R1">=</a> <font color="Olive">b<sub>2</sub></font> <a href="funct_1.html#NK3" target="_self">*</a> <font color="Olive">b<sub>1</sub></font> )
 <b>by </b><i><a class="txt" href="funct_7.html#E6:55_1_2"><i><font color="Green">E22</font></i></a></i>;<br/>


</div>
