Reasoning Method on Knowledge about Functions and Operators

—In artificial intelligence, there are many methods for knowledge representation. One of the effective models is the Computational Object Knowledge Base model (COKB model), which can be used to represent the total knowledge and to design the knowledge base component of practical intelligent systems. Besides, reasoning methods also play an important role in knowledge base systems. In fact, a popular form of knowledge domain is knowledge about function and operations. These knowledge domains have many practical applications, especially in educational applications, such as Solid Geometry, Analytic Geometry. However, the current methods cannot reason on knowledge about Function and Operators. In this paper, we will present a reasoning method to solve problems on COKB model. These problems are related to knowledge about Functions and Operators. Also, this method has been applied to design some intelligent systems in education. Using this reasoning method, systems can solve problems in some educational knowledge domains automatically with their solutions are step-by-step.


INTRODUCTION
Intelligent problem solvers (IPS), presented in [1], can consist of components such as theorem proving, inference engines, search engines, learning programs, classification tools, statistical tools, question-answering systems, machine translation systems, knowledge acquisition tools.The IPS system can solve problems in general forms.Users only declare hypothesis and goal of problems base on a simple language but strong enough for specifying problems.The hypothesis can consist of objects, relations between objects or between attributes.It can also contain formulas, determination properties of some attributes or their values.The goal can be to compute an attribute, to determine an object, a relation or a formula.After specifying a problem, users can request the program to solve it automatically or to give instructions that help them to solve it themselves.
An important component in IPS system is knowledge base.This component contains knowledge to solve problems of the system.Knowledge base is designed by knowledge representation methods.Besides the knowledge base, these methods also should be convenient for designing inference engine and interface of the system.Some methods for representation knowledge have been studied.Many classical methods to design knowledge model has been proposed and apply, such as logic, conceptual graph [2], [3], etc.But those results are not efficient for executing and using in the real application.
In real application, a popular component of knowledge domain is knowledge component about operations.Operators between objects of knowledge domain are necessary concepts; they help for representation this knowledge exactly.Besides operators component, knowledge domains can contain relations as function between objects.Example in Knowledge domain about 2D-Analytic Geometry, it contains not only operators between vectors, but also functions about distance between two points, between a point and a line, etc.However, the current knowledge models are not effectively for representing knowledge about operators and function.These components cannot be separated but they have to be considered in a knowledge-based system that has many components, this system also includes concepts and relations.
In this paper, Functions and Operators components in model of Computational Objects Knowledge Bases (COKB) will be researched.After that, model of problems will be built and algorithms for reasoning to solve them will be also designed.Moreover, the IPS systems have been constructed; it can solve problems in some educational knowledge domains automatically.The solutions of these systems are naturally, step-by-step, like human's thinking.
The next section will give an overview of the related work.Section III will present a knowledge model about Functions and Operators; this model is constructed based on COKB model.In section IV, problems on this model will be modeled and classified, and algorithms to solve them also will be designed.Based on knowledge model and algorithms in previous sections, the systems of Intelligent Problem Solvers will be constructed in section V.These systems have been applied in some knowledge domains about physics and mathematics.In the last section, we will present conclusion of this study and future work.

II. RELATED WORK
An algebraic structure of elementary knowledge has been presented base on first order logic, as in [4].This study have solved problem about information equivalent of knowledge.In the other research, in [5], this problem have also solved by constructing automorphic of knowledge-based.However, knowledge domains in these studies are very simple.www.ijacsa.thesai.orgSome methods for automated theorem proving has been researched, such as using Groebner bases [6] or algebraic structure based on Temporal logics [7], etc.However, those methods cannot represent knowledge domain precisely.Moreover they cannot implement the way of human's thinking to solve problems.
A modern approach for representing knowledge is ontology.Ontology has been researched and developed in practice application [8,9,10].Ontology COKB has been used in designing some intelligent systems in education (see [11,12]).In the other study, authors built an ontology for some kinds of relations based on predicate logic and description logic [13], however, this model have drawback to represent complexity relations in human's knowledge.
The study in [14] presents algebraic structure of knowledge about relations; thought that, authors represent a method for knowledge acquisition.However, this model has not yet mentioned structure of concepts and rules.
In fact, a popular form of knowledge domain is knowledge about function and operations.These knowledge domains have many practical applications, especially in educational applications.However, the current methods cannot reason on knowledge about Function and Operators.In [15], authors presented a method for representation this knowledge, but this model is still independence with knowledge about operators and function.
Besides, problems need to be modeled so that we can design algorithms for solving problems automatically.For automatic inference methods, the most important thing is controlling strategy for generating new facts from known facts.Many automatic inference techniques have been studied quite completely in a general level, including: (see [3,16]) 1) Unification routine in methodology for knowledge base representation by first-order logic.
2) Inference by forward chaining 3) Inference by backward chaining 4) Combining forward and backward chaining together with using heuristic rules.
However, the above results are still too general.Some models and techniques are still partial and not good enough for constructing a knowledge system with requirements which are not easy for designer to set up and implement.
In [12,17], authors presented a reasoning method using Sample Problems.In the processing of solving a practical problem, this method will search for relating problems which were solved before and then apply it to find the solution of the current problem.However, in these models, components about Operators and Functions have not yet researched completely.Some problems about them have not yet been solved, such as: specification of operators and functions, compute an expression between objects, determine value of a function, etc. UMS Software, in [22], is a program that supports to solve algebraic problems.Some kinds of problem can be solved by this program: solve the equation and basic inequalities, solve the system of equation in two variables, factorization of a Polynomial, simplification of algebraic expression, radical simplification, etc.Besides the solution by textual, UMS Software accompanies the solution with voice comments.But the program is not equipped a knowledge base of algebraic knowledge, it solve problems as frame.The other program in [23] is a website for supporting to solve problems automatically in mathematical knowledge domains.It shows the solutions step-by-step.However, especially in geometry, objects in this program are still simple, and it has limit about number of objects in problems (five objects), so specification about relations between objects is not completely.

A. Model of Computational Object Knowledge Base
The model of Computational Objects Knowledge Bases (COKB) has been established from the integration of ontology engineering, object-oriented modeling and symbolic computation programming.This way also gives us a method to model problems and to design algorithms.The models are very useful for constructing components and the whole knowledge base of knowledge-based systems in practice. R is a set of relations between the concepts.
 Ops is a set of operators.
 Funcs is a set of functions.
 Rules is a set of rules.
Each concept in C is a class of Com-objects.The structure Com-Objects can be modeled by (Attrs, F, Facts, RulesObj).Attrs is a set of attributes, F is a set of equations called computation relations, Facts is a set of properties or events of objects, and RulesObj is a set of deductive rules on facts.
H represents these special relations on C.This relation is an ordered relation on the set C, and H can be considered as the Hasse diagram for that relation.R is a set of other relations on C, and in case a relation r is a binary relation it may have properties such as reflexivity, symmetry, etc.
The set Ops consists of operators on C.This component represents a part of knowledge about operations on the objects.Almost knowledge domains have a component consisting of operators.The set Funcs consists of functions on Com-Objects.Knowledge about functions is also a popular kind of knowledge in almost knowledge domains in practice, especially fields of natural sciences such as fields of mathematics, fields of physics.
The set Rules represents for deductive rules.The rules represent for statements, theorems, principles, formulas, and www.ijacsa.thesai.orgso forth.Almost rules can be written like the form "if <facts> then <facts>".In the structure of a deductive rule, <facts> is a set of facts with certain classification.Facts must be classified so that the knowledge component Rules can be specified and processed in the inference engine of intelligent systems.

B. Knowledge about Functions and Operators 1) Knowledge about Functions
There is wide knowledge and many problems related to the functional component in real knowledge domains, such as knowledge of plane geometry, solid geometry, knowledge of alternating current in physics.For example, intersection between two planes is a line, so Intersection can be a function; the common perpendicular of two skew lines returns a line can be modeled as a function.So that, Funcs component in COKB model is necessary to describe functional knowledge in reality.In [18], authors have researched Funcs component.However, some problems on Functional knowledge have not been mentioned, such as specification of functions, determine value of function.
Structure of a function as followed:

2) Knowledge about Operators
In knowledge domains about computation, Ops component is very important to describe them.This component represents operators between objects in knowledge domain.On the basis of operators, knowledge is equipped efficient computational methods for knowledge processing.An operator in this model is a binary mapping: Ci  Ci Ci, with Ci is a concept in set C [16].Structure of an operator as followed:  , ., , Operator " +" performs the series connection between two circuits has been represented like this: OPERATOR < + > : ARGUMENT: CIRCUIT, CIRCUIT RETURN: CIRCUIT PROPERTY: commutative, associative ENDOPERATOR Result of this operator has been determined base on rule R1 in section V.A

C. Basic Techniques 1) Classify kinds of facts
In the COKB model, there are 12 kinds of facts accepted.These kinds of facts have been proposed from the researching on real requirements and problems in different knowledge domains.The kinds of facts are as follows:  Fact of kind 1: proposition state information about object kind or type of an object.
 Fact of kind 2: a proposition states determination of an www.ijacsa.thesai.orgobject or an attribute of an object.
 Fact of kind 3: a proposition states determination of an object or an attribute of an object by a value or a constant expression.
 Fact of kind 4: a proposition states equality on objects or attributes of objects.
 Fact of kind 5: a proposition states dependence of an object on other objects by a general equation.
 Fact of kind 6: a proposition states a relation between objects or attributes of the objects.
 Fact of kind 7: a proposition states determination of a function.
 Fact of kind 8: a proposition states determination of a function by a value or a constant expression.
 Fact of kind 9: a proposition states equality between an object and a function.
 Fact of kind 10: a proposition states equality between a function and another function.

2) Unification of facts
Unification algorithms of facts were designed and used in different applications such as the system that supports studying knowledge and solving analytic geometry problems, the program for studying and solving problems in Plane Geometry.The basic technique for designing deductive algorithms is the unification of facts.Based on the kinds of facts and their structures, there will be criteria for unification proposed.Then it produces algorithms to check the unification of two facts.For instance, when we have two facts fact1 and fact2 of kind 1-6, the unification definition of them is as follows: fact1 and fact2 are unified if they satisfy the following conditions (1) fact1 and fact2 have the same kind k, and Besides that, the goal G in model of problem may be: 1) Determine an object or an attribute (or some attributes) of Object or compute a value of a function relative to objects.
2) Determine an object or an attribute (or some attributes) of Object or compute a value of a function relative to objects and adding some condition.
3) Arguments about relationship between objects according to parameters.
Moreover, each goal of problem on COKB which has presented above is a different kind, so to solve generality www.ijacsa.thesai.orgproblem, we have classified the problem above to three kinds of problems (three class of problems).And each kind of problem will be presented below: Definition 3.2: Give problem on COKB model has the goal G, with G is determining an object or an attribute (or some attributes) of Object or compute a value of a function relative to objects and adding some condition.This problem has the form: (O,F) + (O condition , F condition ) → G where (O condition , F condition ) is condition (to be added) to determine the goal, that G has to ensure, denote H + H condition G, in which: H is the hypothesis of the problem, H condition is condition that to G must be guaranteed. Each f  Rules, each O i  O, each fun  Funcs, each ops  Ops, each eq i  Equations we define: , with M A (fun) is set of facts deduced from A by fun.ops(A) = A  M A (ops), with M A (ops) is set of facts deduced from A by ops.eq i (A) = A  M A (eq i ), with M A (eq i ) is set of facts deduced from A by eq i .
Each eq j  Equations | (eq i ≠ eq j ) : eq i (A),eq j (A) = A  M A (eq i ,eq j ), with M A (eq i ,eq j ) is set of facts deduced from A by (eq i ,eq j ).
The process from state F i (by applied d i+1 ) to state F i+1 is called a reasoning step (i= ).
b) Suppose a problem (O, F) → G is solvable and called S = [step 1 , step 2 ,…, step m ] is list step of solution of problem.Each step i is a step of solution (i=1..m), it has the form: (r, kf, nf) r  D: is rule can be applied to produce new facts or new objects, kf is set of known facts, which can be applied in r, nf is set of new facts, which was produced by r(kf).
When dealing with a practical problem, a convenient way to proceed is considering whether we have met a similar or related problem before or not.If so, then the solution for the problem can be obtained effectively.Or we determine the result of relating problems can be used to solve the practical problem.The related problem like this is called Sample Problem [12].Problem P on COKB model is classified to three kinds (definition 3.1-3.3).This problem can be solved by using forward reasoning with heuristic rules to select rules or sample problems.There are alogithms to solve kinds of problem as followed: www.ijacsa.thesai.orgIn deductive process to find rule can be applied for problem on the COKB, at algorithm 3.1 we have used some heuristic rules to select rule below:  Priority use of rules for determining objects.
 Transform objects to objects at a higher level in the hierarchical graph if there are enough facts.
 Use rules for producing new objects that contains elements, which are not in existing objects.
 Use rules for producing new objects that have relationship with existing objects, especially the goal, in necessary situations.
 Try to use deduction rules to get new facts, especially facts that have relationship with the goal.
 If we could not produce new facts or new objects then we should use parameters and equations.There are always new facts (relations or expressions) when we produce new objects.

Algorithm 3.2:
The basic procedure for test a sample problem if can be applied.
Giving problem P = (O, F) G on knowledge K of the form COKB model.Suppose Known_Facts is the set of known fact, which was saved during deduction process to solve problem P, and giving Rules_Sample is the set of sample problem in Knowledge K, have the following structure: Known_Facts = {kf 1 , kf 2 , kf 3 ,…,kf n }, each kf i is one of twelve kind of facts in K (i=1..n). Priority use of rules for determining objects which have relationship with existing objects in set of goal.

Rules_Sample = {sp
 Priority uses of sample for determine new objects which have same object kind in set of goal.
 Priority uses of sample for determine new objects which have relationship with existing objects in set of goal.

V. APPLICATION
The structure of Intelligent Problem Solvers (IPS) system and processing to build them has been presented in [1].It consists of following components:  The knowledge base.
 The inference engine. The explanation component.
 The working memory.
 The knowledge manager.

 The interface.
Knowledge Bases contain the knowledge for solving some problems in a specific knowledge domain.It must be stored in the computer-readable form so that the inference engine can use it in the procedure of automated deductive reasoning to solve problems stated in general forms.They can contain concepts and objects, relations, operators and functions, facts and rules.
The Inference engine will use the knowledge stored in knowledge bases to solve problems, to search or to answer for the query.It is the "brain" that systems use to reason about the information in the knowledge base for the ultimate purpose of formulating new conclusions.It must identify problems and use suitable deductive strategies to find out right rules and facts for solving the problem.In an IPS, the inference engine also has to produce solutions as human reading, thinking, and writing.
The structure of IPS: The main process for problem solving: From the user, a problem in a form that the user enter is input into the system, and the problem written by specification language is created; then it is translated so that the system receives the working problem in the form of the inference engine, and this is placed in the working memory.After analyzing the problem, the inference engine generates a possible solution for the problem by doing some automated reasoning strategies such as forward chaining reasoning method, backward chaining reasoning method, reasoning with heuristics.Next, the first solution is analyzed and from this the inference engine produces a good solution for the interface component.Based on the good solution found, the answer solution in human-readable form will be created for output to the user.
In this section, we will present some applications in Direct Current (DC) Electrical Circuits, Solid geometry and 2Danalytical geometry.The systems will be designed based on IPS, and knowledge-base component will be modeled and organized by COKB model, the inference engine will be designed based on reasoning algorithms in section III.B.

A. IPS in Direct Current Electrical Circuits
1) Design knowledge-base www.ijacsa.thesai.org Base on knowledge about DC Electrical Circuits has been mentioned in [19], this knowledge domain can be represented by COKB model as followed:

(C, Ops, Rules)
In this model, component Hhicherarchy and component Rrelations have been lacked.

Set C of Concepts.
In knowledge domain about DC, Facts component in structure of Com-objects in C is an empty set.So this structure includes three components: (Attrs, F, RulesObj) The set C consists of concepts such as "RESISTOR", "LAMB", "VariableResistor", "CIRCUIT", "CAPACITOR", "BATTERY".

Eg. 4.1: Structure of LAMB concept include:
Attrs = { R,V,I, P: values of resistance, potential difference, current flow, power of lamb  V max , I max , P max : maximum values of potential difference, current flow, power of lamb  s: is a number performs three level of light, such as: s = -1 : the light of lamb is low s = 0 : the light of lamb is normal s = 1 : the light of lamb is high} Rules={if (I < I max ) or (P < P max ) or (V < V max ) then s = -1 if (I = I max ) or (P = P max ) or (V = V max ) then s = 0 if (I > I max ) or (P > P max ) or (V > V max ) then s = 1 } In this knowledge domain, RESITOR concept can also be seen as a circuit with one resistor, so operator + and // can be applied on RESITOR concept, these properties and rules of two operators are unchanged.

Set Rules of rules.
Rules in this model are classified of two forms: deductive rules and equation rules.

2) Model of problem and algorithm
Model of problem in this knowledge base about DC Electrical Circuits is defined as definition 3.1.Besides that, using algorithms 2.1, the inference engine has been built.This engine simulates the way of human thinking to find solution of practical problem.

B. Intelligent problem solvers in Solid geometry 1) Design knowledge-based
Base on knowledge about Solid Geometry has been mentioned in [20], this knowledge base represented by COKB model consists of five components: The components of the model are listed as followed: Set C of Concepts.

Set H of hierarchical relations on the concepts C.
There are hierarchical relationships among the concepts in set C and they can be represented with using Hasse diagrams.For example, the following Hasse diagram demonstrates the hierarchy on the concepts of Quadrilaterals.

C. IPS in 2D-analytical geometry 1) Design knowledge-base
Base on knowledge about 2D-Analytic Geometry has been mentioned in [21], this knowledge base represented by COKB model:

(C, H, R, Ops, Funcs, Rules)
The components of the model are listed as follows: Set C of Concepts.

Set H of hierarchical relations on the concepts
There are hierarchical relationships among the concepts in set C and they can be represented with using Hasse diagrams.www.ijacsa.thesai.orgFor example, the following Hasse diagram demonstrates the hierarchy on the concepts of Triangle.

Ops-set of relations on C-Objects
In knowledge about analytical geometry, we have operators on vectors such as: Operator create vector ( ⃗⃗⃗⃗⃗ ) from two points it will return a vector.Operator addition (+), subtraction (-) of vectors it will return a vector.Operator multiplication (*) between two vectors, or between a vector with a coefficient.

Set Funcs of functions on Com-Objects
The set Funcs consists of functions on Com-Objects, such as: The set Funcs consists of functions on Com-Objects, such as: Function distance between two points it will returns a REAL number.Function distance between point and line.Function symmetry of a point through a point, or point through line.mid point of a segment.Function mid angle two lines, or two segments, or tow vectors.Function projection of a point into a line …etc.

Set Rules of rules
Almost properties, clauses, theorems in geometry can be represented by rules on facts relating to C-Objects.Followings are some particular rules:   COKB model with researching about Ops and Funcs component can be used to design and implement intelligent problem solvers.It provides a natural way for representing knowledge domains in practice.By integration of ontology engineering, object-oriented modeling and symbolic computation programming it provides a highly intuitive representation for knowledge.These are the bases for designing the knowledge base of the system.The methods of modeling problems and algorithms for automated problem solving represent a normal way of human thinking.Therefore, systems not only give human readable solutions of problems but also present solutions as the way people write them.COKB and reasoning method on knowledge about Functions and Operators have been applied to construct IPS in education, as: Direct Current Electrical Circuits, Solid Geometry, 2D-Analytic Geometry.The solution given by programs is stepby-step, natural, precise and has reasoning like human.
Our future works are to develop the models and algorithms: First, different types of COKB model will be researched: reducing of COKB, extension of COKB and integration many types of COKB in real applications.
Second, the rules component of COKB model should have classified by many criteria, such as: deductive rules, equivalent rules, equation rules and reasoning methods base on rules.
Third, researching about relations combines to operators and functions components.In which, it is usefully to research about the coordinate of knowledge about relations, operators and function in knowledge domain that have to using combination these kinds of knowledge.

Definition 2 . 1 :
The model of Computational Object Knowledge Base (COKB) consists of six components:(C, H, R, Ops, Funcs, Rules)The meanings of the components are as follows: C is a set of concepts of computational objects.H is a set of hierarchy relation (IS-A relation) on the concepts.

2 . 2 :
operator-def ::= OPERATOR <name> ARGUMENT: argument-def+ RETURN: return-def; PROPERTY: prob-type; ENDOPERATOR argument-def ::= name, <name>: type return-def ::= name : type prob-type ::= commutative | associative | identity Definition Expression of objects is defined like this: expr ::= object | expr <operator> expr Rules for determining an operator: Rules-set of Opsmodel has been classified two kinds: kind for determining an operator and kind for inference rules of knowledge.The result of an operator is an object of concept in set C. The values of attributes of this object are determined based on rules for determining operator in Rules-set.Eg. 2.2: In Knowledge domain about Direct Current Electrical Circuit, CIRCUIT concept is modeled by Com-Object, it includes: Attrs = {R,V,I,P}: set of attributes of CIRCUIT R,V,I,P: values of resistance, potential difference, current flow, power of circuit.

Fact of kind 11 :
a proposition states dependence of a function on other functions or other objects by an equation.Fact of kind 12: a proposition states a relation between functions.The last six kinds of facts are related to knowledge about functions, the component Funcs in model COKB.The problem below gives some examples for facts related to functions.Problem: Let d be the line with the equation 3x + 4y -12 = 0. P and Q are intersection points of d and the axes Ox, Oy. a) Find the central point of PQ b) Find the projection of O onto the line d.For each line segment, there exists one and only one point that is the central point of that segment.Therefore, there is a function MIDPOINT(A, B) that outputs the central point M of the line segment AB.Part (a) of the above problem can be represented as to find the point I such that I = MIDPOINT(P,Q), a fact of kind 9.The projection can also be represented by the function PROJECTION(M, d) that outputs the projection point N of point M onto line d.Part (b) of the above problem can be represented as to find the point A such that A = PROJECTION(O,d), which is also a fact of kind 9.

Eg. 3 . 2 : 3 . 3 : 3 . 4 :
(Knowledge domain about 2D-analytic geometry) Problem: Give two lines d 1 : d 2 : Write a equation of a line (d), known (d) through M, with M point has coordinates (1;-1), and (d1) intersect with (d 1 ) and (d 2 ) at A, B with condition is 2 ⃗⃗⃗⃗⃗⃗ + ⃗⃗⃗⃗⃗⃗ ⃗ .We have some facts below: O = {POINT: M, A, B, LINE: d1,d2,d}, F = {equation of d1: x+y+1=0, equation of d2: 2x -y -1=0, M(1;-1), d through M, d intersect d1 and d2 at A, B}, O condition ={}, F condition = { ⃗⃗⃗⃗⃗⃗ ⃗⃗⃗⃗⃗⃗ ⃗ } , G = {WRITE:equation of d} Definition Give problem on COKB model has the goal G, which is an argument about relationship between objects according to parameters.This problem has the form: (O, F) + PAR G where, PAR is a set of parameter and goal G is an argument about relationship between objects according to parameters.Eg. 3.3: (Knowledge domain about 2D-analytic geometry) Problem: Give a circle (C), equations of (C) is ( ) ( ) , and give A, B are two Point, A has coordinates (4;2), B has coordinates (0,m), with m is parameters of problem.Determine m so that AB cut (C).O = {POINT:A, B, CIRCLE:C}, F = {equation of (C): : m so that AB cut (C)}.B.Reasoning for problem solving:Definition Give a problem (O, F) → G on model COKB, and the goal G is to determine (or compute) attributes; M is the set of attributes considered in the problem, A  M. Denote L be the set of facts in the hypothesis.
a) Suppose D = [d 1 ,d 2 , …, d m ] is a list of elements, which d j  Rules or d j  O or d j  Ops or d j  Funcs or d j  Equations , that used to solve problem.Denote:

Definition 3 . 6 :
Give S is sample problem in Knowledge K of the form COKB model, consists of two parts: (Psp, Ssp) Psp is problem of S, it has form (Op, Fp) Gp (the model of problem on COKB).Ssp is a list solution-step (by definition 3.4) , it has the structure Ssp = [step 1, step 2, step 3,…, step k ].And we call facts(S) is set of hypothesis of S and goal(S) is set of goal of S, where facts(S) = {Op}  {Fp}, goal(S) = {Gp}.

Algorithm 3 . 5 : Step 1 :
Give problem P3 on COKB model has the form (O,F) + PAR G (by definition 3.3), denote H + PAR G. Problem P3 has been found by the following steps: Record the element in hypothesis and goal part  Step 2: Check the goal G, if G is obtained then find a rule or a sample problem, which has hypothesis part is goal G, and the goal part is subset H then sent this rule (or sample problem) to step 7 and go go step 7.  Step 3: Using heuristic rules to select a rule for producing new facts or new objects and go to step 2.  Step 4: Using heuristic rules to select a sample problem for producing new facts or new objects and go to step 2. Step 5: Searching for any rules, which can be used to deduce new facts or new objects and go to step 2.  Step 6: Giving conclusion: Solution not found, and stop program. Step 7: Giving R is the result from steps above.in this step we will consider R by argue the goal of R according to parameters.And then output result and stop program.To find a sample problem in set of sample problem to resolve for problem on the COKB, in this algorithm 3.5 we have used some heuristic rules to select a rule and sample problem below:  Priority uses of rules for determine objects which have same object kind in set of goal. Priority uses of rules for determine new facts which have same kind of fact in set of goal.

Fig. 2 .
Fig. 2. The hierarchy on the concepts of Triangle Set R of relations on Com-Objects.Set R contains various kinds of relations among Com-Objects.The following are some examples of relations: Relation about Perpendicular between a Plane and a Plane, a Line and a Plane, a Line and a Line; Relation about Distinct between a Point and Point, a Line and a Line; Relation about Belong between a Point and a Segment, a Point and a Line, a Line and a Plane; Relation about Altitude between a Segment and a Triangle, a Segment and a Quadrilateral Pyramid.Set Funcs of functions on Com-Objects.

3 )
Illustrating for solving problems Eg.4.3: Given a parallelogram ABCD, a point S outside plane(ABCD), a point M between S and A, and a point N between S and B. Let O is intersection point of line AC and BD.Find the intersection of line SO and plane (CMN).www.ijacsa.thesai.org

Fig. 3 .
Fig. 3. Problem in eg.4.3 O = { A, Point], [B, Point], [C, Point], [D, Point], [S, Point], [M, Point], [N, Point], [O, Point], Parallelogram[ABCD] F = { S ∉ Plane[ABCD], ["Between", M, Segment[SA]], ["Between", N, Segment[SB]], O = PointOfIntersection(Line[AC], Line[BD]) } G = { PointOfIntersection(Line[SO], Plane[CMN]) } Solution found by the program: Note that, some steps of the following output solution is displayed in the humanreadable form instead of using specification language.Therefore, the program helps users get easy to understand the solution.STEP 1 Parallelogram[ABCD]; O = AC ∩ BD  O is center of Parallelogram[ABCD] By rule "The intersection point of two diagonals of a parallelogram is the center of the parallelogram" STEP 2 O is center of Parallelogram[ABCD]  O= MidPoint(A,C) By rule "The properties of the concept Square" STEP 3 O= MidPoint(A,C)  O ∈AC, O is between Segment[AC] By rule "The properties of function MidPoint" STEP 4 O ∈ AC; AC ⊂ Plane(SAC)  O ∈ plane(SAC) By rule "If a point belongs to a line and this line is on a plane, then the point belongs to the plane" STEP 5 M is between Segment[SA]  M ∈ SA By rule "The properties of relation Between" STEP 6 M ∈ SA; SA ⊂ Plane (SAC)  M ∈ Plane(SAC) By rule "If a point belongs to a line and this line is on a plane, then the point belongs to the plane" STEP 7 O ∈ Plane(SAC); S ∈ Plane(SAC)  OS ⊂ Plane(SAC) By rule "If the two distinct points belong to a plane, then the line made by those points lies on the plane" STEP 8 M ∈ Plane(SAC); C ∈ Plane(SAC)  CM ⊂ Plane(SAC)

Fig. 4 .
Fig. 4. The hierarchy on the concepts of Triangle Set R of relations on Com-Objects Between C-Objects, there are various kinds of relations.We have some relations: Relations of basic level: are relations between basic objects and objects of first level.Relations of first level: are relations between basic objects, objects of first level and objects of second level, or relations between objects of higher levels.Example: Relation Belong between a Point and a Segment, a Point and a Line, a Line and a circle, Segment and Circle, Line and circle… {v: vector , u: vector, n: vector, u // v, u n}  { v  n} {u, n: vector, u  n}  { u * n = 0}, {AH: segment, ABC:Triangle, AH is altitude of triangle ABC }  { }, {ABCD: Parallelogram}  { ⃗⃗⃗⃗⃗ ⃗⃗⃗⃗⃗ ⃗⃗⃗⃗⃗ }, {AD: Segment, ABC: Triangle}  {D is midpoint of BC, BD = DC}, etc2) Model of problem and algorithmsModel of problems in knowledge domain about 2Danalytic geometry can be represented by models in definition 3.1-3.3.The inference engine has been also designed base on algorithms correlatively.

Fig. 5 .
Fig. 5. Problem in Eg 4.4 1, denote: H G, Problem P1 on COKB domain has been found by the following steps:  Step 1: Record the element in hypothesis and goal part  Step 2: Check the goal G, if G is obtained the go to step 7.  Step 3: Using heuristic rules to select a rule for producing new facts or new objects.If it has found a rule can be applied then go to step 2.  Step 4: Using heuristic rules to select a sample problem for producing new facts or new objects.If it has found a sample problem can be applied then go to step 2.  Step 5: Searching for any rule, which can be used to deduce new facts or new objects.If has found a rule can be applied then go to step 2.
Step 7: Reduce the solution found by excluding redundant rules and information in the solution.

1 , sp 2 ,…,sp m }, each
sp i is a sample problem in knowledge K (i=1…m).Giving S as definition 3.6 is a sample problem in Knowledge K of the form COKB model (S  Rules_Sample).
 Priority use of sample has the goals which have relationship with existing objects in set of condition of problem.www.ijacsa.thesai.org

TABLE I .
SET OPS OF OPERATORS BETWEEN CONCEPTS