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

<span class="kw">let </span><font color="Maroon" title="c1">a</font> be   <a href="int_1.html#NM1" title="INT_1:NM.1">Integer</a>; <a class="txt" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide">  for <font color="Olive" title="b1">p</font> being   <a href="newton.html#NM1" title="NEWTON:NM.1">Prime</a>  st <font color="Olive" title="b1">p</font> <a href="xxreal_0.html#NR4" title="XXREAL_0:NR.4">&gt;</a> 2 &amp; <font color="Maroon" title="c1">a</font> <a href="int_2.html#K3" title="INT_2:func.3">gcd</a> <font color="Olive" title="b1">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> 1 &amp;  not <font color="Maroon" title="c1">a</font> <a href="int_5.html#R1" title="INT_5:pred.1">is_quadratic_residue_mod</a> <font color="Olive" title="b1">p</font> holds <br/><span class="p1">(<span class="default"><font color="Maroon" title="c1">a</font> <a href="newton.html#K2" title="NEWTON:func.2">|^</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Olive" title="b1">p</font> <a href="nat_d.html#K7" title="NAT_D:func.7">-'</a> 1</span>)</span> <a href="nat_d.html#K3" title="NAT_D:func.3">div</a> 2</span>)</span></span>)</span> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Olive" title="b1">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Olive" title="b1">p</font> <a href="xcmplx_0.html#K6" title="XCMPLX_0:func.6">-</a> 1</span><br/><span class="kw">let </span><font color="Maroon" title="c2">p</font> be   <a href="newton.html#NM1" title="NEWTON:NM.1">Prime</a>; <a class="txt" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> ( <font color="Maroon" title="c2">p</font> <a href="xxreal_0.html#NR4" title="XXREAL_0:NR.4">&gt;</a> 2 &amp; <font color="Maroon" title="c1">a</font> <a href="int_2.html#K3" title="INT_2:func.3">gcd</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> 1 &amp;  not <font color="Maroon" title="c1">a</font> <a href="int_5.html#R1" title="INT_5:pred.1">is_quadratic_residue_mod</a> <font color="Maroon" title="c2">p</font> implies <span class="p1">(<span class="default"><font color="Maroon" title="c1">a</font> <a href="newton.html#K2" title="NEWTON:func.2">|^</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon" title="c2">p</font> <a href="nat_d.html#K7" title="NAT_D:func.7">-'</a> 1</span>)</span> <a href="nat_d.html#K3" title="NAT_D:func.3">div</a> 2</span>)</span></span>)</span> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c2">p</font> <a href="xcmplx_0.html#K6" title="XCMPLX_0:func.6">-</a> 1 )</span><br/>



<span class="kw">assume </span><span class="kw">that </span><br/><a NAME="E1:23"/><span class="lab"><font color="Green" title="E21">A1</font></span>: 
<font color="Maroon" title="c2">p</font> <a href="xxreal_0.html#NR4" title="XXREAL_0:NR.4">&gt;</a> 2
 <span class="kw">and </span><br/><a NAME="E2:23"/><span class="lab"><font color="Green" title="E22">A2</font></span>: 
<font color="Maroon" title="c1">a</font> <a href="int_2.html#K3" title="INT_2:func.3">gcd</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> 1
 <span class="kw">and </span><br/><a NAME="E3:23"/><span class="lab"><font color="Green" title="E23">A3</font></span>: 
 not <font color="Maroon" title="c1">a</font> <a href="int_5.html#R1" title="INT_5:pred.1">is_quadratic_residue_mod</a> <font color="Maroon" title="c2">p</font>
 ; <a class="txt" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> <span class="p1">(<span class="default"><font color="Maroon" title="c1">a</font> <a href="newton.html#K2" title="NEWTON:func.2">|^</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon" title="c2">p</font> <a href="nat_d.html#K7" title="NAT_D:func.7">-'</a> 1</span>)</span> <a href="nat_d.html#K3" title="NAT_D:func.3">div</a> 2</span>)</span></span>)</span> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c2">p</font> <a href="xcmplx_0.html#K6" title="XCMPLX_0:func.6">-</a> 1</span><br/>

<span class="kw">set </span><font color="Maroon" title="c3">l</font> = <font color="Maroon" title="c1">a</font> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Maroon" title="c2">p</font>;<br/>
<span class="kw">reconsider </span><font color="Maroon" title="c4">l</font> = <font color="Maroon" title="c1">a</font> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Maroon" title="c2">p</font> as    <a href="subset_1.html#M2" title="SUBSET_1:mode.2">Element</a> of  <a href="numbers.html#K5" title="NUMBERS:func.5">NAT</a>  <span class="kw">by</span> <span class="lab"><a class="ref" href="int_1.html#T3" title="INT_1:th.3">INT_1:3</a>, <a class="ref" href="int_1.html#T57" title="INT_1:th.57">INT_1:57</a></span>;<br/>
<a NAME="E5:23"/><span class="lab"><font color="Green" title="E24">A4</font></span>: 
<font color="Maroon" title="c4">l</font> <a href="nat_d.html#K4" title="NAT_D:func.4">mod</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c1">a</font> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Maroon" title="c2">p</font>
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="nat_d.html#T65" title="NAT_D:th.65">NAT_D:65</a></span>;<br/>
<a NAME="E6:23"/><span class="kw">then </span><span class="lab"><font color="Green" title="E25">A5</font></span>: 
<font color="Maroon" title="c4">l</font>,<font color="Maroon" title="c1">a</font> <a href="int_1.html#R2" title="INT_1:pred.2">are_congruent_mod</a> <font color="Maroon" title="c2">p</font>
 
<span class="kw">by</span> <span class="lab"><a class="ref" href="nat_d.html#T64" title="NAT_D:th.64">NAT_D:64</a></span>;<br/>
<a NAME="E7:23"/><span class="kw">then </span>
<font color="Maroon" title="c4">l</font> <a href="int_2.html#K3" title="INT_2:func.3">gcd</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> 1
 
<span class="kw">by</span> <span class="lab"><a class="txt" href="#E2:23"><span class="lab"><font color="Green" title="E22">A2</font></span></a>, <a class="ref" href="int_4.html#T14" title="INT_4:th.14">INT_4:14</a></span>;<br/>
<a NAME="E8:23"/><span class="kw">then </span>
<span class="p1">(<span class="default"><font color="Maroon" title="c4">l</font> <a href="newton.html#K15" title="NEWTON:func.15">|^</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon" title="c2">p</font> <a href="nat_d.html#K7" title="NAT_D:func.7">-'</a> 1</span>)</span> <a href="nat_d.html#K3" title="NAT_D:func.3">div</a> 2</span>)</span></span>)</span> <a href="nat_d.html#K4" title="NAT_D:func.4">mod</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c2">p</font> <a href="xcmplx_0.html#K6" title="XCMPLX_0:func.6">-</a> 1
 
<span class="kw">by</span> <span class="lab"><a class="txt" href="#E1:23"><span class="lab"><font color="Green" title="E21">A1</font></span></a>, <a class="txt" href="#E3:23"><span class="lab"><font color="Green" title="E23">A3</font></span></a>, <a class="txt" href="#E6:23"><span class="lab"><font color="Green" title="E25">A5</font></span></a>, <a class="ref" href="int_5.html#T11" target="_self" title="INT_5:th.11">Th11</a>, <a class="ref" href="int_5.html#T18" target="_self" title="INT_5:th.18">Th18</a></span>;<br/>
<span class="kw">hence </span><a NAME="E9:23"/>
<span class="p1">(<span class="default"><font color="Maroon" title="c1">a</font> <a href="newton.html#K2" title="NEWTON:func.2">|^</a> <span class="p2">(<span class="default"><span class="p3">(<span class="default"><font color="Maroon" title="c2">p</font> <a href="nat_d.html#K7" title="NAT_D:func.7">-'</a> 1</span>)</span> <a href="nat_d.html#K3" title="NAT_D:func.3">div</a> 2</span>)</span></span>)</span> <a href="int_1.html#K6" title="INT_1:func.6">mod</a> <font color="Maroon" title="c2">p</font> <a href="hidden.html#R1" title="HIDDEN:pred.1">=</a> <font color="Maroon" title="c2">p</font> <a href="xcmplx_0.html#K6" title="XCMPLX_0:func.6">-</a> 1
 <span class="kw">by</span> <span class="lab"><a class="txt" href="#E5:23"><span class="lab"><font color="Green" title="E24">A4</font></span></a>, <a class="ref" href="int_5.html#T13" target="_self" title="INT_5:th.13">Th13</a></span>; <a class="txt" onclick="hs(this)" href="javascript:()"><span class="comment"><font color="firebrick">::  thesis: </font></span></a><span class="hide"> verum</span><br/>


</div>
