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

<span class="kw">let </span><font color="Maroon" title="c1">A</font> be   non  <a href="xboole_0.html#V1" title="XBOOLE_0:attr.1">empty</a>   <a href="hidden.html#M2" title="HIDDEN:mode.2">set</a> ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  for <font color="Olive" title="b1">s</font> being   <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span> holds  <span class="p1"><a href="stacks_1.html#K9" title="STACKS_1:func.9">|.</a><span class="default"><font color="Olive" title="b1">s</font></span><a href="stacks_1.html#K9" title="STACKS_1:func.9">.|</a></span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b1">s</font></span><br/>

<span class="kw">defpred </span><font color="Maroon">S<sub>1</sub></font>[  <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>] <span class="kw">means </span><span class="p1"><a href="stacks_1.html#K9" title="STACKS_1:func.9">|.</a><span class="default">$1</span><a href="stacks_1.html#K9" title="STACKS_1:func.9">.|</a></span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> $1;<br/>
<div><span class="lab"><font color="Green" title="E20">A1</font></span>: <a class="txt" onmouseover="tooltip.show('hs2',this)" onmouseout="tooltip.hide()" onclick="hs2(this)" href="javascript:()" title="38_1"><span class="kw">now </span> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  for <font color="Olive" title="b1">s</font> being   <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>  st  <a href="stacks_1.html#R1" title="STACKS_1:pred.1">emp</a> <font color="Olive" title="b1">s</font> holds <br/><font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">s</font>]</span></a><div class="add"><span class="kw">let </span><font color="Maroon" title="c2">s</font> be   <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> (  <a href="stacks_1.html#R1" title="STACKS_1:pred.1">emp</a> <font color="Maroon" title="c2">s</font> implies <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>] )</span><br/><span class="kw">assume </span><a NAME="E1:38_1"/>
 <a href="stacks_1.html#R1" title="STACKS_1:pred.1">emp</a> <font color="Maroon" title="c2">s</font>
 ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>]</span><br/><a NAME="E2:38_1"/><span class="kw">then </span>
( <font color="Maroon" title="c2">s</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  <a href="xboole_0.html#K1" title="XBOOLE_0:func.1">{}</a>  &amp; <span class="p1"><a href="stacks_1.html#K9" title="STACKS_1:func.9">|.</a><span class="default"><font color="Maroon" title="c2">s</font></span><a href="stacks_1.html#K9" title="STACKS_1:func.9">.|</a></span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  <a href="xboole_0.html#K1" title="XBOOLE_0:func.1">{}</a>  )
 <span class="kw">by</span> <span class="lab"><a class="ref" href="stacks_1.html#D7" target="_self" onmouseover="rs('stacks_1/D7')" onmouseout="rh()">Def7</a>, <a class="ref" href="stacks_1.html#T5" target="_self" onmouseover="rs('stacks_1/T5')" onmouseout="rh()">Th5</a></span>;<br/><span class="kw">hence </span><a NAME="E3:38_1"/>
<font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>]
 ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> verum</span><br/></div><span class="kw">end;</span></div>
<div><span class="lab"><font color="Green" title="E21">A2</font></span>: <a class="txt" onmouseover="tooltip.show('hs2',this)" onmouseout="tooltip.hide()" onclick="hs2(this)" href="javascript:()" title="38_2"><span class="kw">now </span> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  for <font color="Olive" title="b1">s</font> being   <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span><br/>  for <font color="Olive" title="b2">e</font> being   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Olive" title="b1">s</font>] holds <br/><font color="Maroon">S<sub>1</sub></font>[ <a href="stacks_1.html#K7" title="STACKS_1:func.7">push</a> (<font color="Olive" title="b2">e</font>,<font color="Olive" title="b1">s</font>)]</span></a><div class="add"><span class="kw">let </span><font color="Maroon" title="c2">s</font> be   <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  for <font color="Olive" title="b1">e</font> being   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>  st <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>] holds <br/><font color="Maroon">S<sub>1</sub></font>[ <a href="stacks_1.html#K7" title="STACKS_1:func.7">push</a> (<font color="Olive" title="b1">e</font>,<font color="Maroon" title="c2">s</font>)]</span><br/><span class="kw">let </span><font color="Maroon" title="c3">e</font> be   <a href="struct_0.html#NM1" title="STRUCT_0:NM.1">Element</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> ( <font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>] implies <font color="Maroon">S<sub>1</sub></font>[ <a href="stacks_1.html#K7" title="STACKS_1:func.7">push</a> (<font color="Maroon" title="c3">e</font>,<font color="Maroon" title="c2">s</font>)] )</span><br/><span class="kw">assume </span><a NAME="E1:38_2"/>
<font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>]
 ; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <font color="Maroon">S<sub>1</sub></font>[ <a href="stacks_1.html#K7" title="STACKS_1:func.7">push</a> (<font color="Maroon" title="c3">e</font>,<font color="Maroon" title="c2">s</font>)]</span><br/><a NAME="E2:38_2"/><span class="kw">then </span>
<span class="p1"><a href="stacks_1.html#K9" title="STACKS_1:func.9">|.</a><span class="default"><span class="p2">(<span class="default"><a href="stacks_1.html#K7" title="STACKS_1:func.7">push</a> (<font color="Maroon" title="c3">e</font>,<font color="Maroon" title="c2">s</font>)</span>)</span></span><a href="stacks_1.html#K9" title="STACKS_1:func.9">.|</a></span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <span class="p1"><a href="finseq_1.html#K12" title="FINSEQ_1:func.12">&lt;*</a><span class="default"><font color="Maroon" title="c3">e</font></span><a href="finseq_1.html#K12" title="FINSEQ_1:func.12">*&gt;</a></span> <a href="finseq_1.html#K7" title="FINSEQ_1:func.7">^</a> <font color="Maroon" title="c2">s</font>
 <span class="kw">by</span> <span class="lab"><a class="ref" href="stacks_1.html#T8" target="_self" onmouseover="rs('stacks_1/T8')" onmouseout="rh()">Th8</a></span>;<br/><span class="kw">hence </span><a NAME="E3:38_2"/>
<font color="Maroon">S<sub>1</sub></font>[ <a href="stacks_1.html#K7" title="STACKS_1:func.7">push</a> (<font color="Maroon" title="c3">e</font>,<font color="Maroon" title="c2">s</font>)]
 <span class="kw">by</span> <span class="lab"><a class="ref" href="stacks_1.html#D7" target="_self" onmouseover="rs('stacks_1/D7')" onmouseout="rh()">Def7</a></span>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> verum</span><br/></div><span class="kw">end;</span></div>
<span class="kw">let </span><font color="Maroon" title="c2">s</font> be   <a href="stacks_1.html#NM2" title="STACKS_1:NM.2">stack</a> of <span class="p1">(<span class="default"><a href="stacks_1.html#K8" title="STACKS_1:func.8">StandardStackSystem</a> <font color="Maroon" title="c1">A</font></span>)</span>; <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <span class="p1"><a href="stacks_1.html#K9" title="STACKS_1:func.9">|.</a><span class="default"><font color="Maroon" title="c2">s</font></span><a href="stacks_1.html#K9" title="STACKS_1:func.9">.|</a></span> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c2">s</font></span><br/>

<span class="kw">thus </span><a NAME="E3:38"/>
<font color="Maroon">S<sub>1</sub></font>[<font color="Maroon" title="c2">s</font>]
 <span class="kw">from</span> <span class="lab"><a class="ref" href="stacks_1.html#S3" target="_self" onmouseover="rs('stacks_1/S3')" onmouseout="rh()">STACKS_1:sch 3</a>(<a class="txt" href="#E1:38"><span class="lab"><font color="Green" title="E20">A1</font></span></a>, <a class="txt" href="#E2:38"><span class="lab"><font color="Green" title="E21">A2</font></span></a>);</span> <a class="txt" onmouseover="tooltip.show('hs',this)" onmouseout="tooltip.hide()" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> verum</span><br/>


</div>
