Mohi-Al-Deen Technologies

In the name of Allah, Most Beneficent, Most Merciful

Home     Contact Us     About Us     Site Map     Privacy Policy     Left Global Concern      
04_04_2009 

Geogebra as research aid

 

Edward Chesky1, Ivan Alexander2, Mohideen Ibramsha3

1.        Edward A. Chesky Jr., Site Supervisor, Wackenhut Corporation, Hartford, CT – 06183, USA

2.        Ivan Alexander, Independent Researcher, USA

3.        Mohideen Ibramsha, Manager, Mohi-Al-Deen technologies, LLC,

8720 Windsor Lake Blvd, #601, Columbia, SC
– 29223, USA

 

Introduction: During the late 20th century and the early 21st century India became a power house in software development. We believe this happened because India embarked on an educational program producing a large number of B.E.s and M.C.A.s. Both these programs require mathematical skill. Both had emphasis on programming, developing a machine-executable version of a specification. Program development requires deductive reasoning. Now the field of software development is moving away from programming to developing specifications. Specifications involve generalization from examples. In other words the future software development requires skill in inductive reasoning.

 

One educational tool recently introduced is GeoGebra. This allows interaction using pictorial inputs and algebraic expressions. We give references to sources of GeoGebra system and also to articles explaining its use. Since the need of future is inductive reasoning, we give an instant of using GeoGebra in research. A challenging problem in geometry is to develop a procedure to convert a given circle to a square of equal area. The mathematical prodigy Ramanujam solved this. We have solved the inverse problem of finding a circle for a given square. It is further demonstrated that for functions with inverse, it is possible to use the value of the function and its inverse to get greater accuracy.

 

We hope that GeoGebra would find extensive use among our school and college students. We expect that our computer experts would develop the GeoGebra system and its extensions in multiple languages in conformance with the educational system in India.

 

Literature: Aykan Kursat Erbas [1] in a dissertation towards Ph.D. states:

The value of algebra goes beyond academic study. Algebraic literacy is also a medium for social justice and job and later opportunities.

 

Like Aykan, John Cyril Ridd [2] in his Ph.D. dissertation considers the contribution of algebra for ‘problem solving.’

Here the consequence of algebraic literacy is that not only are all questions involving cost price, selling price and percentage profit or loss all possible, but they can all be solved by the same approach: form an equation, substitute the information and solve. Because that general approach is applicable to an enormous variety of situations, the implications of algebraic literacy are so large as to become a fundamental change in a student's approach to mathematics, in particular to 'problem solving.'

 

Notwithstanding the importance of algebra, mass literacy in algebra is lacking. Marya D [3] gives the following explanation.

When industrialization was taking place, universal literacy became important for progress. What “literacy” meant for math, back then, was basic arithmetic. Now it looks like the civilization needs, among other things, mass algebraic literacy to progress and to solve its problems. Governments have been working toward that goal, by their usual means (influencing school curricula). Despite this mass algebra instruction, we don’t see mass algebraic literacy.

 

I think one of the reasons why we don’t see mass algebraic literacy is that algebra isn’t viewed as something you MESS with. Kids doodle or compose texts for their myspace, but they don’t MAKE (construct, create, build) any algebra entities, ever.

 

A system to ‘mess with algebra’ is GeoGebra. A brief description from the ‘about’ page [4] of the GeoGebra web is given below.

GeoGebra is a dynamic mathematics software for schools that joins geometry, algebra and calculus.

 

On the one hand, GeoGebra is an interactive geometry system. You can do constructions with points, vectors, segments, lines, conic sections as well as functions and change them dynamically afterwards.

 

On the other hand, equations and coordinates can be entered directly. Thus, GeoGebra has the ability to deal with variables for numbers, vectors and points, finds derivatives and integrals of functions and offers commands like Root or Extremum.

 

These two views are characteristic of GeoGebra: an expression in the algebra window corresponds to an object in the geometry window and vice versa.

 

Research is facilitated by a system that helps answer ‘what if?’ questions. GeoGebra is designed to mess with algebra. Thus using GeoGebra helps the students learn and practice inductive reasoning.

 

Research using GeoGebra: Algebra has infinite precision. However any computer system by necessity has limited precision. GeoGebra offers two views of the same object: a geometric view and an algebraic view. Because of limitations of the display device the geometric view is limited in accuracy while the algebraic equations suffer limited precision due to the limited precision of the numbers that are given as constants in the algebraic expressions. We urge the reader to experiment with the GeoGebra system to feel the limitations. In this paper we give the steps to create the objects using GeoGebra.

 

Circle à Square: Ramanujam [5] gave an intuitive procedure to draw a square of equal area to a given circle. In view of the difficulty in getting the above paper, we quote the procedure below (from page 367 of the article):

Let AB … be a diameter of a circle whose center is O.

Bisect AO at M and trisect OB at T.

Draw TP perpendicular to AB and meeting the circumference at P.

Draw a chord BQ equal to PT and join AQ.

Draw OS and TR parallel to BQ and meeting AQ at S and R respectively.

Draw a chord AD equal to AS and a tangent AC = RS.

Join BC, BD, and CD and draw EX, parallel to CD, meeting BC at X.

Then the square on BX is very nearly equal to the area of the circle, the error being less than a tenth of an inch when the diameter is 40 miles long.

We draw equivalent squares for circles with areas of 1, 1000000, and 1000000000000 respectively. A circle of radius  0.56418958354775628694807945156077 has an area of 1. The ‘Construction Protocol’ for this example follows.

 

No.

Name

Definition

Algebra

1

Point A

 

A = (0, 0)

2

Circle c

Circle with center A and Radius 0.56

c : x2 + y2 = 0.32

We gave the radius to be 0.56418958354775628694807945156077 and the system reports just two digits to the right of the decimal point. It is possible that the system stores more digits but reports just 2 digits in the definition.

3

Number areac

Area[c]

areac = 1

4

Text Textc

“Area=” + areac

Textc = “Area = 1”

5

Point B

Intersection point of c, xAxis

B = (-0.56, 0)

5

Point C

Intersection point of c, xAxis

C = (0.56, 0)

Geogebra gives all results of a single geometric operation with the same row number.

6

Point D

 

D = (0, 0.3)

7

Point E

 

E = (0, 0.4)

8

Point F

 

F = (0, 0.6)

9

Segment a

Segment[F,C]

a = 0.82

We need to select two points to define the segment. We selected point F first and thus the definition lists F followed by C. The length of the segment is 0.82. This information is of no use for us.

10

Line b

Line through E parallel to a

b: 0.6x + 0.56y = 0.23

11

Point G

Intersection point of b, xAxis

G = (0.38, 0)

Triangle FAC is similar to triangle EAG and thus the point G trisects CA.

12

Segment d

Segment[F,B]

d = 0.82

13

Line e

Line through D parallel to d

e: 0.6x –0.56y = -0.17

14

Point H

Intersection point of e, xAxis

H = (-0.28, 0)

Triangles FAB and DAH are similar and H bisects AB. Our points of interest are G and H. Thus hide points D, E, F and segments a, and d and line b, and e.

15

Line f

Line through G perpendicular to xAxis

f: x = 0.38

16

Point I

Intersection point of c, f

I = (0.38, -0.42)

16

Point J

Intersection point of c, f

J = (0.38, 0.42)

Point J is of interest to us. Hide line f and point I.

17

Segment g

Segment[J,G]

g = 0.42

We have connected the segment between points J and G to show the figure given by Ramanujam in his 1914 paper as far as possible.

18

Line h

Line through J parallel to xAxis

h: y = 0.42

19

Line i.

Line through C parallel to yAxis

i: x = 0.56

20

Point K

Intersection point of h, i.

K = (0.56, 0.42)

21

Circle k

Circle with center C through K

k: (x – 0.56)2 + y2 = 0.18

22

Point L

Intersection point of c, k

L = (0.41, 0.39)

22

Point M

Intersection point of c, k

M = (0.41, -0.39)

23

Segment j

Segment[L,C]

j = 0.42

Segment j is of interest to us. Hide lines I, and h; points K, and M; and circle k.

24

Segment l

Segment[B,L]

l = 1.05

25

Line m

Line through A parallel to j

m: 0.39x + 0.16y = 0

26

Line n

Line through G parallel to j

n: 0.23x + 0.09y = 0.09

27

Point N

Intersection point of m, l

N = (-0.08, 0.2)

28

Point O

Intersection point of m, l

O = (0.25, 0.33)

29

Segment p

Segment[N,A]

p = 0.21

30

Segment q

Segment[O,G]

q = 0.35

Hide lines m, and n.

31

Circle r

Circle with center B through N

r: (x + 0.56)2 + y2 = 0.27

32

Point P

Intersection of r, c

P = (-0.32, 0.46)

32

Point Q

Intersection of r, c

Q = (-0.32, -0.46)

33

Segment s

Segment[B,Q]

s = 0.52

Hide circle r, and point p.

34

Line t

Line through N parallel to yAxis

t: x = -0.08

35

Line a1

Line through B parallel to yAxis

a1: x = -0.56

36

Circle c1

Circle with center N through O

c1: (x + 0.08)2 + (y – 0.2)2 = 0.12

37

Point R

Intersection point of c1, t

R = (-0.08, 0.54)

37

Point S

Intersection point of c1, t

S = (-0.08, -0.15)

38

Line b1

Line through S parallel to l

b1: -0.39x + 0.97y = -0.12

39

Point T

Intersection point of a1, b1

T = (-0.56, -0.35)

40

Segment d1

Segment[B,T]

d1 = 0.35

Hide lines t, a1, and b1; circle c1; and points R and S. 

41

Segment e1

Segment[T,Q]

e1 = 0.27

42

Segment f1

Segment[C,Q]

f1 = 1

43

Segment g1

Segment[C,T]

g1 = 1.18

 

We are unable to proceed now. Ramanujam has not given any instruction for fixing the point E on the chord BD. A review of the instructions reveals that there is no action taken on point M which bisects the chord AO. We presume that performing some action on point M gets point E.  We first try to see whether E is on the line perpendicular to the diagonal AB on the chord BD.

 

No.

Name

Definition

Algebra

44

Line h1

Line through H perpendicular to xAxis

h1: x = -0.28

45

Point U

Intersection point of h1, f1

U = (-0.28, 0.44)

46

Line i1

Line through U parallel to e1

i1: 0.06x + 0.13y = -0.07

47

Point V

Intersection point of g1, i1

V = (-0.51, -0.33)

48

Quadrilateral poly1

Polygon[V,C,4]

Poly1 = 1.27

48

Point W

Polygon[V,C,4]

W = (0.23, 1.08)

48

Point Z

Polygon[V,C,4]

Z = (-0.85, 0.74)

48

Segment v

Segment[V,C] of Quadrilateral poly1

v = 1.13

48

Segment k1

Segment[C,W] of Quadrilateral poly1

k1 = 1.13

48

Segment w

Segment[W,Z] of Quadrilateral poly1

w = 1.13

48

Segment z

Segment[Z,V] of Quadrilateral poly1

z = 1.13

49

Text Textpoly1

“Area =” + poly1

Textpoly1 = “Area = 1.27”

Since the area of the resultant square is 1.27, our assumption that point E lies on the perpendicular to the diagonal through M is wrong. We undo all the steps from 44 till 49 and try the case when E lies on a line perpendicular to the chord BD through point M.

 

No.

Name

Definition

Algebra

44

Line h1

Line through H perpendicular to f1

h1: 0.53x + 0.28y = -0.15

45

Point U

Intersection point of h1, f1

U = (-0.1,-0.35)

46

Line i1

Line through U parallel to e1

i1: 0.07x + 0.15y = -0.06

47

Point V

Intersection point of g1, i1

V = (-0.28, -0.26)

48

Quadrilateral poly1

Polygon[V,C,4]

Poly1 = 0.78

48

Point W

Polygon[V,C,4]

W = (0.3, 0.85)

48

Point Z

Polygon[V,C,4]

Z = (-0.54, 0.58)

48

Segment v

Segment[V,C] of Quadrilateral poly1

v = 0.89

48

Segment k1

Segment[C,W] of Quadrilateral poly1

k1 = 0.89

48

Segment w

Segment[W,Z] of Quadrilateral poly1

w = 0.89

48

Segment z

Segment[Z,V] of Quadrilateral poly1

z = 0.89

49

Text Textpoly1

“Area =” + poly1

Textpoly1 = “Area = 0.78”

 

We have not succeeded as the area is just 0.78. It is possible that BE equals BM. We try this option now after undoing steps from 44 on. This yields a square with unit area. Thus we complete the procedure given by Ramanujam as below.

Let AB … be a diameter of a circle whose center is O.

Bisect AO at M and trisect OB at T.

Draw TP perpendicular to AB and meeting the circumference at P.

Draw a chord BQ equal to PT and join AQ.

Draw OS and TR parallel to BQ and meeting AQ at S and R respectively.

Draw a chord AD equal to AS and a tangent AC = RS.

Join BC, BD, and CD.

Mark E on BD such that BE equals BM and draw EX, parallel to CD, meeting BC at X.

Then the square on BX is very nearly equal to the area of the circle, the error being less than a tenth of an inch when the diameter is 40 miles long.

 

The remaining steps of the ‘Construction Protocol’ follow.

 

No.

Name

Definition

Algebra

44

Circle h1

Circle with center C through H

h1: (x – 0.56)2 + y2 = 0.72

45

Point U

Intersection point of h1, f1

U = (-0.19,-0.39)

46

Line i1

Line through U parallel to e1

i1: 0.11x + 0.24y = -0.12

47

Point V

Intersection point of g1, i1

V = (-0.39, -0.3)

48

Quadrilateral poly1

Polygon[V,C,4]

Poly1 = 1

48

Point W

Polygon[V,C,4]

W = (0.27, 0.96)

48

Point Z

Polygon[V,C,4]

Z = (-0.69, 0.66)

48

Segment v

Segment[V,C] of Quadrilateral poly1

v = 1

48

Segment k1

Segment[C,W] of Quadrilateral poly1

k1 = 1

48

Segment w

Segment[W,Z] of Quadrilateral poly1

w = 1

48

Segment z

Segment[Z,V] of Quadrilateral poly1

z = 1

49

Text Textpoly1

“Area =” + poly1

Textpoly1 = “Area = 1”

 

Starting with a circle of unit area, we get a square of unit area. Still Ramanujam indicates that his method is not perfect. The precision used by GeoGebra for this example is not high enough to indicate the mismatch. We try with a circle of area 1000000. We need not rework the problem from scratch. In the GeoGebra file for the unit area circle, we redefine step 2. Instead of giving the radius as 0.56418958354775628694807945156077, we give the radius as 564.18958354775628694807945156077. We need to ‘zoom out’ to get the display right. The resultant square has an area of 1000000.08 giving 8-digit accuracy for Ramanujam’s method. Similarly for a circle of area 1000000000000 Ramanujam’s method gives a square of area 1000000084913.68 with 8-digit accuracy. We conclude that Ramanujam’s method gives an accuracy of 8-digits and this accuracy is not limited by the implementation of GeoGebra.

 

Square à Circle: We have developed the inverse method of getting a circle of equal area for a given square. Initially we describe the intuitive method. We work out examples for squares of areas 1, 1000000, and 1000000000000 respectively.

The steps to get circle from a given square are:

ABCD is the given square.

E, F, G, and H are midpoints of AB, AD, BC, and AC respectively.

Draw quarter circle e with center A passing through E, and F.

Draw quarter circle f with center B passing through G, and E.

Draw semi circle g with AB as diameter.

Point I is intersection of quarter circle e and semi circle g.

Point J is intersection of quarter circle f and semi circle g.

Draw circle h with center I and passing through J.

Draw circle k with center J and passing through I.

Point K is intersection of circles h, and k.

Draw segment i joining points D, and H.

Draw segment j joining points C, and H.

Draw circle p with center K and passing through H.

Point M is intersection of circle h with segment i.

Draw ray l from point M through point K.

Mark the intersections of circle p with ray l as point N (near point M) and point O (away from point M).

Draw ray m from point J through point O.

Mark the intersections of circle p with side CD of square as point Q (near M) and point P (away from M).

Point R is the intersection of circle k and segment j.

Draw segment n between points Q and R.

Point S is the intersection of segment n, and ray m.

Draw circle q with center H passing through S.

Circle q is the result.

 

We give the ‘Construction Protocol’ for drawing a circle of area 1 starting with a square of area 1 below.

 

No.

Name

Definition

Algebra

1

Point A

 

A = (-0.5, -0.5)

2

Point B

 

B = (0.5, -0.5)

3

Quadrilateral poly1

Polygon[A, B, 4]

poly1 = 1

3

Point C

Polygon[A, B, 4]

C = (0.5, 0.5)

3

Point D

Polygon[A, B, 4]

D = (-0.5, 0.5)

3

Segment a

Segment{A, B] of Quadrilateral poly1

a = 1

3

Segment b

Segment[B, C] of Quadrilateral poly1

b = 1

3

Segment c

Segment[C, D] of Quadrilateral poly1

c = 1

3

Segment d

Segment[D, A] of Quadrilateral poly1

d = 1

4

Point E

midpoint of A, B

E = (0, -0.5)

5

Point F

midpoint of A, D

F = (-0.5, 0)

6

Point G

midpoint of B, C

G = (0.5, 0)

7

Point H

midpoint of A, C

H = (0, 0)

8

Arc e

CircularArc[A, E, F]

e = 0.79

9

Arc f

CircularArc[B, G, E]

f = 0.79

10

Arc g

Semicircle through A and B

g = 1.57

11

Point I

Intersection point of g, e

I = (-0.25, -0.07)

12

Point J

Intersection point of f, g

J = (0.25, -0.07)

13

Circle h

Circle with center I through J

h: (x + 0.25)2 + (y + 0.07)2 = 0.25

14

Circle k

Circle with center J through I

K: (x – 0.25)2 + (y + 0.07)2 = 0.25

15

Point K

Intersection of h, k

K = (0, 0.37)

15

Point L

Intersection of h, k

L = (0, -0.5)

16

Segment i.

Segment[D, H]

i = 0.71

17

Segment j

Segment[C, H]

j = 0.71

18

Circle p

Circle with center K through H

P: x2 + (y – 0.37)2 = 0.13

19

Point M

Intersection point of h, i.

M = (-0.41, 0.41)

20

Ray l

Ray through M, K

l: 0.04x + 0.41y = 0.15

No.

Name

Definition

Algebra

21

Point N

Intersection point of p, l

N = (-0.36, 0.4)

21

Point O

Intersection point of p, l

O = (0.36, 0.33)

22

Ray m

Ray through J, O

M: -0.4x + 0.11y = -0.11

23

Point P

Intersection point of p, c

P = (0.34, 0.5)

23

Point Q

Intersection point of p, c

Q = (-0.34, 0.5)

24

Point R

Intersection point of k, j

R = (0.41, 0.41)

25

Segment n

Segment[Q, R]

n = 0.75

26

Point S

Intersection point of n, m

S = (0.39, 0.41)

27

Circle q

Circle with center H through S

Q: x2 + y2 = 0.32

28

Text Textpoly1

“Area = ” + poly1

Textpoly1 = “Area = 1”

29

Number areaq

Area[q]

areaq = 1

30

Text Textq

“Area = “ + areaq

Textq = “Area = 1”

 

Redefining the points A and B as (-500, -500) and (500, -500) gives the area of the square as 1000000, while that of the resultant circle is just 999924.59 giving at best 5-digit accuracy. Changing the points A and B to (-500000, -500000) and (500000, -500000) gives a square of area 1000000000000 and the equivalent circle of area 999924591399.52 again with 5-digit accuracy only.

 

Increasing the accuracy – concept: We propose the following hypothesis. Let functions f and g be inverse of each other. That is, y = f(x); and x = g(y). Given the finite precision of computers, we would rarely find x = g( f(x) ). Let y1 = f (x1). Calculate x2 = g (y1). Now define a new function g( f(x) )  = ( x + g( f(x) ) )/2. Mathematically this is always true. This is because simplifying the definition, we get g( f(x) ) / 2 = x / 2. However due to numerical errors, the value g ( f(x1) ) would be different from the value ( x1 + g( f(x1) ) )/2.

 

For example consider the drawing of the square given a circle (Ramanujam’s method) as function f, and the drawing of a circle given a square (our method) as g, then we define a new method of finding a circle for a square as follows.

1.        Find a square given a circle using Ramanujam’s method.

2.        For the resultant square, find a circle using our method.

3.        The new function defines a circle with average of the radii of the initial circle and the final circle as the more accurate result for the square.

4.        Use similar triangles and find the radius of the resultant circle for the given square.

 

Ramanujam’s method gives a square of area 1000000084913.68 for a circle of area 1000000000000. Our method gives a circle of area 999924591399.52 for a square of area 1000000000000. The circles of both methods are less in area than the corresponding squares. In this situation, finding the average improves the accuracy of our method while the result is worse than the accuracy of Ramanujam’s method. This is because the errors are non-compensating. To get compensating errors, one method should give a circle of area larger than the square. Since our method has less accuracy, we fine tune the intuitive method algorithmically to get a circle that is larger in area than the given square.

 

Modified square à circle: The resultant circle in our method has point S, (point of intersection of segment QR with ray JO) on the circle with the center at point H. If we rotate the segment QR with center at R in a clockwise direction, and consider the new point of intersection with ray JO, the area of the resultant circle would be larger. We continue with our method below.

 

No.

Name

Definition

Algebra

31

Point T

Intersection point of q, c

T = (0.26, 0.5)

31

Point U

Intersection point of q, c

U = (-0.26, 0.5)

32

Segment r

Segment[U,R]

r = 0.68

33

Point V

Intersection point of r, m

V = (0.39, 0.41)

34

Circle s

Circle with center H through V

S: x2 + y2 = 0.32

35

Number areas

Area[s]

Areas = 1

36

Text Texts

“Area = “ + areas

Texts = “Area = 1”

 

We redefine the points A and B to be (-500000, -500000), and (500000, -500000) and find that the area of the circle s is 1000849918452.57. The area of circle s is greater than the area of the square. Thus, we need to identify a point between the points Q, and U such that the average of the circles has an area as close to that of the square as possible.

 

Increasing accuracy – demonstration:  We start with a circle; find the square using Ramanujam’s method; find a circle for this square using our method; select a point between the two points corresponding to points Q, and U and get a circle with area larger than the square; we find the average of the radii of the circles and draw the result circle. We compare the accuracy of the transformations. The ‘Construction Protocol’ is given below.

 

No.

Name

Definition

Algebra

1

Point A

 

A = (0, 0)

2

Circle c

Circle with center A and radius 40000000

C: x2 + y2 = 1600000000000000

3

Point B

Intersection point of c, xAxis

B = (-40000000, 0)

3

Point C

Intersection point of c, xAxis

C = (40000000, 0)

4

Point D

Midpoint of B, A

D = (-20000000, 0)

5

Point E

 

E = (0, 30000000)

6

Point F

 

F = (0, 20000000)

7

Segment a

Segment[E, C]

a = 50000000

8

Line b

Line through F parallel to a

B: 30000000x + 40000000y = 800000000000000

9

Point G

Intersection point of b, xAxis

G = (26666666.67, 0)

Hide points E, F; segment a; and line b

10

Line d

Line through G perpendicular to xAxis

d: x = 26666666.67

11

Point H

Intersection point of c, d

H = (26666666.67, -29814239.7)

11

Point I

Intersection point of c, d

I = (26666666.67, 29814239.7)

12

Line e

Line through C parallel to yAxis

e: x = 40000000

13

Line f

Line through I parallel to xAxis

f: y = 29814239.7

14

Point J

Intersection point of f, e

J = (40000000, 29814239.7)

15

Circle g

Circle with center C through J

g: (x – 40000000)2 + y2 = 888888888888888.8

16

Point K

Intersection point of c, g

K = (28888888.89, 27666443.55)

16

Point L

Intersection point of c, g

L = (28888888.89, -27666443.55)

17

Segment h

Segment[K, C]

h = 29814239.7

Hide lines d, e, and f; circle g; and points H, I, J, and L.

18

Segment i.

Segment[B, K]

i = 74236858.17

19

Line j

Line through G parallel to h

J: 829993306532582.1x + 333333333333333.4y = 22133154840868860000000

20

Line k

Line through A parallel to h

k: 27666443.55x + 11111111.11y = 0.0

21

Point M

Intersection point of i, j

M = (17407407.41, 23055369.63)

22

Point N

Intersection point of i, k

N = (-5555555.56, 13833221.78)

Hide lines j, and k.

23

Segment l

Segment[M, G]

l = 24845199.75

24

Segment m

Segment[N, A]

m = 14907119.85

25

Circle p

Circle with center B through N

p: (x + 40000000)2 + y2 = 1377777777777778.2

26

Point O

Intersection point of p, c

O = (-22777777.78, 32881192.79)

26

Point P

Intersection point of p, c

P = (-22777777.78, -32881192.79)

27

Segment n

Segment[B, P]

n = 37118429.09

Hide circle p, and point O.

28

Line q

Line through N parallel to yAxis

q: x = -5555555.56

29

Line r

Line through B parallel to yAxis

b: x = -40000000

30

Circle s

Circle with center N through M

s: (x + 5555555.56)2 + (y – 13833221.78)2 = 612345679012345.9

31

Point Q

Intersection point of s, q

Q = (-5555555.56, 38578841.17)

31

Point R

Intersection point of s, q

R = (-5555555.56, -10912397.61)

32

Line t

Line through R parallel to I

t: -27666443.55x + 68888888.89y = 598040482625502.5

33

Point S

Intersection point of r, t

S = (-40000000, -24745619.39)

34

Segment a1

Segment[B, S]

a1 = 24745619.39

Hide lines q, r, and t; circle s; and points Q, and R.

No.

Name

Definition

Algebra

35

Segment b1

Segment[S, P]

b1 = 19047112.45

36

Segment c1

Segment[C, P]

c1 = 70867638.75

37

Segment d1

Segment[C, S]

d1 = 83739749.7

38

Circle e1

Circle with center C through D

e1: (x – 40000000)2 + y2 = 3600000000000000

39

Point T

Intersection point of e1, c1

T = (-13150729.06,  -27838821,81)

40

Line f1

Line through T parallel to b1

F1: 8135573.4x + 17222222.22y = -586435097287090

41

Point U

Intersection point of d1, f1

U = (-27731902.52, -20950848.51)

42

Point V

Midpoint of U, C

V = (6134048.74, -10475424.25)

43

Segment g1

Segment[V, A]

g1 = 12139236.68

44

Line h1

Line through U parallel to g1

h1: -11282245916307449000000x – 6606495799819703000000y = 451289836652298000000000000000

45

Line j1

Line through A parallel to d1

j1: 24745619.39x – 80000000y = 0

46

Point W

Intersection point of h1, j1

W = (-33865951.26, -10475424.25)

47

Circle k1

Circle with center A through W

k1: x2 + y2 = 1256637168141593.2

48

Point Z

Intersection point of k1, xAxis

Z = (-35449078.52, 0)

48

Point A1

Intersection point of k1, xAxis

A1 = (35449078.52, 0)

49

Point B1

Intersection point of k1, yAxis

B1 = (0, 35449078.52)

49

Point C1

Intersection point of k1, yAxis

C1 = (0, -35449078.52)

50

Line i1

Line through C1 parallel to xAxis

i1: y = -35449078.52

51

Line l1

Line through Z parallel to yAxis

l1: x = -35449078.52

52

Line m1

Line through A1 parallel to yAxis

M1: x = 35449078.52

53

Point D1

Intersection point of l1, i1

D1  = (-35449078.52, -35449078.52)

54

Point E1

Intersection point of m1, i1

E1 = (35449078.52, -35449078.52)

55

Quadrilateral poly1

Polygon[D1, E1, 4]

poly1 = 5026548672566372

55

Point F1

Polygon[D1, E1, 4]

F1 = (35449078.52, 35449078.52)

55

Point G1

Polygon[D1, E1, 4]

G1 = (-35449078.52, 35449078.52)

55

Segment n1

Segment[D1, E1] of quadrilateral poly1

n1 = 70898157.05

55

Segment p1

Segment[E1, F1] of quadrilateral poly1

p1 = 70898157.05

55

Segment q1

Segment[F1, G1] of quadrilateral poly1

q1 = 70898157.05

55

Segment r1

Segment[G1, D1] of quadrilateral poly1

r1 = 70898157.05

56

Number areac

Area[c]

areac = 5026548245743669

57

Text Textc

“Area =” + areac

Textc = “Area = 5026548245743669”

58

Text Textpoly1

“Area =” + poly1

Textpoly1 = “Area = 5026548672566372”

Hide all except the points A, B, C, D1, E1, F1, and G1; circle c; and square poly1.

59

Point H1

Midpoint of D1, E1

H1 = (0, -35449078.52)

60

Point I1

Intersection point of r1, xAis

I1 = (-35449078.52, 0)

61

Point J1

Intersection point of p1, xAxis

J1 = (35449078.52, 0)

62

Arc s1

CircularArc[D1, H1, I1]

s1 = 55683282.33

63

Arc t1

CircularArc[E1, J1, H1]

t1 = 55683282.33

64

Arc c2

Semicircle through D1 and E1

c2 = 111366564.66

65

Point K1

Intersection point of s1, c2

K1 = (-17724539.26, -4749275.98)

66

Point L1

Intersection point of t1, c2

L1 = (17724539.26, -4749275.98)

67

Circle d2

Circle with center K1 through L1

d2: (x + 17724539.26)2 + (y + 4749275.98)2 = 1256637168141593.2

68

Circle e2

Circle with center L1 through K1

e2: (x - 17724539.26)2 + (y + 4749275.98)2 = 1256637168141593.2

69

Point M1

Intersection point of d2, e2

M1 = (0, 25950526.56)

69

Point N1

Intersection point of d2, e2

N1 = (0, -35449078.52)

70

Circle f2

Circle with center M1 through A

f2: x2 + (y – 25950526.56)2 = 673429828764945.6

71

Segment a2

Segment[G1, A]

a2 = 50132567.62

72

Segment b2

Segment[F1, A]

b2 = 50132567.62

73

Point O1

Intersection point of d2, a2

O1 = (-28894114.88, 28894114.88)

No

Name

Definition

Algebra

74

Ray g2

Ray through O1, M1

g2: 2943588.32x + 28894114.88y = 749817495633202.2

75

Point P1

Intersection point of f2, g2

P1 = (-25816901.78, 28580623.76)

75

Point Q1

Intersection point of f2, g2

Q1 = (25816901.78, 23320429.36)

76

Ray h2

Ray through L1, Q1

h2: -28069705.35x + 8092362.52y = -535955457404115

77

Point R1

Intersection point of f2 , q1

R1 = (24149686.11, 35449078.52)

77

Point S1

Intersection point of f2 , q1

S1 = (-24149686.11, 35449078.52)

78

Point T1

Intersection point of e2 , b2

T1 = (28894114.88, 28894114.88)

79

Point U1

Intersection point of c , q1

U1 = (18530052.13, 35449078.52)

79

Point V1

Intersection point of c , q1

V1 = (-18530052.13, 35449078.52)

80

Line i2

Line through S1 parallel to yAxis

i2: x = -24149686.11

81

Circle k2

Circle with center S1 and Radius 500000

k2: (x + 24149686.11)2 + (y – 35449078.52)2 = 250000000000

82

Circle p2

Circle with center S1 and Radius 5547706.49

p2: (x + 24149686.11)2 + (y – 35449078.52)2 = 30777047281435.46

The actual value of the radius of Circle p2 was 5547706.4884 .  Since GeoGebra rounds off the values to two decimal places it was reported as 5547706.49 in the Construction Protocol. See the table below for the sequence of the radii of circle p2 in the table that follows.

83

Point W1

Intersection point of k2 , i2

W1 = (-24149686.11, 3594078.52)

83

Point Z1

Intersection point of k2 , i2

Z1 = (-24149686.11, 3494078.52)

84

Point A2

Intersection point of p2 , i2

A2 = (-24149686.11, 40996785.01)

84

Point B2

Intersection point of p2 , i2

B2 = (-24149686.11, 29901372.03)

85

Segment j2

Segment[B2 , V1]

j2 = 7896665.97

86

Line l2

Line through Z1 parallel to j2

l2: -5547706.49x + 5619633.99y = 330376399779621.75

87

Point C2

Intersection point of l2 , q1

C2 = (-23643203.48, 35449078.52)

88

Segment m2

Segment[C2 , T1]

m2 = 52944663.27

89

Point D2

Intersection point of m2 , h2

D2 = (27474820.74, 29071197.03)

90

Circle q2

Circle with center A through D2

q2: x2 + y2 = 1600000271723777.2

91

Point E2

Intersection point of q2 , xAxis

E2 = (-40000003.4, 0)

91

Point F2

Intersection point of q2 , xAxis

F2 = (40000003.4, 0)

92

Point G2

Midpoint of B, E2

G2 = (-40000001.7, 0)

93

Circle r2

Circle with center A through G2

r2: x2 + y2 = 1600000135861886

94

Number arear2

Area[r2]

arear2 = 5026548672566372

95

Text Textr2

“Area = “ + arear2

Textr2 = “Area = 5026548672566372”

96

Text text1

“Area = “ + poly1

Text1 = “Area = 5026548672566372”

 

The radius of circle p2 used in the above Construction Protocol was found after 24 iterations. The first value was 5500000 giving the area of the resultant circle as 5026550333806841, which was greater than that of the square. We tried 5550000 and found that the resulting circle had an area of 5026548593427671 less than that of the square. Since GeoGebra allows us to redefine the inputs given by us, we need to just make one change using the Construction Protocol and GeoGebra recalculates all the dependent values and we get the final answer. We have manually followed an approximate binary search. The search process is documented below. We see that the last row gives the area of the circle to be 5026548672566372 giving a 16-digit accuracy.

 

 

Area of square is 5026548672566372

No.

Radius of circle p2

Area of final circle

1

5500000

5026550333806841

2

5550000

5026548593427671

The correct circle has radius between 5500000 and 5550000.

3

5549000

5026548627925024

The desired radius is between 5549000 and 5500000.

4

5548500

5026548645178410

The answer is between 5548500 and 5500000.

5

5548000

5026548662434930

Try between 5548000 and 5500000.

6

5547500

5026548679694593

The answer is larger than 5547500 but less than 5548000.

7

5547700

5026548672790349

The desired radius is between 5547700 and 5548000.

8

5547750

5026548671064369

Try between 5547700 and 5547750.

9

5547710

5026548672445152

Check between 5547700 and 5547710.

10

5547705

5026548672617750

The answer is larger than 5547705 but smaller than 5547710.

11

5547708

5026548672514192

The desired radius is between 5547705 and 5547708.

12

5547707

5026548672548711

Try a value greater than 5547705 but less than 5547707.

13

5547706

5026548672583231

Check between 5547706 and 5547707. We need to add fractions now.

14

5547706.5

5026548672565970

The desired radius is between 5547706 and 5547706.5.

15

5547706.3

5026548672572873

Check between 5547706.3 and 5547706.5.

16

5547706.4

5026548672569422

Try a value greater than 5547706.4 but less than 5547706.5.

17

5547706.45

5026548672567698

The answer is larger than 5547706.45 but smaller than 5547706.5.

18

5547706.48

5026548672566660

The desired radius is between 5547706.48 and 5547706.5.

19

5547706.49

5026548672566316

Check between 5547706.48 and 5547706.49.

20

5547706.485

5026548672566488

Try a value greater than 5547706.485 but less than 5547706.49. The GeoGebra does not display more than two decimals to the right of the decimal point. We need to remember the digits not displayed and continue. We record the value to be tried in this table first and then redefine in the GeoGebra system.

21

5547706.488

5026548672566385

The answer is larger than 547706.488 but smaller than 5547706.49.

22

5547706.489

5026548672566350

The desired radius is between 5547706.488 and 5547706.489.

23

5547706.4885

5026548672566368

Check between 5547706.488 and 5547706.4885.

24

5547706.4883

5026548672566376

Try a value greater than 5547706.4883 but less than 5547706.4885.

25

5547706.4884

5026548672566372

 

Before demonstrating the derivation of a circle of area equal to a given square, we calculate the errors due to Ramanujam’s method and our method. The starting circle with a radius of 40000000 had an area of 5026548245743669. Ramanujam’s method gave a square of area 5026548672566372 which is larger by 426822703. Starting with a square of area 5026548672566372 our modified method gave a circle of area 5026549099389091. The square is smaller than this circle by 426822719. The resultant circle was drawn using the average of the radii of the two circles giving the area equal to that of the square. In terms of accuracy, Ramanujam’s method differs on the eighth digit, as also our method. However the average of the radii of the two circles gives 16 digit accuracy. We have demonstrated our hypothesis. It is hoped that other researchers and programmers would exploit the hypothesis in future.

 

Accurate square à circle: Let us find a circle with area equal to a square of side 60000000. The area of the square is 3600000000000000. Draw a right angled triangle AI1I2 where I2 is the point of intersection of the result circle and a line perpendicular to the x-Axis through the point I1. In the above triangle the side AI1 is equal to half the side of the square and the side AI2 is equal to the radius of a circle of equal area. We define point J2 at (-30000000, 0) making the side AJ2 equal to half the side of the given square. A perpendicular to x-Axis through J2 intersects the side AI2 at K2. The triangle AJ2K2 is similar to triangle AI1I2. Thus the side AK2 is equal to the radius of a circle with area of 3600000000000000. A circle with center A passing through point K2 is circle t2. The area of this circle is 3599999999999998.5 giving 16-digit accuracy the error being just 1,5 out of 3600000000000000. The steps from Construction Protocol are given below.

 

No.

Name

Definition

Algebra

97

Point H2

Intersection point of r2 , r1

H2 = (-35449078.52, 18530055.79)

97

Point I2

Intersection point of r2 , r1

I2 = (-35449078.52, -18530055.79)

98

Segment n2

Segment[I2 , A]

n2 = 40000001.7

99

Point J2

 

J2 = (-30000000, 0)

100

Line s2

Line through J2 perpendicular to xAxis

s2: x = -30000000

101

Point K2

Intersection point of s2 , n2

K2 = (-30000000, -15681696.03)

102

Circle t2

Circle with center A through K2

T2: x2 + y2 = 1145915590261646

103

Number areat2

Area[t2]

Areat2 = 3599999999999998.5

104

Text Textt2

“Area = “ + areat2

Textt2 = “Area = 3599999999999998.5”

 

We have the option to set the number of decimal places to be displayed in Construction Protocol. We worked with 2 decimal places. The current version allows up to 5 decimal places to be displayed. Thus selecting 5 decimals to be displayed would invalidate suggestion 4 that follows. We demonstrate that there are problems requiring more decimal places than any fixed limit given in GeoGebra. Instead of starting with the initial circle with radius 40000000 let us start with a circle with radius 4000000. The independent variables and their new values are given below.

 

No.

Parameter

Value

Row in Construction Protocol

1

Point E

(0, 3000000)

5

2

Point F

(0, 2000000)

6

3

Point J2

(-3000000, 0)

99

4

Radius of Circle k2

50000

81

5

Radius of Circle p2

554770.64884

82

 

If we set the initial radius to 400000, we get the following values.

 

No.

Parameter

Value

Row in Construction Protocol

1

Point E

(0, 300000)

5

2

Point F

(0, 200000)

6

3

Point J2

(-300000, 0)

99

4

Radius of Circle k2

5000

81

5

Radius of Circle p2

55477.064884

82

 

GeoGebra reports the radius of circle p2 as 55477.06488 because we have set the number of decimals to 5. In this problem itself, decreasing the radius of circle c to smaller and smaller values shall require more decimals to be reported. Thus it is required that GeoGebra reports the user input without any modification in the Construction Protocol.

 

Suggested improvements to GeoGebra: We have demonstrated that GeoGebra permits messing with algebra. The following suggestions are made based on our experience in writing this paper.

 

1.        We spent lot more time in copying the ‘Construction Protocol’ than in using GeoGebra to solve the problems. This is because the ‘Construction Protocol’ could not be copied; it could be printed alone. The ‘Construction Protocol’ should be made exportable to a document as a table.

2.        To avoid keying in the ‘Construction Protocol’ given as a table in a document, it should be possible to import a ‘Construction Protocol.’

3.        As a picture is worth a thousand words, to follow the steps involved in developing a solution, the ‘Construction Protocol’ of which was imported, we need to have the facility to execute a ‘Construction Protocol’ one step at a time.

4.        We performed an approximate binary search on the parameter ‘radius of circle p2.’ It should be possible to specify a range for a number of desired input parameters and request the GeoGebra system to optimize some objective function.

 

In the next section we consider some techniques to modify the GeoGebra system.

 

 

Modifying GeoGebra:

 

GeoGebra could be downloaded from [6] freely. If there is to freedom change the GeoGebra system by any expert, there would be chaos. There is a forum to discuss possible changes to GeoGebra. The user forum is accessed through [7]. The forum has two sections, one dedicated to use issues, and the other dedicated to technical issues. Konrad Remus [8] discusses the possibility of using recursive functions in GeoGebra. From the discussion it is clear that the changes to the GeoGebra system are under the control of the system administrator.

 

We have suggested the possibility of exporting and importing the Construction Protocol to and from documents. GeoGebra community provides an online facility to upload GeoGebra programs, web pages and the like. The steps to be followed in uploading are described in [9]. Some of the uploaded materials are found in [10]. To facilitate the training in inductive reasoning, Markus Hohenwarter and Judith Preiner [11] have suggested methods to create dynamic web pages. Notwithstanding these online resources, we believe the modification of GeoGebra system to export and import the Construction Protocol is justified as the permanency of a journal article is orders of magnitude more than an online resource. An online resource becomes obsolete when the supporting technology becomes obsolete.

 

Conclusion: Computer code development is more or less automated. Thus future computer applications would be oriented towards developing the specifications of applications. Specifications development needs generalization requiring inductive reasoning. GeoGebra permits messing with algebra and geometry and helps the teachers in developing lesson plans to train the students in inductive reasoning.  We have demonstrated that GeoGebra is a research aid too.

 

Dedication:

 

Edward Chesky:

If you would be a real seeker after truth, it is necessary that at least once in your life you doubt, as far as possible, all things - Descartes
 
The journey that led me to pick up compass, ruler and computer, in an attempt to solve this problem of antiquity was long, hard and filled with doubt.  Doubt that what I had done was flawed, that I had wasted much time, that life had passed me by and that even my God had abandoned me.  Working in concert with other men of faith, yet from faiths different to mine, much of my doubt faded and what was left is what is included in this work.
 
I dedicate this work to the men and women of the United States armed forces that paid the ultimate price in order that we might live free and prosper. 

Ivan Alexander:

"It is so important for today's youth to understand that their vision of the future is what the future will be.  We are seeing the present through the visions of giants who preceded us, and they will see the future through their eyes.  May they do so in the spirit of greatness as of those upon whose shoulders we all stand."

 

Mohideen Ibramsha:

I dedicate this work - giving me immense pleasure in improving upon the work of the mathematical wizard Ramanujam - to my intellectual parents: Professor and Dharma Rajaraman.

 

References:

1.        http://jwilson.coe.uga.edu/Pers/erbas_ayhan_k_200408_phd.pdf p19 of 366.

2.        http://eprints.jcu.edu.au/1176/02/02whole.pdf p 81 of 222.

3.        http://www.squarecirclez.com/blog/21st-century-computer-algebra-literacies/937

4.        http://www.geogebra.org/cms/index.php?option=com_content&task=blogcategory&id=67&Itemid=63

5.        Ramanujam, Approximate geometrical constructions for p, Quarterly Journal of Mathematics, XLV (1914) 350 – 374.

6.        http://www.geogebra.org/cms/index.php?option=com_content&task=blogcategory&id=71&Itemid=55

7.        http://www.geogebra.org/forum/

8.        http://www.geogebra.org/forum/viewtopic.php?f=13&t=4913

9.        http://www.geogebra.org/en/wiki/index.php/Upload_Materials

10.     http://www.geogebra.org/en/upload/

11.     Marcus Hohenwarter and Judith Preiner, Creating Mathlets with Open Source Tools, The Journal of Online Mathematics and Its Applications, 7 (July 2007) Article ID 1574. http://www.maa.org/joma/Volume7/Hohenwarter2/index.html