Variable or compound expression - unification algorithm, Computer Engineering

Assignment Help:

Variable or compound expression - Unification algorithm:

Here some things to note regarding this method are: 

(i) There if really trying to match a constant to a different constant fails this means that they are not equal, neither is a variable or compound expression or in list also. However if we considered none of the cases in unify_internal is true to must return failure.  

(ii) In case 1 and 2 in  unify_variable(var,x,my)  check and finds neither inputs have already been substituted. However if we considered if  x  already has a substitution value and var, rather than x and var so there it does similarly if var already has a substitution. 

(iii) In case 3 we see that in  unify_variable  is called as the  occurs-check  case or occur-check. However if we considered this is important to visualize we got to the stage when to complete a unification if we required to substitute X into say, f(X,Y). However if we considered we would write  f(X,Y)  instead of X. After than this still has an  X  in it! Thus we would use to substitute  X  by  f(X,Y)  and again giving us as:  f(f(X,Y),Y)  so it  is obvious why we should never have tried this substitution in the first placeis means that this process will never end. However the occurs check makes sure this isn't going to happen before case 4 returns a substitution. But in realty the rule is:; that you cannot substitute a compound  for a variable so such variable appears in the compound already that you will never get rid of the variable. 

(iv) However if we considered unify_internal(op(x),op(y),mu)) a part of case 5 in unify_internal checks whether the operators of the two compound expressions are the same. Just because of it will return false if, considered an example where it tries to unify two predicates into different names or a  with symbol.


Related Discussions:- Variable or compound expression - unification algorithm

Truth tables, Any function can be expressed in a truth table.A truth table ...

Any function can be expressed in a truth table.A truth table lists all possible combinations ofinputs and gives the output produced in eachcase.Truth tables must include all combin

A luminous jewel game, a luminous jewel game c programming start with t and...

a luminous jewel game c programming start with t and end with t the output will yes or no

What are sections, Layout pages, can describe sections, which can then be o...

Layout pages, can describe sections, which can then be overridden by particular views making use of the layout. Major and overriding sections is optional.

Representation in prolog - logic programs, Representation in Prolog - Logic...

Representation in Prolog - Logic Programs: If we justimpose some additional constraints on first-order logic, so than we get to a representation language knowing as logic prog

what are the advantages of threads over processes, What are the advantages...

What are the advantages of threads over processes? Some of the useful threads offer over processes includes: i)   It does not take more time to create and finished a new thr

Instruction set architecture, Question (a) A 500 MHz Pentium III proce...

Question (a) A 500 MHz Pentium III processor takes 2 ms to run a program with 200,000 instructions. A 300 MHz UltraSparc processor takes 1.8 ms to run the same program with 23

What is library, What is library? A library is a collection of classes ...

What is library? A library is a collection of classes that are useful in most of the contexts. Classes must have accurate and thorough explanations to help users.

Register transfer micro-operations, Register Transfer Micro-operations ...

Register Transfer Micro-operations These micro-operations as the name proposes transfer information from one register to another. The information doesn't change during these mi

Define stack segment, Q. Define Stack segment ? 8086 Microprocessor su...

Q. Define Stack segment ? 8086 Microprocessor supports Word stack. Stack segment parameters tell the assembler to alert linker that this segment statement states the program s

Change directory command, Your shell must accept a change directory command...

Your shell must accept a change directory command. This will be in the form: cd path  where cd is the change directory command and the path is what you will change the direct

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd