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 (Wikipedia) in the Poplog system (Wikipedia).

Aaron Sloman

For more examples of "Wordless" proofs, see
    Roger B. Nelsen,
    Proofs without words: Exercises in Visual Thinking,
    Mathematical Association of America, Washington DC, 1993,
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.

Then another square is constructed below, 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 contains the four triangles plus the square on the hypotenuse,
whereas the lower square contains 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 VIDEOS
There is a silent version of the video, and a version with a spoken commentary, which
is also on Youtube, here http://youtu.be/0ZbB_-ip9VU

__________________________________________________________________________________

Does the validity of the proof 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? See
http://www.cs.bham.ac.uk/research/projects/cogaff/misc/toddler-theorems.html
Meta-Morphogenesis and Toddler Theorems: Case Studies
__________________________________________________________________________________

The program code
The code that generated the video can be found in a Pop-11 library file, based on the
RC_GRAPHIC extension to Pop-11.
The pythagoras demo code (in Pop-11 extended by RC_LIB) 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 the .agi and .webm
formats using the ffmpeg program on linux.
__________________________________________________________________________________

NOTE ADDED 24 Mar 2014:

Pat Hayes has just drawn my attention to this paper discussing this proof.
Patrick J. Hayes, Geoffrey L. LaForte,
"Diagrammatic Reasoning: Analysis of an Example", in
Papers from the 1998 Fall Symposium
Formalizing Reasoning with Visual and Diagrammatic Representations pp.33-38
Gerard Allwein, Kim Marriott, Bernd Meyer, Program Cochairs
Technical Report FS-98-04. The AAAI Press, Menlo Park, California
The paper is downloadable via the link to the abstract here:
http://www.aaai.org/Library/Symposia/Fall/fs98-04.php
The paper makes many important points. But I think this exaggerates:
    Everyone seems to have a definite `aha!' experience after which
    the demonstration seems convincingly sound.
Not everyone! Up to a certain stage of cognitive development a child will not be
able to understand such a proof. Exactly what has to change, and how biological
evolution made that sort of development possible is among the questions raised in
the Meta-Morphogenesis project, including discussion of "Toddler Theorems"
mentioned above:
http://www.cs.bham.ac.uk/research/projects/cogaff/misc/toddler-theorems.html
__________________________________________________________________________________

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 programming 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; 24 Mar 2014; added .webm version of video.
30 Mar 2014 version with spoken commentary added. Also on Youtube.