FUNCTIONS OF THE AREA METHOD
The constructor of the object takes an array
of points
The following functions are for the insertion
of the predictes:
-
insertCollinear(Point p1,Point
p2,Point p3,Point p4)
-
insertParallel(Point p1,Point
p2,Point p3,Point p4)
-
insertPerp(Point p1,Point p2,Point
p3,Point p4)
-
insertCircum(Point A,Point B,Point
C,Point D)
-
insertCyclic(Point A,Point B,Point
C,Point D)
-
insertMidPoint(Point O,Point
A,Point B)
-
insertCong(Point a,Point b,Point
c,Point d)
-
insertPerpBisector(Point a,Point
b,Point c,Point d)
-
insertEqangle(AngleNode a1,AngleNode
a2)
-
insertIncenter(Point a,Point
b,Point c,Point d)
-
insertOrthocenter(Point a,Point
b,Point c,Point d)
-
insertRatio(Point a,Point b,Point
c,Point d,double value)
These functions are used to tell the hypothesis of the problem to the area
method as the input string is being parsed.
The following functions are used internally by the
method to find if a relation holds true.
-
collinear (Point p1,Point p2,Point
p3)
-
parallel(Point p1,Point p2,Point
p3,Point p4)
-
midPoint( Point A,Point B,Point
C)
-
cong(Point a,Point b,Point c,Point
d)
-
perpBisector(Point a,Point b,Point
c,Point d)
(each of them returns a boolean value.)
The function used to begin search is :-
-
boolean IDFS(int currentdepth,
int maxdepth, ProductList alpha, ProductList beta, ProofExpressionList)
Here the ProductList alpha and beta are the representaions of the
symbolic expressions. The function tries to replace the quantities in alpha
and beta to reduce it to a constant. The object ProofExpressionList returns
the proof found by the procedure.
Another important function which contains all the information about
the lemmas is :
-
RationalExpression apply(Atom atom,State state)
This function contains all the lemmas as different cases of a switch statement.
It takes in an atomic quantity for which a replacement is sought. The state
object keeps track of the position from which the function should start
looking for replacement. It finally returns a symbolic RationalExpression
as the replacement. If no replacement is possible, null is returned.