THE UNIVERSITY OF BIRMINGHAM
School of Computer Science
THE COGNITION AND AFFECT PROJECT


An almost wordless video proof of pythagoras' theorem
Demonstrated using a 2-D graphical display generated using the
Pop-11 programming language in the Poplog system.

Aaron Sloman

If you run the video below you will see a variant of the 'Chinese' proof of Pythagoras theorem.

Steps in the proof
The proof depends on your being able to see that two squares must have the same total area
even though they are divided up in different ways.

The proof is constructed starting from a red right-angled triangle.

pythag1
A white square is drawn on each side.

What has to be proved is that the area of the square on the longest side (the hypotenuse,
opposite the right angle) is the same as the sum of the areas of the two squares drawn
on the shorter sides.

To show this, three more copies of the original triangle are drawn, each attached to a
side of the biggest square (the square on the hypotenuse).


The added triangles together form a big new square containing the square on the hypotenuse plus the four triangles.

After that another square is constructed, using only the two squares on the shorter sides of the triangle.
(one of the smaller squares has to be copied to a new location to form part of the new square).
pythag1

Then new copies of the original triangle are moved down and combined with the two smaller
squares to form a second big square.

pythag1

So then we have two big squares, obviously of the same size. But:

The top square is composed of the four triangles plus the square on the hypotenuse
Whereas the lower square is composed of the four triangles (differently arranged)
plus the two squares on the shorter sides of the original triangle.

If the two big squares have the same area, removing the same thing from both will leave
the same area.

Removing the four copies of the original triangle from the upper big square, leaves the
(green) square on the hypotenuse of the red triangle.

Removing the four copies of the original triangle from the lower big square, leaves the
two (blue) squares on the smaller sides of the original triangle.


THE MOVIE
Warning: if you are using a wide screen you may need to shrink the width of your browser window, to
prevent the browser display program stretching the video sideways so that squares shown in the figures
above look like rectangles or parallelograms.

Click here to run a movie presenting the above proof (pythag.ogv 2.5M)
If that does not work, try this version (pythag.avi 1.5M).


Or you can download the movies and run them locally.
Or get Poplog and do lots more using Pop-11.


Does it depend on the size or shape of the original triangle?
We can see that the construction will work no matter what the shape or size or orientation
of the original triangle. This is illustrated by continuously varying the shape of the triangle,
to show that no matter what the shape is the proof will still work.

pythag1
pythag1


QUESTIONS
What sort of brain is required in order to be able to go from perceiving
the top figure to thinking about all the transformations shown here?

Could a robot be made to think this sort of thing up one day?
Or even to understand it when shown this web site?

Could you understand it when you were born?
What had to change after you were born, to enable you to understand a proof like this?


The program code
The code that generated the movie can be found in a Pop-11 library file, based on the
RC_GRAPHIC extension to Pop-11.
The pythagoras demo code is here:
http://www.cs.bham.ac.uk/research/projects/poplog/packages/current/rclib/lib/rc_pythagoras.p

More information about what can be done with Pop-11 in an educational context is here.

Creating the video
The video was created by running the program on a PC running linux, and recording the display using recordmydesktop.

That produced a video in .ogv format, which was compressed to .avi format using the ffmpeg program on linux.


Acknowledgement (Inspiration)
This demo was originally inspired by a slightly different demo produced using a Java applet,
showing a process proof of Pythagoras' theorem, written by Norman Foo in Sydney, Australia.


There are more online video tutorials illustrating features of Pop-11 and AI programmin on Youtube: http://www.youtube.com/user/aaronsloman

This file is maintained by Aaron Sloman,
Email A.Sloman@cs.bham.ac.uk
Installed: 4 Nov 2010
Updated: 11 Dec 2011