Difference between revisions of "Proofs without words"

(Miscellaneous: enough for now)
(+ couple more)
Line 1: Line 1:
 
The following demonstrate [[proof]]s of various identities and theorems using pictures, inspired from [http://usamts.org/Gallery/G_Gallery.php this gallery].
 
The following demonstrate [[proof]]s of various identities and theorems using pictures, inspired from [http://usamts.org/Gallery/G_Gallery.php this gallery].
  
 +
<!--
 +
(1+2+ .. n)^2 = 1^3 + .. + n^3
 +
TWO WAYS: show that n^3 = odd number sum
 +
        : USAMTS method
 +
 +
pentagonal = 3 * triangular + n
 +
 +
fibonacci f_1^2 + .. f_n^2 = f_{n+1}f_{n}
 +
 +
hockey stick?
 +
 +
 +
1/2 + 1/4 + ... = 1
 +
 +
1 + r + r^2 + ... = 1/(1-r)
 +
 +
 +
geometry:
 +
Pythagorean Theorem (multiple ways - 5?)
 +
 +
shortest line
 +
 +
smallest triangle in angle
 +
 +
equilateral triangle in three lines
 +
 +
Fermat point problem
 +
 +
Fagnano problem
 +
 +
parallelogram = cross-product
 +
 +
trapezoid ABCD with AC perp BD <==> (AB + CD)^2 = AC^2 + BD^2
 +
 +
regular heptagon identity?
 +
 +
dodecagon = 3R^2
 +
 +
A = rs
 +
 +
Law of Cosines
 +
 +
Law of Sines
 +
 +
radical axes/homotheties?
 +
 +
 +
misc.
 +
3D QM-GM
 +
 +
Jensen's inequality (draw curve, multiple points)
 +
 +
Minkowski's inequality
 +
 +
rt(a^2 - ab + b^2) rt(b^2 - bc + c^2) < rt(a^2 + ac + c^2)
 +
 +
integration by parts
 +
 +
Homeomorphism between S^1 - (1,0) to R
 +
cardinality of interval with R
 +
 +
-->
 
== Summations ==
 
== Summations ==
 
<center><asy>unitsize(15); defaultpen(linewidth(0.7));
 
<center><asy>unitsize(15); defaultpen(linewidth(0.7));
Line 69: Line 131:
  
 
The sum of the first <math>n</math> positive integers is <math>n(n+1)/2</math>.<br><br>
 
The sum of the first <math>n</math> positive integers is <math>n(n+1)/2</math>.<br><br>
 +
</center>
 +
 +
<center><asy>unitsize(15); defaultpen(linewidth(0.7));
 +
int n = 6; real r = 0.35, h = 3/4; /* radius size and horizontal spacing */
 +
pair shiftR = (h*(n+1)+r, 0);
 +
 +
pen colors(int i){  /* shading */
 +
if(i == n) return red;
 +
return rgb(5/n,0.4+5/(2n),1-5/n);
 +
}
 +
void htick(pair A, pair B, pair ticklength = (0.15,0)){
 +
draw(A--B ^^ A-ticklength--A+ticklength ^^ B-ticklength--B+ticklength);
 +
}
 +
void makeshiftarrow(pair A, real dir, real arrowlength = r){  /* Arrow option resizes */
 +
  fill(A--A+arrowlength*expi(dir+pi/6)--A+arrowlength*expi(dir-pi/6)--cycle);
 +
}
 +
pair getCenter(int i, int j){ return ((2*j-i)*h,-i);}
 +
 +
/* triangle */
 +
for(int i = 0; i < n+1; ++i){
 +
draw((-i*h,-i)--(i*h,-i));  /* horizontal lining */
 +
for(int j = 0; j <= i; ++j)
 +
  filldraw(circle(getCenter(i,j),r), colors(i));
 +
}
 +
 +
/* fill in circle in row 4, column 3 */
 +
filldraw(circle(getCenter(3,2),r),blue);
 +
draw(getCenter(n,2)-- getCenter(3,2)-- getCenter(n,n+2-3));
 +
makeshiftarrow(getCenter(n,2),pi/4,0.5); makeshiftarrow(getCenter(n,n+2-3),3*pi/4,0.5);
 +
 +
htick(shiftR+(-1,r),shiftR+(-1,-n+1-r)); label("$n$",shiftR+(-1,(-n+1)/2),E,fontsize(10));
 +
</asy><br>
 +
 +
The sum of the first <math>n</math> positive integers is <math>{n+1 \choose 2}</math>.{{ref|1}}<br><br>
 
</center>
 
</center>
  
 
== Geometric series ==
 
== Geometric series ==
<!--<center><asy></asy>
+
<center><asy>defaultpen(linewidth(0.7)); unitsize(15);
 +
int n = 10;  /* # of iterations */
 +
real s = 6; /* square size */
 +
pair shiftR = (s+2,0); pen sm = fontsize(10);
 +
void fillrect(pair A, pair B = (0,0), pen p = invisible, pen l = linewidth(1)){ filldraw(A--(A.x,B.y)--B--(B.x,A.y)--cycle, p, l); }
 +
void htick(pair A, pair B, pair ticklength = (0,0.15)){ draw(A--B ^^ A-ticklength--A+ticklength ^^ B-ticklength--B+ticklength); }
 +
 
 +
for(int i = 0; i < 2; ++i) /* left */
 +
fillrect((s/2^(ceil(i/2)),s/2^(floor(i/2))));
 +
for(int i = 0; i < n; ++i) /* right */
 +
fillrect(shiftR,shiftR + (s/2^(ceil(i/2)),s/2^(floor(i/2))));
 +
label("$\frac 12$",(s*3/4,s/2),sm); label("$\cdots$",(s*1/4,s/2),sm);
 +
label("$\frac 12$",shiftR+(s*3/4,s/2),sm); label("$\cdots$",shiftR+(s*1/4,s/2),sm);
 +
label("$\frac 14$",shiftR+(s*1/4,s*3/4),sm); label("$\frac 18$",shiftR+(s*3/8,s/4),sm);
 +
htick((0,-1), (s,-1)); htick(shiftR + (0,-1), shiftR + (s,-1));
 +
label("$1$",(s/2,-1),S,sm); label("$1$",shiftR+(s/2,-1),S,sm);
 +
</asy>
 
The infinite [[geometric series]] <math>\frac 12 + \frac {1}{2^2} + \frac {1}{2^3} + \cdots = 1</math>.<br><br>
 
The infinite [[geometric series]] <math>\frac 12 + \frac {1}{2^2} + \frac {1}{2^3} + \cdots = 1</math>.<br><br>
</center>-->
+
</center>
  
 
<center><asy> defaultpen(linewidth(0.7)); unitsize(15);
 
<center><asy> defaultpen(linewidth(0.7)); unitsize(15);
Line 100: Line 212:
 
<center><asy> defaultpen(linewidth(0.7)); unitsize(15);
 
<center><asy> defaultpen(linewidth(0.7)); unitsize(15);
 
int n = 10; real h = 6; pen colors[] = {rgb(0.9,0,0),rgb(0,0.9,0),rgb(0,0,0.9)};
 
int n = 10; real h = 6; pen colors[] = {rgb(0.9,0,0),rgb(0,0.9,0),rgb(0,0,0.9)};
 +
pair shiftR = (h+3,0);
  
 
void drawEquilaterals(pair A, real s){
 
void drawEquilaterals(pair A, real s){
Line 108: Line 221:
  
 
for(int i = 0; i < n; ++i)
 
for(int i = 0; i < n; ++i)
  drawEquilaterals( (0,h-h/(2^i) ), (h/(2^(i+1))) *2/3^.5);
+
  drawEquilaterals(shiftR + (0,h-h/(2^i) ), (h/(2^(i+1))) *2/3^.5);
 +
drawEquilaterals((0,0), h/3^.5); draw((-h/3^.5,0)--(h/3^.5,0)--(0,h)--cycle); label("$\vdots$",(0,3/4*h));
 
</asy><br>
 
</asy><br>
  
Line 187: Line 301:
 
label("$a$",((-r+A.x)/2,-1),S); label("$b$",((r+A.x)/2,-1),S);
 
label("$a$",((-r+A.x)/2,-1),S); label("$b$",((r+A.x)/2,-1),S);
 
</asy><!--[[Image:RMS-AM-GM-HM.gif]]--><br>
 
</asy><!--[[Image:RMS-AM-GM-HM.gif]]--><br>
The [[Root-Mean Square-Arithmetic Mean-Geometric Mean-Harmonic mean Inequality]].<br><br>
+
The [[Root-Mean Square-Arithmetic Mean-Geometric Mean-Harmonic mean Inequality]].{{ref|2}}<br><br>
 
</center>
 
</center>
  
Line 223: Line 337:
 
</center>
 
</center>
  
 +
== References ==
 +
#{{note|1}} MathOverflow
 +
#{{note|2}} This is more of a proof without words of the [[AM-GM]] inequality <math>\frac{a+b}{2} \ge \sqrt{ab}</math>; though the lengths of the segments labeled RMS and HM can easily be verified to have values of <math>\sqrt{\frac{a^2+b^2}{2}}, \frac{2}{\frac 1a + \frac 1b}</math>, respectively, it might not be obvious from the diagram. It still serves as a useful graphical demonstration of the inequality.
  
 
[[Category:Proofs]]
 
[[Category:Proofs]]

Revision as of 23:16, 20 March 2010

The following demonstrate proofs of various identities and theorems using pictures, inspired from this gallery.

Summations

[asy]unitsize(15); defaultpen(linewidth(0.7)); int n = 6; pair shiftR = ((n+2),0); real r = 0.3; pen colors(int i){ return rgb(i/n,0.4+i/(2n),1-i/n); } /* shading */ void htick(pair A, pair B,pair ticklength = (0.15,0)){  draw(A--B);  draw(A-ticklength--A+ticklength);  draw(B-ticklength--B+ticklength); }   /* triangle */ draw((-r,0)--(-r,-n+1)^^(r,-n+1)--(r,0),linetype("4 4")); for(int i = 0; i < n; ++i)  draw((-i,-i)--(i,-i)); for(int i = 0; i < n; ++i)  for(int j = 0; j < 2*i+1; ++j)   filldraw(CR((j-i,-i),r),colors(i));   /* square */ draw(r*expi(pi/4)+shiftR--(n-1,-n+1)+r*expi(pi/4)+shiftR^^r*expi(5*pi/4)+shiftR--r*expi(5*pi/4)+(n-1,-n+1)+shiftR,linetype("4 4")); for(int i = 0; i < n; ++i)  draw(shiftR+(0,-i)--shiftR+(i,-i)--shiftR+(i,0)); for(int i = 0; i < n; ++i)  for(int j = 0; j < n; ++j)   filldraw(CR((j,-i)+shiftR,r),colors((i>j)?i:j));  htick(shiftR+(-1,r),shiftR+(-1,-n+1-r)); label("$n$",shiftR+(-1,(-n+1)/2),W,fontsize(10)); [/asy]

The sum of the first $n$ odd natural numbers is $n^2$.

[asy] defaultpen(linewidth(0.7)); unitsize(15); int n = 6; pair shiftR = ((n+2),0); real r = 0.3; pen colors(int i){ return rgb(0.4+i/(2n),i/n,1-i/n); } /* shading */ void htick(pair A, pair B,pair ticklength = (0.15,0)){  draw(A--B);  draw(A-ticklength--A+ticklength);  draw(B-ticklength--B+ticklength); }   /* triangle */ draw((0.5,0)--(n-0.5,-n+1),linetype("4 4")); for(int i = 0; i < n; ++i)  draw((0,-i)--(i,-i)); for(int i = 0; i < n; ++i)  for(int j = 0; j <= i; ++j)   filldraw(CR((j,-i),r),colors(i));    /* arc arrow */ draw( arc((n,-n+1)/2, (1.5,-1.5), (n-1.5,-1.5), CW) ); fill((n-1.5,-1.5) -- (n-1.5,-1.5)+r*expi(5.2*pi/6) -- (n-1.5,-1.5)+r*expi(3.3*pi/6) -- cycle); /* manual arrowhead? avoid resizing */   /* square */ draw(shiftR+(0.5,0)--shiftR+(n-0.5,-n+1),linetype("4 4")); for(int i = 0; i < n; ++i)  draw(shiftR+(0,-i)--shiftR+(i,-i)^^shiftR+(n,-n+1)-(0,-i)--shiftR+(n,-n+1)-(i,-i)); for(int i = 0; i < n; ++i)  for(int j = 0; j < n+1; ++j)   filldraw(CR((j,-i)+shiftR,r),colors((j <= i) ? i : n-1-i));   /* labeling and ticks */ htick(shiftR+(-1,r),shiftR+(-1,-n+1-r)); label("$n$",shiftR+(-1,(-n+1)/2),W,fontsize(10)); htick(shiftR+(-r,-n),shiftR+(n+r-1,-n),(0,0.15)); label("$n$",shiftR+((n-1)/2,-n),S,fontsize(10)); htick(shiftR+(n-r,-n),shiftR+(n+r,-n),(0,0.15)); label("$1$",shiftR+(n,-n),S,fontsize(10)); [/asy]

The sum of the first $n$ positive integers is $n(n+1)/2$.

[asy]unitsize(15); defaultpen(linewidth(0.7)); int n = 6; real r = 0.35, h = 3/4; /* radius size and horizontal spacing */ pair shiftR = (h*(n+1)+r, 0);  pen colors(int i){  /* shading */  if(i == n) return red;   return rgb(5/n,0.4+5/(2n),1-5/n);  }  void htick(pair A, pair B, pair ticklength = (0.15,0)){   draw(A--B ^^ A-ticklength--A+ticklength ^^ B-ticklength--B+ticklength);  } void makeshiftarrow(pair A, real dir, real arrowlength = r){  /* Arrow option resizes */   fill(A--A+arrowlength*expi(dir+pi/6)--A+arrowlength*expi(dir-pi/6)--cycle); } pair getCenter(int i, int j){ return ((2*j-i)*h,-i);}   /* triangle */ for(int i = 0; i < n+1; ++i){  draw((-i*h,-i)--(i*h,-i));   /* horizontal lining */  for(int j = 0; j <= i; ++j)   filldraw(circle(getCenter(i,j),r), colors(i)); }   /* fill in circle in row 4, column 3 */ filldraw(circle(getCenter(3,2),r),blue); draw(getCenter(n,2)-- getCenter(3,2)-- getCenter(n,n+2-3));  makeshiftarrow(getCenter(n,2),pi/4,0.5); makeshiftarrow(getCenter(n,n+2-3),3*pi/4,0.5);   htick(shiftR+(-1,r),shiftR+(-1,-n+1-r)); label("$n$",shiftR+(-1,(-n+1)/2),E,fontsize(10)); [/asy]

The sum of the first $n$ positive integers is ${n+1 \choose 2}$.[1]

Geometric series

[asy]defaultpen(linewidth(0.7)); unitsize(15); int n = 10;  /* # of iterations */ real s = 6; /* square size */ pair shiftR = (s+2,0); pen sm = fontsize(10); void fillrect(pair A, pair B = (0,0), pen p = invisible, pen l = linewidth(1)){ filldraw(A--(A.x,B.y)--B--(B.x,A.y)--cycle, p, l); } void htick(pair A, pair B, pair ticklength = (0,0.15)){ draw(A--B ^^ A-ticklength--A+ticklength ^^ B-ticklength--B+ticklength); }  for(int i = 0; i < 2; ++i) /* left */  fillrect((s/2^(ceil(i/2)),s/2^(floor(i/2)))); for(int i = 0; i < n; ++i) /* right */  fillrect(shiftR,shiftR + (s/2^(ceil(i/2)),s/2^(floor(i/2)))); label("$\frac 12$",(s*3/4,s/2),sm); label("$\cdots$",(s*1/4,s/2),sm);  label("$\frac 12$",shiftR+(s*3/4,s/2),sm); label("$\cdots$",shiftR+(s*1/4,s/2),sm);  label("$\frac 14$",shiftR+(s*1/4,s*3/4),sm); label("$\frac 18$",shiftR+(s*3/8,s/4),sm);  htick((0,-1), (s,-1)); htick(shiftR + (0,-1), shiftR + (s,-1)); label("$1$",(s/2,-1),S,sm); label("$1$",shiftR+(s/2,-1),S,sm); [/asy]

The infinite geometric series $\frac 12 + \frac {1}{2^2} + \frac {1}{2^3} + \cdots = 1$.

[asy] defaultpen(linewidth(0.7)); unitsize(15); int n = 4; real h = 2; pen colors[] = {rgb(0.8,0,0),rgb(0,0.8,0)}; void drawTriGrid(real s){  for(int i = 0; i < 4; ++i){   draw( (-s*3/2,s*(3/2 - i)) -- (s*3/2,s*(3/2 - i)), linetype("2 2"));   draw( (s*(3/2 - i),-s*3/2) -- (s*(3/2 - i),s*3/2), linetype("2 2"));   } } void fillrect(pair A, pair B, pen p){ filldraw(A--(A.x,B.y)--B--(B.x,A.y)--cycle, p, linewidth(1)); }  for(int i = 0; i < n; ++i) {  fillrect( ((-1)^i*-h/3^i*(3/2),-h/3^i*(3/2)) , ((-1)^i*-h/3^i*(1/2),h/3^i*(3/2)) , colors[0]);  fillrect(-((-1)^i*-h/3^i*(3/2),-h/3^i*(3/2)) ,-((-1)^i*-h/3^i*(1/2),h/3^i*(3/2)) , colors[1]);  fillrect( (-h/3^i*(1/2),(-1)^i*h/3^i*(1/2)) , (h/3^i*(1/2),(-1)^i*h/3^i*(3/2)), colors[0]);  fillrect(-(-h/3^i*(1/2),(-1)^i*h/3^i*(1/2)) ,-(h/3^i*(1/2),(-1)^i*h/3^i*(3/2)), colors[1]);  drawTriGrid(h/3^i); } [/asy]

The infinite geometric series $\frac 13 + \frac {1}{3^2} + \frac {1}{3^3} + \cdots = \frac 12$.

[asy] defaultpen(linewidth(0.7)); unitsize(15); int n = 10; real h = 6; pen colors[] = {rgb(0.9,0,0),rgb(0,0.9,0),rgb(0,0,0.9)}; pair shiftR = (h+3,0);  void drawEquilaterals(pair A, real s){  filldraw(A--A+s*expi(2*pi/3)--A+(-s,0)--cycle,colors[0]);  filldraw(A--A+s*expi(2*pi/3)--A+s*expi(1*pi/3)--cycle,colors[1]);   filldraw(A--A+s*expi(1*pi/3)--A+(s,0)--cycle,colors[2]); }  for(int i = 0; i < n; ++i)  drawEquilaterals(shiftR + (0,h-h/(2^i) ), (h/(2^(i+1))) *2/3^.5); drawEquilaterals((0,0), h/3^.5); draw((-h/3^.5,0)--(h/3^.5,0)--(0,h)--cycle); label("$\vdots$",(0,3/4*h)); [/asy]

The infinite geometric series $\frac 14 + \frac {1}{4^2} + \frac {1}{4^3} + \cdots = \frac 13$.

[asy] defaultpen(linewidth(1)); unitsize(15); int n = 8;  /* number of layers */ real h = 3; /* square height */  pen colors[] = {rgb(0.8,0,0),rgb(0,0.8,0),rgb(0,0,0.8)};  pair shiftL = (-3*h,0); /* amount to shift second square left by */  void drawSquares(real s, pair A = (0,0)){  filldraw(shift(A)*shift(-2*s,  -s)*xscale(s)*yscale(s)*unitsquare,colors[0]);  filldraw(shift(A)*shift(-2*s,-2*s)*xscale(s)*yscale(s)*unitsquare,colors[1]);  filldraw(shift(A)*shift(-s  ,-2*s)*xscale(s)*yscale(s)*unitsquare,colors[2]); } for(int i = 0; i < n; ++i)  drawSquares(h/2^i); drawSquares(h,shiftL); draw(shift(shiftL+(-2*h,-2*h))*xscale(2*h)*yscale(2*h)*unitsquare); label("$\cdots$",shiftL+(-h/2,-h/2)); [/asy]

Another proof of the identity $\frac 14 + \frac {1}{4^2} + \frac {1}{4^3} + \cdots = \frac 13$.

Geometry

Miscellaneous

[asy]unitsize(15); defaultpen(linewidth(0.7)); real a=2.5,b=5,s=a+b; pen colors[] = {rgb(0.9,0.2,0.2), rgb(0.2,0.9,0.2), rgb(0.2,0.2,0.9)}; pen sm = fontsize(8); void fillrect(pair A, pair B, pen p = invisible, pen l = linewidth(1)){ filldraw(A--(A.x,B.y)--B--(B.x,A.y)--cycle, p, l); } void htick(pair A, pair B, pair ticklength = (0.2,0)){  draw(A--B);  draw(A-ticklength--A+ticklength);  draw(B-ticklength--B+ticklength); }  fillrect((0,0),(s,s)); fillrect((a,b),(s,s),colors[0]); filldraw((0,a)--(a,a)--(s/2,s/2)--(a,b)--(a,s)--(0,s)--cycle,colors[1],linewidth(1)); filldraw((0,0)--(b,0)--(b,b)--(a,a)--(0,a)--cycle,colors[2],linewidth(1)); draw((0,0)--(a,a),linewidth(1));  draw((s/2,s/2)--(b,a)--(a,a)--(a,b),linewidth(0.7)+linetype("4 2")); htick((s+1,0),(s+1,b)); htick((s+1,b),(s+1,s));   /* in labels, a,b swapped */ label("$a$",(s+1,b/2),E);label("$b$",(s+1,(s+b)/2),E); label("$ab$",(a+s,b+s)/2,sm); label("$\frac{(a+b)^2}{4}$",(a,a+s)/2,sm); label("$\frac{a^2}2$",(s/2,a*2/3),sm); label("$\frac{b^2}2$",(a/4,a*2/3),sm);  [/asy]
The Root-Mean Square-Arithmetic Mean-Geometric Mean inequality, $\color{red}{ab} \color{black} \le \color{green} \frac{(a+b)^2}{4} \color{black} \le \color{blue} \frac{a^2 + b^2}{2}$.

[asy] unitsize(15); defaultpen(linewidth(0.7)); void htick(pair A, pair B,pair ticklength = (0,0.15)){  draw(A--B);  draw(A-ticklength--A+ticklength);  draw(B-ticklength--B+ticklength); } real a=10,b=3,r=(a+b)/2; pen sm = fontsize(8), dark = linewidth(1); pen colors[] = {rgb(0.9,0.2,0.2) + dark,    /* GM */                 rgb(0.2,0.9,0.2) + dark,    /* AM */                 rgb(0.2,0.2,0.9) + dark,    /* QM */                 rgb(0.2,0.9,0.9) + dark };  /* HM */ pair A = (r-b,(r^2-(r-a)^2)^.5),B=foot((A.x,0),(0,0),A);  draw(arc((0,0),r,0,180)--cycle); dot(A); dot((0,r)); dot((A.x,0)); dot((0,0)); draw(B--A,colors[3]);           label("HM",(A+B)/2, E, sm+colors[3]); draw((0,0)--(0,r),colors[1]);   label("AM",(0,r*2/3), NW, sm+colors[1]);  draw((A.x,0)--A,colors[0]);     label("GM",(A.x,A.y/2), SE, sm+colors[0]);  draw((A.x,0)--(0,r),colors[2]); label("RMS",(A.x/5,r*4/5), NE, sm+colors[2]);    draw((-r,0)--A--(r,0), linetype("4 2")); draw((0,0)--B--(A.x,0), linetype("4 2")); draw(rightanglemark((-r,0),A,(r,0))); draw(rightanglemark((0,0),B,(A.x,0)));  htick((-r,-1),(A.x,-1)); htick((A.x,-1),(r,-1)); label("$a$",((-r+A.x)/2,-1),S); label("$b$",((r+A.x)/2,-1),S); [/asy]

The Root-Mean Square-Arithmetic Mean-Geometric Mean-Harmonic mean Inequality.[2]

[asy] unitsize(15); defaultpen(linewidth(0.7)); real r = 0.3, row1 = 3.5, row2 = 0, row3 = -3.5; void necklace(pair k, pen colors[]){  draw(shift(k)*unitcircle);   for(int i = 0; i < colors.length; ++i){   pair p = k+expi(pi/2+2*pi*i/colors.length);   fill(Circle(p,r),colors[i]);   draw(Circle(p,r));  } } void htick(pair A, pair B,pair ticklength = (0.15,0)){  draw(A--B);  draw(A-ticklength--A+ticklength);  draw(B-ticklength--B+ticklength); }   /* draw necklaces */ pen BEADS1[] = {red,red,red},BEADS2[] = {blue,blue,blue},BEADS3[] = {red,red,blue},BEADS4[] = {blue,red,red},BEADS5[] = {red,blue,red},BEADS6[] = {blue,blue,red},BEADS7[] = {red,blue,blue},BEADS8[] = {blue,red,blue};  necklace((-10,(row2+row3)/2),BEADS1);necklace((-7.5,(row2+row3)/2),BEADS2);  necklace((-2.5,row2),BEADS3);necklace((0,row2),BEADS4);necklace((2.5,row2),BEADS5); necklace((-2.5,row3),BEADS6);necklace((0,row3),BEADS7);necklace((2.5,row3),BEADS8);   /* box them and label */ draw((-4,row2-1.3)--(4,row2-1.3)--(4,row2+1.6)--(-4,row2+1.6)--cycle,linewidth(0.9)+linetype("4 2")); draw((-4,row3-1.3)--(4,row3-1.3)--(4,row3+1.6)--(-4,row3+1.6)--cycle,linewidth(0.9)+linetype("4 2")); htick((-4,row2+2),(4,row2+2),(0,0.15)); label("$p$",(0,row2+2),N,fontsize(10));  htick((-11.5,(row2+row3)/2+2),(-6,(row2+row3)/2+2),(0,0.15)); label("$a$",(-17.5/2,(row2+row3)/2+2),N,fontsize(10));  [/asy]

Fermat's Little Theorem: $a^p \equiv a \pmod{p}$ for $\text{gcd}\,(a,p) = 1$ (above $a=2,p=3$).

References

  1. ^ MathOverflow
  2. ^ This is more of a proof without words of the AM-GM inequality $\frac{a+b}{2} \ge \sqrt{ab}$; though the lengths of the segments labeled RMS and HM can easily be verified to have values of $\sqrt{\frac{a^2+b^2}{2}}, \frac{2}{\frac 1a + \frac 1b}$, respectively, it might not be obvious from the diagram. It still serves as a useful graphical demonstration of the inequality.