Question
Hello. I am posting this question for the 7th time now. If you are going to paste the same answer then, Can you show the
Hello. I am posting this question for the 7th time now.
If you are going to paste the same answer then, Can you show the output for the last two examples that your code is working for last two cases. Please. And please answer with proper code. Last one had dozens of symbols and errors. I tried commenting but there's no option to comment. It is only one question so it follows chegg policy. Second picture is just sample code run outputs.
The previous answers are wrong or incomplete. Please dont waste my question by copy pasting those again here. Please show the output for your code with the sample examples given to show me how to use your code. The previous ones were giving wrong output with the sample inputs given in the question. Please dont copy paste from previous one. Please.
Write a program in C++ that implements the following unification algorithm. Unify(E1,E2) If ( both E1 and E2 are constant or empty ) \{ If ( E1=E2 ), then return \{\} Else return FAIL \} If ( E1 is a variable ) \{ If E1 occurs in E2, then return FAIL Else return {E2/E1} \} If ( E2 is variable ) \{ If E2 occurs in E1, then return FAIL Else return {E1/E2} \} If ( E1 or E2 is empty ), then return FAIL HE1 = first element of E1 HE2 = first element of E2 SUBS1 = unify (HE1, HE2) If (SUBS1 = FAIL) then return FAIL TE1 = apply SUBS1 to rest of E1 TE2 = apply SUBS1 to rest of E2 SUBS2 = unify (TE1,TE2) If (SUBS2 = FAIL) then return FAIL Else return composition(SUBS1, SUBS2) E1 and E2 are two terms where variables start with upper case letters and function/constant symbols start with lower case letters. You need to consider "Occur Check". Example This is an implementation of the unification algonithm. Flease enter the first term: a Flease enter the second terme x The unifier is: X=a Flease enter the first term: X Flease enter the second tenem y The unifier is: Y=X Flease enter the first term: X Flease enter the second terme I[Y] The unifise is: X=f(y) Flease enter the first term: X Flease enter the socond terme m/2,Y The unifiar is: x=h(a,) Please enter the first term: f(flX, YuX Flease enter the second terenc fff(V,U), [U,Y] The unifise is: X=V,Y=U,V=e[U,U) Flease enter the first term: f(IIX, Y,XS) Fhezse enter the second terme ff[f,U, U.g[U,F)] The unifise is: Invalid Please enter the first term: X Fhease enter the second terme fx The unifier is: there is no unifier
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started