<?xml version="1.0"?>
<div><span class="kw">theorem </span><span class="lab"><font color="Green" title="E4">Th1</font></span>: <a NAME="T1"><span class="comment"><font color="firebrick">:: FSCIRC_2:1</font></span><br/></a><div class="add"> for <font color="Olive" title="b1">x</font>, <font color="Olive" title="b2">y</font> being   <a href="finseq_1.html#NM1" title="FINSEQ_1:NM.1">FinSequence</a><br/>  for <font color="Olive" title="b3">f</font>, <font color="Olive" title="b4">g</font>, <font color="Olive" title="b5">h</font> being   <a href="pboole.html#NM1" title="PBOOLE:NM.1">ManySortedSet</a> of  <a href="numbers.html#NK1" title="NUMBERS:NK.1">NAT</a>   st <font color="Olive" title="b3">f</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <a href="numbers.html#K5" title="NUMBERS:func.5">0</a> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  <a href="circcomb.html#K5" title="CIRCCOMB:func.5">1GateCircStr</a> (<a href="facirc_2.html#NK3" title="FACIRC_2:NK.3">&lt;*&gt;</a>,<span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="numbers.html#K5" title="NUMBERS:func.5">0</a> <a href="finseq_2.html#K4" title="FINSEQ_2:func.4">-tuples_on</a> <a href="margrel1.html#K5" title="MARGREL1:func.5">BOOLEAN</a></span>)</span> <a href="funcop_1.html#K8" title="FUNCOP_1:func.8">--&gt;</a> <a href="margrel1.html#K7" title="MARGREL1:func.7">TRUE</a></span>)</span>) &amp; <font color="Olive" title="b4">g</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <a href="numbers.html#K5" title="NUMBERS:func.5">0</a> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a>  <a href="circcomb.html#K7" title="CIRCCOMB:func.7">1GateCircuit</a> (<a href="facirc_2.html#NK3" title="FACIRC_2:NK.3">&lt;*&gt;</a>,<span class="p1">(<span class="default"><span class="p2">(<span class="default"><a href="numbers.html#K5" title="NUMBERS:func.5">0</a> <a href="finseq_2.html#K4" title="FINSEQ_2:func.4">-tuples_on</a> <a href="margrel1.html#K5" title="MARGREL1:func.5">BOOLEAN</a></span>)</span> <a href="funcop_1.html#K8" title="FUNCOP_1:func.8">--&gt;</a> <a href="margrel1.html#K7" title="MARGREL1:func.7">TRUE</a></span>)</span>) &amp; <font color="Olive" title="b5">h</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <a href="numbers.html#K5" title="NUMBERS:func.5">0</a> <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"><a href="facirc_2.html#NK3" title="FACIRC_2:NK.3">&lt;*&gt;</a>,<span class="p2">(<span class="default"><span class="p3">(<span class="default"><a href="numbers.html#K5" title="NUMBERS:func.5">0</a> <a href="finseq_2.html#K4" title="FINSEQ_2:func.4">-tuples_on</a> <a href="margrel1.html#K5" title="MARGREL1:func.5">BOOLEAN</a></span>)</span> <a href="funcop_1.html#K8" title="FUNCOP_1:func.8">--&gt;</a> <a href="margrel1.html#K7" title="MARGREL1:func.7">TRUE</a></span>)</span></span><a href="tarski.html#K4" title="TARSKI:func.4">]</a></span> &amp; (  for <font color="Olive" title="b6">n</font> being   <a href="ordinal1.html#NM6" title="ORDINAL1:NM.6">Nat</a><br/>  for <font color="Olive" title="b7">S</font> being   non  <a href="struct_0.html#V2" title="STRUCT_0:attr.2">empty</a>   <a href="msualg_1.html#L1" title="MSUALG_1:struct.1">ManySortedSign</a> <br/>  for <font color="Olive" title="b8">A</font> being   <a href="msualg_1.html#V4" title="MSUALG_1:attr.4">non-empty</a>   <a href="msualg_1.html#L3" title="MSUALG_1:struct.3">MSAlgebra</a> over <font color="Olive" title="b7">S</font><br/>  for <font color="Olive" title="b9">z</font> being    <a href="hidden.html#M2" title="HIDDEN:mode.2">set</a>   st <font color="Olive" title="b7">S</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b3">f</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b6">n</font> &amp; <font color="Olive" title="b8">A</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b4">g</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b6">n</font> &amp; <font color="Olive" title="b9">z</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b5">h</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b6">n</font> holds <br/>( <font color="Olive" title="b3">f</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Olive" title="b6">n</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="Olive" title="b7">S</font> <a href="circcomb.html#K2" title="CIRCCOMB:func.2">+*</a> <span class="p1">(<span class="default"><a href="fscirc_1.html#K8" title="FSCIRC_1:func.8">BitSubtracterWithBorrowStr</a> (<span class="p2">(<span class="default"><font color="Olive" title="b1">x</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p3">(<span class="default"><font color="Olive" title="b6">n</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span></span>)</span>,<span class="p2">(<span class="default"><font color="Olive" title="b2">y</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p3">(<span class="default"><font color="Olive" title="b6">n</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span></span>)</span>,<font color="Olive" title="b9">z</font>)</span>)</span> &amp; <font color="Olive" title="b4">g</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Olive" title="b6">n</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="Olive" title="b8">A</font> <a href="circcomb.html#K3" title="CIRCCOMB:func.3">+*</a> <span class="p1">(<span class="default"><a href="fscirc_1.html#K9" title="FSCIRC_1:func.9">BitSubtracterWithBorrowCirc</a> (<span class="p2">(<span class="default"><font color="Olive" title="b1">x</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p3">(<span class="default"><font color="Olive" title="b6">n</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span></span>)</span>,<span class="p2">(<span class="default"><font color="Olive" title="b2">y</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p3">(<span class="default"><font color="Olive" title="b6">n</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span></span>)</span>,<font color="Olive" title="b9">z</font>)</span>)</span> &amp; <font color="Olive" title="b5">h</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p1">(<span class="default"><font color="Olive" title="b6">n</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>  <a href="fscirc_1.html#K6" title="FSCIRC_1:func.6">BorrowOutput</a> (<span class="p1">(<span class="default"><font color="Olive" title="b1">x</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p2">(<span class="default"><font color="Olive" title="b6">n</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span></span>)</span>,<span class="p1">(<span class="default"><font color="Olive" title="b2">y</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <span class="p2">(<span class="default"><font color="Olive" title="b6">n</font> <a href="nat_1.html#K1" title="NAT_1:func.1">+</a> 1</span>)</span></span>)</span>,<font color="Olive" title="b9">z</font>) ) ) holds <br/> for <font color="Olive" title="b6">n</font> being   <a href="ordinal1.html#NM6" title="ORDINAL1:NM.6">Nat</a> holds <br/> ( <font color="Olive" title="b6">n</font> <a href="fscirc_2.html#K1" title="FSCIRC_2:func.1">-BitSubtracterStr</a> (<font color="Olive" title="b1">x</font>,<font color="Olive" title="b2">y</font>) <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b3">f</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b6">n</font> &amp; <font color="Olive" title="b6">n</font> <a href="fscirc_2.html#K2" title="FSCIRC_2:func.2">-BitSubtracterCirc</a> (<font color="Olive" title="b1">x</font>,<font color="Olive" title="b2">y</font>) <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b4">g</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b6">n</font> &amp; <font color="Olive" title="b6">n</font> <a href="fscirc_2.html#K3" title="FSCIRC_2:func.3">-BitBorrowOutput</a> (<font color="Olive" title="b1">x</font>,<font color="Olive" title="b2">y</font>) <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b5">h</font> <a href="funct_1.html#K1" title="FUNCT_1:func.1">.</a> <font color="Olive" title="b6">n</font> )</div></div>
