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

<b>let </b><font color="Maroon" title="c1">S</font> be  non <a href="xboole_0.html#V1" title="XBOOLE_0:attr.1">empty</a>  <a href="hidden.html#M1" title="HIDDEN:mode.1">set</a> ;<br/><b>let </b><font color="Maroon" title="c2">T</font> be   <a href="subset_1.html#NM2" title="SUBSET_1:NM.2">Subset</a> of <font color="Maroon" title="c1">S</font>;<br/><b>let </b><font color="Maroon" title="c3">A</font> be  <a href="freealg.html#V3" title="FREEALG:attr.3">free</a> <a href="aofa_000.html#V12" title="AOFA_000:attr.12">ECIW-strict</a> <a href="aofa_000.html#NM1" title="AOFA_000:NM.1">preIfWhileAlgebra</a>;<br/><b>let </b><font color="Maroon" title="c4">f1</font>, <font color="Maroon" title="c5">f2</font> be    <a href="aofa_000.html#M1" title="AOFA_000:mode.1">ExecutionFunction</a> of <font color="Maroon" title="c3">A</font>,<font color="Maroon" title="c1">S</font>,<font color="Maroon" title="c2">T</font>;<br/>







<b>assume </b><a NAME="E1:154"/><i><font color="Green" title="E95">A1</font></i>: 
<font color="Maroon" title="c4">f1</font> <a href="partfun1.html#K2" title="PARTFUN1:func.2">|</a> <span class="p1"><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">[:</a><span class="default"><font color="Maroon" title="c1">S</font>,<span class="p2">(<span class="default"><a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font></span>)</span></span><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">:]</a></span> <a href="relset_1.html#R2" title="RELSET_1:pred.2">=</a> <font color="Maroon" title="c5">f2</font> <a href="partfun1.html#K2" title="PARTFUN1:func.2">|</a> <span class="p1"><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">[:</a><span class="default"><font color="Maroon" title="c1">S</font>,<span class="p2">(<span class="default"><a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font></span>)</span></span><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">:]</a></span>
 ;<br/>

<b>set </b><font color="Maroon" title="c6">g</font> = <font color="Maroon" title="c4">f1</font> <a href="partfun1.html#K2" title="PARTFUN1:func.2">|</a> <span class="p1"><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">[:</a><span class="default"><font color="Maroon" title="c1">S</font>,<span class="p2">(<span class="default"><a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font></span>)</span></span><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">:]</a></span>;<br/>
<b>assume </b><a NAME="E2:154"/><i><font color="Green" title="E96">A2</font></i>: 
for <font color="Olive" title="b1">s</font> being   <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font><br/> for <font color="Olive" title="b2">C</font>, <font color="Olive" title="b3">I</font> being  <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>  st not <font color="Maroon" title="c4">f1</font> <a href="aofa_000.html#R4" title="AOFA_000:pred.4">iteration_terminates_for</a> <font color="Olive" title="b3">I</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Olive" title="b2">C</font>,<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Olive" title="b1">s</font>,<font color="Olive" title="b2">C</font> holds <br/><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Olive" title="b1">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Olive" title="b2">C</font>,<font color="Olive" title="b3">I</font></span>)</span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Olive" title="b1">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Olive" title="b2">C</font>,<font color="Olive" title="b3">I</font></span>)</span>
 ;<br/>

<b>defpred </b><font color="Maroon">S<sub>1</sub></font>[   <a href="hidden.html#M1" title="HIDDEN:mode.1">set</a> ] <b>means </b>for <font color="Olive" title="b1">s</font> being   <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font> holds  <font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K1" title="BINOP_1:func.1">.</a> <font color="Olive" title="b1">s</font>,$1 <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K1" title="BINOP_1:func.1">.</a> <font color="Olive" title="b1">s</font>,$1;<br/>
<a NAME="E3:154"/><i><font color="Green" title="E97">A3</font></i>: 
for <font color="Olive" title="b1">I</font> being  <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>  st <font color="Olive" title="b1">I</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  <a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font> holds <br/><font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">I</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_1"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon" title="c7">I</font> be   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>;<br/>

<b>assume </b><a NAME="E1:154_1"/><i><font color="Green" title="E98">A4</font></i>: 
<font color="Maroon" title="c7">I</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a>  <a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font>
 ;<br/>

<b>let </b><font color="Maroon" title="c8">s</font> be    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font>;<br/>

<a NAME="E2:154_1"/><i><font color="Green" title="E99">A5</font></i>: 
<span class="p1"><a href="tarski.html#K4" title="TARSKI:func.4">[</a><span class="default"><font color="Maroon" title="c8">s</font>,<font color="Maroon" title="c7">I</font></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> <span class="p1"><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">[:</a><span class="default"><font color="Maroon" title="c1">S</font>,<span class="p2">(<span class="default"><a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font></span>)</span></span><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">:]</a></span>
 
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_1"><i><font color="Green" title="E98">A4</font></i></a>, <a class="ref" href="zfmisc_1.html#T106" title="ZFMISC_1:th.106">ZFMISC_1:106</a></i>;<br/>
<b>hence </b><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c8">s</font>,<font color="Maroon" title="c7">I</font> = 
<span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="partfun1.html#K2" title="PARTFUN1:func.2">|</a> <span class="p2"><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">[:</a><span class="default"><font color="Maroon" title="c1">S</font>,<span class="p3">(<span class="default"><a href="aofa_000.html#K18" title="AOFA_000:func.18">ElementaryInstructions</a> <font color="Maroon" title="c3">A</font></span>)</span></span><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">:]</a></span></span>)</span> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1"><a href="tarski.html#K4" title="TARSKI:func.4">[</a><span class="default"><font color="Maroon" title="c8">s</font>,<font color="Maroon" title="c7">I</font></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span>
<b>by </b><i><a class="ref" href="funct_1.html#T72" title="FUNCT_1:th.72">FUNCT_1:72</a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c8">s</font>,<font color="Maroon" title="c7">I</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E2:154_1"><i><font color="Green" title="E99">A5</font></i></a>, <a class="txt" href="aofa_000.html#E1:154"><i><font color="Green" title="E95">A1</font></i></a>, <a class="ref" href="funct_1.html#T72" title="FUNCT_1:th.72">FUNCT_1:72</a></i>
;<br/><br/>


</div><b>end;</b></div>
<a NAME="E4:154"/><i><font color="Green" title="E98">A6</font></i>: 
<font color="Maroon">S<sub>1</sub></font>[ <a href="aofa_000.html#K12" title="AOFA_000:func.12">EmptyIns</a> <font color="Maroon" title="c3">A</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_2"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon" title="c7">s</font> be    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font>;<br/>

<b>thus </b><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c7">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K12" title="AOFA_000:func.12">EmptyIns</a> <font color="Maroon" title="c3">A</font></span>)</span> = 
<font color="Maroon" title="c7">s</font>
<b>by </b><i><a class="ref" href="aofa_000.html#D28" target="_self" title="AOFA_000:def.28">Def28</a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c7">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K12" title="AOFA_000:func.12">EmptyIns</a> <font color="Maroon" title="c3">A</font></span>)</span>
<b>by </b><i><a class="ref" href="aofa_000.html#D28" target="_self" title="AOFA_000:def.28">Def28</a></i>
;<br/>


</div><b>end;</b></div>
<a NAME="E5:154"/><i><font color="Green" title="E99">A7</font></i>: 
for <font color="Olive" title="b1">I1</font>, <font color="Olive" title="b2">I2</font> being  <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">I1</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b2">I2</font>] holds <br/><font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">I1</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Olive" title="b2">I2</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_3"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon" title="c7">I1</font>, <font color="Maroon" title="c8">I2</font> be   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>;<br/>

<b>assume </b><a NAME="E1:154_3"/><i><font color="Green" title="E100">A8</font></i>: 
( <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c7">I1</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c8">I2</font>] )
 ;<br/>

<b>let </b><font color="Maroon" title="c9">s</font> be    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font>;<br/>

<b>thus </b><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<span class="p1">(<span class="default"><font color="Maroon" title="c7">I1</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Maroon" title="c8">I2</font></span>)</span> = 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">I1</font></span>)</span>,<font color="Maroon" title="c8">I2</font>
<b>by </b><i><a class="ref" href="aofa_000.html#D29" target="_self" title="AOFA_000:def.29">Def29</a></i>
<br/>.= 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">I1</font></span>)</span>,<font color="Maroon" title="c8">I2</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_3"><i><font color="Green" title="E100">A8</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">I1</font></span>)</span>,<font color="Maroon" title="c8">I2</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_3"><i><font color="Green" title="E100">A8</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<span class="p1">(<span class="default"><font color="Maroon" title="c7">I1</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Maroon" title="c8">I2</font></span>)</span>
<b>by </b><i><a class="ref" href="aofa_000.html#D29" target="_self" title="AOFA_000:def.29">Def29</a></i>
;<br/>


</div><b>end;</b></div>
<a NAME="E6:154"/><i><font color="Green" title="E100">A9</font></i>: 
for <font color="Olive" title="b1">C</font>, <font color="Olive" title="b2">I1</font>, <font color="Olive" title="b3">I2</font> being  <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">C</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b2">I1</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b3">I2</font>] holds <br/><font color="Maroon">S<sub>1</sub></font>[ <a href="aofa_000.html#K14" title="AOFA_000:func.14">if-then-else</a> <font color="Olive" title="b1">C</font>,<font color="Olive" title="b2">I1</font>,<font color="Olive" title="b3">I2</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_4"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon" title="c7">C</font>, <font color="Maroon" title="c8">I1</font>, <font color="Maroon" title="c9">I2</font> be   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>;<br/>

<b>assume </b><a NAME="E1:154_4"/><i><font color="Green" title="E101">A10</font></i>: 
( <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c7">C</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c8">I1</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c9">I2</font>] )
 ;<br/>

<b>let </b><font color="Maroon" title="c10">s</font> be    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font>;<br/>

<a NAME="E2:154_4"/><i><font color="Green" title="E102">A11</font></i>: 
( <font color="Maroon" title="c4">f1</font> <a href="aofa_000.html#R2" title="AOFA_000:pred.2">complies_with_if_wrt</a> <font color="Maroon" title="c2">T</font> &amp; <font color="Maroon" title="c5">f2</font> <a href="aofa_000.html#R2" title="AOFA_000:pred.2">complies_with_if_wrt</a> <font color="Maroon" title="c2">T</font> )
 
<b>by </b><i><a class="ref" href="aofa_000.html#D32" target="_self" title="AOFA_000:def.32">Def32</a></i>;<br/>
<a NAME="E3:154_4"/><i><font color="Green" title="E103">A12</font></i>: 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font>
 
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_4"><i><font color="Green" title="E101">A10</font></i></a></i>;<br/>
<div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="154_4_1"><b>per </b></a><a class="txt" onclick="hs(this)" href="javascript:()"><b>cases </b></a><span class="hide"><a NAME="E1:154_4_1"/>
( <font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> <font color="Maroon" title="c2">T</font> or <font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font> <a href="aofa_000.html#NR1" title="AOFA_000:NR.1">nin</a> <font color="Maroon" title="c2">T</font> )
 </span>;<br/><div class="add"><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="154_4_1_1"><b>suppose </b></a><a NAME="E1:154_4_1_1"/><i><font color="Green" title="E104">A13</font></i>: 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> <font color="Maroon" title="c2">T</font>
 ;<br/><div class="add"><b>hence </b><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K14" title="AOFA_000:func.14">if-then-else</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I1</font>,<font color="Maroon" title="c9">I2</font></span>)</span> = 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font></span>)</span>,<font color="Maroon" title="c8">I1</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E2:154_4"><i><font color="Green" title="E102">A11</font></i></a>, <a class="ref" href="aofa_000.html#D30" target="_self" title="AOFA_000:def.30">Def30</a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font></span>)</span>,<font color="Maroon" title="c8">I1</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_4"><i><font color="Green" title="E101">A10</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K14" title="AOFA_000:func.14">if-then-else</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I1</font>,<font color="Maroon" title="c9">I2</font></span>)</span>
<b>by </b><i><a class="txt" href="aofa_000.html#E2:154_4"><i><font color="Green" title="E102">A11</font></i></a>, <a class="txt" href="aofa_000.html#E3:154_4"><i><font color="Green" title="E103">A12</font></i></a>, <a class="txt" href="aofa_000.html#E1:154_4_1_1"><i><font color="Green" title="E104">A13</font></i></a>, <a class="ref" href="aofa_000.html#D30" target="_self" title="AOFA_000:def.30">Def30</a></i>
;<br/><br/></div><b>end;</b></div><div><a class="txt" onclick="hsNdiv(this)" href="javascript:()" title="154_4_1_2"><b>suppose </b></a><a NAME="E1:154_4_1_2"/><i><font color="Green" title="E104">A14</font></i>: 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font> <a href="aofa_000.html#NR1" title="AOFA_000:NR.1">nin</a> <font color="Maroon" title="c2">T</font>
 ;<br/><div class="add"><b>hence </b><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K14" title="AOFA_000:func.14">if-then-else</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I1</font>,<font color="Maroon" title="c9">I2</font></span>)</span> = 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font></span>)</span>,<font color="Maroon" title="c9">I2</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E2:154_4"><i><font color="Green" title="E102">A11</font></i></a>, <a class="ref" href="aofa_000.html#D30" target="_self" title="AOFA_000:def.30">Def30</a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<font color="Maroon" title="c7">C</font></span>)</span>,<font color="Maroon" title="c9">I2</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_4"><i><font color="Green" title="E101">A10</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c10">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K14" title="AOFA_000:func.14">if-then-else</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I1</font>,<font color="Maroon" title="c9">I2</font></span>)</span>
<b>by </b><i><a class="txt" href="aofa_000.html#E2:154_4"><i><font color="Green" title="E102">A11</font></i></a>, <a class="txt" href="aofa_000.html#E3:154_4"><i><font color="Green" title="E103">A12</font></i></a>, <a class="txt" href="aofa_000.html#E1:154_4_1_2"><i><font color="Green" title="E104">A14</font></i></a>, <a class="ref" href="aofa_000.html#D30" target="_self" title="AOFA_000:def.30">Def30</a></i>
;<br/><br/></div><b>end;</b></div></div><b>end;</b></div>

</div><b>end;</b></div>
<a NAME="E7:154"/><i><font color="Green" title="E101">A15</font></i>: 
for <font color="Olive" title="b1">C</font>, <font color="Olive" title="b2">I</font> being  <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">C</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b2">I</font>] holds <br/><font color="Maroon">S<sub>1</sub></font>[ <a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Olive" title="b1">C</font>,<font color="Olive" title="b2">I</font>]
 
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_5"><b>proof </b></a><div class="add">

<b>let </b><font color="Maroon" title="c7">C</font>, <font color="Maroon" title="c8">I</font> be   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font>;<br/>

<b>assume </b><a NAME="E1:154_5"/><i><font color="Green" title="E102">A16</font></i>: 
( <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c7">C</font>] &amp; <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c8">I</font>] )
 ;<br/>

<b>let </b><font color="Maroon" title="c9">s</font> be    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font>;<br/>

<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_5_1"><b>now </b></a><div class="add"><b>assume </b><a NAME="E1:154_5_1"/>
<font color="Maroon" title="c4">f1</font> <a href="aofa_000.html#R4" title="AOFA_000:pred.4">iteration_terminates_for</a> <font color="Maroon" title="c8">I</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">C</font>
 ;<br/><b>then consider </b><font color="Maroon" title="c10">r</font> being  non <a href="xboole_0.html#V1" title="XBOOLE_0:attr.1">empty</a>  <a href="finseq_1.html#M2" title="FINSEQ_1:mode.2">FinSequence</a> of <font color="Maroon" title="c1">S</font><b> such that </b><br/><a NAME="E3:154_5_1"/><i><font color="Green" title="E103">A17</font></i>: 
( <font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> 1 <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">C</font> &amp; <font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><a href="finseq_1.html#K3" title="FINSEQ_1:func.3">len</a> <font color="Maroon" title="c10">r</font></span>)</span> <a href="aofa_000.html#NR1" title="AOFA_000:NR.1">nin</a> <font color="Maroon" title="c2">T</font> )
 <b>and </b><br/><a NAME="E4:154_5_1"/><i><font color="Green" title="E104">A18</font></i>: 
for <font color="Olive" title="b1">i</font> being  <a href="nat_1.html#NM1" title="NAT_1:NM.1">Nat</a>  st 1 <a href="xxreal_0.html#R1" title="XXREAL_0:pred.1">&lt;=</a> <font color="Olive" title="b1">i</font> &amp; <font color="Olive" title="b1">i</font> <a href="xxreal_0.html#NR3" title="XXREAL_0:NR.3">&lt;</a>  <a href="finseq_1.html#K3" title="FINSEQ_1:func.3">len</a> <font color="Maroon" title="c10">r</font> holds <br/>( <font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b1">i</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> <font color="Maroon" title="c2">T</font> &amp; <font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Olive" title="b1">i</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K1" title="BINOP_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b1">i</font></span>)</span>,<span class="p1">(<span class="default"><font color="Maroon" title="c8">I</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Maroon" title="c7">C</font></span>)</span> )
 <b>by </b><i><a class="ref" href="aofa_000.html#D33" target="_self" title="AOFA_000:def.33">Def33</a></i>;<br/><a NAME="E5:154_5_1"/><i><font color="Green" title="E105">A19</font></i>: 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">C</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<font color="Maroon" title="c7">C</font>
 <b>by </b><i><a class="txt" href="aofa_000.html#E1:154_5"><i><font color="Green" title="E102">A16</font></i></a></i>;<br/><div><i><font color="Green" title="E106">A20</font></i>: <a class="txt" onclick="hs2(this)" href="javascript:()" title="154_5_1_1"><b>now </b></a><div class="add"><b>let </b><font color="Maroon" title="c11">i</font> be   <a href="nat_1.html#NM1" title="NAT_1:NM.1">Nat</a>;<br/><b>assume </b><a NAME="E1:154_5_1_1"/><i><font color="Green" title="E107">A21</font></i>: 
( 1 <a href="xxreal_0.html#R1" title="XXREAL_0:pred.1">&lt;=</a> <font color="Maroon" title="c11">i</font> &amp; <font color="Maroon" title="c11">i</font> <a href="xxreal_0.html#NR3" title="XXREAL_0:NR.3">&lt;</a>  <a href="finseq_1.html#K3" title="FINSEQ_1:func.3">len</a> <font color="Maroon" title="c10">r</font> )
 ;<br/><b>hence </b><a NAME="E2:154_5_1_1"/>
<font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c11">i</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> <font color="Maroon" title="c2">T</font>
 <b>by </b><i><a class="txt" href="aofa_000.html#E4:154_5_1"><i><font color="Green" title="E104">A18</font></i></a></i>;<br/><b>then reconsider </b><font color="Maroon" title="c12">si</font> = <font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c11">i</font> as    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font> ;<br/><b>thus </b><font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c11">i</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span> = 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c12">si</font>,<span class="p1">(<span class="default"><font color="Maroon" title="c8">I</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Maroon" title="c7">C</font></span>)</span>
<b>by </b><i><a class="txt" href="aofa_000.html#E4:154_5_1"><i><font color="Green" title="E104">A18</font></i></a>, <a class="txt" href="aofa_000.html#E1:154_5_1_1"><i><font color="Green" title="E107">A21</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c12">si</font>,<font color="Maroon" title="c8">I</font></span>)</span>,<font color="Maroon" title="c7">C</font>
<b>by </b><i><a class="ref" href="aofa_000.html#D29" target="_self" title="AOFA_000:def.29">Def29</a></i>
<br/>.= 
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c12">si</font>,<font color="Maroon" title="c8">I</font></span>)</span>,<font color="Maroon" title="c7">C</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_5"><i><font color="Green" title="E102">A16</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c12">si</font>,<font color="Maroon" title="c8">I</font></span>)</span>,<font color="Maroon" title="c7">C</font>
<b>by </b><i><a class="txt" href="aofa_000.html#E1:154_5"><i><font color="Green" title="E102">A16</font></i></a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K1" title="BINOP_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Maroon" title="c11">i</font></span>)</span>,<span class="p1">(<span class="default"><font color="Maroon" title="c8">I</font> <a href="aofa_000.html#K13" title="AOFA_000:func.13">\;</a> <font color="Maroon" title="c7">C</font></span>)</span>
<b>by </b><i><a class="ref" href="aofa_000.html#D29" target="_self" title="AOFA_000:def.29">Def29</a></i>
;<br/></div><b>end;</b></div><b>thus </b><font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I</font></span>)</span> = 
<font color="Maroon" title="c10">r</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><a href="finseq_1.html#K3" title="FINSEQ_1:func.3">len</a> <font color="Maroon" title="c10">r</font></span>)</span>
<b>by </b><i><a class="txt" href="aofa_000.html#E3:154_5_1"><i><font color="Green" title="E103">A17</font></i></a>, <a class="txt" href="aofa_000.html#E4:154_5_1"><i><font color="Green" title="E104">A18</font></i></a>, <a class="ref" href="aofa_000.html#T86" target="_self" title="AOFA_000:th.86">Th86</a></i>
<br/>.= 
<font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c9">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I</font></span>)</span>
<b>by </b><i><a class="txt" href="aofa_000.html#E3:154_5_1"><i><font color="Green" title="E103">A17</font></i></a>, <a class="txt" href="aofa_000.html#E6:154_5_1"><i><font color="Green" title="E106">A20</font></i></a>, <a class="txt" href="aofa_000.html#E5:154_5_1"><i><font color="Green" title="E105">A19</font></i></a>, <a class="ref" href="aofa_000.html#T86" target="_self" title="AOFA_000:th.86">Th86</a></i>
;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E3:154_5"/>
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K1" title="BINOP_1:func.1">.</a> <font color="Maroon" title="c9">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I</font></span>)</span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K1" title="BINOP_1:func.1">.</a> <font color="Maroon" title="c9">s</font>,<span class="p1">(<span class="default"><a href="aofa_000.html#K16" title="AOFA_000:func.16">while</a> <font color="Maroon" title="c7">C</font>,<font color="Maroon" title="c8">I</font></span>)</span>
 <b>by </b><i><a class="txt" href="aofa_000.html#E2:154"><i><font color="Green" title="E96">A2</font></i></a></i>;<br/>


</div><b>end;</b></div>
<div><a class="txt" onclick="hs2(this)" href="javascript:()" title="154_6"><b>now </b></a><div class="add"><b>let </b><font color="Maroon" title="c7">sI</font> be    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <span class="p1"><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">[:</a><span class="default"><font color="Maroon" title="c1">S</font>,the <a href="struct_0.html#U1" title="STRUCT_0:sel.1">carrier</a> of <font color="Maroon" title="c3">A</font></span><a href="zfmisc_1.html#K2" title="ZFMISC_1:func.2">:]</a></span>;<br/><b>consider </b><font color="Maroon" title="c8">s</font>, <font color="Maroon" title="c9">I</font> being    <a href="hidden.html#M1" title="HIDDEN:mode.1">set</a> <b> such that </b><br/><a NAME="E2:154_6"/><i><font color="Green" title="E102">A22</font></i>: 
( <font color="Maroon" title="c8">s</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> <font color="Maroon" title="c1">S</font> &amp; <font color="Maroon" title="c9">I</font> <a href="hidden.html#R2" title="HIDDEN:pred.2">in</a> the <a href="struct_0.html#U1" title="STRUCT_0:sel.1">carrier</a> of <font color="Maroon" title="c3">A</font> &amp; <font color="Maroon" title="c7">sI</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <span class="p1"><a href="tarski.html#K4" title="TARSKI:func.4">[</a><span class="default"><font color="Maroon" title="c8">s</font>,<font color="Maroon" title="c9">I</font></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span> )
 <b>by </b><i><a class="ref" href="zfmisc_1.html#D2" title="ZFMISC_1:def.2">ZFMISC_1:def 2</a></i>;<br/><b>reconsider </b><font color="Maroon" title="c10">I</font> = <font color="Maroon" title="c9">I</font> as   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <font color="Maroon" title="c3">A</font> <b>by </b><i><a class="txt" href="aofa_000.html#E2:154_6"><i><font color="Green" title="E102">A22</font></i></a></i>;<br/><b>reconsider </b><font color="Maroon" title="c11">s</font> = <font color="Maroon" title="c8">s</font> as    <a href="subset_1.html#M1" title="SUBSET_1:mode.1">Element</a> of <font color="Maroon" title="c1">S</font> <b>by </b><i><a class="txt" href="aofa_000.html#E2:154_6"><i><font color="Green" title="E102">A22</font></i></a></i>;<br/><a NAME="E5:154_6"/>
<font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c10">I</font>]
 <b>from </b><i><a class="ref" href="aofa_000.html#S2" target="_self" title="AOFA_000:sch.2">AOFA_000:sch 2</a>(<a class="txt" href="aofa_000.html#E3:154"><i><font color="Green" title="E97">A3</font></i></a>, <a class="txt" href="aofa_000.html#E4:154"><i><font color="Green" title="E98">A6</font></i></a>, <a class="txt" href="aofa_000.html#E5:154"><i><font color="Green" title="E99">A7</font></i></a>, <a class="txt" href="aofa_000.html#E6:154"><i><font color="Green" title="E100">A9</font></i></a>, <a class="txt" href="aofa_000.html#E7:154"><i><font color="Green" title="E101">A15</font></i></a>);<br/></i><a NAME="E6:154_6"/><b>then </b>
<font color="Maroon" title="c4">f1</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c11">s</font>,<font color="Maroon" title="c10">I</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="binop_1.html#K2" title="BINOP_1:func.2">.</a> <font color="Maroon" title="c11">s</font>,<font color="Maroon" title="c10">I</font>
 ;<br/><b>hence </b><a NAME="E7:154_6"/>
<font color="Maroon" title="c4">f1</font> <a href="funct_2.html#K3" title="FUNCT_2:func.3">.</a> <font color="Maroon" title="c7">sI</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c5">f2</font> <a href="funct_2.html#K3" title="FUNCT_2:func.3">.</a> <font color="Maroon" title="c7">sI</font>
 <b>by </b><i><a class="txt" href="aofa_000.html#E2:154_6"><i><font color="Green" title="E102">A22</font></i></a></i>;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E9:154"/>
<font color="Maroon" title="c4">f1</font> <a href="funct_2.html#R2" title="FUNCT_2:pred.2">=</a> <font color="Maroon" title="c5">f2</font>
 <b>by </b><i><a class="ref" href="funct_2.html#T113" title="FUNCT_2:th.113">FUNCT_2:113</a></i>;<br/>


</div>
