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

<b>let </b><font color="Maroon">s</font> be   <a href="ami_1.html#NM4">State</a> of <a href="scmpds_2.html#K1">SCMPDS</a> ;<br/><b>let </b><font color="Maroon">I</font> be  <a href="scmpds_4.html#V3">shiftable</a> <a href="scmpds_5.html#V3">No-StopCode</a> <a href="scmpds_4.html#NM1">Program-block</a>;<br/><b>let </b><font color="Maroon">a</font> be    <a href="scmpds_2.html#M1">Int_position</a> ;<br/><b>let </b><font color="Maroon">i</font> be   <a href="int_1.html#NM1">Integer</a>, <font color="Maroon">c</font> be   <a href="int_1.html#NM1">Integer</a>;<br/><b>let </b><font color="Maroon">m</font> be    <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a> , <font color="Maroon">n</font> be    <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a> , <font color="Maroon">m1</font> be    <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a> ;<br/>









<b>set </b><font color="Maroon">b</font> =  <a href="scmpds_2.html#K3">DataLoc</a> <font color="Maroon">c</font>,<font color="Maroon">i</font>;<br/>
<b>assume </b><a NAME="E1:18"/><i><font color="Green">E42</font></i>: 
 <a href="card_1.html#K4">card</a> <font color="Maroon">I</font> <a href="xxreal_0.html#NR4" target="_self">&gt;</a> 0
 ;<br/>

<b>assume </b><a NAME="E2:18"/><i><font color="Green">E58</font></i>: 
<font color="Maroon">s</font> <a href="scmpds_2.html#K2">.</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">c</font>
 ;<br/>

<b>assume </b><a NAME="E3:18"/><i><font color="Green">E59</font></i>: 
1 <a href="hidden.html#R1">=</a> <font color="Maroon">s</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmpds_2.html#K3">DataLoc</a> <font color="Maroon">c</font>,<font color="Maroon">i</font></span>)</span>
 ;<br/>

<b>assume </b><a NAME="E4:18"/><i><font color="Green">E60</font></i>: 
( <font color="Maroon">m1</font> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Maroon">n</font></span>)</span> <a href="nat_1.html#K1">+</a> 1 &amp; <font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> 1 <a href="hidden.html#R1">=</a> <font color="Maroon">s</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <font color="Maroon">m1</font></span>)</span> &amp; <font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Maroon">n</font> <a href="hidden.html#R1">=</a> <font color="Maroon">s</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m1</font> <a href="nat_1.html#K1">+</a> 1</span>)</span></span>)</span> )
 ;<br/>

<b>assume </b><a NAME="E5:18"/><i><font color="Green">E61</font></i>: 
for <font color="Olive">t</font> being  <a href="ami_1.html#NM4">State</a> of <a href="scmpds_2.html#K1">SCMPDS</a> <br/> for <font color="Olive">f1</font>, <font color="Olive">f2</font> being   <a href="finseq_1.html#M2">FinSequence</a> of  <a href="numbers.html#K4">INT</a> <br/> for <font color="Olive">k1</font>, <font color="Olive">k2</font>, <font color="Olive">y1</font>, <font color="Olive">yn</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>   st <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">c</font> &amp; <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <font color="Olive">k1</font></span>)</span> <a href="nat_1.html#K1">+</a> 1 <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmpds_2.html#K3">DataLoc</a> <font color="Maroon">c</font>,<font color="Maroon">i</font></span>)</span> &amp; <font color="Olive">k2</font> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Maroon">n</font></span>)</span> <a href="nat_1.html#K1">+</a> <span class="p2">(<span class="default">2 <a href="nat_1.html#K2">*</a> <font color="Olive">k1</font></span>)</span></span>)</span> <a href="nat_1.html#K1">+</a> 1 &amp; <font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">y1</font> <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <font color="Olive">k2</font></span>)</span> &amp; <font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">yn</font> <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Olive">k2</font> <a href="nat_1.html#K1">+</a> 1</span>)</span></span>)</span> &amp; ( ( 1 <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">y1</font> &amp; <font color="Olive">yn</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Maroon">n</font> ) or <font color="Olive">y1</font> <a href="xxreal_0.html#NR2" target="_self">&gt;=</a> <font color="Olive">yn</font> ) holds <br/>( <font color="Maroon">I</font> <a href="scmpds_6.html#R1">is_closed_on</a> <font color="Olive">t</font> &amp; <font color="Maroon">I</font> <a href="scmpds_6.html#R2">is_halting_on</a> <font color="Olive">t</font> &amp; <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <font color="Maroon">a</font> &amp; ( for <font color="Olive">j</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>   st 1 <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">j</font> &amp; <font color="Olive">j</font> <a href="xxreal_0.html#NR3" target="_self">&lt;</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <font color="Olive">k1</font></span>)</span> <a href="nat_1.html#K1">+</a> 1 holds <br/><span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Maroon">n</font></span>)</span> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Maroon">n</font></span>)</span> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> ) &amp; ( <font color="Olive">y1</font> <a href="xxreal_0.html#NR2" target="_self">&gt;=</a> <font color="Olive">yn</font> implies ( <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmpds_2.html#K3">DataLoc</a> <font color="Maroon">c</font>,<font color="Maroon">i</font></span>)</span> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <font color="Olive">k1</font></span>)</span> <a href="xcmplx_0.html#K6">-</a> 1 &amp; ( for <font color="Olive">j</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>   st 1 <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">j</font> &amp; <font color="Olive">j</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Maroon">n</font> holds <br/><span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> ) ) ) &amp; ( <font color="Olive">y1</font> <a href="xxreal_0.html#NR3" target="_self">&lt;</a> <font color="Olive">yn</font> implies ( <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmpds_2.html#K3">DataLoc</a> <font color="Maroon">c</font>,<font color="Maroon">i</font></span>)</span> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default">2 <a href="nat_1.html#K2">*</a> <font color="Olive">k1</font></span>)</span> <a href="nat_1.html#K1">+</a> 3 &amp; ( for <font color="Olive">j</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>   st ( ( 1 <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">j</font> &amp; <font color="Olive">j</font> <a href="xxreal_0.html#NR3" target="_self">&lt;</a> <font color="Olive">y1</font> ) or ( <font color="Olive">yn</font> <a href="xxreal_0.html#NR3" target="_self">&lt;</a> <font color="Olive">j</font> &amp; <font color="Olive">j</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Maroon">n</font> ) ) holds <br/><span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> <a href="hidden.html#R1">=</a> <font color="Olive">t</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> ) &amp;  ex <font color="Olive">ym</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>  st <br/>( <font color="Olive">y1</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">ym</font> &amp; <font color="Olive">ym</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">yn</font> &amp; <font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">y1</font> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <font color="Olive">k2</font></span>)</span> &amp; <span class="p1">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">ym</font></span>)</span> <a href="xcmplx_0.html#K6">-</a> 1 <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Olive">k2</font> <a href="nat_1.html#K1">+</a> 1</span>)</span></span>)</span> &amp; <span class="p1">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">ym</font></span>)</span> <a href="nat_1.html#K1">+</a> 1 <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Olive">k2</font> <a href="nat_1.html#K1">+</a> 2</span>)</span></span>)</span> &amp; <font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">yn</font> <a href="hidden.html#R1">=</a> <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Olive">k2</font> <a href="nat_1.html#K1">+</a> 3</span>)</span></span>)</span> &amp; ( for <font color="Olive">j</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>   st <font color="Olive">y1</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">j</font> &amp; <font color="Olive">j</font> <a href="xxreal_0.html#NR3" target="_self">&lt;</a> <font color="Olive">ym</font> holds <br/><span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> <a href="xxreal_0.html#R1">&lt;=</a> <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">ym</font></span>)</span></span>)</span> ) &amp; ( for <font color="Olive">j</font> being   <a href="subset_1.html#M1">Element</a> of  <a href="numbers.html#K5">NAT</a>   st <font color="Olive">ym</font> <a href="xxreal_0.html#NR3" target="_self">&lt;</a> <font color="Olive">j</font> &amp; <font color="Olive">j</font> <a href="xxreal_0.html#R1">&lt;=</a> <font color="Olive">yn</font> holds <br/><span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">j</font></span>)</span></span>)</span> <a href="xxreal_0.html#NR2" target="_self">&gt;=</a> <span class="p1">(<span class="default"><a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font></span>)</span> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Olive">ym</font></span>)</span></span>)</span> ) ) ) ) &amp; ( <font color="Olive">f1</font> <a href="scpisort.html#R1">is_FinSequence_on</a> <font color="Olive">t</font>,<font color="Maroon">m</font> &amp; <font color="Olive">f2</font> <a href="scpisort.html#R1">is_FinSequence_on</a>  <a href="scmpds_4.html#K9">IExec</a> <font color="Maroon">I</font>,<font color="Olive">t</font>,<font color="Maroon">m</font> &amp;  <a href="finseq_1.html#K3">len</a> <font color="Olive">f1</font> <a href="hidden.html#R1">=</a> <font color="Maroon">n</font> &amp;  <a href="finseq_1.html#K3">len</a> <font color="Olive">f2</font> <a href="hidden.html#R1">=</a> <font color="Maroon">n</font> implies <font color="Olive">f1</font>,<font color="Olive">f2</font> <a href="rfinseq.html#R1">are_fiberwise_equipotent</a>  ) )
 ;<br/>

<div><i><font color="Green">E62</font></i>: <a class="txt" onclick="hs2(this)" href="javascript:()" title="18_1"><b>now </b></a><div class="add"><b>let </b><font color="Maroon">v</font> be   <a href="ami_1.html#NM4">State</a> of <a href="scmpds_2.html#K1">SCMPDS</a> ;<br/><b>assume </b><a NAME="E1:18_1"/><i><font color="Green">E63</font></i>: 
<font color="Maroon">v</font> <a href="relat_1.html#K7">|</a> <a href="ami_2.html#K2">SCM-Data-Loc</a>  <a href="hidden.html#R1">=</a> <font color="Maroon">s</font> <a href="relat_1.html#K7">|</a> <a href="ami_2.html#K2">SCM-Data-Loc</a> 
 ;<br/><a NAME="E2:18_1"/><b>then </b><i><font color="Green">E64</font></i>: 
<font color="Maroon">v</font> <a href="scmpds_2.html#K2">.</a> <font color="Maroon">a</font> <a href="hidden.html#R1">=</a> <font color="Maroon">c</font>
 <b>by </b><i>, <a class="ref" href="scmpds_4.html#T23">SCMPDS_4:23</a></i>;<br/><a NAME="E3:18_1"/><i><font color="Green">E65</font></i>: 
1 <a href="hidden.html#R1">=</a> <font color="Maroon">v</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmpds_2.html#K3">DataLoc</a> <font color="Maroon">c</font>,<font color="Maroon">i</font></span>)</span>
 <b>by </b><i>, , <a class="ref" href="scmpds_4.html#T23">SCMPDS_4:23</a></i>;<br/><a NAME="E4:18_1"/><i><font color="Green">E66</font></i>: 
<font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> 1 <a href="hidden.html#R1">=</a> <font color="Maroon">v</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <font color="Maroon">m1</font></span>)</span>
 <b>by </b><i>, , <a class="ref" href="scmpds_4.html#T23">SCMPDS_4:23</a></i>;<br/><a NAME="E5:18_1"/>
<font color="Maroon">m</font> <a href="nat_1.html#K1">+</a> <font color="Maroon">n</font> <a href="hidden.html#R1">=</a> <font color="Maroon">v</font> <a href="scmpds_2.html#K2">.</a> <span class="p1">(<span class="default"><a href="scmp_gcd.html#K1">intpos</a> <span class="p2">(<span class="default"><font color="Maroon">m1</font> <a href="nat_1.html#K1">+</a> 1</span>)</span></span>)</span>
 <b>by </b><i>, , <a class="ref" href="scmpds_4.html#T23">SCMPDS_4:23</a></i>;<br/><b>hence </b><a NAME="E6:18_1"/>
 <a href="scmpds_8.html#K3">while&gt;0</a> <font color="Maroon">a</font>,<font color="Maroon">i</font>,<font color="Maroon">I</font> <a href="scmpds_6.html#R2">is_halting_on</a> <font color="Maroon">v</font>
 <b>by </b><i>, , , , , , </i>;<br/></div><b>end;</b></div>
<b>hence </b><a NAME="E7:18"/>
 <a href="scmpds_8.html#K3">while&gt;0</a> <font color="Maroon">a</font>,<font color="Maroon">i</font>,<font color="Maroon">I</font> <a href="scmpds_6.html#R2">is_halting_on</a> <font color="Maroon">s</font>
 ;<br/>

<b>thus </b><a NAME="E8:18"/>
 <a href="scmpds_8.html#K3">while&gt;0</a> <font color="Maroon">a</font>,<font color="Maroon">i</font>,<font color="Maroon">I</font> <a href="scmpds_6.html#R1">is_closed_on</a> <font color="Maroon">s</font>
 <b>by </b><i>, </i>;<br/>


</div>
